#include <reg51.h>
#include <intrins.h>
#define key_port P0 //键盘接口定义
sbit key_port_0=key_port^0;
sbit key_port_1=key_port^1;
sbit key_port_2=key_port^2;
sbit key_port_3=key_port^3;
/*******************************
STC89C59单片机一毫秒延时函数
*******************************/
void delay_ms(unsigned int ms)
{
unsigned int i,j;
for( i=0;i<ms;i++)
for(j=0;j<332;j++); //1947是STC89C58在22.1184MHz晶振下,通过软件仿真反复实验得到的数值
}
/**************************
串口发送一个字符
**************************/
void com_send_dat( unsigned char dat)
{
SBUF=dat;
while (TI== 0);
TI= 0 ;
}
/**************************
串口初始化
**************************/
void init_com( void )
{
SCON=0x50 ; //SCON: serail mode 1, 8-bit UART, enable ucvr //UART为模式1,8位数
4*4矩阵键盘C51程序
最新推荐文章于 2022-04-24 18:19:03 发布
这篇博客介绍了如何使用C51语言编写针对STC89C59单片机的4*4矩阵键盘扫描程序,包括延迟函数、串口发送、初始化和键盘扫描函数的详细实现,以及一个简单的键盘扫描测试主函数。程序中包含了延时、定时器设置、串口通信和键值查表等关键步骤。
摘要由CSDN通过智能技术生成