[技术问答] 华大单片机GPIO上电后默认设置的处理

[复制链接]
2358|1
手机看帖
扫描二维码
随时随地手机跟帖
xinshuo|  楼主 | 2021-10-22 09:14 | 显示全部楼层 |阅读模式
如何解决华大单片机上电复位/硬件复位后一个管脚总是输出高电平脉冲问题
查看华大单片机手册GPIO管脚上电或硬件复位后应该都是“输入,输出寄存器为不确定”,这样的模式。
手册上以下两个寄存器明确了“输入,输出寄存器为不确定”,这样的设定。


但实际在使用时,通过keil debug看着两个寄存器的状态:


上面两个寄存器是程序运行到system_hc32l110.c文件内的_HidePinInit函数时 断点观察到的数值。
http://www.tigerchip.com.cn/forum.php?mod=viewthread&tid=1216&extra=page%3D1
所以在P35管脚上,硬件重启后有一个输出短暂的高电平脉冲出现。

所以建议一定要明确我们板子上的各个GPIO的管脚状态,最好在程序刚刚启动时就把所有GPIO的状态明确配置。
建议最好就在system_hc32xxx.c文件内的_HidePinInit函数内进行设置,让芯片启动时就有一个明确的GPIO状态,以免类似问题。

使用特权

评论回复
martinhu| | 2021-10-22 09:48 | 显示全部楼层
_HidePinInit这个函数是用来把没有封装出来的IO设置一个固定电平,这样在进入DeepSleep的时候可以更降低MCU功耗。

使用特权

评论回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则