矩阵键盘lcd显示.doc

矩阵键盘lcd显示.doc

ID:57258454

大小:24.00 KB

页数:6页

时间:2020-08-07

矩阵键盘lcd显示.doc_第1页
矩阵键盘lcd显示.doc_第2页
矩阵键盘lcd显示.doc_第3页
矩阵键盘lcd显示.doc_第4页
矩阵键盘lcd显示.doc_第5页
资源描述:

《矩阵键盘lcd显示.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、/************键盘部分**********************/#include#include"keyscan.h"voidkey_init(void){KEY_DIR=0x0f;//将P1.0~1.3设置为输出(行),将P1.4~1.7设置为输入(列)}ucharkey_scan(void){uchartmp1,row,key_val,tmp2;ucharkey;tmp1=0x01;KEY_HANG=0xf0;//将行全部拉低,好去判断下面是否有键按下if((KEY_LIE&0xf0)!=0xf0)//

2、判断是否有键按下{delay5ms();//延时5毫秒for(row=0;row<4;row++)//一行一行的扫描{KEY_HANG=~tmp1;//tmp2=KEY_LIE&0xf0;if((KEY_LIE&0xf0)!=0xf0){tmp2=(KEY_LIE&0xf0);key=(KEY_HANG&0x0f)

3、tmp2;break;}elsetmp1<<=1;}while((KEY_LIE&0xf0)!=0xf0);//等待按键释放switch(key)//获取键值{case0xee:key_val='1';break;case0xde:key

4、_val='2';break;case0xbe:key_val='3';break;case0x7e:key_val='A';break;case0xed:key_val='4';break;case0xdd:key_val='5';break;case0xbd:key_val='6';break;case0x7d:key_val='B';break;case0xeb:key_val='7';break;case0xdb:key_val='8';break;case0xbb:key_val='9';break;case0x7b:key_val='C'

5、;break;case0xe7:key_val='*';break;case0xd7:key_val='0';break;case0xb7:key_val='.';break;case0x77:key_val='D';break;default:key_val='#';}}returnkey_val;}/*delay5msforkeydejitter*/voiddelay5ms(void){uinti=2000;while(i--);}/****************LCD部分**************************/#include<

6、msp430x14x.h>#include"cry1602.h"//typedefunsignedcharuchar;//typedefunsignedintuint;#defineucharunsignedchar#defineuintunsignedint/*******************************************显示坐标行列********************************************/voidLocateXY(ucharx,uchary){uchartemp;temp=x&0x0f;y&=

7、0x01;if(y)temp

8、=0x40;//如果在第2行temp

9、=0x80;LcdWriteCommand(temp,1);}/*******************************************显示单字符********************************************/voidDisp1Char(ucharx,uchary,uchardata){LocateXY(x,y);LcdWriteData(data);}/*******************************************LC

10、D初始化********************************************/voidLcdReset(void){CtrlDir

11、=0x38;//控制线端口设为输出状态DataDir=0xFF;//数据端口设为输出状态LcdWriteCommand(0x38,0);//规定的复位操作Delay5ms();LcdWriteCommand(0x38,0);Delay5ms();LcdWriteCommand(0x38,0);Delay5ms();LcdWriteCommand(0x38,1);//显示模式设置LcdWriteComm

12、and(0x08,1);//显示关闭LcdWriteCommand(0x01,1);//显示清屏LcdWri

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。