久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2061|回復: 4
打印 上一主題 下一主題
收起左側

求解程序一邊控制LED一邊控制按鍵

[復制鏈接]
跳轉到指定樓層
樓主
ID:211467 發表于 2017-6-18 16:35 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
我從廠里面拿來了一個學習板(作為初學者,我用的是AT89C52單片機),這個學習板數碼管位選是P0口,低電平有效,
段選是P2口,也是低電平有效。數碼管對應的按鍵是一邊是P2^2~P2^7,公共端接的是P3^3。怎么才能一邊控制按鍵一邊讓數碼管亮(程序不會寫)。這是我的寫的按鍵控制小燈的程序,可是控制數碼管就不會了。
//LED小燈區別按鍵
//LED小燈區別按鍵
#include<reg52.h>                        
#define uint unsigned int       
#define uchar unsigned char
uchar temp;
sbit key=P3^3;             //按鍵公共端
void delay(uchar z)       //延時函數
{
uint x,y;
for(x=70;x>0;x--)
   for(y=z;y>0;y--);
}       
void main()
{
while(1)
  {
    key=0;              //按鍵公共端置0
    temp=P2;          //用按鍵掃描方法判斷是否有按鍵按下
    temp=temp&0xff;
    while(temp!=0xff)
      {
       delay(5);            //延時一段時間確認按鍵是否按下
        temp=P2;
        temp=temp&0xff;
        while(temp!=0xff)
        {
                temp=P2;
                switch(temp)          //對應按下的不同按鍵,點亮不同的LED小燈
                {
                        case 0x7f:P1=0x7f;break;
                        case 0xbf:P1=0xbf;break;
                        case 0xdf:P1=0xdf;break;
                        case 0xef:P1=0xef;break;
                        case 0xf7:P1=0xf7;break;
                        case 0xfb:P1=0xfb;break;
                }
                while(temp!=0xff)          //消除按鍵松開時的抖動
                {
                temp=P2;
                }
        }
     }
  }
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:211467 發表于 2017-6-18 17:28 | 只看該作者
P0段選,P2位選,說錯了
回復

使用道具 舉報

板凳
ID:179958 發表于 2017-6-18 17:53 | 只看該作者
數碼管驅動分為位選和段選,如果是多位數碼管,得進行動態掃描,建議先了解一下數碼管的驅動原理,然后先讓一位顯示,再升級成多位的
回復

使用道具 舉報

地板
ID:211467 發表于 2017-6-18 19:31 | 只看該作者
小潘哥 發表于 2017-6-18 17:53
數碼管驅動分為位選和段選,如果是多位數碼管,得進行動態掃描,建議先了解一下數碼管的驅動原理,然后先讓 ...

數碼管動態顯示我也嘗試著做好了,可是不知道怎么把數碼管動態顯示和這個程序和在一起。
void display()                                           //數碼管從0到255動態顯示
{                       
        P2=0x7f;
        P0=number[num/100];
        delay(10);
        P2=0xbf;
        P0=number[num%100/10];
        delay(10);
        P2=0xdf;
        P0=number[num%10];
        delay(10);
}
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一级黄视频| 欧美三级大片 | 黄色大片在线播放 | 国产精品一级二级 | 在线不卡一区 | av网站观看| 黄色特级毛片 | 国产精品一区在线播放 | 国产一区二区精品在线 | 国产精品手机在线观看 | 欧美成人一区二区 | 日韩一区二区在线观看视频 | 免费观看av网站 | 亚洲综合激情 | 久久九九精品 | 天天操操操操 | 亚洲精品1| 久久免费观看视频 | 欧美性受xxxx黑人xyx性爽 | 天堂网久久 | 国产成人午夜 | 又黄又爽又色视频 | 黄色a毛片 | 草草视频在线 | 久热精品在线 | 久久激情小说 | 国产视频h | av影院在线 | 99视频在线精品免费观看2 | 三级黄色网址 | 久久在线免费视频 | 成人免费黄色片 | 91爱看| 九九九精品视频 | 日韩毛片视频 | 99在线免费视频 | 欧美综合久久 | 成人免费在线 | 欧美精品自拍 | 久久精品观看 | 久久精品视频免费看 |