本來是想自己開發(fā)一個(gè)藍(lán)牙的小板子,偶然看到了電子技術(shù)應(yīng)用網(wǎng)站推出開發(fā)板免費(fèi)測(cè)評(píng)活動(dòng),一眼就看到了沁恒微電子的CH579M開發(fā)板,怎么會(huì)有這么巧的事情。第一次接觸藍(lán)牙開發(fā),正愁沒有一塊開發(fā)板來學(xué)習(xí),這下芯片選型和開發(fā)板一下子解決了。最吸引我的是,當(dāng)我查到沁恒微的官網(wǎng),看到這么全的資料和開發(fā)工具,這不正是我需要的,于是我果斷報(bào)了名。
之所以選CH579,是因?yàn)樗軌蛑С謐eil做全開發(fā)環(huán)境,全中文資料,上手難度瞬間低非常多。資料寫的很詳盡,非常契合開發(fā)者的需求,比如單獨(dú)介紹了天線的PCB layout的注意事項(xiàng)。在這些資料中,我自己也直觀得了解到了到了很多以前沒學(xué)過的知識(shí),對(duì)我后續(xù)基于這塊MCU開發(fā)其他應(yīng)用提供了不小的幫助。相比于我之前選型的芯片,難度一下子就下降一大截。
收到板子后當(dāng)然要簡(jiǎn)單介紹一下這塊開發(fā)板了,板子是沉金板,插針也是鍍金的,用料還是很扎實(shí)的。開發(fā)板上帶一個(gè)16pin的USB-TYPE-C,一個(gè)USB-TYPE-A,一個(gè)以太網(wǎng)接口,接口還是非常豐富的,有兩個(gè)可編程led,沒有可編程按鍵。最重要的是板載一根2.4G藍(lán)牙天線,拓展了無線應(yīng)用??傮w來說,這塊板子的集成度還是很不錯(cuò)的,接口種類很全,相比stm32來說,個(gè)人認(rèn)為這塊板子比較適合進(jìn)階學(xué)習(xí),適合物聯(lián)網(wǎng)應(yīng)用開發(fā)。
然后可以測(cè)試一下板子,在官方提供的開發(fā)資料里面可以找到例程壓縮包和下載器,例程和相關(guān)資料的下載連接:搜索 CH579 - 南京沁恒微電子股份有限公司 (wch.cn)
下載以后先安裝下載器,然后解壓例程壓縮包。
在壓縮包的這個(gè)路徑下:\CH579EVT\EVT\PUB,有CH57X芯片的keil pack文件,先點(diǎn)擊安裝。
有keil就可以直接next默認(rèn)安裝,沒有keil的要先安裝keil。我這臺(tái)電腦已經(jīng)裝了keil所以顯示的安裝路徑就是keil的packs路徑。安裝好以后就可以打開一個(gè)例程進(jìn)行編譯下載測(cè)試了。我選擇比較簡(jiǎn)單的UART例程。打開以后可以看到它的功能就是上電先配置IO,然后配置串口UART1,發(fā)送一串字符串,字符串定義在主函數(shù)前面。注意:例程里的串口速率默認(rèn)配置為115200,在uart.c文件中可以看到,可以手動(dòng)更改。
編譯成功以后就可以下載了,CH57X芯片支持多種下載方式:串口、usb、swd。具體的下載教程在這個(gè)官方文檔中:http://theprogrammingfactory.com/resource/share/2000003005
我使用的是串口下載,先用杜邦線連接好usb轉(zhuǎn)串口模塊和開發(fā)板,按住download鍵以后再上電,就可以進(jìn)行一次下載,每次下載完成后,都要重復(fù)一次進(jìn)入download模式才能進(jìn)行下一次下載。
打開之前安裝的官方下載工具,選擇對(duì)應(yīng)的芯片系列,選擇芯片信號(hào),我的就是CH579了,選擇串口下載,當(dāng)然也可以用usb下載,找根type-c線連接電腦就行,上電操作也是一樣的。然后搜索,找到對(duì)應(yīng)的串口。之后添加hex文件,點(diǎn)擊下載就可以了。
使用串口調(diào)試助手進(jìn)行簡(jiǎn)單的測(cè)試,復(fù)位以后會(huì)先發(fā)送串語句,然后不斷的將接收到的數(shù)據(jù)發(fā)送回來,效果如下圖。
接下來的重點(diǎn)當(dāng)然是要測(cè)試一下CH579M這塊開發(fā)板的藍(lán)牙功能。在歷程的BLE文件夾下面有很多藍(lán)牙例程,我們選擇一個(gè)HID_Consumer這個(gè)例程進(jìn)行編譯下載,這個(gè)代碼主要的功能就是在連接手機(jī)后,每隔幾秒向手機(jī)發(fā)送“音量-”的按鍵信息,如果手機(jī)打開相機(jī),就可以每隔幾秒拍一張照片。演示效果如下,開發(fā)板的藍(lán)牙設(shè)備名稱就是HID Consumer,識(shí)別為一個(gè)控制器。
作為初學(xué)者,目前只能測(cè)到這里啦。整個(gè)藍(lán)牙協(xié)議相對(duì)來說還是比較復(fù)雜的,同時(shí)沁恒微還針對(duì)藍(lán)牙協(xié)議棧開發(fā)了一套專用的操作系統(tǒng)TMOS,對(duì)于操作系統(tǒng)來說我還是初學(xué)者,如果想要學(xué)習(xí)沁恒微的藍(lán)牙開發(fā),可以先從這篇博客TMOS使用說明 - Wahahahehehe - 博客園 (cnblogs.com)開始了解,也可以下載沁恒微TMOS的官方文檔1621404024192636.pdf (wch.cn)學(xué)習(xí)。
總結(jié)來說,這塊開發(fā)板的做工不錯(cuò),硬件資源很全,美中不足就是如果能擠出一個(gè)位置給一個(gè)用戶自定義按鍵就好了,這樣使用剛才那個(gè)藍(lán)牙拍照的例程就可以完成一個(gè)遠(yuǎn)程拍照按鈕的功能,可玩性會(huì)更高。最重要的是,官方提供的開發(fā)資料和開發(fā)工具非常齊全,資料寫的也很詳細(xì),無論是初學(xué)者還是項(xiàng)目開發(fā),有這樣的一套開發(fā)資源都會(huì)讓學(xué)習(xí)和開發(fā)過程省力很多。
最后給大家看一下我目前基于CH579芯片設(shè)計(jì)的一個(gè)藍(lán)牙模塊的原理圖,使用的軟件是LC-EDA Pro,目前只將最小系統(tǒng)和藍(lán)牙天線部分畫完了,參考的是官方的開發(fā)板原理圖。