LinkIt Smart 7688 DuoDuo 使用 7688 控制板上LED
LinkIt Smart 7688 Duo功能很多,但是感測器與馬達等控制Arduino都把程序標準化,最好的控制方法是把控制都交給Arduino最後再把數值傳給7688 .
要了解Arduino與7688溝通的方法,首先就要確認7688動作是正常的.
開啟PuTTY 用SSH進入LinkIt Smart 7688,IP是LinkIt Smart 7688 Duo的IP.
LinkIt Smart 7688 Duo 支援Node.js.要證明LinkIt Smart 7688 Duo回應正常,用node.js最方便.
在PuTTY的視窗鍵入vim app.js (編輯app.js) " Enter"
這時候會進入vim的編輯視窗,然後按"i"進入編輯模式,可以開始打字,打console.log(’Hello World’); 列印 "Hello World"
然後按"Esc"退出編輯模式, 按 ":wq!" "Enter"就會離開存檔
對vim 編輯程式不熟的人用vim真的有點困難,但是LinkIt Smart 7688 Duo只支援vim,所以只能另求辦法,最好的方法是在Windows編好後再送入LinkIt Smart 7688 Duo執行,目前LinkIt Smart 7688 Duo支援SCP.要7688執行的檔案先用Windows編好後再傳給7688執行.
先到這裡下載Winscp
安裝Winscp 下一步下一步
按Finish 後在執行WinSCP
File protocol : SCP
Host name : 7688 主機位址
user name : root
Password : 你設定的7688密碼
按Login後會進入 7688主機,左邊是你電腦的檔案目錄,右邊是7688的檔案目錄,可以看到剛剛編輯的app.js這個檔案,
WinSCP就現放著
現在先開啟Arduino 的IDE 在草稿碼輸入
void setup() {
Serial.begin(115200); // 這個是跟電腦連接的 COM
Serial1.begin(57600); // 這個是跟 MT7688 連接的COM
pinMode(13, OUTPUT); //Arduino 接腳 Pin13
}
void loop() {
int c = Serial1.read(); // 讀取 MT7688 COM
if (c != -1) {
switch(c) {
case '0': // 如果讀到 "0"
digitalWrite(13, 0); // Pin 13 輸出 "0"
break;
case '1': // 如果讀到 "1"
digitalWrite(13, 1); //Pin13 輸出 "1"
break;
}
}
}
然後上傳給 LinkIt Smart 7688 Duo 的 Arduino (ATMega32U4) MCU.
用記事本編輯 led.py檔案
#-*- coding:cp950 -*-
#以上這一行讓Python能用中文註解
#注意縮排
import serial
import time
s = None
def setup():
global s
# 開啟 COM /dev/ttyS0,跟Arduino (ATMega32U4)連接,速度57600
s = serial.Serial("/dev/ttyS0", 57600)
def loop():
# COM 寫入 "1"
s.write("1")
#等1秒
time.sleep(1)
# COM寫入 "0"
s.write("0")
#等一秒
time.sleep(1)
if __name__ == '__main__':
setup()
while True:
loop()
存檔後將led.Py這檔案拖曳進WinSCP的右邊視窗,WinSCP會詢問是否放進root跟目錄,按OK,WinSCP右邊視窗會多一個led.py的檔案
在PuTTY 視窗執行 python led.py
LinkIt Smart 7688 Duo板上LED就會每秒閃一次
要結束就按 "Ctrl"+ "C"
沒有留言:
張貼留言