現(xiàn)在我們開始體驗一種全新的物聯(lián)網(wǎng)開發(fā)方式----移遠(yuǎn)QuecPython。
一. 什么是QuecPython
移遠(yuǎn)QuecPython是基于micropython矿瘦,并整合了移遠(yuǎn)通訊功能的船新版本??????
用python開發(fā) + 官方固件包含通訊模組庫 + 兼容MicroPython + 性價比超高的cat1, cat4通訊模組!
你說有沒有搞頭?
附:QuecPython系統(tǒng)架構(gòu)圖
從系統(tǒng)架構(gòu)圖中可以看出十办,從平臺底層到用戶接口層的架構(gòu)分層十分清晰,分別是Hardware平臺硬件層、平臺OS層兄纺、QuecPython Adapter Layer平臺適配層、QuecPython VM虛擬機層化漆、QuecPython Compiler編譯器層和QuecPython Modules用戶接口層估脆。
其中Hardware平臺硬件層,平臺OS層屬于C-SDK部分座云;QuecPython Adapter Layer平臺適配層疙赠,QuecPython VM虛擬機層,QuecPython Compiler編譯器層和QuecPython Modules用戶接口層屬于完整的QuecPython結(jié)構(gòu)層次朦拖。
用戶僅需關(guān)注QuecPython Modules用戶接口層圃阳,該層提供了大量的API接口,包括I2C/SPI/GPIO/AUDIO/PWM/POWER/ADC/FOTA/Datacall/Aliyun等模塊璧帝。
二. 我使用的開發(fā)板: EC600X_QuecPython_EVB_V1.2
1. 開發(fā)板資源
Quectel移遠(yuǎn) EC600X Cat.1 通信模組
NANO SIM自彈卡座
GPS捍岳、LTE、WIFI/BT天線接口
USB Type-C數(shù)據(jù)接口
PWRKEY按鍵,RST按鍵锣夹,強制下載按鍵
兩個自定義功能按鍵
音頻功放页徐,支持最高4Ω2W喇叭
溫濕度傳感器
G-Sensor 三軸加速度傳感器
單色燈
駐極體MIC
Speaker 音頻輸出
光敏電阻
GPIO排針
LCD排針
三. 安裝驅(qū)動
長按 PWK開機,聽到了PC的叮咚聲, 設(shè)備管理器里多了一坨未識別設(shè)備
現(xiàn)在開始安裝驅(qū)動吧
下載地址: https://python.quectel.com/download 選ASR USB 驅(qū)動--Windows10
安裝完成后,發(fā)現(xiàn)驅(qū)動正常了:
驅(qū)動完成后, 我們發(fā)現(xiàn)還有一個未驅(qū)動的警告, 我咨詢了一下官方, 無視它即可.
四. QPYcom工具
該工具用于:
- 用戶燒錄固件
- 用戶向設(shè)備中下載腳本
- 運行python交互模式
首先, 我們下載QPYcom
下載地址: https://python.quectel.com/download
下載完成后直接運行即可
五. 固件燒錄
上面的圖我們可以看到, 我們只有兩個串口, 一個AT 一個DIAG , 而我們平時用的是COM PORT口, 為什么沒有呢? 因為我們還沒有燒錄固件.
這里官方文檔寫的完全順序錯亂, 請留意, 拿到板子先燒固件.
固件下載還是在上面的下載地址
使用QPYcom工具下載固件的步驟如下:
下載QPYcom工具后,完整解壓到任意目錄银萍,雙擊QPYcom.exe運行
將開發(fā)板連接到電腦并開機变勇;
點擊“下載”標(biāo)簽,進入下載頁
在下載頁面左側(cè)導(dǎo)航欄創(chuàng)建項目贴唇,然后點擊“選擇固件”選擇固件包
- 左鍵點擊頁面右下角倒三角形搀绣,在彈出的菜單中選擇“下載固件”菜單,點擊“下載固件”按鈕滤蝠,工具自動開始固件下載
下載固件時豌熄,無需選擇串口,工具將自動選擇并開始下載
請勿同時插入兩個或兩個以上的開發(fā)板物咳,以免工具無法識別锣险,導(dǎo)致下載出錯
下載完成后, 我們多了一個COM
六. 體驗命令行
python互動命令行大家都很熟悉吧, 我們稍微體驗一下:
七. 燒錄第一個腳本程序
我們先寫一個小腳本
import utime
def sayHello():
for i in range(30):
print('hello world!')
utime.sleep(1)
if __name__ == '__main__':
sayHello()
1. 燒錄腳本
點擊“文件”標(biāo)簽,進入文件頁(左側(cè)為電腦本地的文件览闰;右側(cè)為模塊端的文件)
左側(cè)瀏覽電腦的文件芯肤,并選擇對應(yīng)的.py文件,拖動該文件到右側(cè)的“Root”根節(jié)點压鉴,松開鼠標(biāo)左鍵崖咨,即可自動下載文件到模塊(也可以點擊右側(cè)欄的“+”按鈕,瀏覽并選擇文件油吭,將文件下載到模塊內(nèi))文件下載過程中击蹲,頁面底部狀態(tài)欄有下載進度,進度到100%表示文件下載成功婉宰。
此時 hello world.py文件已經(jīng)下載到模塊主目錄下歌豺,可以通過QPYcom工具的“交互”查看,輸入命令:
import uos
uos.listdir('/usr')
現(xiàn)在我們的程序已經(jīng)寫好了
2. 運行腳本
方式1:
運行后去交互控制臺看結(jié)果
方式2:
導(dǎo)入 example 模塊心包,并使用exec方法運行 python 腳本程序:
import example
example.exec(‘/usr/hello.py’)
目前的QPYcom不好用, 運行死循環(huán)程序后, 我們要把硬件reset 重啟QPYcom才可以
八. 開機自動運行
QuecPython支持上電自動執(zhí)行用戶代碼类咧。Quectel 通信模組上電運行后,QuecPython會查找用戶分區(qū)下名成為 main.py的程序文件并自動執(zhí)行該文件蟹腾。所以如果用戶希望能上電后自動運行自己的代碼痕惋,需要將自己的程序命名為main.py,連同它的依賴等文件娃殖,一起下載到模塊內(nèi)值戳。
我們編寫一個main.py
from usr import hello
hello.sayHello()
按一下開發(fā)板上的 RESET 按鍵,系統(tǒng)啟動后炉爆,重新連接主串口述寡,電腦鍵盤按下 Enter鍵柿隙,進入交互界面即可看到自動運行結(jié)果
自動運行的腳本,或者循環(huán)輸出的腳本鲫凶,將無法使用Ctrl+C停止運行禀崖; 鎖死交互的模塊,也無法終止腳本運行螟炫; 唯一的方法是:重刷固件波附。