| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 4226 人关注过本帖
标题:采用单片机系统、四路按键、四个LED灯、一个数码管,学习按键检测的基本原理 ...
只看楼主 加入收藏
dustinc
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-11-19
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
采用单片机系统、四路按键、四个LED灯、一个数码管,学习按键检测的基本原理,实现四路按键的检测,当检测到某一按键按下,点亮对应LED等,并在数码管显示对应的按键
采用单片机系统、四路按键、四个LED灯、一个数码管,学习按键检测的基本原理,实现四路按键的检测,当检测到某一按键按下,点亮对应LED等,并在数码管显示对应的按键号。
搜索更多相关主题的帖子: 按键 检测 LED灯 
2012-11-19 22:48
dustinc
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-11-19
收藏
得分:0 
求高手知道 急用
2012-11-19 22:49
dustinc
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-11-19
收藏
得分:0 
#include<reg52.h>                 //包含一个51标准内核的头文件

sbit K1=P3^5;            //定义IO口
sbit K2=P3^4;                      //定义IO口
sbit K3=P3^3;                      //定义IO口
sbit K4=P3^2;                      //定义IO口
sbit L1=P1^0;
sbit L2=P1^1;
sbit L3=P1^2;                     
sbit L4=P1^3;

sbit DU=P2^6;
sbit WE=P2^7;


void delay10ms(void) //延时程序
{
    unsigned char i,j;
    for(i=20;i>0;i--)
    for(j=248;j>0;j--);

}
   
void main(void)                  //主函数
{   
   K1=1 ;
   K2=1 ;
   K3=1 ;
   K4=1 ;
   L1=1;
   L2=1;
   L3=1;
   L4=1;
   DU=1;
   WE=1;
   P0=0xff;                        //赋初值   
   while(1)                     
   {
 
   
if(K1==0)                       //如果按键1按下
     {
      delay10ms();
      if(K1==0)
       L1=0;                //灯亮
       DU=0;
       WE=1;
       P0=0xf9;
     }
    else                        //没按下
      {
       L1=1;                   //灯灭
      
     }
     
if(K2==0)                       //如果按键2按下
     {
      delay10ms();
      if(K2==0)
       L2=0;                //灯亮
       DU=0;
       WE=1;
       P0=0xa4;
     }
    else                        //没按下
      {
       L2=1;                   //灯灭
      
       }
     
if(K3==0)                       //如果按键3按下
     {
      delay10ms();
      if(K3==0)
       L3=0;                //灯亮
       DU=0;
       WE=1;
       P0=0xb0;
     }
    else                        //没按下
      {
       L3=1;   
                   //灯灭
       }
           
if(K4==0)                       //如果按键4按下
     {
      delay10ms();
      if(K4==0)
       L4=0;                //灯亮
       DU=0;
       WE=1;
       P0=0x99;
      }
    else                        //没按下
      {
       L4=1;                   //灯灭
      
      }
     }

}
 最好是在这个程序稍微修改下的 不影响功能   跪求
2012-11-19 22:53
laoA
Rank: 2
等 级:论坛游民
帖 子:24
专家分:59
注 册:2012-11-18
收藏
得分:20 
随便找本单片机的书,都会有的
2012-11-20 11:06
快速回复:采用单片机系统、四路按键、四个LED灯、一个数码管,学习按键检测的基 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017068 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved