#include char Word;//宣告變數 const int In1 = 4; // 宣告整數常數In1,宣告為4號腳位 const int In2 = 5; const int In3 = 6; const int In4 = 7; void setup() { Serial.begin(9600); pinMode(In1, OUTPUT); pinMode(In2, OUTPUT); pinMode(In3, OUTPUT); pinMode(In4, OUTPUT); Stop(); //先讓車停下來 } void loop() { if(Serial.available()){ Word=Serial.read(); Serial.println(Word); switch(Word){ case'F': Forward(); break; case'B': Backward(); break; case'R': Right(); break; case'L': Left(); break; case'S': Stop(); break; } } } void Forward(){ // 宣告函數 mforward() digitalWrite(In1, HIGH); // digitalWrite: digitalWrite(In2, LOW); // 輸出數位訊號的指令(接腳編號, 輸出訊號) digitalWrite(In3, HIGH); digitalWrite(In4, LOW); // 高電位(HIGH或1) 低電位(LOW或0) } // 車體前進 = 左右馬達正轉 void Backward(){ digitalWrite(In1, LOW); // 車體後退 = 左右馬達反轉 digitalWrite(In2, HIGH); digitalWrite(In3, LOW); digitalWrite(In4, HIGH); } void Right(){ digitalWrite(In1, LOW); // 車體左轉 = 右馬達正轉,左馬達反轉 digitalWrite(In2, HIGH); digitalWrite(In3, HIGH); digitalWrite(In4, LOW); } void Left(){ digitalWrite(In1, HIGH); // 車體右轉 = 左馬達正轉,右馬達反轉 digitalWrite(In2, LOW); digitalWrite(In3, LOW); digitalWrite(In4, HIGH); } void Stop(){ digitalWrite(In1, LOW); // 車體停止 digitalWrite(In2, LOW); digitalWrite(In3, LOW); digitalWrite(In4, LOW); }