完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我们开发了一款带有 STM32G071cbu MCU 的新板,我们已经在之前的项目中成功使用了它。
在这个项目中,我们决定使用带有内部 MCU 上拉功能的按钮。按钮连接其实很简单: 因此,在这种带上拉的配置中,所有数字输入(PA0-1 和 PD0-1)应在未按下按钮时读取 1。但事实并非如此!在这个问题中,我将编写导致问题情况的最少代码(我希望有人可以编译它并检查它是否在其他带有 g071 MCU 的板上) 代码:
将此代码下载到设备后,PA0 和 PA1 按预期工作:它们默认为高电平(约 3.3V),未按下按钮时读取高电平,按下时读取 0。但是端口 D 有一个奇怪的事情。设置相同但在端口 D 只有 PD1 为高电平(3.3V),PD0 电压为 0.286V(电压很重要),因此 PD1 为高电平且 PD 为 0(按钮读取) . 当我按下 PD1 按钮时,会发生什么情况,它变为 0V,但 PD0 实际上开始显示接近 3.3V!然后是按下PD1 PD0 正常工作,但当PD1 未按下时它不起作用。 我检查了。如果将 PD0 或 PD1 用作唯一带上拉的输入,它们可以正常工作,但它们似乎不能一起工作。我在我们的其他 stm32g071cbu 板上尝试了这段代码,结果是一样的(没有按钮,但是当 PD0 和 PD1 都设置为带上拉的数字输入时,PD1 有 3.3V,PD0 有相同的 0.286V!)。 这可能是我不知道的一些软件/设置错误,还是 STM32G071CMU MCU 硬件问题? |
|
相关推荐
|
|
只有小组成员才能发言,加入小组>>
请教:在使用UDE STK时,单片机使用SPC560D30L1,在配置文件怎么设置或选择?里面只有SPC560D40的选项
2738 浏览 1 评论
3241 浏览 1 评论
请问是否有通过UART连接的两个微处理器之间实现双向值交换的方法?
1810 浏览 1 评论
3650 浏览 6 评论
6039 浏览 21 评论
1339浏览 4评论
201浏览 3评论
对H747I-DISCO写程序时将CN2的st-link复用为usart1,再次烧录时无法检测到stlink怎么解决?
353浏览 2评论
STM32G474RE芯片只是串口发个数据就发烫严重是怎么回事?
444浏览 2评论
STM32处理增量式编码器Z信号如何判断中断是正转的还是反向转的?
274浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 04:38 , Processed in 1.111117 second(s), Total 72, Slave 56 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号