打印

单片机开关程序

[复制链接]
1704|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
link424|  楼主 | 2009-10-25 22:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我觉得这个程序没错,但是在仿真的时候不知道为什么总是不能实现开关控制LED的目的,LED就是不变
#include<AT89x51.H>
void delay()
{unsigned int i;
for(i=0;i<20000;i++);
}
void main()
{int   k;
while(1)
{ k=P1^0;
if (k==0)
P0=0x02;
else
   P0=0x01;
   }
   }

相关帖子

沙发
duojinian| | 2009-10-26 10:16 | 只看该作者
DELAY TIME

使用特权

评论回复
板凳
xianghou| | 2009-10-26 15:39 | 只看该作者
1、在读P1口电平前要先输出1的吧,否则读进来的值可能不正确
2、读取按键时要进行防抖处理
3、也就是说在没有按键按下时,所有口的电平相同(同为0或同为)有按键按下后P1口的所有脚的的电平同时改变,你的P0口的输出才能在1、2变

使用特权

评论回复
地板
红金龙吸味| | 2009-10-26 16:02 | 只看该作者
sbit LED = P1^0 ;

while(1)语句上面 加一条 LED = 1 ;

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

8

帖子

0

粉丝