Я новичок в Arduino и я позаимствовал этот код из http://www.instructables.com/id/Arduino-Basics-Making-Sound/step2/Playing-A-Melody/Правильный синтаксис декларации в Arduino
Когда я пытаюсь проверить код, я получаю
error: expected declaration before '}' token
на последней строке. Как я могу это исправить? Опять же, я новичок в этом, поэтому, если вам нужна дополнительная информация, дайте мне знать.
#include "pitch.h"
// notes in the melody:
int melody[] = {NOTE_C4, NOTE_G3,NOTE_G3, NOTE_A3, NOTE_G3,0, NOTE_B3, NOTE_C4};
// note durations: 4 = quarter note, 8 = eighth note, etc.:
int noteDurations[] = {
4, 8, 8, 4,4,4,4,4 };
void setup() {
// iterate over the notes of the melody:
for (int thisNote = 0; thisNote < 8; thisNote++) {
// to calculate the note duration, take one second
// divided by the note type.
//e.g. quarter note = 1000/4, eighth note = 1000/8, etc.
int noteDuration = 1000/noteDurations[thisNote];
tone(8, melody[thisNote],noteDuration);
// to distinguish the notes, set a minimum time between them.
// the note's duration + 30% seems to work well:
int pauseBetweenNotes = noteDuration * 1.30;
delay(pauseBetweenNotes);
// stop the tone playing:
noTone(8);
}
}
void loop() {
// no need to repeat the melody.
}
}
Вы должны изучить C++ заранее, кстати. – 2013-04-23 19:04:49
Спасибо за подсказку. У вас есть предложения по устранению этой конкретной проблемы? –
Отступы в функциях setup() и loop() показывают, что они вложены внутри чего-то, но они не являются (и насколько я знаю, они не обязательно должны быть). Возможно, это и привело к дополнительным '}'. Я предлагаю сдвинуть функции на 2 столбца слева, поэтому они совпадают с объявлениями «мелодия» и «примечания». –