航順芯片MCU的ID說明
DBGMCU_IDCODE該地址,對(duì)應(yīng)ST-Link Utility工具讀出的Device ID;ST-Link Utility和STVP工具會(huì)識(shí)別DeviceID才可以Connect和燒錄
這部分,HK32F103/HK32F030系列和ST是完全相同的。HK32F04A是不同的值,所以ST-Link Utility和STVP工具不能Connect和燒錄,KEIL仍然可以工作
IDCODE
調(diào)試和燒錄,可以通過SWD或JTAG接口。SWD和JTAG都有實(shí)現(xiàn)這個(gè)IDCODE。
HK品牌芯片Version字段,與ST芯片不同。
有一些離線燒錄器,如果讀取整個(gè)IDCODE,來識(shí)別廠家,這是不對(duì)的。應(yīng)該不識(shí)別高4Bit。
96Bit UDID
UDID每顆芯片都不同。我們和ST芯片也完全不同。它可以用于客戶應(yīng)用產(chǎn)品管理。
自定義識(shí)別HK品牌的地址
有一些客戶需要通過識(shí)別STM32F103與HK32F103芯片,來實(shí)現(xiàn)應(yīng)用程序或更高級(jí)后臺(tái)軟件的兼容處理。
通過讀取下圖中,4個(gè)地址的低字節(jié),進(jìn)行判斷。我們生產(chǎn)的所有芯片,這幾個(gè)地址都是這個(gè)值。
由于Cortex-M0與Cortex-M3不同,下面的地址,只能用Debugger才能讀,用戶程序讀不了。
STM32F030C8T6
HK32F030C8T6
HK32F03x芯片,如果要區(qū)分不同品牌芯片,可以讀取Chip ID, base地址0x1FFF_F7F0。
ST應(yīng)該是全F。我們HK32F03x芯片是一個(gè)固定值。
BoundaryScan
ST芯片內(nèi)部通過JTAG接口,設(shè)計(jì)了BoundaryScan電路。我們HK沒有設(shè)計(jì)BoundaryScan電路。因?yàn)镾T原裝的ST-Link調(diào)試器會(huì)去識(shí)別BoundaryScan電路。如果使用ST原裝的ST-Link調(diào)試器,不能使用JTAG調(diào)試,只能使用SWD調(diào)試。
Jlink調(diào)試器在使用JTAG調(diào)試芯片時(shí),不會(huì)去識(shí)別BoundaryScan電路,所以Jlink調(diào)試器可以用JTAG調(diào)試HK品牌。
編輯:zzy 最后修改時(shí)間:2022-04-07