序列埠監控視窗問題
第一次發帖,不知道該怎麼說,我接觸arduino才幾個月還不識很熟,所以有個問題想要大家幫忙!!這是我做的震動感應的小玩具,一開始還沒給判斷式,所以序列埠監控視窗有顯示次數
然後想加個3色LED燈來表示震動了幾下,所以我就加了幾行程式
int shockVal = HIGH;
boolean bAlarm = false;
unsigned long lastShockTime;
int shockAlarmTime = 250;
int i=0;
void setup ()
{
Serial.begin(9600);
pinMode (shockPin, INPUT) ;
pinMode (1, OUTPUT) ; //GLED
pinMode (3, OUTPUT) ; //BLED
pinMode (5, OUTPUT) ; //RLED
}
void loop ()
{
shockVal = digitalRead (shockPin) ;
if (shockVal == LOW)
{
lastShockTime = millis();
if (!bAlarm){
bAlarm = true;
if(bAlarm = true){
i=i+1;
Serial.println(i);
if (i<=10){ //GLED
digitalWrite(1, HIGH);
digitalWrite(3, LOW);
digitalWrite(5, LOW);
}
else if(i>10 && i<20){ //BLED
digitalWrite(1, LOW);
digitalWrite(3, HIGH);
digitalWrite(5, LOW);
}
else{ //RLED
digitalWrite(1, LOW);
digitalWrite(3, LOW);
digitalWrite(5, HIGH);
}
}
}
}
else
{
if( (millis()-lastShockTime) > shockAlarmTime&&bAlarm){
bAlarm = false;
}
}
}
然後執行燒錄,打開序列埠監控視窗後,我不管怎麼搖感測器視窗都是一樣空白,這樣我都無法看到底震了幾下
這是什麼問題?是這個Serial.begin(9600); 問題嗎?
這問題卡了我好幾天了 希望有人可以回答感謝 本帖最後由 超新手 於 2018-2-24 08:30 編輯
如果你是用 uno 或 mega
你的 led 和 serial 的接腳(0和1)衝到了
把 led 的 1 移開即可
把所有的的 1 改成其他腳
pinMode (1, OUTPUT) ;
digitalWrite(1, HIGH);
digitalWrite(1, LOW);
當然,硬體線路也要一併改 超新手 發表於 2018-2-24 06:19
如果你是用 uno 或 mega
你的 led 和 serial 的接腳(0和1)衝到了
把 led 的 1 移開即可
謝謝可以了!!!
我在問一下 是不是 0跟1的腳 都不要接LED也代表其他感測元件也不能接 是吧? 最好都不要接
如果是 uno 或 mega...,
連下載程式也是靠這兩根腳
當然,不怕麻煩的話,也不是完全不能用
谢谢楼主分享
頁:
[1]