航顺芯片MCU的ID说明
DBGMCU_IDCODE该地址,对应ST-Link Utility工具读出的Device ID;ST-Link Utility和STVP工具会识别DeviceID才可以Connect和烧录
这部分,HK32F103/HK32F030系列和ST是完全相同的。HK32F04A是不同的值,所以ST-Link Utility和STVP工具不能Connect和烧录,KEIL仍然可以工作
IDCODE
调试和烧录,可以通过SWD或JTAG接口。SWD和JTAG都有实现这个IDCODE。
HK品牌芯片Version字段,与ST芯片不同。
有一些离线烧录器,如果读取整个IDCODE,来识别厂家,这是不对的。应该不识别高4Bit。
96Bit UDID
UDID每颗芯片都不同。我们和ST芯片也完全不同。它可以用于客户应用产品管理。
自定义识别HK品牌的地址
有一些客户需要通过识别STM32F103与HK32F103芯片,来实现应用程序或更高级后台软件的兼容处理。
通过读取下图中,4个地址的低字节,进行判断。我们生产的所有芯片,这几个地址都是这个值。
由于Cortex-M0与Cortex-M3不同,下面的地址,只能用Debugger才能读,用户程序读不了。
STM32F030C8T6
HK32F030C8T6
HK32F03x芯片,如果要区分不同品牌芯片,可以读取Chip ID, base地址0x1FFF_F7F0。
ST应该是全F。我们HK32F03x芯片是一个固定值。
BoundaryScan
ST芯片内部通过JTAG接口,设计了BoundaryScan电路。我们HK没有设计BoundaryScan电路。因为ST原装的ST-Link调试器会去识别BoundaryScan电路。如果使用ST原装的ST-Link调试器,不能使用JTAG调试,只能使用SWD调试。
Jlink调试器在使用JTAG调试芯片时,不会去识别BoundaryScan电路,所以Jlink调试器可以用JTAG调试HK品牌。
编辑:zzy 最后修改时间:2022-04-07