91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

非直接燒錄ST對GD的代碼移植

Q4MP_gh_c472c21 ? 來源:21ic論壇 ? 作者:吶咯密密 ? 2021-01-21 09:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ST的價格和交期不用多說,大家都明白,在產(chǎn)品中大量使用ST的芯片的公司都在尋找國產(chǎn)替代的出路。我們的產(chǎn)品追求的的是MCU的串口相應(yīng)速度,在網(wǎng)友的使用評價和我們針對性測試之后,GD32最終被定為最優(yōu)的產(chǎn)品,不僅性能符合要求,價格也是十分便宜,用來替換ST最好不過了。項目的初期,我們和GD的代理進(jìn)行了面對面的交流,他們推介通過修改相關(guān)寄存器直接燒錄ST的代碼,但是我們實測并不理想。于是在他們的配合下成功使用GD自帶的固件庫替換掉了ST的芯片。產(chǎn)品實測無任何問題,甚至由于GD更高的主頻,運行效果遠(yuǎn)超預(yù)期!國產(chǎn)芯片,未來可期!

下面就進(jìn)行ST對GD的代碼移植:

區(qū)別:GD32E230 對比 STM32F030 有著很好的兼容性和更高的性價比,內(nèi)核和外設(shè)都有所增強。

STM32F030 與 GD32E230 在相同封裝下是 Pin To Pin 兼容的。外設(shè)上本人覺得 GD32E230功能覆蓋 STM32F030,大部分外設(shè) GD32E230 完全兼容 STM32F030, 后文我會具體介紹。 需要注意:STM32F030 外設(shè)編號從 1 開始, GD32E103 外設(shè)編號從 0 開始,且命名有差異。這里介紹了STM32F030 系列和 GD32E230 系列內(nèi)部資源對比總覽

cf054e6a-57dd-11eb-8b86-12bb97331649.png


因為GD在主頻上高于ST,所以在使用直接燒錄的方式移植時會出現(xiàn)延時不同等問題,這也是我不采用此方法的原因,不如直接重寫代碼。

我們可以從最常用的開始,因為時間原因,不可能全部的函數(shù)都移植,這里介紹最常用的。

GPIO:例如我們使用STM32 USART1前需要初始化相關(guān)的IO操作:

cf731c38-57dd-11eb-8b86-12bb97331649.png

我們需要對GPIO的時鐘進(jìn)行初始化,然后定義端口的復(fù)用模式,然后設(shè)置PA9,PA10的IO模式速度等參數(shù)。因為使用了RS485,還要對使能口進(jìn)行設(shè)置,這一點在GD上同樣需要進(jìn)行。

cfa167be-57dd-11eb-8b86-12bb97331649.png

只不過相對于ST的庫函數(shù),GD的更加簡潔,因為GD的庫函數(shù)的集成度更高,使用起來更加方便快捷。

代碼的最后兩行應(yīng)該是設(shè)置端口的輸出高低電平,我采用了寄存器的方式。加快代碼運行速度。

原型是:gpio_bit_set(uint32_t gpio_periph,uint32_t pin);
gpio_bit_reset(uint32_t gpio_periph,uint32_t pin); 串口:GPIO初始化完成之后我們需要配置串口:

cfcfcb86-57dd-11eb-8b86-12bb97331649.png

這里大家都知道的,配置串口的時鐘,波特率,起始位,停止位,數(shù)據(jù)位。這一點在GD上面同樣的體現(xiàn)模式:

d017cc38-57dd-11eb-8b86-12bb97331649.png


可以看得到的是代碼的簡潔程度是不同的,GD的外設(shè)配置和ST的HAL庫有些類似,精簡了代碼量,但是設(shè)置的東西還是一樣的。

設(shè)置完成后就可以使用庫函數(shù)的發(fā)送和接收函數(shù):

d05dd282-57dd-11eb-8b86-12bb97331649.png

d0882bb8-57dd-11eb-8b86-12bb97331649.png

需要提的一點是,串口發(fā)送完成的判斷應(yīng)該使用while(RESET == usart_flag_get(USART0, USART_FLAG_TC));我在這里卡住過,這個是最優(yōu)的方式。

接收函數(shù)的代碼執(zhí)行效率著實不高。我使用的是直接操作寄存器,有需要的可以借鑒一下。

d0cd1354-57dd-11eb-8b86-12bb97331649.png

如果需要使用串口中斷,直接調(diào)用一下幾個函數(shù):

nvic_irq_enable(USART0_IRQn, 0);

usart_interrupt_enable(USART0, USART_INT_RBNE);

原文標(biāo)題:STM32F0->GD32E230代碼移植,非直接燒錄

文章出處:【微信公眾號:嵌入式ARM】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

吶咯密密

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ST
    ST
    +關(guān)注

    關(guān)注

    32

    文章

    1189

    瀏覽量

    132615
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4971

    瀏覽量

    74062

原文標(biāo)題:STM32F0->GD32E230代碼移植,非直接燒錄

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    IC燒錄總是出錯?可能是燒錄座不匹配

    深夜產(chǎn)線芯片燒錄報錯,排查代碼、電源、燒錄器后仍無果,不起眼的燒錄座往往是癥結(jié)所在。燒錄座常因被當(dāng)作 “標(biāo)準(zhǔn)件” 而被低估,封裝迭代下,物理
    的頭像 發(fā)表于 02-04 11:13 ?348次閱讀

    燒錄IC就是芯片燒錄!新手必讀的IC燒錄基礎(chǔ)指南

    本文為新手科普 IC 燒錄(即芯片燒錄)知識,明確其本質(zhì)是通過專用設(shè)備將二進(jìn)制程序文件寫入集成電路的過程,明火操作。介紹了燒錄必備的燒錄
    的頭像 發(fā)表于 12-25 13:46 ?467次閱讀

    機智云Gokit3開發(fā)篇:ST-Link燒錄MCU程序操作詳解

    -Link燒錄器是一種簡便且可靠的方式,個人較為推薦。通過KeilMDK軟件,可以直接在軟件內(nèi)進(jìn)行燒錄,操作簡單高效。此外,Gokit3底板自帶ST-Link接口或模塊,用戶只
    的頭像 發(fā)表于 12-17 18:46 ?491次閱讀
    機智云Gokit3開發(fā)篇:<b class='flag-5'>ST</b>-Link<b class='flag-5'>燒錄</b>MCU程序操作詳解

    第一個基于sdcc的MCS-51實時操作系統(tǒng)移植

    Linux下均可使用, 代碼一個符號都不需要改就能直接編譯燒錄(當(dāng)然可能需要在VSCode中配一下其它工具鏈的路徑), 這對需要在Windows系統(tǒng)下開發(fā)STC單片機程序的人應(yīng)該有一
    發(fā)表于 12-10 10:15

    gd32vf103r-start和gd32vf103c-start區(qū)別是什么?

    gd32vf103r-start和gd32vf103c-start區(qū)別,我將c-start板的led代碼下進(jìn)r-start板里,led沒有亮,這是什么原因。我是直接操作IO口,因此和l
    發(fā)表于 11-11 06:49

    制作完qboot工程后,燒錄板子中發(fā)現(xiàn)沒有qboot開始的打印,為什么?

    我是使用的gd32f103rct6芯片,時鐘設(shè)置的是72MHZ,與stm32f103rct6一致,燒錄完之后打印值如圖。對qboot不是太了解,完全按照網(wǎng)上教程配置,從env中拉取玩qboot文件后
    發(fā)表于 09-19 06:48

    GD32F103RCT6移植qboot,燒錄之后系統(tǒng)卡死怎么解決?

    如題,我使用的是stm32的hal庫對STM32F103RCT6芯片進(jìn)行配置的代碼燒錄GD32F103RCT6中,串口和PWM都調(diào)試成功,沒有問題,所以開始移植qboot。使用env
    發(fā)表于 09-19 06:41

    rtthread5.2.0移植gd32H759無法啟動芯片怎么解決?

    1.使用mdk5 armv5編譯軟件正常通過,但切換為armv6報數(shù)據(jù)類型定義錯誤 頭文件都包含,還需要修改哪里? 2.用armv5編譯代碼無錯誤,下載到gd32H759開發(fā)板上,導(dǎo)致jlink
    發(fā)表于 09-15 06:13

    gd32f470移植成功無法進(jìn)入main函數(shù),怎么解決?

    如下所示,我之前用gd32f470移植成功無法進(jìn)入main函數(shù),之后用官方例程用stm32f407去跑也還是這樣
    發(fā)表于 09-10 06:24

    機智云配網(wǎng)教程第三期:單片機代碼移植實戰(zhàn)

    :stm32f103c8t6,WiFi模塊:ESP-01s,下載器:ST-LINK2.軟件:keil5的工程文件模板,mcu代碼代碼資源:未移植
    的頭像 發(fā)表于 07-01 17:32 ?1792次閱讀
    機智云配網(wǎng)教程第三期:單片機<b class='flag-5'>代碼</b><b class='flag-5'>移植</b>實戰(zhàn)

    程序燒錄原理

    什么是燒錄-義嘉泰帶你深度了解IC燒錄服務(wù):https://bbs.elecfans.com/jishu_2491063_1_1.html 程序燒錄是將編寫好的程序代碼寫入單片機或微控
    發(fā)表于 06-17 11:29

    晶華微四通道燒錄器解決方案

    杭州晶華微電子股份有限公司(股票代碼:688130)自主研發(fā)設(shè)計的四通道燒錄器是一款高效的燒錄工具,支持同時對4顆芯片的燒錄。既滿足了客戶對燒錄
    的頭像 發(fā)表于 06-12 09:07 ?1106次閱讀
    晶華微四通道<b class='flag-5'>燒錄</b>器解決方案

    #燒錄芯片 #單片機 #存儲芯片 #燒錄機 #燒錄器 什么是燒錄?

    燒錄
    jf_99460966
    發(fā)布于 :2025年05月29日 11:25:25

    STM32與機智云連接實現(xiàn)步驟與技巧(下篇):機智云代碼移植與優(yōu)化

    在《STM32與機智云連接實現(xiàn)步驟與技巧(上篇)》中,我們介紹了硬件連接和通信協(xié)議配置。本篇將重點講解如何將機智云相關(guān)代碼移植到STM32,完成數(shù)據(jù)上傳和設(shè)備控制。我們將介紹如何在STM32中配置
    的頭像 發(fā)表于 05-23 18:10 ?1145次閱讀
    STM32與機智云連接實現(xiàn)步驟與技巧(下篇):機智云<b class='flag-5'>代碼</b><b class='flag-5'>移植</b>與優(yōu)化

    昂科燒錄器支持GigaDevice兆易創(chuàng)新的32位通用微控制器GD32F150C6T

    芯片燒錄領(lǐng)導(dǎo)者昂科技術(shù)近期宣布了其燒錄軟件的最新迭代,并公布了一系列新增兼容芯片型號。在此次更新中,兆易創(chuàng)新(GigaDevice)推出的32位通用微控制器GD32F150C6T已被昂科脫機
    的頭像 發(fā)表于 04-03 10:57 ?880次閱讀
    昂科<b class='flag-5'>燒錄</b>器支持GigaDevice兆易創(chuàng)新的32位通用微控制器<b class='flag-5'>GD</b>32F150C6T