8279键盘显示C程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8279键盘和显示程序#include

52.h>

#include

#include

#defineCOM8279XBYTE [0xF2FF定义8279 控制口#defineDATA8279XBYTE [OxFOFF定义8279 数据口#define uchar unsigned char

#define uint unsigned int

uint keyval// 定义键内码传递参数

uint time// 定义延时参数

void delay(uint time)

void key(void)

void main(){delay

(13OO)// 开机延时

COM8279 = 0xD2/4青除RAM 和FIFO

delay

(1)

EA=1

EX1 = 1〃开总中断,开外部中断1;

IT仁1〃外部中断1选用下降沿

COM8279=OxOO//8279键盘双键互锁,编码扫描,左端入口

COM8279=Ox12〃时钟分频设置,分频数为18

COM8279=0x70

COM8279=0x90;

while

(1)}void delay (uint time)// 传递参数为time{uchar j// 设置读显示命令

// 设置写显示命令

while (time--)// 用time-1 来进行循环{for (j=100;j>0;j--)//用j 来进行125次循环,大约8us}}}

void intsvr1(void) interrupt 2 using 1{keyval=DATA8279

key()}〃按键确认程序

void key(void){switch(keyval){case 0xC3:{P0=0x3F;

DATA8279=P0;

break;}case 0xC2:{P0=0x06;

DATA8279=P0;

break;}case 0xC1:

{//0 号键赋值

//1 号键赋值;

//2 号键赋值;

P0=0x5B;

DATA8279=P0;

break;}case 0xc0://3 号键赋值;DATA8279=P0; break;}case 0xCB:

{P0=0x66;

DATA8279=P0;

break;}case 0xCC:

{P0=0x6D;

DATA8279=P0;

break;}case 0xC9:{P0=0x7D;

DATA8279=P0;

break;}case 0xC8://4 号键赋值;

//5 号键赋值;

//6 号键赋值;

//7 号键赋值;{P0=0x07;

DATA8279=P0;

break;}case 0xD3://8 号键赋值;

DATA8279=P0;

break;}case 0xD2:{P0=0x6F;

DATA8279=P0;

break;}case 0xD1:{P0=0x77;

DATA8279=P0;

break;}case 0xD0:{P0=0x7C;

DATA8279=P0;

break;

}//9 号键赋值;

//A 号键赋值;

//B 号键赋值;

case 0xE3://C 号键赋值;{P0=0x39;

DATA8279=P0;

break;}case 0xE1:{P0=0x5E;

DATA8279=P0;

break;}case 0xE2:{P0=0x79;

DATA8279=P0;

break;}case 0xE0:{P0=0x71;

DATA8279=P0;

break;}default:

break;}}//D 号键赋值;

//E 号键赋值;

//F 号键赋值;{P0=0x4F; {P0=0x7F;

相关文档
最新文档