单片机的一个很神奇的问题,高手进!

[复制链接]
查看11 | 回复5 | 2013-7-31 16:26:55 | 显示全部楼层 |阅读模式
没有按下按钮的时候,灯会微亮一闪一闪的,这与程序无关,也与按钮抖动无关,因为都没有按下,就无所谓的抖动了。应该找LED灯,要看是怎么接的,再看串联的限流电阻的大小,说明在P1.0输出高电平是就微亮了....
回复

使用道具 举报

千问 | 2013-7-31 16:26:55 | 显示全部楼层
不知道你LED是怎么连的,所以暂时理解你那部分是对的你按键部分也没加防抖动延时,如果外围有少量干扰,程序可能就认为你按键按下了,另外建议你P1.3上加个10K左右上拉电阻就更好了。建议改成: while(1){if(button==0) {delay_10msif(button==0)led=0; ...
回复

使用道具 举报

千问 | 2013-7-31 16:26:55 | 显示全部楼层
首先确定你的硬件,BUTTON既然是低有效,那么最好把IO口即P1^3口拉高(接5.1K电阻至VCC),然后最好做一下硬件去抖,接一个无极性电容接地。确定你的硬件端口没有被复用,且电源正常。然后软件里也做一下去抖处理,if(button==0){ delay_ms(5); if(button==0) {
...
回复

使用道具 举报

千问 | 2013-7-31 16:26:55 | 显示全部楼层
任何按键都有机械抖动 你以为按下去了 实际上金属片接触不良什么的就抖起来了 所以一般机械性能不好的按键都是触发操作的 比如按一次亮再按一次灭 按键去抖网上有很多相关知识无非是硬件上加电容软件上做延迟之类的...
回复

使用道具 举报

千问 | 2013-7-31 16:26:55 | 显示全部楼层
软件应该没有什么问题,可能是你的开发板有哪个短路帽影响了...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行