看板 ASM 關於我們 聯絡資訊
各位大大 最近我用ARDUINO在做紅外線"計次" 要運用在螺桿實驗,統計滑塊來回運動的次數, 紅外線的部分已經OK了,就只差計次的部分。 我想要用SERIAL MONITOR計次 也就是把次數顯示在MONITOR上, 附上我的程式碼,我試過很多寫法都只能顯示1不然就是不受紅外線感測自己跑下去 const int irReceiver = 4; const int irLed = 3; const int ledPin = 13; // 紅外線指示燈 const unsigned int frequency = 38000; // 發射頻率(單位: Hz) void setup() { Serial.begin(9600); // 開啟 Serial port, 通訊速率為 9600 bps pinMode(irReceiver, INPUT); // 把 irReceiver 接腳設置為 INPUT pinMode(irLed, OUTPUT); // 把 irLed 接腳設置為 INPUT pinMode(ledPin, OUTPUT); // 把 ledPin 設置為 OUTPUT tone(irLed, frequency); } void blinkLED() { for (int i=1; i<= 1; i++) { digitalWrite(ledPin, HIGH); // 打開指示燈 delay(200); digitalWrite(ledPin, LOW); // 關掉指示燈 delay(200); Serial.println(i); } } void loop() { int ir_status = digitalRead(irReceiver); if (ir_status == 0) blinkLED(); } 如上 懇請大大解惑 >< -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.118.5.151 ※ 文章網址: https://www.ptt.cc/bbs/ASM/M.1425488927.A.2E7.html
peng978: for不對 03/05 02:38
grayStone: for只跑一圈? 03/06 02:29
kikiqqp: for (int i=1; i<= 1; i++) 另外開發經驗上建議你使用微 03/07 00:48
kikiqqp: 動開關來做觸發計次,除非有壽命上考量 03/07 00:49