<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

踩坑記錄—RT-Thread Studio燒錄ch32v307

冬至子 ? 來源:初級踩坑仔 ? 作者:初級踩坑仔 ? 2023-10-13 15:28 ? 次閱讀

RT-Thread Studio向ch32v307vct6燒錄程序,有個前置條件要完成。

1坑中坑(這部分可以看看,不要跟著操作)

要先用沁恒的燒錄工具WCHISPStudio將ch32v307vct6的ROM改為224K,RAM改為96K,
參考數據手冊可以發現ch32v307的FLASH和RAM是可以自己配置大小的,第一次見。

1.jpg

然后可以通過芯片USB或串口1用WCHISPStudio下載程序,我們僅僅修改下FLASH為224K,RAM為96K。之后就可以用RT-Thread Studio燒寫程序了。將BOOT設置好,再將板子USB或者串口1連到電腦,點擊WCHISPStudio搜索,就可以發現設備和查看FLASH了,如圖

1.jpg

總之,這個方法不可??!

2踩坑頓悟

經歷了前面的坑中坑,我發現用RT-Thread Studio向ch32v307燒錄程序其實很簡單,只要避開一個點就行。

我們先用RT-Thread Studio新建一個ch32v307的模板工程

1.jpg

這是模板main線程

int main(void)
{
rt_kprintf("MCU: CH32V307n");
rt_kprintf("SysClk: %dHzn",SystemCoreClock);
rt_kprintf("www.wch.cnn");
LED1_BLINK_INIT();
GPIO_ResetBits(GPIOA,GPIO_Pin_0);
while(1)
{
GPIO_SetBits(GPIOA,GPIO_Pin_0);
rt_thread_mdelay(500);
GPIO_ResetBits(GPIOA,GPIO_Pin_0);
rt_thread_mdelay(500);
}
}

然后打開鏈接腳本link.lds看看FLASH和RAM大小

1.jpg

可以看到FLASH:224K RAM:96K,這里是根據自己手里的ch32v307修改的,因為ch32v307有好幾種存儲分配方式。

1.jpg

這個鏈接腳本沒有任何問題,我們先編譯下程序,再點擊下載,會跳出一個界面

1.jpg

我們可以在這里用Get和Set按鈕查看和修改芯片的存儲分配,可以看到我的芯片現在存儲分配實際256K ROM+64K RAM,和鏈接腳本里的224K ROM+96K RAM,所以你剛剛在RT-Thread Studio編譯程序得到的鏡像(bin,hex等)無論通過那種途徑燒錄到了芯片都是無效的!

我們想要程序起作用,要么按芯片實際存儲分配修改鏈接腳本link.lds,要么根據link.lds設置芯片存儲分配,我這里就直接修改link.lds了,

1.jpg

想修改芯片配置的直接在剛剛跳出的下載界面通過下拉框選擇,在點擊Set就好,非常簡單。
然后我們再次編譯程序點擊下載界面的下載按鈕,

1.jpg

有意思的來了,你會發現控制臺輸出空空如也!無論再怎么狂按復位間它都無動于衷。
沒錯,這就是我最開始說的那個BUG,這時候就要上WCH-LinkUtility了,可以到沁恒的官網下載,我們打開它,輕輕點擊一下Get或者其它按鈕,總之讓WCH-LinkUtility與芯片進行一次通訊就行,程序就正常運轉了,控制臺有了輸出,復位鍵也正常了,皆大歡喜!

1.jpg

控制臺輸出:

1.jpg

但當我們再次通過RT-Thread Studio下載程序后,芯片又沒反應了。
所以,BUG確定了,是RT-Thread Studio那個下載工具的問題,如果通過WCH-LinkUtility或者其它工具下載,都是一切正常。

3 總結與吐槽

總結就是用RT-Thread Studio編譯得到鏡像文件,再通過其它燒錄工具(WCH-LinkUtility/WCHISPStudio)下載程序,或者換IDE比如MounRiver Studio。這個問題僅限ch32。

希望有人能早日解決這個問題吧,還有能不能不要下載程序的時候跳出一個下載界面讓用戶二次操作嗎,太反人類了,直接給一個進度條就好啦。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 存儲器
    +關注

    關注

    38

    文章

    7212

    瀏覽量

    162332
  • RAM
    RAM
    +關注

    關注

    8

    文章

    1330

    瀏覽量

    113848
  • RT-Thread
    +關注

    關注

    31

    文章

    1184

    瀏覽量

    38998
  • Flash存儲
    +關注

    關注

    0

    文章

    38

    瀏覽量

    8254
  • CH32V307VCT6
    +關注

    關注

    0

    文章

    2

    瀏覽量

    963
收藏 人收藏

    評論

    相關推薦

    ch32v307-r1 BSP按照README說明導入RT-Thread Studio編譯報錯的原因?怎么解決?

    Github上下載的RT-Thread v5.0.2 ,按照ch32v307-r1 的README.md說明導入RT-Thread Studio
    發表于 02-19 06:05

    CH32V307 flash操作注意事項

    之前的帖子,我實現了在CH32X035的SD卡IAP升級,想把這個功能在CH32V307上也實現了,但在移植過程中發現個問題,在應用區程序都是運行在144M的,我的升級方案中會涉及到升級標志的寫入
    發表于 11-30 22:50

    rt-studio潘多拉開發板最新rt-thread不能運行解決辦法

    rt-studio 上 選擇基于開發板的項目,選擇潘多拉,rt-thread選擇lasted ,如下圖
    的頭像 發表于 10-16 14:50 ?745次閱讀
    <b class='flag-5'>rt-studio</b>潘多拉開發板最新<b class='flag-5'>rt-thread</b>不能運行解決辦法

    rt-thread studio新建stm32f407工程

    rt-thread studio新建stm32f407工程,使用的版本是:2.2.6,stm32f4的支持包版本為0.2.2。先不用0.2.3,因為使用0.2.3建立的模板編譯會報錯。
    的頭像 發表于 10-12 17:42 ?737次閱讀

    RT-Thread使用Soft RTC(軟件模擬RTC)

    開發環境:野火的stm32f407,rt-thread studio版本是版本: 2.2.6,rt-thread 使用版本為4.0.3,stm32f4的資源包為0.2.2。
    的頭像 發表于 10-12 17:39 ?411次閱讀
    <b class='flag-5'>RT-Thread</b>使用Soft RTC(軟件模擬RTC)

    RT-Thread移植使用webserver (lwip+httpd)

    開發環境:野火的stm32f407,rt-thread studio版本是版本: 2.2.6,stm32f4的資源包為0.2.2,rt-thread版本為4.0.3。
    的頭像 發表于 10-12 12:49 ?684次閱讀
    <b class='flag-5'>RT-Thread</b>移植使用webserver (lwip+httpd)

    試用RT-Thread Studio(VSCode)

    想嘗試RT-Thread studio (VSCode),先下載安裝VSCode,再搜索RT-Thread
    的頭像 發表于 10-12 10:58 ?631次閱讀
    試用<b class='flag-5'>RT-Thread</b> <b class='flag-5'>Studio</b>(VSCode)

    RT-Thread Studio上配置rtthread CANFD驅動來控制M3508電機

    本文旨在RT-Thread Studio上配置rtthread CANFD驅動來控制M3508電機,不涉及任何原理 開發環境:RT-Thread Studio v2.2.6
    發表于 10-08 11:44 ?643次閱讀
    在<b class='flag-5'>RT-Thread</b> <b class='flag-5'>Studio</b>上配置rtthread CANFD驅動來控制M3508電機

    如何在RT-Thread Studio完成對RA2L1板的環境搭建以及gpio的輸入輸出檢測?

    有幸參加RT-Thread的活動,體驗RT-Thread Studio 和瑞薩 CPK-RA2L1評估板。本篇文章主要講解如何在RT-Thread
    的頭像 發表于 09-28 15:51 ?2250次閱讀
    如何在<b class='flag-5'>RT-Thread</b> <b class='flag-5'>Studio</b>完成對RA2L1板的環境搭建以及gpio的輸入輸出檢測?

    ch32v307和stm32的區別

    ch32v307和stm32的區別? Ch32v307和STM32是兩款不同的微控制器芯片。本文將詳盡、詳實、細致地分析這兩款芯片的區別。 首先,我們可以從廠商的不同來看這兩款芯片的區別
    的頭像 發表于 08-22 15:53 ?1253次閱讀

    ch32優勢 ch32v307可以做什么?

    ch32優勢 ch32v307可以做什么? Ch32v307是現代技術中的一種優勢產品,它可以為用戶提供各種功能和服務,包括但不限于節能、高效、安全、靈活等特點。 一、節能: Ch32v307
    的頭像 發表于 08-22 15:19 ?1042次閱讀

    ch32v307和stm32的區別

    ch32v307和stm32的區別 Ch32v307與STM32是兩款不同的微控制器,它們在設計和功能上都存在一些區別。 首先,Ch32v307是一款中國自主研發的微控制器,而STM32是來自瑞士
    的頭像 發表于 08-16 11:15 ?1265次閱讀

    使用RT-Thread Studio進行智能家居終端的設計

    本次方案基于星火一號開發板開發,使用RT-Thread Studio進行工程創建,代碼編輯,RT-Thread配置,調試配置,程序下載等功能。
    的頭像 發表于 07-28 16:41 ?1468次閱讀
    使用<b class='flag-5'>RT-Thread</b> <b class='flag-5'>Studio</b>進行智能家居終端的設計

    教你手上沒有開發板如何跑RT-THREAD STM32應用?

    首先打開 RT-Thread Studio,新建RT-Thread
    的頭像 發表于 07-18 16:09 ?1127次閱讀
    教你手上沒有開發板如何跑<b class='flag-5'>RT-THREAD</b> STM32應用?

    求助ch32v307怎么使用ad轉換

    我想使用ch32v307中ad轉換功能,不會用,求助大家,拜托了
    發表于 06-24 13:51
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>