日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > > 嵌入式微處理器
[導(dǎo)讀]昨日,嵌入式ARM一文《 STM32價格瘋長下,盤點STM32的國產(chǎn)替代者 》受到了廣泛關(guān)注。應(yīng)讀者要求,嵌入式ARM將繼續(xù)介紹能夠替代STM32的國產(chǎn)產(chǎn)品。今日帶來能夠完美替代STM32的產(chǎn)品是沁恒微電子的CH32F103以及RISC-V內(nèi)核的CH32V103兩款產(chǎn)品。



昨日,嵌入式ARM一文《 STM32價格瘋長下,盤點STM32的國產(chǎn)替代者 》受到了廣泛關(guān)注。應(yīng)讀者要求,嵌入式ARM將繼續(xù)介紹能夠替代STM32的國產(chǎn)產(chǎn)品。

今日帶來能夠完美替代STM32的產(chǎn)品是沁恒微電子的CH32F103以及RISC-V內(nèi)核的CH32V103兩款產(chǎn)品。

CH32F1系列是基于32位Cortex-M3內(nèi)核設(shè)計的通用微控制器。片上集成了時鐘安全機制、多級電源管理、 通用DMA控制器等。此系列具有 2 路 USB2.0接口、多通道 TouchKey、 12 位 DAC 轉(zhuǎn)換模塊,多通道 12 位 ADC、 多組定時器、 CAN 通訊控制器、 I2C/USART/SPI 等豐富的外設(shè)資源。

CH32V103則是其在去年上半年推出的RISC-V架構(gòu)的32位通用MCU微控制器。CH32V103系列是以RISC-V3A處理器為核心的32位通用微控制器,該處理器是基于RISC-V開源指令集設(shè)計。片上集成了時鐘安全機制、多級電源管理、通用DMA控制器。此系列具有1路USB2.0主機/設(shè)備接口、多通道12位ADC轉(zhuǎn)換模塊、多通道TouchKey、多組定時器、多路IIC/USART/SPI接口等豐富的外設(shè)資源。


多說無益,直接看幾個21ic家網(wǎng)友關(guān)于這兩款開發(fā)板的測評:

【CH32F103測評報告】+基于WCH沁恒CH32F103開發(fā)板點燈編程
用戶:yljon

試驗?zāi)繕?biāo):使用WCH沁恒CH32F103開發(fā)板點燈編程試驗

一、搞點資料看看,電路圖要搞到

從21ic論壇(bbs.21ic.com/iclist-900-1.html)里找些資料看看,強烈推薦下載那個CH32F103評估板說明及參考應(yīng)用例程:CH32F103EVT.ZIP



之所以推薦下載這個壓縮檔,是因為里面有一個非常好的說明文件:



這個說明文件非常棒,介紹了每個目錄的內(nèi)容,為制作這個說明文件的小哥哥點贊!??!

電路圖在這個壓縮檔有:



1. LED沒有直接連到MCU引腳,需要準(zhǔn)備連接導(dǎo)線;
2. 燒錄調(diào)試接口貌似ST-LINK,準(zhǔn)備一個高仿ST-LINK燒錄器即可;




二、搭建環(huán)境,芯片的PACK安裝

上面下載的壓縮包里就有PACK,Keil.WCH32F1xx_DFP.1.0.0.pack,直接點擊安裝即可,打開KEIL,在KEIL里看見如下就意味著PACK搞好了。


先選擇一下芯片,如下圖:



由于我的燒錄器是ST-LINK,在配置中選擇即可:



選擇一下芯片算法,64K滴:



三、搞定代碼,點亮屏幕


上述壓縮包里就有現(xiàn)成的例子,點燈LED代碼直接拿過用,哎呀,這代碼風(fēng)格就是ST的標(biāo)準(zhǔn)啊,無需額外學(xué)習(xí),直接上手,哈哈

void GPIO_Toggle_INIT(void){ GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure);}int main(void){ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); Delay_Init(); GPIO_Toggle_INIT();while(1) { Delay_Ms(500); PAout(0) ^= (1<<0); }}

由于我使用PA0點燈,記得將LED連接到PA0即可。

四、學(xué)習(xí)將視頻轉(zhuǎn)GIF,看著方便

將上述代碼編譯燒錄,看看效果,還可以啊,哈哈哈哈


五、上傳這塊開發(fā)板點燈源代碼:

為了方便和朋友們交流,將源代碼上傳上來,下載請點擊閱讀原文。

六、開發(fā)板評價

1. WCH沁恒CH32F103開發(fā)板總體制作精良,用心了
2. 代碼風(fēng)格和ST一樣一樣滴,上手也快
3. 外設(shè)功能和ST有細(xì)微差異,看過手冊也都能明白
4. 這塊開發(fā)板的其它功能,待后續(xù)慢慢搞,后面準(zhǔn)備搞個U盤自動更新功能,哈哈

【沁恒WCH32F103測評報告】WCH32F103C8T6串口下載方法及串口打印
用戶:catnull

1.CH32F103FC8T6的芯片準(zhǔn)備知識

習(xí)慣了STC和Arduino的串口下載,對于arm32-M3指令集的國產(chǎn)芯片CH32F103C8T6,也在摸索著使用串口下載。在開發(fā)板的包里,干貨滿滿,但是手頭上沒有SWD接口的編程器。找了資料,STM32F103是可以用串口下載的。前提是,你要連接好PA9(UART1_TX),以及PA10(UART1_RX)到USB-TLL轉(zhuǎn)接板,比如CH340G的小板。

另外,需要設(shè)置BOOT啟動的方式。跳線接法:BOOT1 -->GND, BOOT0-->VCC,這樣才會從芯片內(nèi)的出廠固件內(nèi)存引導(dǎo)啟動,這里相當(dāng)于Arduino的BootLoader的功能。平常的接法是BOOT0-->GND,這是從Flash區(qū)運行啟動代碼,跳過了廠家代碼區(qū)。

2.硬件準(zhǔn)備好后,需要軟件。下載WCH_ISP_tool(2.8)下載鏈接.

安裝好后,界面如圖。



注意要選擇CH32F1系列標(biāo)簽,Keil MDK編譯器生成的Hex文件,需要再用戶程序文件框內(nèi)選擇。

注意可以多試幾次,比如插拔USB轉(zhuǎn)串口小板。還有當(dāng)出現(xiàn)“解除寫保護(hù)”,需要先點擊“解除保護(hù)”按鈕。之后再點擊下載。

4.測試UART_Printf串口打印功能

開發(fā)板的串口調(diào)試功能可以方便的輸出一些具體的信息,作為程序運行的重要參考。這里我測試了math.h的正弦函數(shù)計算功能。算是發(fā)揮一下32位CPU的優(yōu)勢。想起來計算氫彈的理論的501機,每秒不過幾十萬次加法運算。這個機子已經(jīng)遠(yuǎn)遠(yuǎn)超過了當(dāng)年的龐然大物。

測試的源碼:

main.c

int main(void){ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); Delay_Init(); USART_Printf_Init(115200); /* printf using USART1 */printf("SystemClk:%d\r\n",SystemCoreClock);printf("This is printf example\r\n");printf("sin(pi/3)=%f",sin(PI/3));while(1) {  }}


使用串口助手來接收信息。



附閱讀材料:中國計算機60年國產(chǎn)計算機前史


【RISC-V MCU CH32V103測評】01:LED Demo
用戶:740071911

第一次體驗risc-v的板子,真的是不錯,快遞也很迅速。而且cortex m系列挺像的,這樣上手就很容易了,體驗一下點燈操作。

點燈需要注意的是,led小燈沒有連接到mcu的引腳上,需要自己用杜邦線連接一下


代碼也很簡單,有stm32經(jīng)驗的很容易

/********************************** (C) COPYRIGHT ******************************** File Name : main.c* Author : WCH* Version : V1.0.0* Date : 2020/04/30* Description : Main program body.*******************************************************************************/#include "debug.h"void LED_Init(void){ GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz; GPIO_Init(GPIOA, &GPIO_InitStructure);}void GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin){ GPIOx->OUTDR ^= GPIO_Pin;}int main(void){ Delay_Init(); //USART_Printf_Init(115200); //printf("SystemClk:%d\r\n",SystemCoreClock); LED_Init(); while(1) { Delay_Ms(1000); GPIO_TogglePin(GPIOA, GPIO_Pin_0); }}

【RISC-V MCU CH32V103測評】02:USART Demo
用戶:740071911

注意,WCH-Link的串口只能發(fā)送,不能接收! 直接在上一個LED Demo基礎(chǔ)上添加。



添加串口1,通過串口接收中斷來接收數(shù)據(jù),接收到回車鍵,一幀數(shù)據(jù)結(jié)束。
主程序里處理串口數(shù)據(jù)(或丟棄或返回)



用其他usb轉(zhuǎn)ttl工具,看看顯示



串口調(diào)試助手顯示結(jié)果


你認(rèn)為這款開發(fā)板如何?之后嵌入式ARM還會繼續(xù)登載國產(chǎn)替代者的更多測評信息。


附: 沁恒微電子MCU選型表

END

資料:21ic論壇,整理:付斌


推薦閱讀

國內(nèi)MCU能替代國外產(chǎn)品嗎?MCU的未來又將如何?
STM32價格瘋長下,盤點STM32的國產(chǎn)替代者
選微處理器MPU,還是單片機MCU?兩者區(qū)別詳解

免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

嵌入式ARM

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉