找回密码
 立即注册

QQ登录

只需一步,快速开始

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

4x4矩阵键盘单片机驱动程序

[复制链接]
跳转到指定楼层
楼主
ID:71259 发表于 2014-12-30 01:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


  1. #include<reg52.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int

  4. sbit P27=P2^7;  //位显示,最右边
  5. uchar code table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0xbf};
  6.              //code 的作用是把s8存到8K的ROM中
  7.    //共阳数码光显示字型数码组 1011 1111 “-”

  8. void delay1ms(uchar n)     //1ms基准延时程序
  9. {
  10. uchar i;
  11. while(n--)
  12.   for(i=0;i<115;i++);
  13. }

  14. void display(uchar i)
  15. {
  16. P27=0;
  17. P0=table[i];
  18. }


  19. void main()
  20. {
  21. uchar temp;
  22. display(16);   //初始显示“-”
  23.     while(1){
  24.   P1=0xff;       //先向P1口写1,端口读状态
  25.   P1=0xf0;
  26.   temp=P1; //按键
  27.   if(temp!=0xf0){
  28.    delay1ms(15);    //延时消陡
  29.    if(temp!=0xf0){        //扫描
  30.     P1=0xfe;
  31.     temp=P1;
  32.   
  33.     switch(temp)
  34.     {
  35.      case 0xee:display(0);break;
  36.      case 0xde:display(1);break;
  37.      case 0xbe:display(2);break;
  38.      case 0x7e:display(3);break;
  39.     }
  40.     P1=0xfd;
  41.     temp=P1;
  42.     switch(temp)
  43.     {
  44.      case 0xed:display(4);break;
  45.      case 0xdd:display(5);break;
  46.      case 0xbd:display(6);break;
  47.      case 0x7d:display(7);break;
  48.     }
  49.     P1=0xfb;
  50.     temp=P1;
  51.     switch(temp)
  52.     {
  53.      case 0xeb:display(8);break;
  54.      case 0xdb:display(9);break;
  55.      case 0xbb:display(10);break;
  56.      case 0x7b:display(11);break;
  57.    
  58.     }
  59.     P1=0xf7;
  60.     temp=P1;
  61.     switch(temp)
  62.     {
  63.      case 0xe7:display(12);break;
  64.      case 0xd7:display(13);break;
  65.      case 0xb7:display(14);break;
  66.      case 0x77:display(15);break;
  67.     }
  68.    }
  69.   }
  70. }
  71. }
复制代码


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

使用道具 举报

沙发
ID:32627 发表于 2015-1-2 09:12 | 只看该作者
下来看看!
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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