亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標題: 小白求解釋單片機代碼(劃箭頭的部分)! [打印本頁]

作者: ZFDPJ    時間: 2017-11-26 02:51
標題: 小白求解釋單片機代碼(劃箭頭的部分)!
const int buttonPin = 2;
const int ledPin = 13;
int ledState = HIGH;
int buttonState;
int lastButtonState = LOW;
long lastDebounceTime = 0;
long debounceDelay = 50;
void setup() {
pinMode(buttonPin, INPUT);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, ledState);
}


void loop() {
int reading = digitalRead(buttonPin);
if (reading != lastButtonState) {
lastDebounceTime = millis();
}


if ((millis() - lastDebounceTime) > debounceDelay) {
--> if (reading != buttonState) {
buttonState = reading;
if (buttonState == HIGH) {
ledState = !ledState;
}
}
}
digitalWrite(ledPin, ledState);
lastButtonState = reading;
}
請問那位大神可以解釋一下劃箭頭的地方if中buttonState與reading不是相同的嗎?,為什么可以比較。謝謝。如果錯了是不是把buttonState改為lastbuttonState就行了。





作者: bayga456    時間: 2017-11-26 10:18
不是相等的,
--> if (reading != buttonState) {
buttonState = reading; 這是上面成立才執行的,就是說,如果不相等就賦值。但下次判斷之前 int reading = digitalRead(buttonPin); 這語句有可能改變 reading 的值了。
作者: angmall    時間: 2017-11-26 11:10
劃箭頭的地方if中buttonState與reading為什么一定是相同的,為什么不可以比較。

作者: zl2168    時間: 2017-11-26 11:44
為什么要找沒有注釋的代碼?介紹你2本書,張志良編著的:《80C51單片機實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9, 用于學習51單片機原理,程序(雙解c和匯編)語句條條有注解,便于閱讀理解,便于自學。《80C51單片機仿真設計實例教程——基于Keil C和Proteus》清華大學出版社ISBN 978-7-302-41682-1,內有常用的單片機應用100案例,用于仿真實驗操作,電路與程序真實可靠可信可行,可演示,可觀測,程序語句條條有注解。與其他書比較一下,有比較才能有鑒別!絕不忽悠你!
作者: 570751866    時間: 2017-12-3 21:15
學習學習
作者: 570751866    時間: 2017-12-3 21:15
新手學習
作者: 天天走    時間: 2017-12-7 22:39
介紹你2本書,張志良編著的:《80C51單片機實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9, 用于學習51單片機原理,程序(雙解c和匯編)語句條條有注解,便于閱讀理解,便于自學。認真看,可以的




歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1