打印
[AT32F403/403A]

AT32F403A PB3 PB4 PA15如何用作普通IO使用

[复制链接]
1407|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
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
调试的时候怎么解除这个呢?

什么意思,没理解到

使用特权

评论回复
5
zeshoufx| | 2020-11-11 11:30 | 只看该作者

调试的时候需要用到SWJ的两根引脚,,,你把SWJ功能禁止了,,,调试怎么办?

使用特权

评论回复
6
便携手到老| | 2020-11-11 11:37 | 只看该作者
如果调试的引脚进行复用之后,禁止后,是不是就不能调试了?

使用特权

评论回复
7
muyichuan2012| | 2020-11-11 11:57 | 只看该作者
我icp把源代码擦掉后还可以调试

使用特权

评论回复
8
骑着蜗牛狂奔O|  楼主 | 2020-11-11 20:05 | 只看该作者
zeshoufx 发表于 2020-11-11 11:30
调试的时候需要用到SWJ的两根引脚,,,你把SWJ功能禁止了,,,调试怎么办? ...

这个选项是禁的TAG,但SWD还是可以用的,也就是PA13 PA14,如果选成GPIO_Remap_SWJ_AllDisable那么就不能调试了

使用特权

评论回复
9
自己造声卡| | 2020-11-18 15:23 | 只看该作者
在程序中可以随时切换吗?就是我仿真的时候,不用这些IO口,在真正的产品的时候,使用这些IO口。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

53

主题

128

帖子

2

粉丝