专注电子技术学习与研究
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章

基于74hc595芯片数码管独立按键的应用

作者:佚名   来源:本站原创   点击数:  更新时间:2011年08月07日   【字体:
#include<reg52.h>
#define uint unsigned int
#define uchar unsigned char
sbit rck=P0^0;
sbit sck=P0^1;
sbit si=P0^2;
sbit key1=P1^0;//按键接在P1^0口
sbit key2=P1^1;//按键接在P1^1口
uint b=0,a=0,c=0;//全局定义并赋初值
uchar code num[]={0x80,0xed,0x42,0x48,0x2c,0x18,0x10,0xcc,0x00,0x08};
void write_date(uchar temp)
 {
  uint i;
  for(i=0;i<8;i++)
   {
    temp>>=1;
    sck=0;
    si=CY;
    sck=1;
   }
 }
void key()
{
 if(key1==0)//如果按键1被拉为低电平
   { 
    while(!key1);//由低电平变为高电平(即手松开),则执行下面语句
 b++; 
    if(b==9)b=0;//如果b=0,则重新调零 
   }
  else if(key2==0)//分析方法同key1
    {
  while(!key2);
  a++;
     if(a==9)a=0;
 }
  write_date(num[b]);
  write_date(num[a]); 
  rck=0;
  rck=1;
}
void main()
 { 
   write_date(num[0]);
   write_date(num[0]);  
   while(1)//扫描按键是否被按,如果其中的一个被按或两个同时被按,则执行
     { 
      key();//调用key函数  
    } 
  }
关闭窗口

相关文章