矩阵键盘外部中断扫描的c语言程序(中断模式矩阵键盘扫描)

今天给大家分享一下矩阵键盘外部中断扫描的C语言程序知识,也会讲解一下矩阵键盘扫描的中断方式。如果你能碰巧解决你现在面临的问题,别忘了关注这个网站,现在就开始!

这篇文章的列表: 1.找一个C语言的单片机4X4矩阵键盘扫描程序。 2.找一个中断单片机矩阵键盘(4*4)的C语言程序(记得中断)。。求高手自己写一个 3.单片机AT89C51矩阵键盘的c语言程序。 找一个单片机4X4矩阵键盘扫描程序,C语言。 淘宝旺铺:广州华电MCU学习板MCU外设学习模块/传感器模块

//4*4键盘检测程序。按键后,数码管上显示相应的代码。

#includereg51.h

sbit beep=p2^3;

sbit dula=p2^6;

sbit wela=p2^7;

无符号字符i = 100

无符号字符j,k,temp,key

无效延迟(无符号字符I)

{

for(j = I;j0;j -)

for(k = 125;k0;k-);

}

无符号char码表找一个单片机矩阵键盘(4*4)中断(记得中断)的C语言程序。。求高手自己写一个 很简单。我不确定你的电路图。让我写下主程序:

#includereg52.h

无符号字符标志= 0;//设置flag为标志位,初始值为0。一旦发生中断,将其设置为1。

void main()

{

EA = 1;//打开主机中断

EX0 = 1;//打开外部中断0,假设是P3.2产生的中断

IT0 = 1;//设置产生中断的方式,即下降沿触发。

P0 = 0X0F//假设矩阵键盘连接到P0端口,所有列线为低电平,所有行线为高电平。

while(1)

{

If(flag==1) //这意味着如果不产生中断,后面的程序就不会运行,只有中断时才会扫描键盘。

{

键扫描程序,这个我就不写了,有很多种写法。

}

数码管显示程序,这个我就不写了,不知道你是什么电路图。

}

}

无效扫描()中断0

{

flag = 1;//表示一旦产生中断,标志就置1。

}

希望对你有用,呵呵。

单片机AT89C51矩阵键盘的c语言程序 #includereg51.h

#定义uchar无符号字符;

uchar distab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,0x ff };

无效延迟(无符号整数a)

{

无符号int i,j;

for(I = 0;ia;我)

for(j = 0;j1000j);

}

uchar kbscan(void)

{

无符号字符sccode,recode

P2 = 0x0f;//发送0扫描,列线输入

if ((P2 0x0f)!= 0x0f) //某个键被按下。

{

延迟(20);//延迟去抖动

if ((P20x0f)!= 0x0f)

{

sccode = 0xef//逐行扫描初始值

while((sccode0x01)!=0)

{

P2 = sc code;

if((P20x0f)!=0x0f)

{

recode =(p20x 0f)| 0xf 0;

return((~ sc code)(~ recode));

}

其他

sc code =(sc code 1)| 0x 01;

}

}

}

返回0;//没有按键,返回0。

}

void getkey(void)

{

无符号字符密钥;

key = kbs can();

if(key==0)返回;

开关(钥匙)

{

案例0x 11:P1 = distab[0];打破;

案例0x 12:P1 = distab[1];打破;

案例0x 14:P1 = distab[2];打破;

案例0x 18:P1 = distab[3];打破;

案例0x 21:P1 = distab[4];打破;

案例0x 22:P1 = distab[5];打破;

案例0x 24:P1 = distab[6];打破;

案例0x 28:P1 = distab[7];打破;

案例0x 41:P1 = distab[8];打破;

案例0x 42:P1 = distab[9];打破;

案例0x 44:P1 = distab[10];打破;

案例0x 48:P1 = distab[11];打破;

案例0x 81:P1 = distab[12];打破;

案例0x 82:P1 = distab[13];打破;

案例0x 84:P1 = distab[14];打破;

案例0x 88:P1 = distab[15];打破;

默认值:P1 = distab[16];打破;

}

}

主()

{

while(1)

{

getkey();

}

}

这是结束介绍矩阵键盘外部中断扫描C语言程序和中断模式。不知道你有没有从中找到你需要的信息?如果你想了解更多这方面的内容,记得关注这个网站。

相关文章

发表新评论