案例
最近測通了很多傳感器,記錄個整理的簡單案例代碼:
/**遙控程序*/#include <IRremote.h> // IRremote庫聲明 int RECV_PIN = 3; //定義紅外接收器的引腳為11int buzzer = 7; //設置控制蜂鳴器的數字IO腳 IRrecv irrecv(RECV_PIN); decode_results results;long control[7][3] = {//遙控器矯正數字{16580863, 16613503, 16597183},{16589023, 16621663, 16605343},{16584943, 16617583, 16601263},{16593103, 16625743, 16609423},{16582903, 16615543, 16599223},{16591063, 16623703, 16607383},{16586983, 16619623, 16603303} };int LED = 13;//13號燈int LED6 = 6;//6號燈void openLight() {digitalWrite(LED, HIGH);digitalWrite(LED6, HIGH);delay(500);digitalWrite(LED, LOW);digitalWrite(LED6, LOW); }void openDuang(int count,int fq) {//digitalWrite(buzzer,HIGH);//發聲音for (int i = 0;i < count; i++) //輸出一個頻率的聲音 {digitalWrite(buzzer, HIGH); //發聲音delay(fq);//延時1msdigitalWrite(buzzer, LOW); //不發聲音delay(fq);//延時ms } }void openLightLong() {digitalWrite(LED, HIGH);digitalWrite(LED6, HIGH); }void setup() {Serial.begin(9600);irrecv.enableIRIn(); // 啟動接收器 pinMode(LED, OUTPUT);pinMode(LED6, OUTPUT);pinMode(buzzer, OUTPUT); //設置數字IO腳模式,OUTPUT為輸出 }void loop() {if (irrecv.decode(&results)){Serial.println(results.value, HEX);//以16進制換行輸出接收代碼if (results.value == 4294967295) {//long click openLightLong();openDuang(1000,1);} else {if (results.value == control[0][0]) {openLight();openDuang(80,1);} else if (results.value == control[0][1]) {openLight();} else if (results.value == control[0][2]) {openLight();} else if (results.value == control[1][0]) {openLight();} else if (results.value == control[1][1]) {openLight();} else if (results.value == control[1][2]) {openLight();} else if (results.value == control[2][0]) {openLight();} else if (results.value == control[2][1]) {openLight();} else if (results.value == control[2][2]) {openLight();} else if (results.value == control[3][0]) {openLight();openDuang(80,0);//0} else if (results.value == control[3][1]) {openLight();} else if (results.value == control[3][2]) {openLight();} else if (results.value == control[4][0]) {openLight();openDuang(80,1);} else if (results.value == control[4][1]) {openLight();openDuang(80,2);} else if (results.value == control[4][2]) {openLight();openDuang(80,3);} else if (results.value == control[5][0]) {openLight();openDuang(80,4);} else if (results.value == control[5][1]) {openLight();openDuang(80,5);} else if (results.value == control[5][2]) {openLight();openDuang(80,6);} else if (results.value == control[6][0]) {openLight();openDuang(80,7);} else if (results.value == control[6][1]) {openLight();openDuang(80,8);} else if (results.value == control[6][2]) {openLight();openDuang(80,9);}}irrecv.resume(); // 接收下一個值 }delay(100); } View Code?
效果圖:
蜂鳴器接線:
1 = GND
2 = S I/O 1-13
?
轉載于:https://www.cnblogs.com/SATinnovation/p/7749153.html
總結
- 上一篇: Android Log
- 下一篇: iis发布网站怎么支持.json文件