[AT32F403/403A] AT32F403A PB3 PB4 PA15如何用作普通IO使用

[复制链接]
 楼主| 骑着蜗牛狂奔O 发表于 2020-11-10 21:43 | 显示全部楼层 |阅读模式
IO, a15, pi, gp, GPIO
本帖最后由 ArterySW 于 2022-2-17 18:26 编辑

AT32F403A 将 PB3 PB4 PA15配置成普通IO使用,配置方法基本和STM32F103类似


crm_periph_clock_enable(CRM_IOMUX_PERIPH_CLOCK, TRUE); //复用时钟使能
crm_periph_clock_enable(CRM_GPIOA_PERIPH_CLOCK, TRUE); //时钟使能
crm_periph_clock_enable(CRM_GPIOB_PERIPH_CLOCK, TRUE); //时钟使能


gpio_pin_remap_config(SWJTAG_CONF_010, TRUE); //禁用JTAG功能使能 SWD 功能, PA15 PB3 PB4用作普通IO

gpio_init_struct.gpio_pins = GPIO_PINS_15; //PA15用作普通IO
gpio_init_struct.gpio_mode = GPIO_MODE_OUTPUT;
gpio_init_struct.gpio_pull = GPIO_PULL_NONE;
gpio_init_struct.gpio_out_type = GPIO_OUTPUT_PUSH_PULL;
gpio_init_struct.gpio_drive_strength = GPIO_DRIVE_STRENGTH_STRONGER;
gpio_init(GPIOA, &gpio_init_struct);

//PB3 PB4用作普通IO
gpio_init_struct.gpio_pins = GPIO_PINS_3 | GPIO_PINS_4;
gpio_init(GPIOB, &gpio_init_struct);

对于AT32F421的配置方法可以查看BSP中的example,使用时注意查看RM的MUX章节
muyichuan2012 发表于 2020-11-10 23:02 来自手机 | 显示全部楼层
感谢分享,又可以多出几个io用了。
zeshoufx 发表于 2020-11-11 09:08 | 显示全部楼层
调试的时候怎么解除这个呢?
 楼主| 骑着蜗牛狂奔O 发表于 2020-11-11 09:35 来自手机 | 显示全部楼层
zeshoufx 发表于 2020-11-11 09:08
调试的时候怎么解除这个呢?

什么意思,没理解到
zeshoufx 发表于 2020-11-11 11:30 | 显示全部楼层

调试的时候需要用到SWJ的两根引脚,,,你把SWJ功能禁止了,,,调试怎么办?
便携手到老 发表于 2020-11-11 11:37 | 显示全部楼层
如果调试的引脚进行复用之后,禁止后,是不是就不能调试了?
muyichuan2012 发表于 2020-11-11 11:57 来自手机 | 显示全部楼层
我icp把源代码擦掉后还可以调试
 楼主| 骑着蜗牛狂奔O 发表于 2020-11-11 20:05 来自手机 | 显示全部楼层
zeshoufx 发表于 2020-11-11 11:30
调试的时候需要用到SWJ的两根引脚,,,你把SWJ功能禁止了,,,调试怎么办? ...

这个选项是禁的TAG,但SWD还是可以用的,也就是PA13 PA14,如果选成GPIO_Remap_SWJ_AllDisable那么就不能调试了
自己造声卡 发表于 2020-11-18 15:23 | 显示全部楼层
在程序中可以随时切换吗?就是我仿真的时候,不用这些IO口,在真正的产品的时候,使用这些IO口。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

55

主题

140

帖子

4

粉丝
快速回复 返回顶部 返回列表