|
不啰嗦,直接上圖:
原理圖.jpg (140.63 KB, 下載次數(shù): 172)
下載附件
原理圖
2015-12-30 01:43 上傳
QQ截圖20151230015041.jpg (143.06 KB, 下載次數(shù): 180)
下載附件
效果圖
2015-12-30 01:51 上傳
代碼:
- //Proteus虛擬Arduino串口通訊測試 - 說:沒有注釋的代碼不是好代碼!
- int Cmd,Power1,Power2;//定義3個(gè)整型變量:Cmd為接收串口數(shù)據(jù),Power1和Power2分別儲(chǔ)存兩個(gè)小燈的工作狀態(tài)
- int Led_Left = 6;//定義左邊小燈對應(yīng)arduino的IO口
- int Led_Right = 7;//定義右邊小燈對應(yīng)arduino的IO口
- int Power_Led = 13;//定義電源指示燈
- //初始化arduino
- void setup() {
- Serial.begin(9600);//定義串口波特率
- pinMode(Power_Led, OUTPUT);//定義左邊小燈IO口的工作模式為輸出
- pinMode(Led_Left, OUTPUT);//定義左邊小燈IO口的工作模式為輸出
- pinMode(Led_Right, OUTPUT);//定義右邊小燈IO口的工作模式為輸出
- }
- //arduino主循環(huán)函數(shù)
- void loop() {
- digitalWrite(Power_Led,HIGH);//點(diǎn)亮電源燈
- Cmd = Serial.read();/*讀取串口緩沖區(qū)數(shù)據(jù)*/
- //處理讀取到的數(shù)據(jù)
- if(Cmd != -1){
- Serial.print("Get Command:"); Serial.println((char)Cmd);
- }
- switch(Cmd){
- //判斷指令數(shù)據(jù),并反饋
- case '1':Power1 = 1;Serial.println("The Led_Left Trun On!");break;
- case '2':Power1 = 0;Serial.println("The Led_Left Trun Off!");break;
- case '3':Power2 = 1;Serial.println("The Led_Right Trun On!");break;
- case '4':Power2 = 0;Serial.println("The Led_Right Trun Off!");break;
- default: break;
- }
- //處理小燈的工作狀態(tài)
- switch(Power1){
- case 0:digitalWrite(Led_Left,LOW);break;
- case 1:digitalWrite(Led_Left,HIGH); break;
- default: break;
- }
- switch(Power2){
- case 0:digitalWrite(Led_Right,LOW);break;
- case 1:digitalWrite(Led_Right,HIGH);break;
- default: break;
- }
- }
復(fù)制代碼
poeteus8.3Sp2 可以直接創(chuàng)建Arduino開發(fā)板,其他不啰嗦了。
|
評分
-
查看全部評分
|