OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 6219|回复: 1

4位数码管显示转换

[复制链接]

32

主题

83

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
385
金钱
385
注册时间
2011-11-21
在线时间
32 小时
发表于 2012-4-21 11:44:05 | 显示全部楼层 |阅读模式

以下一段程序小弟不解转换原理,急.............
 void key_to_disp()
  {
     uint8 i,temp;
     for(i=0;i<4;i++)
       {
         temp=key_buf;
         switch(temp)
           {
             case 0x00:{disp_code=0xc0;break;}
             case 0x01:{disp_code=0xf9;break;}
             case 0x02:{disp_code=0xa4;break;}
             case 0x03:{disp_code=0xb0;break;}
             case 0x04:{disp_code=0x99;break;}
             case 0x05:{disp_code=0x92;break;}
             case 0x06:{disp_code=0x82;break;}
             case 0x07:{disp_code=0xf8;break;}
             case 0x08:{disp_code=0x80;break;}
             case 0x09:{disp_code=0x90;break;}
             case 0x0a:{disp_code=0x88;break;}//A
             case 0x0b:{disp_code=0x83;break;}//b
             case 0x0c:{disp_code=0xc6;break;}//C
             case 0x0d:{disp_code=0xa1;break;}//d
             case 0x0e:{disp_code=0x86;break;}//E
             case 0x0f:{disp_code=0x8e;break;}//F
             case 0x10:{disp_code=0x89;break;}//H
             case 0x11:{disp_code=0xc3;break;}//L
             case 0x12:{disp_code=0x8c;break;}//P
             case 0x13:{disp_code=0xc1;break;}//U
             case 0x14:{disp_code=0x91;break;}//Y
             case 0x15:{disp_code=0xbf;break;}//-
             case 0x16:{disp_code=0xb7;break;}//二
             case 0x17:{disp_code=0x41;break;}//==
             case 0x18:{disp_code=0x48;break;}//==
             case 0x19:{disp_code=0xb6;break;}//三
             case 0xff:{disp_code=0xff;break;}//灭
             case 0x1b:{disp_code=0xaf;break;}//r
             case 0x1c:{disp_code=0xc8;break;}//n 
             default:break;     
           }
       }
  }  
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

98

主题

408

帖子

3

精华

金牌会员

Rank: 6Rank: 6

积分
1280
金钱
1280
注册时间
2010-12-14
在线时间
0 小时
发表于 2012-4-21 13:11:02 | 显示全部楼层
回复【楼主位】六画玄辉:
---------------------------------
这个就是根据你的按键值选择相应的码值
你的按键值通过key_buf[4];数组来保存,比如说你连续四下按下了1234,那么Key_buffer就会保存{1,2,3,4}

然后display_code保存1,2,3,4相应的码值{0xf9,0xa4,0xb0,0x99} 用来显示


 
希望openedv能给大家提供一个友好的技术交流平台!
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 17:28

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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