треск в arduino
- Войдите на сайт для отправки комментариев
Сб, 30/04/2022 - 19:29
здраствуйте я делаю свой проект и я хочу поменять звук включение но у меня не издаёт звук только издаёт треск трррррррррррр типо такого иза чего такая проблема делал на tinkercad
вот моя схема: https://fastpic.org/fullview/117/2022/0430/f25712e8ef4a903adfb384724efb33f3.png.html
вот мой код:
#include<IRremote.h>
int resiv = 11;
int buzzer = 12;
long prestroMillis = 0;
IRrecv irrecv(resiv);
decode_results results;
void setup()
{
irrecv.enableIRIn();
for(int a = 0; a < 7; a++)
{
pinMode(a, OUTPUT);
}
pinMode(buzzer, OUTPUT);
}
void pinOn(int pin)
{
digitalWrite(pin, HIGH);
delay(700);
digitalWrite(pin, LOW);
}
void decodingIR()
{
switch(results.value)
{
case 0xFD30CF:
pinOn(0);
break;
case 0xFD08F7:
pinOn(1);
break;
case 0xFD8877:
pinOn(2);
break;
case 0xFD48B7:
pinOn(3);
break;
case 0xFD28D7:
pinOn(4);
break;
case 0xFDA857:
pinOn(5);
break;
case 0xFD6897:
pinOn(6);
break;
case 0xFD00FF:
pinOn(10);
digitalWrite(buzzer, HIGH);
tone(buzzer, 2000, 800);
break;
}
}
void loop()
{
if(irrecv.decode(&results))
{
decodingIR();
for(int b = 0; b < 2; b++)
{
irrecv.resume();
}
}
}
/*
0 - FD30CF
1 - FD08F7
2 - FD8877
3 - FD48B7
4 - FD28D7
5 - FDA857
6 - FD6897
7 - FD18E7
8 - FD9867
9 - FD58A7
Power - FD00FF
Mute/EQ - FDB04F
vUp - FD807F
vDown - FD906F
cUp - FD50AF
cDown - FD10EF
*/
видимо используется один и тот же таймер, а если так попробовать:
видимо используется один и тот же таймер, а если так попробовать:
не работает я могу дать ссылку
https://www.tinkercad.com/things/51V9r0ez4Vl?sharecode=4CMeek_uGXhrTUUMF...
Надо ещё библиотеке сказать, что другой таймер использовать. В документации всё есть:
https://github.com/Arduino-IRremote/Arduino-IRremote#incompatibilities-t...
void setup() { pinMode(12, OUTPUT); tone(12,262); delay(500); tone(12,294); delay(500); tone(12,330); delay(500); tone(12,349); delay(500); tone(12,392); delay(500); tone(12,440); delay(500); tone(12,494); delay(500); noTone(12); } void loop() { }может так попробовать?
#include<IRremote.h> int resiv = 11; int buzzer = 12; long prestroMillis = 0; IRrecv irrecv(resiv); decode_results results; void setup() { irrecv.enableIRIn(); for(int a = 0; a < 7; a++) { pinMode(a, OUTPUT); } pinMode(buzzer, OUTPUT); } void pinOn(int pin) { digitalWrite(pin, HIGH); delay(700); digitalWrite(pin, LOW); } void decodingIR() { switch(results.value) { case 0xFD30CF: pinOn(0); break; case 0xFD08F7: pinOn(1); break; case 0xFD8877: pinOn(2); break; case 0xFD48B7: pinOn(3); break; case 0xFD28D7: pinOn(4); break; case 0xFDA857: pinOn(5); break; case 0xFD6897: pinOn(6); break; case 0xFD00FF: pinOn(10); //digitalWrite(buzzer, HIGH); irrecv.stop(); tone(buzzer, 2000, 800); delay(8); irrecv.start(8000); // to compensate for 8 ms stop of receiver. This enables a correct gap measurement. break; } } void loop() { if(irrecv.decode(&results)) { decodingIR(); for(int b = 0; b < 2; b++) { irrecv.resume(); } } } /* 0 - FD30CF 1 - FD08F7 2 - FD8877 3 - FD48B7 4 - FD28D7 5 - FDA857 6 - FD6897 7 - FD18E7 8 - FD9867 9 - FD58A7 Power - FD00FF Mute/EQ - FDB04F vUp - FD807F vDown - FD906F cUp - FD50AF cDown - FD10EF */Если не разбираешься в том, что делаешь, пытайся решать задачи по-одной.
и отчего дублированы не только топики, но и ответы в оных?
может так попробовать?
#include<IRremote.h> int resiv = 11; int buzzer = 12; long prestroMillis = 0; IRrecv irrecv(resiv); decode_results results; void setup() { irrecv.enableIRIn(); for(int a = 0; a < 7; a++) { pinMode(a, OUTPUT); } pinMode(buzzer, OUTPUT); } void pinOn(int pin) { digitalWrite(pin, HIGH); delay(700); digitalWrite(pin, LOW); } void decodingIR() { switch(results.value) { case 0xFD30CF: pinOn(0); break; case 0xFD08F7: pinOn(1); break; case 0xFD8877: pinOn(2); break; case 0xFD48B7: pinOn(3); break; case 0xFD28D7: pinOn(4); break; case 0xFDA857: pinOn(5); break; case 0xFD6897: pinOn(6); break; case 0xFD00FF: pinOn(10); //digitalWrite(buzzer, HIGH); irrecv.stop(); tone(buzzer, 2000, 800); delay(8); irrecv.start(8000); // to compensate for 8 ms stop of receiver. This enables a correct gap measurement. break; } } void loop() { if(irrecv.decode(&results)) { decodingIR(); for(int b = 0; b < 2; b++) { irrecv.resume(); } } } /* 0 - FD30CF 1 - FD08F7 2 - FD8877 3 - FD48B7 4 - FD28D7 5 - FDA857 6 - FD6897 7 - FD18E7 8 - FD9867 9 - FD58A7 Power - FD00FF Mute/EQ - FDB04F vUp - FD807F vDown - FD906F cUp - FD50AF cDown - FD10EF */все равно трещит
а код из #4 работает?
А пищалка активная?
У меня заказчик был. С парктроником. В ТЗ пьезо на 3 с копейками КГЦ. Задаю tone под эту пищалку, и получаю претензии... Какое то не чистое звучание, какой то треск... Куча взаимных препирательств... Когда выясняется что у него АКТИВНАЯ пищалка. Ну ППЦ!
Боюсь, что здесь такая же ситуация.
Вот нисколько не сомневаюсь