你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32 PB3 端口读入数据一直为零的问题?

[复制链接]
wn1900 提问时间:2015-3-16 15:05 /
使用芯片:STM32F103RCT
开发环境:MDK5.1.2
调试方法:JTAG+SWD
遇到问题:PB3端口作为输入,一直读取到的是低电平,不管外部输入是不是高电平,都一直读取到的是低电平。
问题原因:
因为在使用SWD调试的时候要取消trace跟踪调试,Pb3端口还是没法正常读取到数据。
查找资料发现,别人发贴说是以为默认使用的JTAG调试方式或者是SWD方式占用了PB3端口,所以
没办法使用。类似的问题在其他论坛出现过
最后发现解决办法就是:
在程序初始化的时候要加上这两句话来让PB3 PA15 PB3 能正常使用。



RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);              
DBGMCU->CR  &= ~((uint32_t)1<<5);   
AFIO->MAPR = (AFIO->MAPR & ~((uint32_t)0x7 << 24)) | (2 << 24);     /*  PA15 PB3 PB4 */



加上这两句话之后,PB3作为IO口输入数据就正常。


收藏 评论8 发布时间:2015-3-16 15:05

举报

8个回答
wn1900 回答时间:2015-3-16 15:17:12
调试了好久才发现是这个问题,希望看到这个帖子的童鞋能少走点弯路
大浪10010 回答时间:2015-3-16 15:38:22
学习了,,多谢分享,,,,
zfz0122 回答时间:2015-3-16 18:28:37
学习了啊 14.gif
wambob 回答时间:2015-3-16 19:12:45
谢谢分享
foxglove 回答时间:2015-3-16 21:41:09
遇到问题:PB3端口作为输入,一直读取到的是低电平,不管外部输入是不是高电平,都一直读取到的是低电平。
问题原因
zhangdaijin 回答时间:2015-3-16 22:10:32
学习一下!
wn1900 回答时间:2015-3-18 16:02:02
foxglove 发表于 2015-3-16 21:41
遇到问题:PB3端口作为输入,一直读取到的是低电平,不管外部输入是不是高电平,都一直读取到的是低电平。
...

不带这样复制的吧
foxglove 回答时间:2015-3-18 17:02:25
wn1900 发表于 2015-3-18 16:02
不带这样复制的吧

哦,记录一下这问题怎么解决的

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版