[APM32F0] APM32F003 GPIO使用注意事项

[复制链接]
631|19
lc115647 发表于 2025-8-17 15:03 | 显示全部楼层 |阅读模式

一、GPIO主要特点

主要特征 :

1、输入模式

⚫ 模拟输入

⚫ 浮空输入

⚫ 上拉输入

2、 输出模式

⚫ 推挽输出

⚫ 开漏输出

⚫ 可配置最大输出速率

3、复用功能

4、GPIO 都可以作为外部中断/唤醒线

二、GPIO构造区别对比

F003 GPIO内部构造图

1.pngF030 GPIO内部构造图

2.png

1、从两张图片可以清晰的,F003缺少下拉电路,因此无法下拉输入,从端口控制寄存器也可以看到,输入模式只能选择浮空输入和上拉输入。

3.png

2、输出功能到输出控制,F003缺少选择器,因此在将GPIO配置为其他外设时,没有复用选择设置寄存器。外设模块的输出会直接到端口输出寄存器上,可理解为外设的优先级更高

6.png

4.png

3、速度配置:通过配置 GPIOx_CTRL2 寄存器选择输出速度最大为 2MHz 或 10MHz。因此如果要使用模拟串口或者其他通讯协议时,需要注意IO翻转速度会限制模式通讯频率。

三、特殊GPIO使用注意事项

从数据手册中我们可以看到PB4、PB5是纯开漏输出,因此在需要对外输出高电平时,需要外部加上拉电阻,同样在配置为串口和IIC功能时也需要加外部上拉电阻。

5.png

复位之后,除了调试接口 PD1 和 PD2,所有的引脚都是浮空输入模式。复位后,调试引脚 PD1 和 PD2 被置为复用功能,其中 PD1 为上拉模式。当关闭调试功能后,作为普通的 GPIO 引脚。建议如果要将PD1和PD2设置为其他功能时,建议不要在上电初始化时就更改掉,防止后续无法再下载程序。

四、总结

F003做为32位入门级别M0,在使用方式上偏向于8位MCU,精简了很多功能寄存器。同时有部分需要特殊注意的IO端口PB4、PB5、PD1和PD2,在使用的时候要注意。

银河漫步 发表于 2025-8-22 15:42 | 显示全部楼层
印象中,ARM的IP是无法自定义寄存器的。
永恒的一瞥 发表于 2025-8-25 14:47 | 显示全部楼层
调试口还是不要使用的为好。
 楼主| lc115647 发表于 2025-8-26 16:16 | 显示全部楼层
银河漫步 发表于 2025-8-22 15:42
印象中,ARM的IP是无法自定义寄存器的。

ARM卖的是内核,外设是厂商自己选择IP
 楼主| lc115647 发表于 2025-8-26 16:17 | 显示全部楼层
永恒的一瞥 发表于 2025-8-25 14:47
调试口还是不要使用的为好。

是的,针对有些应用IO不够的情况,这个也是一种方式,只是使用需要注意下
deliahouse887 发表于 2025-9-2 16:14 | 显示全部楼层
入门级32位M0内核MCU              
lzmm 发表于 2025-9-2 17:35 | 显示全部楼层
输出速度配置        2MHz/10MHz两档
lihuami 发表于 2025-9-2 18:22 | 显示全部楼层
单个引脚最大输出电流建议不超过 8mA,总 I/O 电流不超过 50mA。
backlugin 发表于 2025-9-2 19:58 | 显示全部楼层
引脚正确接地或接电源,避免悬空导致功耗增加或不稳定。
ulystronglll 发表于 2025-9-2 22:08 | 显示全部楼层
PD1/PD2是否被误配置为普通IO
hilahope 发表于 2025-9-4 14:32 | 显示全部楼层
输出高电平时需外部上拉电阻,否则无法驱动外部电路
updownq 发表于 2025-9-6 10:01 | 显示全部楼层
输入模式 + 上拉/下拉              
saservice 发表于 2025-9-6 13:28 | 显示全部楼层
GPIO引脚可能会影响微控制器              
jkl21 发表于 2025-9-8 16:15 | 显示全部楼层
需要内部上拉或下拉电阻。              
寂静小夜曲 发表于 2025-9-8 19:37 | 显示全部楼层
这个软件配置应该不会产生出来啥情况。
但GPIO过流和过压的风险是非常大的。
yeates333 发表于 2025-9-9 16:31 | 显示全部楼层
PB4/PB5必须确保低电平状态,可通过软件驱动输出低电平或外部硬件下拉
cemaj 发表于 2025-9-9 21:23 | 显示全部楼层
需要注意GPIO直接驱动大功耗器件可能会影响ADC采样结果
lihuami 发表于 2025-9-10 10:20 | 显示全部楼层
如果要将GPIO设置为输出模式,需要使用相应的库函数进行配置。
mikewalpole 发表于 2025-9-10 16:41 | 显示全部楼层
仅支持浮空输入和上拉输入,无下拉输入电路,需通过端口控制寄存器直接配置
wwppd 发表于 2025-9-13 14:34 | 显示全部楼层
避免超过引脚的电气极限导致损坏。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

20

主题

29

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部