- Arduino開發實戰指南:智能家居卷
- 趙志
- 659字
- 2018-12-31 20:28:06
1.2.2 程序代碼
Arduino語言基礎知識部分,大家可以購買相關參考教材或從網上查找相關資料學習,在這里就不贅述了。在下面編程過程中,將結合實例講解Arduino命令的具體含義。
手機和主控板之間是利用串口通過藍牙控制的。Arduino代碼的設計思路是:串口收到命令數值16,程序控制數字口5送出高電平,使繼電器吸起,電路連接,電燈點亮;串口收到命令數值17,程序控制數字口5送出低電平,使繼電器落下,電路斷開,電燈關閉。
打開Aduino開發編碼環境界面,輸入下列代碼:
/********************藍牙控制燈********************/ #define Relay 5 //單路繼電器接口 int ReceiveByte = 0; //接收變量初始化 /********************初始化********************/ void setup() { Serial.begin(9600); //設置串口波特率 pinMode(Relay, OUTPUT); //設置連接繼電器端口為輸出模式 } /********************循環語句********************/ss void loop() { while(1){ if (Serial.available() > 0) { //串口是否有輸入 ReceiveByte = Serial.read(); switch(ReceiveByte){ case 0x10: //十進制數值16轉換為十六進制數值10 digitalWrite(Relay,HIGH); //輸出高電平,繼電器吸起 break; case 0x11: //十進制數值17轉換為十六進制數值11 digitalWrite(Relay, LOW); //輸出低電平,繼電器落下 break; default: break; } } } }
Arduino程序代碼必須包含以下兩個部分:
1)setup()的作用是初始化變量,設置管腳模式,調用庫函數等,此函數只運行一次。
2)loop()函數是一個循環函數,函數內的語句周而復始地循環執行,功能類似于C語言中的main()。
程序編寫完畢后,單擊“編譯”按鈕。如果程序格式正確,在界面下方會提示“編譯完畢”。輸入時注意區分字母的大小寫。
在單擊“下載”按鈕前,先要將藍牙模塊取下來。因為藍牙模塊和下載都占用同一個串口,相互沖突。單擊“下載”按鈕后,界面下方出現“下載中……”提示,同時主控板上的TX和RX的燈也會點亮。程序下載完畢后,界面下方會提示“下載完畢”。
這樣Arduino軟件就編譯完成了。下面要進行Android手機控制軟件的編譯部分。