今天是2020年4月15日,川大公佈了考研複試線,我以幾分之差沒能進入複試。回想起高考差一分上天津大學,仍然十分心疼。
BC26介紹
BC26 支持NB-IOT通信使用的是MT2625主頻78MHz,用戶可使用ROM:195.3 KB/RAM:97.7 KB。由於支持OpenCPU,可以二次開發,節省一個MCU的成本,並且擁有較大的ROM和RAM。
官方提供的BC26 OpenCPU SDK是在Windows平臺下的編譯器和make,項目管理由MakeFile實現,芯片燒錄由聯發科官方提供的IOT Flash Tool完成。
由於在開發過程中我遇到了種種不便:
1.build log輸出到文件,不方便定位錯誤,每次需要打開文件查找“error”
2.無法實時查找語法錯誤
3.由於項目管理沒有使用Cmake,編輯器的自動補全功能很有限
4.感覺編譯環境不標準,明顯的錯誤都能通過編譯,如:include "ril.h"寫爲了include"ril.h "多了一個空格居然不報錯
BC26之Linux平臺gcc嘗試
所以我嘗試使自己搭建編譯平臺,我嘗試過在Linux下安裝相同版本的gcc,自己寫CMakeFile,但是最後卡在了上傳上。
在Linux平臺上可以使用Github上的BC66(C26的海外版)下載程序(Python)。可是BC26下載APP.bin時串口921600波特率,我使用CH340 USB轉串口模塊下載一直出現異常;在Linux下使用Windows虛擬機+聯發科官方IOT Flash Tool依然無法下載。經邏輯分析儀觀察後發現,在Linux(Ubuntu 18.04)上921600波特率脈寬不穩定導致傳輸錯誤,在Windows上使用正常。所以不得不拋棄此方案。
重頭戲PlatformIO
在GitHub上尋覓Linux的BC26下載軟件時,偶然發現有一個PlatformIO平臺支持移遠多款模塊的二次開發,並且此平臺支持Windows、Linux、macOS全平臺,同時支持VSCode(主要支持)、Clion、Sublime Text等衆多編輯器。
支持平臺一覽
根據表格支持Arduino、OpenCPU等多種開放架構。
案例介紹
所我使用的是Windows(我嘗試過Ubuntu+PlatformIO但因波特率問題放棄)+VSCode+PlatformIO,安裝方式如下。
VSCode
VSCode就按照普通安裝方式即可,使用此PlatformIO不需手動安裝其他任何VSCode插件。
Python
PlatformIO下載等工具使用的是Python編寫,所以需要安裝Python。我安裝的是Python3.7,安裝時注意勾選Add to PATH,以便將Python加入環境變量。
Git
PlatformIO本身不要求Git,但是我們安裝Quectel支持模塊(含BC26)時PlatformIO需要使用到Git。在Git官網下載安裝即可。
Quectel模塊(含BC26)支持
在前面的都安裝完成後VSCode左側會出現一個小外星人,點擊此圖標後即可進入PlatformIO home頁面。
在home頁面中點擊Platforms,並點擊Advanced Installation,在彈出的對話框中輸入:
https://github.com/Wiz-IO/platform-quectel
即可安裝,稍後安裝完成後即可出現如下已安裝模塊。
此時點擊Home,New Project即可新建BC26 OpenCPU工程。
程序編譯下載可點擊窗口下方工具欄
在下載程序到BC26模塊時應修改項目中的platformio.ini文件,指明下載和串口監視器端口。
下載時應先按住BC26 Restart按鍵不放,待終端出現Start字樣後鬆開Restart按鍵即可下載。
點擊PlatformIO窗口下的Monitor即可打開串口監視器。