• 大小: 72KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-12
  • 语言: 其他
  • 标签:

资源简介

矩阵键盘程序基于proteus的设计与仿真

资源截图

代码片段和文件信息

#include
#include
#define uint unsigned int
#define uchar unsigned char
/*********************************
函数:Delay_1ms()
参数:t
返回:无
功能:延时子程序,延时时间为 1ms * t。
  使用晶振是11.0592M。
**********************************/
void Delay_1ms(uint t)
{
uint ij;
for(i=0;i {
for(j=0;j<=100;j++)
{
_nop_();
}
}
}
/*********************************
函数:Keyscan()
参数:i+j*4
返回:无
功能:判断哪个矩阵按键按下。该子程序是行扫描方式。
**********************************/
uchar Keyscan(void)
{
uchar ijktempnum;
uchar Buffer[3] = {0x300x500x60};  //赋值4组行数据
for(j=0; j<3; j++)     //行变化
{
temp = 0x01;         //首先是最左边一列    
        num= 0x01;                                                                                                                                                    
for(i=0; i<2; i++) //列变化
{
P1 = Buffer[j];  //把行数据给P1口
P1 = P1 | temp;  //让列和P1口进行或操作
k = P1 & 0x03;   //判断是否是该列被按下
if(k == 0)       
{
while(1)   //循环等待按键释放
{
if(P1 & 0x03)   //按键释放后,退出循环
{
break;
}
}
return(num<<(i*3+j));
}
         temp<<=1;
}
}
}
/*********************************
函数:Main()
参数:无
返回:无
功能:主函数
**********************************/
void Main(void)
{
P2 = 0x00;                  
while(1)
{
P1 = 0x70;         //P1口赋值为0xf0
if(P1 != 0x70) //判断有无按键按下
{
Delay_1ms(20);    //按键消抖
if(P1 != 0x70) //第三次判断有无按键按下
{
P2 = Keyscan(); //运行矩阵键盘函数并返回到键值变量               
}
}

}
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2015-02-04 11:41  键盘显示\
     文件      183918  2015-02-03 19:50  键盘显示\Last Loaded 键盘.DBK
     文件        5115  2002-04-16 15:32  键盘显示\STARTUP.A51
     文件       11751  2015-02-04 11:38  键盘显示\STARTUP.lst
     文件         828  2015-02-04 11:38  键盘显示\STARTUP.obj
     文件        1731  2015-02-04 11:38  键盘显示\Text1.c
     文件        4502  2015-02-04 11:38  键盘显示\Text1.LST
     文件        3211  2015-02-04 11:38  键盘显示\Text1.OBJ
     文件      183918  2015-02-03 21:54  键盘显示\键盘.DSN
     文件        1483  2015-02-04 11:41  键盘显示\键盘.PWI
     文件        3878  2015-02-04 11:38  键盘显示\键盘显示
     文件        1223  2015-02-04 11:38  键盘显示\键盘显示.hex
     文件        6824  2015-02-04 11:38  键盘显示\键盘显示.M51
     文件        1128  2015-02-04 11:41  键盘显示\键盘显示.Opt
     文件         360  2015-02-04 11:41  键盘显示\键盘显示.plg
     文件        2044  2015-02-03 21:54  键盘显示\键盘显示.Uv2
     文件        1128  2015-02-04 09:55  键盘显示\键盘显示_Opt.Bak
     文件           0  2015-02-03 11:36  键盘显示\键盘显示_Uv2.Bak

评论

共有 条评论