找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 18565|回復: 0
收起左側

單片機兩個按鍵控制一個數(shù)碼管顯示1~9

[復制鏈接]
ID:211964 發(fā)表于 2017-6-16 21:09 | 顯示全部樓層 |閱讀模式

(忽略燈)開關位置

(忽略燈)開關位置

數(shù)碼管接連電路圖

數(shù)碼管接連電路圖

/*一個數(shù)碼管和兩個按鍵
自己寫的第一個單片機按鍵控制數(shù)碼管程序*/
#include"stc15.h"
sbit y1=P4^4;
sbit y2=P4^5;
sbit k1=P3^3;
sbit k2=P3^2;

char LED7CodeRight[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};

void delay(int x)
{
   int i,j;
   for(i=x;i>01;i--)
   {for(j=255;j>0;j--);}
}

void main()
{
   int n=0;
   P2=0xfe;              // 初始顯示0
   P4MO=1<<4 | 1<<5;//強推
   P4M1=0x00;

while(1)
{
    if(k1==0)         //如果第一個按鍵按下
    {
      delay(30);    //延時去抖
      if(k1==0)     //再判斷是否按下
      {
          ++n;      //N加1
          if(n==10) //如果N等于10,N為0
           n=0;
       }
   while(k1==0); //等待按鍵松開
    }
   if(k2==0)
   {
      delay(30);    //延時去抖
      if(k2==0)     //再判斷是否按下
      {
          --n;       //N減1
          if(n<0)   //如果N小于0,N為9
          n=9;
       while(k2==0);    //等待按鍵松開
      }
    }
y2=1;y1=1;        
P2=LED7CodeRight[n];          //將段碼送P0口
y2=0;y1=0;
}
}

相關帖子

回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表