搜索
首页 教育/科学

k1-k4按键状态显示设计报告

单片机100例里的内容,求设计报告

全部回答

2013-07-01

107 0

    第一步:关键电路的连接。 01、单片机用IO口,连接到三极管、或者场效应管、或者光继电器的控制脚。再接到 LED。 02、K1、K2、K3、K4 这四个开关以开关量采集的方式分别接到单片机的4个单独的IO口中。
   第二步:程序编写思路。 01、单片机以 2ms 到 5ms 的周期,对所有开关进行扫描,具体采用多少周期,要根据开关的灵敏度进行试验得出。   02、单片机扫描到各个开关的状态以后,进行保存,然后得到每一个开关的前一状态和当前状态,再根据具体的逻辑要求,让 LED 亮或者灭。
   希望是最佳答案哦。

2013-06-30

112 0

    #include #define uchar unsigned char #define uint unsigned int sbit LED1=P0^0; sbit LED2=P0^1; sbit LED3=P0^2; sbit LED4=P0^3; sbit K1=P1^0; sbit K2=P1^1; sbit K3=P1^2; sbit K4=P1^3; //延时 void DelayMS(uint x) //这是一个延时函数,延时毫秒级,后面的参数是几就是几毫秒 { uchar i; while(x--) for(i=0;i<120;i++); } //主程序 void main() { P0=0xff; //51单片机为准双向口,读入前先写1 P1=0xff; while(1) { LED1=K1; //前两个键按下则对应的灯亮,松开则灭 LED2=K2; if(K3==0) { while(K3==0); //这一句是等按键释放 LED3=~LED3; //这一句是灯取反,实现按一次键亮再按一次灭依次往复 } if(K4==0) //同K3 { while(K4==0); LED4=~LED4; } DelayMS(10); //延时10毫秒,也起到一个去抖动作用 } }。
    。

类似问题换一批

热点推荐

热度TOP

相关推荐
加载中...

热点搜索 换一换

教育/科学
教育/科学
出国/留学
院校信息
人文学科
职业教育
升学入学
理工学科
外语学习
学习帮助
K12
举报
举报原因(必选):
取消确定举报