STM32小问题-复用调试接口JTAG/SWD为普通GPIO
来源:互联网 发布:站长查询SEO是什么意思 编辑:程序博客网 时间:2024/06/04 18:05
这几天做毕业设计,按键模块用到了PA14和PA15这两个IO口(由于IO是引出到拓展板上,所以刚开始并不知道PA14和PA15是被调试接口占用了)。设置好相应的寄存器后发现只有PA15正常按下能被拉低,而PA14用万用表检测始终处于低电平状态。刚开始我以为这个管脚坏了,就想着设置成输出高电平试试,结果可想而知,查看手册后发现在在复位后JTAG接口的PA14被设置为下拉了,所以按键读回来的永远是低电平。
后来发现核心板上PA15引脚连接到了JTAG接口就想能不能通过复用把这几个口解放出来,毕竟在正常应用中调试接口是不工作的,还不如利用起来(其实是我懒得再改板子PCB了),后来查看手册发现真的可以复用起来。
手册描述如下
手册给了我们提示,只要设置AFIO的MAPP寄存器中的SWJ_CFG[2:0]这两位就能改变映射关系,所以只要能改变这个寄存器就OK啦。
具体的映射关系设置如下:
SWJ_CFG[2:0]的描述如下:
只要设置这三位为100,就能关闭调试接口,其所占用的IO就变成普通的GPIO了,这就达到了我的目的。既然找到了方法,那解决的办法就简单了。
//重映射JTAG/SWD接口为普通GPIO RCC->APB2ENR|=1; AFIO->MAPR&=0xf8ffffff; AFIO->MAPR|=0x04000000;
很简单,至于为什么AFIO->MAPR这么设置,只要看懂手册就行啦。
1 0
- STM32小问题-复用调试接口JTAG/SWD为普通GPIO
- STM32调试记录-JTAG接口当作普通GPIO使用
- STM32调试接口SWD连接
- STM32调试接口SWD连接
- STM32调试接口SWD连接
- stm32 JTAG和SWD
- 使用Ulink2的JTAG与SWD 调试stm32 区别
- STM32 程序禁用JTAG、SWD
- EFM32片内外设--GPIO之SWD接口复用
- STM32 JTAG SWD (PB3 PB4用作普通IO)及启动模式
- STM32-GPIO—JTAG
- J-Link JTAG/SWD接口
- J-Link JTAG/SWD接口
- J-Link JTAG/SWD接口
- STM32 SWD调试
- stm32 JTAG和SWD的使用区别
- stm32 JTAG和SWD的使用区别
- stm32 JTAG和SWD的使用区别
- Dcm4chee学习笔记(一)
- 归并排序
- 第17章 控件模版(8)——动态换肤
- K近邻算法
- intent的用途
- STM32小问题-复用调试接口JTAG/SWD为普通GPIO
- 谁拿了最多奖学金pascal程序
- Sping 学习笔记7—— SpringMVC的restful 服务
- 51Nod - 1102 单调栈
- Javascript基础(五)之循环结构
- 【原创】梵高油画用深度卷积神经网络迭代10万次是什么效果? A neural style of convolutional neural networks
- java学习记录----面向对象(一)
- 如何创建一个居中的Frame(Swing)?
- LeetCode 71. Simplify Path