玩過GD32的小伙伴們都知道,GD32 MCU支持ISP,即在系統編程,前面的常見問題也給大家講過什么是ISP,什么是IAP?
那有沒有小伙伴遇到過ISP失敗的情況,失敗的原因是什么呢?
我們就以GD32F30x系列為例,來看下用戶手冊:
![wKgaomXeitGANssxAABqLnZAD7A708.png](https://file1.elecfans.com/web2/M00/C2/A2/wKgaomXeitGANssxAABqLnZAD7A708.png)
通過將BOOT0拉高,BOOT1拉低,上電后,MCU則工作在ISP模式,此時可以通過ALL-IN-ONE軟件(或用戶自行開發的上位機軟件)對MCU進行編程、操作選項字節、flash數據回讀等操作,使用的是以下口:
![wKgZomXeitaAHXqOAACXUa6s3N8990.png](https://file1.elecfans.com/web2/M00/C1/B2/wKgZomXeitaAHXqOAACXUa6s3N8990.png)
如果用的是容量不超過512K的GD32F303系列(HD產品),則使用USART0(PA9 PA10)進行ISP交互,如果是超過512K的GD32F303系列(XD產品),則除了USART0,還有USART1(PA2 PA3),如果是F305/307系列(CL產品),則還增加了一個USB接口(DFU模式)。
當進入ISP后,實際上MCU是不知道自己該用哪個口進行ISP的,此時需要MCU和上位機(All-IN-ONE等)進行通訊握手,握手信號由上位機發出,也就是說哪個口先接收到上位機的握手信號,則該口被自動設置為ISP口,而其他通訊口則不會再處理ISP過程。
比如使用GD32F303ZKT6(XD產品),當上位機通過PA10(MCU的RX接收腳)向MCU發出握手信號后,則USART0被識別為ISP口,且此時USART0的波特率會根據握手信號進行自適應設置。
那么如果一個板子上,預設的是USART0(PA9 PA10)作為ISP口的,但同時PA3接了另外的芯片,當MCU上電的時候,有芯片往PA3上發了一些脈沖,則MCU會將USART1(PA2 PA3)設置為ISP口,此時,用戶再使用USART0的話,則會失敗。
根據上述原理,還有一種失敗的可能性,就是剛上電時,ISP口上接收到了一些干擾信號,此時USART被設置為異常的波特率,那么在正式進行ISP時,也會失敗。
以上就是GD32 MCU ISP失敗的兩個可能原因,小伙伴知道其他原因的也歡迎在評論區互動哦。
-
單片機
+關注
關注
6043文章
44622瀏覽量
638533 -
mcu
+關注
關注
146文章
17317瀏覽量
352640 -
ISP
+關注
關注
6文章
478瀏覽量
52015 -
GD32
+關注
關注
7文章
413瀏覽量
24469
發布評論請先 登錄
相關推薦
GD32 MCU 入門教程】GD32 MCU 常見外設介紹(12)FMC 模塊介紹
![<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常見外設介紹(12)FMC 模塊介紹](https://file1.elecfans.com/web2/M00/04/87/wKgaombFSS2AWG-GAAB5lPnhR3c604.png)
![](https://file1.elecfans.com/web2/M00/C2/A4/wKgaomXejYGAUfWAAArs1xPTYA8626.png)
兆易創新GD32 MCU選型手冊,適用于GD32全系列MCU
【GD32 MCU 入門教程】二、GD32 MCU 燒錄說明(1)ISP 燒錄
![【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】二、<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 燒錄說明(1)<b class='flag-5'>ISP</b> 燒錄](https://file1.elecfans.com/web2/M00/02/38/wKgaoma0f8SAB_h5AAAvpALfiNs789.png)
【GD32 MCU 入門教程】GD32 MCU 常見外設介紹(14)RTC 模塊介紹
![【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 入門教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> 常見外設介紹(14)RTC 模塊介紹](https://file1.elecfans.com/web2/M00/03/E0/wKgZombH42WAIyq2AAA3DFzN548758.png)
【GD32 MCU入門教程】GD32 MCU GPIO 結構與使用注意事項
![【<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b>入門教程】<b class='flag-5'>GD32</b> <b class='flag-5'>MCU</b> GPIO 結構與使用注意事項](https://file1.elecfans.com/web2/M00/06/89/wKgaombbu8qAXdJKAAAW--yDqzA279.png)
評論