找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6546|回复: 2
打印 上一主题 下一主题
收起左侧

单片机按键控制8位数码管-每按一个键在8位数码管上从左到右显示

[复制链接]
跳转到指定楼层
楼主
ID:85192 发表于 2015-7-14 17:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式




//P1口接8个按键,代表1~8。每按一个键在8位数码管上从左到右显示。
//D:\DPJ_C\OTHER\8位数码管\8位数码管.C
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit KEY1=P1^0;
sbit KEY2=P1^1;
sbit KEY3=P1^2;
sbit KEY4=P1^3;
sbit KEY5=P1^4;
sbit KEY6=P1^5;
sbit KEY7=P1^6;
sbit KEY8=P1^7;
sbit P3_0=P3^0;
sbit P3_1=P3^1;
sbit P3_2=P3^2;
sbit P3_3=P3^3;
sbit P3_4=P3^4;
sbit P3_5=P3^5;
sbit P3_6=P3^6;
sbit P3_7=P3^7;
bit  flag;
uchar a,temp;
uchar code tab[]={
      0x00,/*灭*/
      0x06,/*1*/
      0x5B,/*2*/
      0x4F,/*3*/
      0x66,/*4*/
      0x6D,/*5*/
      0x7D,/*6*/
      0x07,/*7*/
      0x7F,/*8*/
      };
uchar arr[9];
      
void delay (uint ms)
{
uchar i;
while(ms--)
for(i=0;i<123;i++);
}
void disp();
void main()
{
while(1)
{
  disp();
  if(flag==1)
  {
   flag=0;
   a++;
   if(a==9)
   a=1;
   arr[a]=temp;
  }


  while(!KEY1)
  {
   disp();
   if(KEY1)
   {
   flag=1;
   temp=1;
   }
  }
    while(!KEY2)
  {
   disp();
   if(KEY2)
   {
   flag=1;
   temp=2;
   }
  }while(!KEY3)
  {
   disp();
   if(KEY3)
   {
   flag=1;
   temp=3;
   }
  }
  while(!KEY4)
  {
   disp();
   if(KEY4)
   {
   flag=1;
   temp=4;
   }
  }
      while(!KEY5)
  {
   disp();
   if(KEY5)
   {
   flag=1;
   temp=5;
   }
  }
    while(!KEY6)
  {
   disp();
   if(KEY6)
   {
   flag=1;
   temp=6;
   }
  }while(!KEY7)
  {
   disp();
   if(KEY7)
   {
   flag=1;
   temp=7;
   }
  }
  while(!KEY8)
  {
   disp();
   if(KEY8)
   {
   flag=1;
   temp=8;
   }
  }
}
}
void disp()
{
P2=tab[arr[1]];
P3_0=0;
delay(1);
P3_0=1;
P2=tab[arr[2]];
P3_1=0;
delay(1);
P3_1=1;
P2=tab[arr[3]];
P3_2=0;
delay(1);
P3_2=1;
P2=tab[arr[4]];
P3_3=0;
delay(1);
P3_3=1;
P2=tab[arr[5]];
P3_4=0;
delay(1);
P3_4=1;
P2=tab[arr[6]];
P3_5=0;
delay(1);
P3_5=1;
P2=tab[arr[7]];
P3_6=0;
delay(1);
P3_6=1;
P2=tab[arr[8]];
P3_7=0;
delay(1);
P3_7=1;
}






分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:44267 发表于 2015-10-20 19:12 | 只看该作者
学习了,顶起
回复

使用道具 举报

板凳
ID:142342 发表于 2016-10-11 19:26 | 只看该作者
学习了,顶起
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表