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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機6個IO口掃描21個按鍵經典實驗

[復制鏈接]
跳轉到指定樓層
樓主
項目所需6個IO口掃描21個按鍵:(大神有更好的方法或者建議,請不吝指教哦!)
原理與矩陣掃描類似:
下面是仿真圖和程序:(附件是protuse仿真文件)


單片機源程序如下:
#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint  unsigned int
sbit d1 = P3^0;
sbit d2 = P3^1;
sbit k1=P1^0;
sbit k2=P1^1;
sbit k3=P1^2;
sbit k4=P1^3;
sbit k5=P1^4;
sbit k6=P1^5;
sbit led=P3^7;
uchar code_table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf};
uchar temp;
void delay_ms(uint x)
{
    uint i,j;
    for(i=0;i<x;i++)
   for(j=0;j<110;j++);
}
void display(uchar td)
{
    d1=1;d2=0;
    P2=~code_table[td%10];
    delay_ms(5);
    P2=0x00;
    d1=0;d2=1;
    P2=~code_table[td/10];
    delay_ms(5);
    P2=0x00;
}
uchar keyscan()
{
uchar pp;
P1=0xff;
if(P1!=0xff)
{
  delay_ms(10);
  if(P1!=0xff)
  {
    pp=P1;
   led=0;
   switch(pp)
   {
    case 0xfe:temp=1;return(temp);
    case 0xfd:temp=2;return(temp);
    case 0xfb:temp=3;return(temp);
    case 0xf7:temp=4;return(temp);   
    case 0xef:temp=5;return(temp);
    case 0xdf:temp=6;return(temp);   
   }
  }
}
P1=0xfe;
if(P1!=0xfe)
{  
  delay_ms(10);
  if(P1!=0xfe)
  {
    pp=P1;
   led=0;
   switch(pp)
   {
    case 0xfc:temp=7;return(temp);
    case 0xfa:temp=8;return(temp);
    case 0xf6:temp=9;return(temp);
    case 0xee:temp=10;return(temp);   
    case 0xde:temp=11;return(temp);   
   }
  }
}
P1=0xfd;
if(P1!=0xfd)
{  
  delay_ms(10);
  if(P1!=0xfd)
  {
    pp=P1;
   led=0;
   switch(pp)
   {
    case 0xf9:temp=12;return(temp);
    case 0xf5:temp=13;return(temp);
    case 0xed:temp=14;return(temp);
    case 0xdd:temp=15;return(temp);
   }
  }
}
P1=0xfb;
if(P1!=0xfb)
{  
  delay_ms(10);
  if(P1!=0xfb)
  {
    pp=P1;
   led=0;
   switch(pp)
   {
    case 0xf3:temp=16;return(temp);
    case 0xeb:temp=17;return(temp);
    case 0xdb:temp=18;return(temp);   
   }
  }
}  
P1=0xf7;
if(P1!=0xf7)
{  
  delay_ms(10);
  if(P1!=0xf7)
  {
    pp=P1;
   led=0;
   switch(pp)
   {
    case 0xe7:temp=19;return(temp);
    case 0xd7:temp=20;return(temp);  
   }
  }
}
P1=0xef;
if(P1!=0xef)
{  
  delay_ms(10);
  if(P1!=0xef)
  {
    pp=P1;
   led=0;
   switch(pp)
   {
    case 0xcf:temp=21;return(temp);  
   }
  }
}
temp=0;
led=1;
return(temp);
}
void main(void)
{
led=1;
while(1)
{  
  display(keyscan());
}
   
}



全部資料51hei下載地址:
仿真.rar (45.6 KB, 下載次數: 24)


評分

參與人數 2黑幣 +54 收起 理由
qjzyx + 4 贊一個!
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:102963 發表于 2018-1-22 18:16 | 只看該作者
壓縮包沒程序,做事情不夠認真!
回復

使用道具 舉報

板凳
ID:258566 發表于 2018-1-22 20:55 | 只看該作者
有程序,但不是本文中的程序。
回復

使用道具 舉報

地板
ID:266116 發表于 2018-1-22 20:59 | 只看該作者
改天也試試!
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩第一页 | 国产精品中文字幕在线 | 免费午夜电影 | 日韩精品中文字幕一区二区三区 | 精品一区二区三区免费毛片 | 日韩毛片 | 玖玖玖在线观看 | 免费视频一区二区 | 蜜臀久久99精品久久久久久宅男 | 日本久久综合 | chengrenzaixian| 国产一级在线 | 精品久久久久久国产 | 亚洲电影第1页 | 成人在线小视频 | 亚洲精品在线观看网站 | 成人国产精品久久 | 欧美日韩一区二区三区四区 | 亚洲精品电影网在线观看 | 三级在线视频 | 中文字幕日本一区二区 | 91久久精品日日躁夜夜躁国产 | 久久久国产一区 | 久久视频精品 | 亚洲国产精品一区二区第一页 | 国产极品车模吞精高潮呻吟 | 精品视频久久久久久 | 日本免费一区二区三区 | 亚洲一页 | 97在线播放 | 狠狠做六月爱婷婷综合aⅴ 国产精品视频网 | 99国产精品久久久 | 奇米四色在线观看 | 国产成人精品久久 | 欧美中文字幕一区二区三区亚洲 | 国产福利在线 | 亚洲一区二区三区高清 | 91精品久久久久久久 | 91一区二区| 国产中文字幕网 | 久久专区 |