Пианино на Arduino (курсовая)

Marietta

✩✩✩✩✩✩✩
25 Дек 2022
1
0
Работает только 4 кнопки и только по одному разу.
Сделать нужно ближайшие два дня.
C++:
#define NOTE_A 262

#define NOTE_B 294

#define NOTE_C 330

#define NOTE_D 392

#define NOTE_E 493

const int SPEAKER=13;

const int BUT_A=2;

const int BUT_B=3;

const int BUT_C=4;

const int BUT_D=5;

const int BUT_E=7;

void setup() {

 pinMode(13, OUTPUT);

 pinMode(2, INPUT_PULLUP);

  pinMode(3, INPUT_PULLUP);

   pinMode(4, INPUT_PULLUP);

    pinMode(5, INPUT_PULLUP);

     pinMode(7, INPUT_PULLUP);

}

void loop() {

  while (digitalRead(BUT_A)==1);

tone(SPEAKER, NOTE_A, 30);

 while (digitalRead(BUT_B)==1);

 tone(SPEAKER, NOTE_B, 30);

while (digitalRead(BUT_C)==1);

 tone(SPEAKER, NOTE_C, 30);

 while (digitalRead(BUT_D)==1);

 tone(SPEAKER, NOTE_D, 30);

 while (digitalRead(BUT_E)==1);

 tone(SPEAKER, NOTE_E, 30);

 noTone(SPEAKER);

}
 

Вложения

viktor1703

★★★✩✩✩✩
9 Дек 2021
540
133
Сделать нужно ближайшие два дня.
У стуентов всегда одного дня не хватает.
Работает только 4 кнопки и только по одному разу.
По-моему, всё должно застрять на строках
C++:
while (digitalRead(BUT_A)==1);

tone(SPEAKER, NOTE_A, 30);
до нажатия на кнопку BUT_A, а после нажатия всё должно сторониться на
C++:
while (digitalRead(BUT_B)==1);

tone(SPEAKER, NOTE_B, 30);
, пока не будет нажата кнопка BUT_B и т. д. по кругу. Поправьте, если я не прав.

Постойте, разве после оператора while ставится точка с запятой? Что у Вас за учебное заведение, что к курсовой даже синтаксису не научили?

Ещё вопрос: для чего резисторы ма макете?IMG_20221225_215209.jpg
 
Изменено:

Бармалей31

★✩✩✩✩✩✩
22 Сен 2020
217
36
Там же програмная подтяжка.
А что сделать то нужно? Кто нибудь понял?