您现在的位置: 主页 > 嵌入式开发入门到精通 > 单片机技术进阶 > 51 单片机 C 语言编程:矩阵键盘输入,显示在数码管 -
本文所属标签:
为本文创立个标签吧:

51 单片机 C 语言编程:矩阵键盘输入,显示在数码管 -

来源: 网络用户发布,如有版权联系网管删除 2018-09-08 

[导读]
通过矩阵键盘输入,并显示在一位数码管上。#include#define uint unsigned int#define uchar unsigned charsbit duanx = P2^6;sbit weix = P2^7;uchar key, k_tmp, view;uchar show[] = { 0x3f,0x06,0

通过矩阵键盘输入,并显示在一位数码管上。

本文引用地址: http://www.21ic.com/app/mcu/201806/764386.htm



#include

#define uint unsigned int

#define uchar unsigned char


sbit duanx = P2^6;

sbit weix = P2^7;

uchar key, k_tmp, view;


uchar show[] = {

0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,

0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x40};


void keyscan(void)

{

key = 16;

P3 = 0xf0; k_tmp = P3 & 0xf0;

if (k_tmp == 0x70) key = 0;

else if(k_tmp == 0xb0) key = 1;

else if(k_tmp == 0xd0) key = 2;

else if(k_tmp == 0xe0) key = 3;

P3 = 0x0f; k_tmp = P3 & 0x0f;

if (k_tmp == 0x07) key = key + 12;

else if(k_tmp == 0x0b) key = key + 8;

else if(k_tmp == 0x0d) key = key + 4;

else if(k_tmp == 0x0e) key = key + 0;


view = show[key];


}


void display(uchar view)

{

P0 = view; duanx = 1; duanx = 0;

P0 = 0xfe; weix = 1; weix = 0;

}


main()

{

while(1) {

keyscan();

display(view);

}

}




              查看评论 回复



嵌入式交流网主页 > 嵌入式开发入门到精通 > 单片机技术进阶 > 51 单片机 C 语言编程:矩阵键盘输入,显示在数码管 -
 

"51 单片机 C 语言编程:矩阵键盘输入,显示在数码管 -"的相关文章

网站地图

围观()