找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2169|回复: 0
收起左侧

c51单片机基础行列式键盘程序

[复制链接]
ID:355998 发表于 2018-6-21 14:55 | 显示全部楼层 |阅读模式

程序图

程序图

  1. #include<reg51.h>
  2. char led_mod[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,            //显示字模
  3.                 0x7f,0x6f,0x77,0x7c,0x58,0x5e,0x79,0x71};
  4. char key_buf[]={0xee,0xde,0xbe,0x7e,0xed,0xdd,0xbd,0x7d,
  5.                 0xeb,0xdb,0xbb,0x7b,0xe7,0xd7,0xb7,0x77};
  6. char getKey(void){
  7. char key_scan[]={0xef,0xdf,0xbf,0x7f};       //键扫描码
  8. char i=0,j=0;
  9. for(i=0;i<4;i++){
  10. P2 =key_scan[i];                              //P2送出键扫描码
  11. if ((P2&0x0f)!=0x0f){                         //判断有误键按下
  12. for(i=0;j<16;j++){
  13. if(key_buf[j]==P2) return j;                  //查找按下键键值
  14. }
  15. }
  16. }
  17. return-1;
  18. }
  19. void main(void){
  20. char key=0;
  21. P0=0x00;             //显示器黑屏
  22. while(1){
  23. key=getKey  ();            //获取键值
  24. if (key!=-1) P0=led_mod[key];      //显示键值
  25. }
  26. }
复制代码


行列键盘.rar

36.25 KB, 下载次数: 10, 下载积分: 黑币 -5

回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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