“這個世界上本沒有節(jié)日,諧音梗多了,就有了節(jié)日?!薄斞?/p> 從2014年起,中國的互聯(lián)網(wǎng)圈把10月24日定為程序員節(jié),到今年2021年已經(jīng)是
第1000個 程序員節(jié)了。祝各位開發(fā)者節(jié)日快樂!
程序員節(jié) 雖然搞嵌入式開發(fā)的也能算半個碼農(nóng),但是,啥時候能有真正屬于咱電子人的節(jié)日?可能有些讀者朋友注意到了,我好久沒有更新原創(chuàng)文章了!因為最近一直忙著
換工作、租房子、搬家 等一些瑣事,現(xiàn)在入職新公司有1個月的時間了,還在熟悉公司業(yè)務(wù)。其實這些都是借口,就是懶!哈哈!很長時間沒發(fā)過板卡評測的文章了,今天我們來評測沁恒的一款
RISC-V 開發(fā)板 。提到沁恒這個名字,可能有些朋友感到陌生,但是有一款芯片你肯定知道,那就是CH340——一款USB-TTL串口的轉(zhuǎn)換芯片。記得我大學(xué)期間,第一次接觸的單片機是51系列,如STC89C51,它的下載方式是通過串口下載,所使用的的模塊就是基于CH340,后來接觸到STM32,也可以通過它進行串口下載,或者通過串口輸出調(diào)試信息。而CH340的廠家,就是
WCH沁恒微電子 !
沁恒微電子 今天我們要評測的是沁恒新出的RISC-V開發(fā)板——
CH32V103R8T6-EVT-R1評估板 。它長這樣↓↓↓
沁恒RISC-V開發(fā)板 是不是很熟悉,其實也可以稱之為
CH32V103R_NUCLEO 。
. 關(guān)于RISC-VCH32V103是一款
RISC-V內(nèi)核 芯片,在進行評測之前我們有必要了解一下RISC-V架構(gòu)。記得第一次認識RISC-V,是2019年4月參加在北航舉辦的RISC-V技術(shù)沙龍,也是我第一次參加線下的技術(shù)交流活動,第一次了解這個和ARM、x86完全不同的另一種全新的架構(gòu):
RISC-V ,當(dāng)時國產(chǎn)的RISC-V內(nèi)核芯片還寥寥無幾,短短兩年時間,很多國產(chǎn)RISC-V內(nèi)核芯片量產(chǎn):兆易GD32V、沁恒CH32V、樂鑫ESP32-C3、全志D1、阿里平頭哥等等。關(guān)于RISC-V更多的介紹,可以查看之前發(fā)的幾篇關(guān)于RISC-V的文章:
RISC-V當(dāng)真是中國處理器產(chǎn)業(yè)的最后一次機會? 兆易半導(dǎo)體RISC-V內(nèi)核MCU上線,MCU架構(gòu)真要三分天下? 《手把手教你設(shè)計CPU——RISC-V處理器》讀書筆記 阿里平頭哥首次交貨——玄鐵910是個啥?是芯片嗎? NXP恩智浦VEGA織女星開發(fā)板免費申請! 其實RISC-V從2019年開始,才算是真正進入主流市場,政策的支持、半導(dǎo)體公司的崛起,很多公司都想在RISC-V新賽道有一番作為,據(jù)不完全統(tǒng)計,中國目前有300家以上的公司在參與RISC-V相關(guān)軟硬件開發(fā)。
. 板載硬件資源熟悉了RISC-V架構(gòu),我們來看看板子都有哪些資源吧!
主控:RISC-V內(nèi)核MCU—CH32V103R8T6 ,LQFP64M封裝 調(diào)試器:板載WCH-Link調(diào)試器,集成CDC串口功能,基于沁恒8051內(nèi)核MCU CH549G實現(xiàn),Type C接口,預(yù)留WCH-Link調(diào)試跳線,可以自由選擇是否使用板載調(diào)試器 按鍵:兩路輕觸按鍵,一個復(fù)位,一個用戶可編程 LED:6路,3路用于調(diào)試器指示狀態(tài),2路用戶LED,1路電源指示 開關(guān):核心板電源開關(guān),當(dāng)需要重啟時,不需要插拔USB口 GPIO:預(yù)留Arduino UNO接口,可以直接連接Arduino外設(shè)模塊,GPIO通過2.54mm間距排針引出,包括BOOT選擇。 USB:1路USB2.0通過Type C和USB母座引出,可以用于來連接U盤、鍵鼠等USB設(shè)備。 板載資源 . CH32V103R8T6資源CH32V103是沁恒RISC-V內(nèi)核MCU系列中的
32位通用MCU 產(chǎn)品,采用自研
RISC-V3A處理器 ,最高80MHz主頻。芯片內(nèi)部框圖
CH32V103芯片框圖 RISC-V內(nèi)核32位通用MCU,基于RISC-V3A處理器,最高80MHz系統(tǒng)主頻。 20KB SRAM、64KB Flash、51個用戶GPIO 2.7-5.5v寬供電范圍,-40~85℃工業(yè)級溫度范圍 16路ADC/觸摸按鍵通道 7個定時器:3個通用、1個高級、2個看門狗、1個系統(tǒng)時鐘 2路SPI、2路I2C、3路USART,1路USB 2.0,支持主機/設(shè)備模式 根據(jù)不同的存儲、RAM、外設(shè)資源,目前主要有4個型號
CH32V103系列 . 板卡細節(jié)主控芯片,CH32V103R8T6
主控芯片CH32V103 板載WCH-Link調(diào)試器,而且集成了CDC串口功能,基于CH549G方案,目前常用的數(shù)據(jù)線通常是TypeC接口,所以這款板卡也采用的TypeC接口。
調(diào)試器芯片CH549 EPSON 晶振,8M和32.768k。
板載晶振 撥動電源開關(guān),只用于核心板電源控制,調(diào)試器電源不會被斷開。
撥動開關(guān) USB 2.0接口,芯片只有1路USB2.0,板卡提供了Type C和USB母座兩種接口形式,可以做一些USB相關(guān)的應(yīng)用,比如外接U盤、鼠標或鍵盤等。
USB_2.0接口 USB連接器為富士康品牌
富士康USB座 兩路按鍵,1個復(fù)位,1個用戶可編程。
兩路按鍵 . 配套軟硬件文檔對于MCU開發(fā),除了開發(fā)環(huán)境外,比較重要的有4個文檔:
數(shù)據(jù)手冊、參考手冊、固件庫、使用例程 。除了以上文檔之外,沁恒還提供有
評估板說明書、原理圖、芯片SCH/PCB封裝 等。目前,半導(dǎo)體廠商的集成開發(fā)環(huán)境主要可分為2類。
這類平臺,廠家只需要提供器件支持包就可以使用,功能簡潔,集成代碼編輯、下載、調(diào)試功能,可以方便在不同芯片平臺間切換,但是代碼編輯功能實在有限,而且需要License授權(quán)費。如Keil MDK、IAR等。
通常是廠家基于Eclipse平臺深度定制,功能強大、界面美觀、操作簡單,配合ARM交叉編譯工具鏈,可以完成程序的下載、調(diào)試等功能,而且還集成了串口終端。這類開發(fā)環(huán)境通常無授權(quán)費用,對于用戶非常友好。如CH32V103開發(fā)環(huán)境MounRiver Studio,GD32V開發(fā)環(huán)境Nuclei Studio IDE,STM32 Cube IDE/True Studio,瑞薩e2 studio,NXP的MCUXpresso IDE,Microsemi的SoftConsole等,這些都是基于開源的Eclipse框架開發(fā)。其他還有RT-Thread Studio,卡姆派樂集成開發(fā)環(huán)境等等。CH32V103使用
MounRiver Studio (簡稱MRS)開發(fā),基于Eclipse深度定制開發(fā),支持Keil工程一鍵導(dǎo)入、RISC-V/ARM跨內(nèi)核遷移,除了支持沁恒ARM和RISC-V內(nèi)核MCU開發(fā)外,還支持GD32VF103開發(fā)。
MRS開發(fā)環(huán)境 提供的例程涵蓋了所有的外設(shè)資源:
例程 . CH32V103工程創(chuàng)建使用MRS創(chuàng)建示例工程非常簡單,全程無需寫一行代碼,無論是裸機工程還是RTOS工程,軟件會自動添加所需要的驅(qū)動庫和示例代碼,而且已經(jīng)實現(xiàn)了延時函數(shù)和UART printf支持。在使用MRS新建RTOS工程時,支持創(chuàng)建基于3種常見RTOS的工程模板,分別是
FreeRTOS、RT-Thread和Harmony LiteOS-M ,當(dāng)創(chuàng)建完成之后,你就獲得了一個基于RTOS的工程模板,無需任何修改,直接編譯下載,就可以運行,非常方便。
支持RTOS工程創(chuàng)建 從驅(qū)動庫函數(shù)來看,大部分函數(shù)名和STM32一樣,對于STM32的用戶遷移到CH32V103平臺非常方便,整體代碼不需要做太多的修改。部分外設(shè)驅(qū)動庫函數(shù):
void ?GPIO_DeInit (GPIO_TypeDef*?GPIOx) ;void ?GPIO_AFIODeInit (void ) ;void ?GPIO_Init (GPIO_TypeDef*?GPIOx,?GPIO_InitTypeDef*?GPIO_InitStruct) ;void ?GPIO_StructInit (GPIO_InitTypeDef*?GPIO_InitStruct) ;uint8_t ?GPIO_ReadInputDataBit(GPIO_TypeDef*?GPIOx,?uint16_t ?GPIO_Pin);uint16_t ?GPIO_ReadInputData(GPIO_TypeDef*?GPIOx);uint8_t ?GPIO_ReadOutputDataBit(GPIO_TypeDef*?GPIOx,?uint16_t ?GPIO_Pin);uint16_t ?GPIO_ReadOutputData(GPIO_TypeDef*?GPIOx);void ?GPIO_SetBits (GPIO_TypeDef*?GPIOx,?uint16_t ?GPIO_Pin) ;void ?GPIO_ResetBits (GPIO_TypeDef*?GPIOx,?uint16_t ?GPIO_Pin) ;void ?GPIO_WriteBit (GPIO_TypeDef*?GPIOx,?uint16_t ?GPIO_Pin,?BitAction?BitVal) ;void ?GPIO_Write (GPIO_TypeDef*?GPIOx,?uint16_t ?PortVal) ;. 沁恒RISC-V產(chǎn)品線可能有些開發(fā)者以為沁恒只有USB、以太網(wǎng)、PCI等這些專用的接口轉(zhuǎn)換芯片,其實沁恒還有很多通用MCU產(chǎn)品,包括
E8051內(nèi)核、ARM Cortex-M0/M3內(nèi)核,RISC-V內(nèi)核 的MCU產(chǎn)品等等。
沁恒通用MCU產(chǎn)品 其中RISC-V內(nèi)核產(chǎn)品是近兩年才推出,主要有3個系列:低功耗藍牙、32位通用和超高速接口。
集成低功耗藍牙MCU:CH573/583系列 ,BLE 5.1,最低睡眠電流0.2uA,USB 2.0等 32位通用MCU:CH32V10x/20x/30x ,最高144MHz主頻,ADC/DAC/SPI/I2C/UART外設(shè),USB2.0等 超高速接口MCU:CH569/5 ,千兆以太網(wǎng)、3.8G高速接口口,USB3.0 OTG RISC-V產(chǎn)品 . 資料下載CH32V103配套的軟硬件資料還是非常齊全的,主要包括
中文數(shù)據(jù)手冊、參考手冊、評估板原理圖和說明書、外設(shè)使用例程、開發(fā)環(huán)境 等等。
資料包 MRS集成開發(fā)環(huán)境V151安裝包:
http://file.mounriver.com/upgrade/MounRiver_Studio_Setup_V151.zip MRS集成開發(fā)環(huán)境V151補丁包:
http://file.mounriver.com/upgrade/MounRiver_Update_V151.zip 以上資料包可以到官方網(wǎng)站下載:
http://www.wch.cn/products/CH32V103.html 或者關(guān)注公眾號,后臺回復(fù):
211023 ,獲取資料打包下載鏈接。
. 總結(jié)很明顯,無論是硬件配置還是開發(fā)方式,CH32V103對標的是STM32F103,對于想更換MCU平臺的用戶可以非??焖俚耐瓿蛇w移。對于早期使用沁恒ARM內(nèi)核的用戶,遷移到RISC-V內(nèi)核也非常方便,因為兩者除了內(nèi)核不同,資源配置,外設(shè)操作這些應(yīng)用層面的幾乎一致。最近兩年,受益于國家的投入與政策的支持,疊加全球“芯片荒”,中國半導(dǎo)體產(chǎn)業(yè)進入發(fā)展“黃金期”,國產(chǎn)
RISC-V 芯片也如雨后春筍般涌現(xiàn)。國產(chǎn)芯片的發(fā)展,強大的生態(tài)是關(guān)鍵,文檔手冊、
開發(fā)板 、固件庫,交流社區(qū),技術(shù)支持,創(chuàng)意競賽,大學(xué)計劃等等。我想經(jīng)歷過美國技術(shù)卡脖子、芯片缺芯之后,更多的用戶會選擇國產(chǎn)芯片來替代進口芯片,這對國產(chǎn)芯片是很有利的,但也不能盲目樂觀,由于芯片研發(fā)技術(shù)門檻高、資金大、周期長,爆雷事件也偶有傳出。未來一段時間,腳踏實地才能保證確保我國集成電路產(chǎn)業(yè)良性發(fā)展。
. 更多FPGA固件如何進行在線升級? 基于STM32的FPGA下載器USB Blaster 開源、低成本的Xilinx FPGA下載器 手把手教你制作Jlink-OB調(diào)試器 手把手教你用Qt寫一個串口助手控制LED 嵌入式軟硬件都開源的項目