0 голосов
Я захотел чтобы пьезопищалка генерировала разный звук. Я попробовал сделать так -

#define B_PIN  3
void setup() {
pinMode(B_PIN, OUTPUT);
}
void loop() {
int i = random(200, 4500);
tone(BUZZER_PIN,i, 20);
}

Но в итоге пищалка просто странно шипела. В чем моя ошибка?

Заранее спасибо.
(12 баллов) 4 6

1 Ответ

0 голосов

У вас код задания частоты пьезопищалки, исполняется чаще, чем задаваемые частоты.

Добавьте функцию

delay (1000);

в loop или поместите код задание частоты в макрос, упомянутый в этом вопросе.

(3 тыс. баллов) 7 17 38
Добро пожаловать на Бредборд! Сайт вопросов и ответов на тему Arduino, Raspberry Pi и хоббийной электроники в целом. Цель Бредборда — быть максимально полезным. Поэтому мы строго следим за соблюдением правил, боремся с холиворами и оффтопиком.
  1. Un_ka

    38 балл(ов)

  2. M-Serhio

    5 балл(ов)

  3. Nior

    2 балл(ов)

...