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