|
50黑幣
寫了一段代碼,按下按鍵引腳輸出高電平,并切串口打印相應(yīng)字符,松開按鍵引腳輸出低電平,串口打印相應(yīng)字符,現(xiàn)在問題是不管是高電平還是低電平串口都在一直打印,想問問各位大佬怎樣才能讓串口打印一次或者兩次字符?源代碼,初學(xué)寫的比較爛,大佬湊合看!
源碼如下:
void setup()
{
Serial.begin(19200);
pinMode(3, INPUT_PULLUP);
pinMode(13, OUTPUT);
digitalWrite(13,LOW);
}
void loop()
{
if (!digitalRead(3))
{
digitalWrite(13,HIGH);
Serial.print("1a");
delay(1000);
}
else
{
digitalWrite(13,LOW);
Serial.print("1b");
delay(1000);
}
} |
最佳答案
查看完整內(nèi)容
bool lastButtonState = HIGH; // 初始假設(shè)按鍵未按下(由于使用了PULLUP電阻)
void setup()
{
Serial.begin(19200);
pinMode(3, INPUT_PULLUP); // 使用內(nèi)部上拉電阻
pinMode(13, OUTPUT);
digitalWrite(13, LOW);
}
void loop()
{
bool currentButtonState = !digitalRead(3); // 按鍵按下時引腳為LOW
if (currentButtonState != lastButtonState) // 檢查按鍵狀態(tài)是否改變
{
if (cur ...
|