找回密码
 立即注册

QQ登录

只需一步,快速开始

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

4X4键盘矩阵 自定义那都没看懂

  [复制链接]
跳转到指定楼层
楼主

这个程序怎么看,自定义那都没看懂
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:153395 发表于 2016-12-19 15:55 | 只看该作者
这个我自己看明白了,不懂的可以问我
回复

使用道具 举报

板凳
ID:155971 发表于 2016-12-19 17:09 | 只看该作者
你想问什么?为什么可以这样消隐吗?
回复

使用道具 举报

地板
ID:155978 发表于 2016-12-19 17:21 | 只看该作者
学习了
回复

使用道具 举报

5#
ID:155989 发表于 2016-12-19 18:04 | 只看该作者
不错!
回复

使用道具 举报

6#
ID:156108 发表于 2016-12-20 00:15 | 只看该作者
学习了!
回复

使用道具 举报

7#
ID:156133 发表于 2016-12-20 09:29 | 只看该作者
回复

使用道具 举报

8#
ID:153395 发表于 2016-12-20 09:42 | 只看该作者
陶悦楼蓝 发表于 2016-12-19 17:09
你想问什么?为什么可以这样消隐吗?

我刚开始自定义都没看明白,现在可以理解了,消隐是对于软件proteus来说的,硬件是不存在消隐的,这个程序的消隐是全部数码管显示完后再全部熄灭然后再跳到第一个显示
回复

使用道具 举报

9#
ID:156159 发表于 2016-12-20 10:28 | 只看该作者
这个是比较简单的程序
回复

使用道具 举报

10#
ID:153395 发表于 2016-12-20 11:03 | 只看该作者
穆林萱 发表于 2016-12-20 10:28
这个是比较简单的程序

对,今天又看了一个不是很会  就得一点一点分析  自定义的时候 我有的都没看懂
回复

使用道具 举报

11#
ID:143944 发表于 2016-12-20 12:15 | 只看该作者
这个的话还行
回复

使用道具 举报

12#
ID:156203 发表于 2016-12-20 13:47 | 只看该作者
受教了
回复

使用道具 举报

13#
ID:152262 发表于 2016-12-20 21:15 | 只看该作者
我做不出来
回复

使用道具 举报

14#
ID:150555 发表于 2016-12-20 22:32 | 只看该作者
先从小程序看,把独立键盘,矩阵键盘看懂,这个自然就会了。
回复

使用道具 举报

15#
ID:156474 发表于 2016-12-21 10:23 | 只看该作者
学习了
回复

使用道具 举报

16#
ID:156629 发表于 2016-12-21 20:25 | 只看该作者
#include<reg52.h> #define uchar unsigned char                  #define uint unsigned int                  //sbit key1=P1^0; //sbit key2=P1^1; //sbit key3=P1^2; //sbit key4=P1^3; //sbit key5=P1^4; //sbit key6=P1^5; //sbit key7=P1^6; //sbit key8=P1^7; uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,             0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};        //数组0到F uchar code table1[]={0,1,2,3,4,5,6,7}; uint key; void delayms(uchar k) {   uchar i,j;         for(i=k;i>0;i--)         for(j=125;j>0;j--); }  void display(uint vaule)  //显示子函数 {P2=table1[0];         P0=table[vaule];  //uint bai,shi,ge; //                bai=vaule/100; //shi=vaule/10%10; //ge=vaule%10;                                 //   P0=table[ge];   //送段选数据 //// dula=1; //   P2=table1[2];   //送位选数据 //   delay(50); //// dula=0;                                                   //   P0=table[shi]; //// dula=1; //   P2=table1[1]; //   delay(50);  //// dula=0;                                         //   P0=table[bai]; //// dula=1; //   P2=table1[0]; //   delay(50); }  void keyscan()        //按键子函数                                    {        uint X,Y,Z;                  P1=0X0F;//行扫描         if(P1!=0X0F)         {                 if(P1!=0X0F)         {delayms(50);                                 X=P1&0X0F; //取出行扫描键值                 P1=0XF0;//列扫描                 Y=P1&0XF0;//取出列扫描键值                 Z=X|Y;//取出行扫描列扫描合并值                 switch(Z)                 {                   case 0X7E: key=0; break; case 0XBE: key=1; break;                 case 0XDE: key=2; break;                 case 0XEE: key=3; break; //                                         case 0X7D: key=4; break;                 case 0XBD: key=5; break;         case 0XDD: key=6; break;                 case 0XED: key=7; break; //                                         case 0X7B: key=8; break;                         case 0XBB: key=9; break;                 case 0XDB: key=10; break;                 case 0XEB: key=11; break;                                          case 0X77: key=12; break;                 case 0XB7: key=13; break;                         case 0XD7: key=14; break;                         case 0XE7: key=15; break;                                          }; //                break;         } //                P1=0X0F; //                while(P1!=0X0F);         }  }  void main() {         while(1)         {          keyscan(); display(key); } }
回复

使用道具 举报

17#
ID:156629 发表于 2016-12-21 20:29 | 只看该作者
回复

使用道具 举报

18#
ID:156918 发表于 2016-12-22 20:00 | 只看该作者
键盘矩阵确实难理解,我也要学了
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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