找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2784|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

用矩形按鍵控制數(shù)碼管的顯示

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:239027 發(fā)表于 2017-10-13 00:15 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
用矩形按鍵控制數(shù)碼管的顯示

單片機(jī)源程序如下:
  1. #include"reg52.h"
  2. #define u8 unsigned char
  3. #define u16 unsigned int
  4. sbit duan1=P2^2;
  5. sbit duan2=P2^3;
  6. sbit duan3=P2^4;
  7. sbit key=P3^3;
  8. u8 code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  9. u8 date;
  10. void delay(u16 mas)
  11. {
  12.    u16 i,j;
  13.    for(i=mas;i>0;i--)
  14.      for(j=110;j>0;j--);
  15. }

  16. void display(u16 date)
  17. {
  18.    
  19.    duan1=0;duan2=0;duan3=0;
  20.    P0=table[date];
  21.    delay(5);
  22.    P0=0x00;
  23.    }
  24. void keyscan()
  25. {
  26.   u8 temp;
  27.   P1=0x7f;
  28.   temp=P0;
  29.   if(temp!=0x7f)
  30.     {
  31.           delay(10);
  32.           P1=0x7f;
  33.           temp=P1;
  34.           if(temp!=0x7f)
  35.           {
  36.              temp=P1;
  37.                    switch(temp)
  38.                  {
  39.                  case 0x77: date=0; break;
  40.                  case 0x7b: date=1; break;
  41.                  case 0x7d: date=2; break;
  42.                  case 0x7e: date=3; break;
  43.                    }
  44.                 }
  45. //           while(temp=0xff)
  46. //                 {
  47. //                   delay(10);
  48. //                 }

  49.         }
  50. }

  51. void main()
  52. {  

  53.   while(1)
  54.   {
  55.    
  56.    display(date);
  57.    keyscan();
  58.    }
  59. }
復(fù)制代碼

所有資料51hei提供下載:
獨(dú)立按鍵.zip (19.48 KB, 下載次數(shù): 6)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

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

快速回復(fù) 返回頂部 返回列表