完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
大家好:咨询大家一个问题,我使用PD5、PD6、PA3 作为IO输入,检测按键,外部设置的上拉10K到5V,电路图如下
初始化端口如下: //设置端口方向-输入PD_DDR_DDR5=0; //PD5输入模式PD_DDR_DDR6=0; //PD6输入模式PA_DDR_DDR3=0; //PA3输入模式 //设置为浮空输入 因都有外置上拉电阻 PD_CR1_C15=0;PD_CR1_C16=0;PA_CR1_C13=0; //中断设置 PD_CR2_C25=1; //PD5--允许中断PD_CR2_C24=0; //禁止中断PD4PA_CR2_C23=1; //PA3--允许中断 现在的问题是,我的电路板开始运行时,检测上述PD5、PD6 输入无问题(按下为低电平,松开则为高电平) 但是运行过一段时间后,一些电路板的 PD5、PD6 输入就有问题了,无法识别高低电平了,通过ST仿真器查看,IDR对应信息总是低电平,感觉好像IO已经损坏 我再次使用“ST Visual Programmer”工具 擦除芯片,然后再次仿真,仍然不能正常 检测PD5、PD6 电平(未按下时,检测PD5的电压居然不在是5V,是2.5V左右了)。 网上说,PD5和PD6 需要关闭UART以及ADC功能,我确认关闭了,毕竟开始就是正确识别的。 这个问题感觉非常奇怪,希望大家多多帮助,再次感谢大家 |
|
相关推荐
2个回答
|
|
|
从你软件配置上看,没有发现什么不对劲的地方。你确认下芯片外围原件品质及线路,同时 可以考虑直接换个MCU芯片比较测试下,看看是否芯片坏损了。
|
|
|
|
|
|
入模式//设置上拉电阻为上拉-外部,端口值为1PD_CR1_CR15=1; //PD5上拉PD_CR1_CR16=1; //PD6上拉PA_CR1_CR13=1; //PA3上拉 接下来,在主循环中您可以进行IO的读取。比如读取PD5引脚的状态: if(PD_IDR_IDR5==0) { //如果按键按下 } else { //如果按键没有按下 } 同样的方法您也可以读取PD6和PA3引脚的状态。如果你有任何问题,请随时询问。
|
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
4178 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
3251 浏览 1 评论
2781 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
2210 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
15077 浏览 2 评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
3136浏览 4评论
stm32f4下spi+dma读取数据不对是什么原因导致的?
1926浏览 3评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
2094浏览 3评论
2004浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
2201浏览 3评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-8 16:44 , Processed in 0.618289 second(s), Total 79, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
422