资源简介
51单片机上的矩阵键盘程序,分别由汇编和C编写。经验证,能成功运行
代码片段和文件信息
/********************************************************************************
* 描述: *
* 矩阵键盘1602液晶显示键值 *
* 连接方法:JP8(P1) 与JP4(矩阵键盘接口) 连接 *
* 矩阵键盘定义: *
* P1.1-P1.4为列线P1.4-P1.7为行线 *
* 喇叭接P1.5口 矩阵键盘P1口, *
* 注意:请将JP165短路冒断开 *
********************************************************************************/
#include
#include
#define uchar unsigned char
#define uint unsigned int
uchar dis_buf; //显示缓存
uchar temp;
uchar key; //键顺序吗
void delay0(uchar x); //x*0.14MS
sbit LCD_RW = P2^5;
sbit LCD_RS = P2^6;
sbit LCD_EN = P2^7;
uchar cdis1[16] = {“ KEY NUMBER “};
uchar cdis2[16] = {“ KEY-CODE: H “};
#define delayNOP(); {_nop_();_nop_();_nop_();_nop_();};
/*************************************************************/
/* */
/* 延时子程序 */
/* */
/*************************************************************/
void delay(uchar x)
{ uchar j;
while((x--)!=0)
{ for(j=0;j<125;j++)
{;}
}
}
/*************************************************************/
/* */
/*检查LCD忙状态 */
/*lcd_busy为1时,忙,等待。lcd-busy为0时闲,可写指令与数据 */
/* */
/*************************************************************/
bit lcd_busy()
{
bit result;
LCD_RS = 0;
LCD_RW = 1;
LCD_EN = 1;
delayNOP();
result = (bit)(P0&0x80);
LCD_EN = 0;
return(result);
}
/*******************************************************************/
/* */
/*写指令数据到LCD */
/*RS=L,RW=L,E=高脉冲,D0-D7=指令码。 */
/* */
/*******************************************************************/
void lcd_wcmd(uchar cmd)
{
while(lcd_busy());
LCD_RS = 0;
LCD_RW = 0;
LCD_EN = 0;
_nop_();
_nop_();
P0 = cmd;
delayNOP();
LCD_EN = 1;
delayNOP();
LCD_EN = 0;
}
/*******************************************************************/
/*
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2011-04-29 13:45 矩阵键盘\
目录 0 2011-04-29 13:45 矩阵键盘\1602显示键值\
目录 0 2011-04-29 13:45 矩阵键盘\1602显示键值\c语言\
文件 8414 2009-11-05 10:37 矩阵键盘\1602显示键值\c语言\LCD1602P1Key
文件 7858 2010-04-12 21:51 矩阵键盘\1602显示键值\c语言\LCD1602P1Key.c
文件 1726 2009-11-05 10:37 矩阵键盘\1602显示键值\c语言\LCD1602P1Key.hex
文件 72 2009-11-05 10:37 矩阵键盘\1602显示键值\c语言\LCD1602P1Key.lnp
文件 12782 2009-11-05 10:37 矩阵键盘\1602显示键值\c语言\LCD1602P1Key.LST
文件 12472 2009-11-05 10:37 矩阵键盘\1602显示键值\c语言\LCD1602P1Key.M51
文件 9029 2009-11-05 10:37 矩阵键盘\1602显示键值\c语言\LCD1602P1Key.OBJ
文件 1275 2010-04-12 22:48 矩阵键盘\1602显示键值\c语言\LCD1602P1Key.Opt
文件 182 2010-04-12 22:48 矩阵键盘\1602显示键值\c语言\LCD1602P1Key.plg
文件 2055 2009-01-11 11:42 矩阵键盘\1602显示键值\c语言\LCD1602P1Key.Uv2
文件 1274 2009-11-15 11:48 矩阵键盘\1602显示键值\c语言\LCD1602P1Key_Opt.Bak
文件 2055 2009-01-09 22:17 矩阵键盘\1602显示键值\c语言\LCD1602P1Key_Uv2.Bak
文件 5115 2002-04-16 14:32 矩阵键盘\1602显示键值\c语言\STARTUP.A51
文件 11665 2009-11-05 10:37 矩阵键盘\1602显示键值\c语言\STARTUP.LST
文件 749 2009-11-05 10:37 矩阵键盘\1602显示键值\c语言\STARTUP.OBJ
文件 788 2009-11-05 11:36 矩阵键盘\1602显示键值\排线连接方法.txt
文件 92864 2010-03-15 10:51 矩阵键盘\1602显示键值\接线图.jpg
目录 0 2011-04-29 13:45 矩阵键盘\1602显示键值\汇编\
文件 1970 2009-11-05 11:36 矩阵键盘\1602显示键值\汇编\lcd+button
文件 1086 2009-11-05 11:36 矩阵键盘\1602显示键值\汇编\lcd+button.hex
文件 51 2009-11-05 11:36 矩阵键盘\1602显示键值\汇编\lcd+button.lnp
文件 9323 2009-11-05 11:36 矩阵键盘\1602显示键值\汇编\lcd+button.M51
文件 977 2009-11-15 17:48 矩阵键盘\1602显示键值\汇编\lcd+button.Opt
文件 189 2009-11-15 17:48 矩阵键盘\1602显示键值\汇编\lcd+button.plg
文件 2000 2009-03-28 21:28 矩阵键盘\1602显示键值\汇编\lcd+button.Uv2
文件 974 2009-11-05 11:36 矩阵键盘\1602显示键值\汇编\lcd+button_Opt.Bak
文件 0 2009-03-28 21:05 矩阵键盘\1602显示键值\汇编\lcd+button_Uv2.Bak
文件 8070 2009-11-05 11:33 矩阵键盘\1602显示键值\汇编\lcd1602jz.asm
............此处省略22个文件信息
- 上一篇:神经网络HH方程
- 下一篇:osg3.0.0.rar
评论
共有 条评论