#include <reg52.h>
#include <absacc.h>
#define COM XBYTE[0x3FFF] /*命令/状态口 */
#define DAT XBYTE[0x3FFE] /*数据口 */
#define uchar unsigned char
#define uint unsigned int
sbit DOG=P3^5; //看门狗脉冲
uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
0x07,0x7f,0xcf};
void delay(uint); //延时 x*50MS
uchar TransKey(uchar keyboard);
void disp_6same_LED(uchar);
void disp_123456(void);
void main()
{
IE=0X81; // 允许 INT0 中断
TCON=0x01; //设INT0为负边缘出发
COM=0xd1; /*总清除命令 */
delay(4); //延时10ms
COM=0x00; /*显示方式:8个,左输入; 键盘方式:外部译码键扫描方式,双键互锁;*/
COM=0x34; /* 时钟分频:20分频 */
while(1)
{
DOG=!DOG;
}
}
void key_disp(void) interrupt 0
{
uchar k,i;
COM=0X40; //发送读FIFO命令
k=DAT; //读键码
i=k;
k=k&0x40;
if(k!=0) //判断是否为 SHIFT 键
{
disp_123456();
}
else //否则为数字键
{
i=i&0x3f;
i=TransKey(i); //转换键码->实际数码
disp_6same_LED(i);
}
}
void delay(uint x) //延时X*5ms
{
int i,j;
for(i=0;i<x;i++)
for(j=1;j<=600;j++);
}
void disp_6same_LED(uchar x)
{
uchar i;
COM=0x90; //写显示命令
for(i=0;i<8;i++)
{
DAT=table[x];
}
}
void disp_123456(void)
{
uchar i;
COM=0x90; //写显示命令
for(i=0;i<8;i++)
{
DAT=table[i+1];
}
}
uchar TransKey(uchar keyboard)
{
uchar key;
switch(keyboard) /*代码转化*/
{
case 0x00: key=0; break;
case 0x01: key=1; break;
case 0x02: key=2; break;
case 0x03: key=3; break;
case 0x04: key=4; break;
case 0x05: key=5; break;
case 0x06: key=6; break;
case 0x07: key=7; break;
case 0x08: key=8; break;
case 0x09: key=9; break;
default: break;
}
return (key);
}
没有合适的资源?快使用搜索试试~ 我知道了~
key_disp.rar_8279_disp8279_key-dISP_key_disp
共14个文件
lst:2个
obj:2个
bak:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 109 浏览量
2022-09-24
03:46:39
上传
评论 1
收藏 24KB RAR 举报
温馨提示
8279键盘显示功能,按下s1-s9键对应显示1-9,还有shirft键换挡功能,按下Shift键+任意键显示1-6
资源详情
资源评论
资源推荐
收起资源包目录
key_disp.rar (14个子文件)
第一次作业程序
key_disp_uvopt.bak 55KB
key_disp_uvproj.bak 0B
key_disp.OBJ 6KB
key_disp.LST 5KB
key_disp.M51 9KB
key_disp 6KB
STARTUP.LST 14KB
key_disp.c 2KB
key_disp.plg 193B
STARTUP.A51 6KB
key_disp.lnp 64B
key_disp.uvproj 13KB
STARTUP.OBJ 758B
key_disp.uvopt 55KB
共 14 条
- 1
局外狗
- 粉丝: 64
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0