text1.c

来自「LCD1602.rar」· C语言 代码 · 共 57 行

C
57
字号
#include <reg51.h>
#include <intrins.h>
#define uchar unsigned char
uchar tmp;
uchar code str[]={0x01,0x02,0x03,0x04,0x05,0x05,0x06,0x07,0x08};
sbit	K1 = P1^4;
uchar i;

void inital(void)
{   
  	TMOD = 0x20;			// 定时器1工作于8位自动重载模式, 用于产生波特率
	TH1 = 0xF3;				// 波特率2400
	TL1 = 0xF3;
	SCON = 0x50;			// 设定串行口工作方式
	PCON&= 0xef;			// 波特率不倍增
	IE = 0x0;				// 禁止任何中断
}


void send_str()				// 传送字串
{
	SBUF = str[i];
	while(!TI);				// 等特数据传送
	TI = 0;					// 清除数据传送标志
	i++;	  if(i==8)i=0;
	P0=str[i];					// 下一个字符
}

void delayms(uchar ms)			// 延时子程序
{						
	uchar j;
	while(ms--)
	{
		for(j = 0; j < 120; j++);
	}
}



main()
{
    inital();
	TR1 = 1;			            	// 启动定时器1
	while(1)
	{
		if(!K1)	            			// 扫描按键
		{
			delayms(10);				// 延时去抖动
			if(!K1)						// 再次扫描
			{  	
				while(!K1);
				send_str();				// 传送字串
			}
		}
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?