# 2.串列埠(ArduinoDemo2) ###### tags: `ArduinoDemo` **分類:串列埠** **總覽:** 33-2使用Arduino 板控制LED 單燈閃爍左移,同時將LED 目前狀態 傳送至電腦中。當LED 亮時,狀態為HIGH;當LED 暗時,狀態為LOW。 38-3從Arduino板接收傳腦傳送的訊息,並於Serial Monitor視窗顯示所接收的數字,須可接收與顯示 -32768以上到32767以下的數字。 44-1接收電腦鍵盤輸入鍵值來控制LED。輸入0 鍵則LED 暗,輸入1 鍵則LED 亮,輸入2 鍵則LED 快閃,輸入3 鍵則LED 慢閃。 --- 33-2使用Arduino 板控制LED 單燈閃爍左移,同時將LED 目前狀態傳送至電腦中。當LED 亮時,狀態為HIGH;當LED 暗時,狀態為LOW。 --- ```Arduino= int led[] ={10,11,12,13}; int i=0,j; void setup() { Serial.begin(9600); for(int i=0;i<4;i++) { pinMode(led[i],OUTPUT); } } void loop() { Serial.print("LED="); for(j=0;j<4;j++) { if(j==i) Serial.print("1"); else Serial.print("0"); } Serial.println(); digitalWrite(led[i],HIGH); delay(200); digitalWrite(led[i],LOW); delay(200); digitalWrite(led[i],HIGH); delay(200); digitalWrite(led[i],LOW); i--; if(i<0) i=3; } ``` --- 38-3從Arduino板接收傳腦傳送的訊息,並於Serial Monitor視窗顯示所接收的數字,須可接收與顯示 -32768以上到32767以下的數字。 --- ```Arduino= int num = 0; void setup() { Serial.begin(9600); } void loop() { if (Serial.available() > 0) { num = Serial.read(); Serial.print("I received: "); Serial.write(num); //Serial.print(", "); //Serial.println(num); } Serial.println(""); Serial.print("total is : "); } ``` --- 44-1接收電腦鍵盤輸入鍵值來控制LED。輸入0 鍵則LED 暗,輸入1 鍵則LED 亮,輸入2 鍵則LED 快閃,輸入3 鍵則LED 慢閃。 --- ```Arduino= int val; int flash=100; int led=13; void setup() { Serial.begin(9600); pinMode(led,OUTPUT); } void loop() { if (Serial.available()) { val = Serial.read(); switch (val){ case '0': digitalWrite(led, LOW); break; case '1': digitalWrite(led, HIGH); break; case '2': digitalWrite(led, HIGH); delay(200); digitalWrite(led,LOW); delay(200); digitalWrite(led, HIGH); delay(200); break; case '3': digitalWrite(led, HIGH); delay(500); digitalWrite(led,LOW); delay(500); digitalWrite(led,HIGH); delay(500); break; } } } ```