本帖最后由 yangjiaxu 于 2023-4-1 21:52 編輯
#申請原創(chuàng)# @21小跑堂 @21ic小管家
今天拿到意法半導體新發(fā)布的STM32C0了,非常開心,所以,在這里給大家分享一下新開發(fā)板的開發(fā)流程吧。
首先打開cubemx,現(xiàn)在新發(fā)布的ST的MCU基本上都不提供標準庫了,都是以hal或者是LL庫來實現(xiàn)開發(fā)的,好在ST在這方面考慮周到,為廣大用戶提供了cubemx來實現(xiàn)hal的基礎(chǔ)配置,讓大家專心開發(fā)應用方面的業(yè)務就好了。
圖1 創(chuàng)建工程.png (23.3 KB )
下載附件
2023-4-1 21:45 上傳
圖1 創(chuàng)建一個工程
在篩選處輸入想要創(chuàng)建的MCU的工程,軟件就可以很容易的做出響應的配置。
圖2 .png (427.62 KB )
下載附件
2023-4-1 21:45 上傳
圖2 搜索STM32C0
搜索選中之后,就可以按步驟操作了,就可以了,由于我第一次使用C0,所以需要安裝與C0相關(guān)的一些配置工具,在這里選擇安裝即可。稍等片刻就可以安裝成功。
圖3 .png (505.88 KB )
下載附件
2023-4-1 21:46 上傳
圖3 安裝STM32C0插件
當安裝成功之后,就可以進行創(chuàng)建工程和一些外設(shè)配置了,本次以CoreMark跑分為例,進行工程創(chuàng)建移植講解。創(chuàng)建好的工程打開之后,就如圖4所示。
圖4.png (374.89 KB )
下載附件
2023-4-1 21:46 上傳
圖4 STM32C0工程樣式
打開工程之后,其實coremark主要應用就是時鐘與串口,所以在這里配置好串口就行,然后就是配置時鐘,為了時跑分可以得到最大數(shù)據(jù),在這里需要將主頻設(shè)置為最高,官方介紹C0最高主頻為48MHz,所以將時鐘配置為48MHz即可。
圖5.png (196.69 KB )
下載附件
2023-4-1 21:46 上傳
圖5 STM32C0時鐘配置
配置完成之后,其實基本就可以生成工程了,本次使用的是keil進行開發(fā),所以這里選擇使用keil的即可,在編譯鏈(Toolchain/IDE)選擇MDK-ARM。然后其他先可以不設(shè)置,直接創(chuàng)建工程就可以了。
圖6 .png (155.92 KB )
下載附件
2023-4-1 21:46 上傳
圖6 STM32C0輸出配置
創(chuàng)建成功的界面如圖7所示,其實就是創(chuàng)建完成之后提示你是否要打開文件,這就跟隨自己的習慣就可以了。至此,基礎(chǔ)的串口輸出工程就配置好了。
接下來就是將coremark移植到C0的工程之中了。
問題1:
MCU編譯成功沒有錯誤沒有警告,但是仿真是進入到硬件中斷的問題。
答:這個問題比較有意思,為什么會進入到硬件中斷呢,一般情況是因為堆棧設(shè)置不合理導致的,這里如果想詳細了解就需要多看看書了,因為我也沒弄很懂,解決方法就是在.s啟動文件之中,修改堆棧的大小即可。
圖7 .png (41.96 KB )
下載附件
2023-4-1 21:47 上傳
圖7 STM32C0進入到硬件中斷的解決方法之一
問題2:
仿真都可以通過了,也能輸出數(shù)據(jù),但是為什么串口沒有接收到呢?
答:其實這個就有點意思了,這個跟硬件有點關(guān)系,STlink是可以虛擬出來一個串口的,但是這個串口默認接在了串口2上,如圖8和圖9所示。所以想要用串口輸出展現(xiàn)出來就需要修改串口通信的底層函數(shù)或者是再用一個串口工具連接串口1的端口上即可。在這里我選擇的是第二種方式,也就是用另個串口模塊接在了PB6和PB7上,就可以正常接收串口數(shù)據(jù)了。
圖8 .png (280.74 KB )
下載附件
2023-4-1 21:47 上傳
圖8 STM32C0串口硬件接線方式(1)
圖9 .png (33.51 KB )
下載附件
2023-4-1 21:47 上傳
圖9 STM32C0串口硬件接線方式(2)
至此,針對CoreMark的移植基本就結(jié)束了,接下來可以看看跑分情況,通過圖10可以看到跑分結(jié)果為49.836647,我重復測試了3次,結(jié)果都與這個數(shù)據(jù)相近,所以就取一個中間值吧,48MHz的主頻,M0+的內(nèi)核,其實看跑分的情況來說,數(shù)據(jù)還是很好的,MCU的性能完全可以,針對電機控制和一些小家電方面的產(chǎn)品完全可以勝任。
圖10.png (49.39 KB )
下載附件
2023-4-1 21:47 上傳
圖10 STM32C0的CoreMark的跑分情況
從以上測試結(jié)果來看,C0
真的可以,就是不知道現(xiàn)在的批量含稅價格如何,如果價格也很有優(yōu)勢的話,真的就極具性價比了。最后感謝ST
贈送的C0
開發(fā)板,感謝21ic
這個優(yōu)質(zhì)平臺,感謝給力的管理員。最后分享一下CoreMark
的工程,歡迎大家來玩哦。
STM32C0_CoreMark.rar (1.08 MB)
2023-4-1 21:49 上傳
點擊文件名下載附件