void setup() { Serial.begin(9600); pinMode(13,OUTPUT); pinMode(12,INPUT); } void loop() { int ButtonState = digitalRead(12); Serial.println(ButtonState); digitalWrite(13,HIGH); // delay(1); } ``` 我們利用 序列埠監控視窗,來看 pin 12 輸出的結果 若要使用,需在 void setup() 使用初始化指令 Serial.begin(9600) ; // 9600為鮑率,之間溝通的頻率 程式裡面可以用 Serial.print( 顯示的內容 ); // 沒有換行 Serial.println( 顯示的內容 ); //有換行 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_201845.png) 亦可用序列繪圖家 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_201909.png) 三、用按鈕控制LED嘗試修改程式,讓Button來控制LED明滅,需要判斷!!要用到 [if 條件控制指令](http://maker.tn.edu.tw/modules/tad_book3/page.php?tbdsn=277) 指令格式: ``` if ( 條件式 ) { //敘述; } ``` 或 ``` if ( 條件式 ) //條件式為真,執行敘述1 { //敘述 1; } else //條件式為假,執行敘述2。 { //敘述 2; } ``` 範例程式: ``` void setup() { Serial.begin(9600); pinMode(13,OUTPUT); pinMode(12,INPUT); } void loop() { int ButtonState = digitalRead(12); Serial.println(ButtonState); if (ButtonState==1) { digitalWrite(13,LOW); } else { digitalWrite(13,HIGH); } // delay(1); } ``` 四、內建上拉電阻若使用 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_204305.png) 或 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_204343.png) 則啟動內建上拉電阻,可移除電路中10k歐姆的電阻。
if ( 條件式 ) { //敘述; } ``` 或 ``` if ( 條件式 ) //條件式為真,執行敘述1 { //敘述 1; } else //條件式為假,執行敘述2。 { //敘述 2; } ``` 範例程式: ``` void setup() { Serial.begin(9600); pinMode(13,OUTPUT); pinMode(12,INPUT); } void loop() { int ButtonState = digitalRead(12); Serial.println(ButtonState); if (ButtonState==1) { digitalWrite(13,LOW); } else { digitalWrite(13,HIGH); } // delay(1); } ``` 四、內建上拉電阻若使用 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_204305.png) 或 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_204343.png) 則啟動內建上拉電阻,可移除電路中10k歐姆的電阻。
if ( 條件式 ) //條件式為真,執行敘述1 { //敘述 1; } else //條件式為假,執行敘述2。 { //敘述 2; } ``` 範例程式: ``` void setup() { Serial.begin(9600); pinMode(13,OUTPUT); pinMode(12,INPUT); } void loop() { int ButtonState = digitalRead(12); Serial.println(ButtonState); if (ButtonState==1) { digitalWrite(13,LOW); } else { digitalWrite(13,HIGH); } // delay(1); } ``` 四、內建上拉電阻若使用 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_204305.png) 或 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_204343.png) 則啟動內建上拉電阻,可移除電路中10k歐姆的電阻。
void setup() { Serial.begin(9600); pinMode(13,OUTPUT); pinMode(12,INPUT); } void loop() { int ButtonState = digitalRead(12); Serial.println(ButtonState); if (ButtonState==1) { digitalWrite(13,LOW); } else { digitalWrite(13,HIGH); } // delay(1); } ``` 四、內建上拉電阻若使用 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_204305.png) 或 ![](http://maker.tn.edu.tw/uploads/tad_book3/image/2018-01-30_204343.png) 則啟動內建上拉電阻,可移除電路中10k歐姆的電阻。
進階搜尋