你好!欢迎来到深圳市颖特新科技有限公司!
语言
当前位置:首页 >> HK32/航顺 >> 航顺芯片HK32F030M复用SWD为通用GPIO

航顺芯片HK32F030M复用SWD为通用GPIO

关键字:航顺芯片 HK32F030M 复用SWD为通用GPIO 航顺代理 作者: 来源: 发布时间:2022-05-12  浏览:21
关于航顺HK32F030M
HK32F030M简介
HK32F030M 系列使用 ARM® CortexTM-M0 内核
最高工作频率 32MHz, 内置 16K-ByteFLASH、 448-Byte EEPROM 和 2-KByte SRAM。

并且号称引脚兼容STM8S003F3P6,对比图如下:
引脚图

而且HK32F030M还提供了一个跟STM8S类似的BEEP功能,也在PD4引脚。
但是,想要直接转换到现有的板子上是有条件的,根据数据手册提供的信息来看,有几点区别:


HK32F030M供电范围1.8V~3.6V,STM8S供电范围2.9V-5.5V,如果板载MCU供电是5V的话,就无法直接替换了
HK32F030M使用SWD烧录程序,SWD需要SWDIO-SWCLK-NRST三个信号,而SWIM是串行单线调试,仅需一根SWIM信号线,无法使用原先板载的SWIM接口烧录程序。
总结来看,想要无缝切换,需要先在Demo板上调试好HK32F030M的软件,使用Scoket烧录好程序,再贴装。


HM32F030M和HM32F031M有什么不同
引脚图区别

0301M可以堪称030M的升级版,主要体现在:
0301M可以堪称030M的升级版区别


0301M的主频更高,达到48M,对于一些电机控制应用而言,可以达到更高的精度
0301M有18个可用的GPIO,把030M上NRST和VCAP这两个引脚都用起来了
同时,航顺为这两个系列的MCU提供了,两套库。


HK32F030M复用SWD为通用GPIO
AF外设功能映射
对于引脚功能复用HK32的设置方法和STM32类似,使用一个类似AF的寄存器进行功能切换。
AF功能表

使用AF功能寄存器,完成了不同外设功能在当前引脚的映射。


IOMUX引脚功能多重映射
HK32F030M还提供了一个叫引脚功能多重映射IOMUX的外设,对于 TSSOP16/SO8N 产品 HK32F030M 通过 IOMUX 引脚功能多重映射控制器,实现了单根引脚对应多个 GPIO 或外设 IO 的映射控制。
例如下图中第 8 脚,芯片初始复位后其功能为“PD5(及 SYSCFG 配置中对应的外设 IO)”;通过配置 IOMUX 寄存器可以将第 8 脚功能重映射到 PD3(及 SYSCFG 配置中对应的外设 IO)、 PD1(及 SYSCFG 配置中对应的外设 IO)或 PC6(及 SYSCFG 配置中对应的外设 IO)。
通过 IOMUX 配置, SO8N/SOP8 封装产品仍然可以灵活使用 18 个 GPIO 以及片内所有外设 IO 功能。
IOMUX 配置



SWD映射为普通GPIO
MCU上电复位后PD5和PB5分别作为SWDIO和SWCLK用于调试功能,当我们想把这两个IO作为普通GPIO来使用时,通过配置AF寄存器是无法实现的,必须使用IOMUX来实现GPIO和SWD(SWDIO和SWCLK)之间的切换。
可以通过以下代码片实现这一操作:
代码图


总结一下,关于很多人说国产的MCU坑很多这个问题,我觉得大部分答案都可以在数据手册和用户手册上找到相应的答案。他敢拿出来卖,说明基本功能都是经过严格验证过的,无非就是使用体验的问题,而使用体验是跟资料的丰富程度挂钩的,这一点正是国产厂家所欠缺的,资料非常不完善。基本上,有任何问题只有数据手册和用户手册可以看,至于应用手册啊啥的。。。。。
所以,官方的例程库就显得十分重要了,基本能解决初次使用所碰到的90%的问题,比如SWD映射为GPIO的问题,数据和用户手册完全没有提到,但是在例程库里有详细的代码说明整个配置过程。
只要资料完善,我觉得使用体验还是很不错的。毕竟内核是从ARM买的,厂家也就做了一些外设的定制,改来改去,无非就是寄存器换了个名字,弄个IOMUX这种看似很奇怪的东西,其实这种东西STM32也有,只不过我们习惯了STM32的用法和资料罢了。

编辑:zzy  最后修改时间:2022-05-12

联系方式

0755-82591179

传真:0755-82591176

邮箱:vicky@yingtexin.net

地址:深圳市龙华区民治街道民治大道973万众润丰创业园A栋2楼A08

Copyright © 2014-2023 颖特新科技有限公司 All Rights Reserved.  粤ICP备14043402号-4