2013-04-23 2 views
1

Я новичок в 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. 
    } 
} 
+0

Вы должны изучить C++ заранее, кстати. – 2013-04-23 19:04:49

+0

Спасибо за подсказку. У вас есть предложения по устранению этой конкретной проблемы? –

+0

Отступы в функциях setup() и loop() показывают, что они вложены внутри чего-то, но они не являются (и насколько я знаю, они не обязательно должны быть). Возможно, это и привело к дополнительным '}'. Я предлагаю сдвинуть функции на 2 столбца слева, поэтому они совпадают с объявлениями «мелодия» и «примечания». –

ответ

1

У вас есть посторонняя закрывающая скобка } в конце коды. Удалите его в последней строке, это не нужно.

+0

Я не уверен, что я последую за тобой. Последняя строка моего кода имеет близкую скобку. Это линия, на которую вы ссылаетесь? –

+0

@BenTinsley Да. – 2013-04-23 19:17:36

+0

Какая чертовщина. Я написал «двоеточие». Дурак я. Спасибо @KeithThompson за редактирование. – 2013-04-23 19:48:35

Смежные вопросы