概述 ME32x系列是內嵌ARM Cortex M0/M3核的32位微控制器。該系列控制器由敏矽微電子有限公司自主開發,并具有自主知識產權。敏矽微電子的微控制器包括有通用MCU和專用SOC系列,具有非常高的性價比,是MCU產品升級換代和國外產品替代的最佳選擇。通用功能有高精度ADC,CAN接口,I2S音頻接口,UART串口,SPI接口,I2C總線接口,看門狗定時器(WDT),通用計數器/定時器。特殊接口包括人機界面控制器(LCD驅動,電容觸摸按鍵)和馬達控制功能模塊。
調試端口 所有ME32x系列產品都支持ARMSWD 兩線調試協議。由于調試端口與IO復用,調試端口管腳在系統初始化時為SWD調試功能SWD_CLK和SWD_IO(用戶加密情況除外),調試管腳狀態在BootLoader運行時不會改變。用戶可以使用Jlink或Ulink仿真器與之連接,從而下載和調試用戶程序。 調試技巧
3.1 如何確認硬件連接
理論上,仿真器與目標板只需要連接GND,SWD_CLK和SDW_IO三根線即可調試(建議nRST也連接)。如目標板沒有電源,JLINK/ULINK仿真器是可以通過USB5V提供一個3.3V電源給目標板供電,前提是目標板是3.3V供電并且電源功耗所需要電流不超過USB能提供的電流:
JLINK缺省是輸出3.3V
ULINK缺省是不輸出3.3V電源,接口芯片電源要外供。要輸出3,3V,需要把一個3針排插全部連在一起(ULINK標準版) 如果目標板系統接口是1.8V或5V,就只能使用ULINK,并且使用不輸出3.3V電源設置,目標板需要自己供電,并且1.8V或5V 電源還需要接入仿真器的接口電源。 連接好電源及信號線后,可以檢驗一下你的工作結果: 打開一個對應的MCU的工程,在OPTION窗口的Debug Tab,選擇你的仿真器,再點擊Setting按鍵
如果你能看到IDCCODE,那么恭喜你,你的硬件連接沒有問題了。
3.2 程序下載失敗
在確認硬件連接沒有問題后,如果出現程序下載失敗并且連續重試也一樣(已確認對應Flash燒寫算法已正確設置并且運行Flash算法的SRAM地址空間也正確設置,不同芯片設置不同,看下圖),可能有以下原因:
SWD端口被用戶程序復用,此時端口功能不再具有SWD功能 解決方法:MCUBoot引腳接地,重新上電或用Reset重啟系統,這樣系統會停留在Bootloader,同時SWD引腳功能恢復,即可下載。 SWD接口需要重啟 解決方法:在OPTION->Debug->SettingTAB 窗口,選擇設置Connect &Reset Options使用Reset,如下圖
如nRST沒有連接,也可以選擇SYSRESETREQ Reset。
3.3 不能進入調試界面或總是從調試界面彈出
有時用戶會發現,以前的工程可以下載,但不能進入調試界面進行調試,并且還可能導致SWD不工作,但換一個工程又可以調試。其原因是該工程上次調試有非法操作(如訪問非法地址),并且非法操作被工程記錄,每一次進入調試都會調用該操作,從而導致Keil從調試窗口彈出。 所以我們要做的事情就是把保留在工程的非法操作從工程中清除掉。 在工程Options->DebugTab,拿掉下面的勾選項目:
選擇OK保存。 再在File->SaveAll 保存所有工程內容。 退出工程。 重新調入工程即可解決問題了。
Revision History
Revision | Description | Date |
1.0 | Initial Release. | Dec. 2018 |
原文標題:ME32x系列MCU Keil調試技巧
文章出處:【微信公眾號:MCU開發加油站】歡迎添加關注!文章轉載請注明出處。
責任編輯:haq
-
mcu
+關注
關注
146文章
17003瀏覽量
350335 -
控制器
+關注
關注
112文章
16207瀏覽量
177442 -
keil
+關注
關注
68文章
1212瀏覽量
166690
原文標題:ME32x系列MCU Keil調試技巧
文章出處:【微信號:mcugeek,微信公眾號:MCU開發加油站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論