⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 1602+计数器倒计时30s.c

📁 1602液晶显示
💻 C
字号:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit RS=P2^0;
sbit RW=P2^1;
sbit E=P2^2;

sbit P36=P3^6;			                     
uchar n,k,h,l,m;
uchar d[14]={'z','h','o','u',' ','r','i',' ','b','i','n',' ','O','N'},		 //第一行要输入的字符
b[16]={' ',' ', ' ','I',' ','L','O','V','E',' ','M','C','S','-','5','1'};	//第二行要输入的字符
void delay(uint z)			//延时 z ms
{
	uint i;
	uchar j;
	for(i=z;i>0;i--)
		for(j=110;j>0;j--);
}

void zhiling(uchar a)	//写命令
{

	E=0;RS=0;RW=0;
	E=1;
	P0=a;
	delay(5);           //延时 5ms	
	E=0;
	delay(5);           //延时 5ms	
}
void shuju(uchar b)		//写数据
{

    E=0;RS=1;RW=0;
	E=1;
	P0=b;
	delay(5);           //延时 5ms	
	E=0;
	delay(5);           //延时 5ms	
}
void init()      //初始化
{		 
	zhiling(0x01);	 //清屏
	zhiling(0x38);	 //功能设置
	zhiling(0x0e);	 //开/关显示设置
	zhiling(0x06);   //输入方式设置
}

void main()
{
        uchar i;
		m=31;
		TMOD=0x01;
		TH0=0xD8;
		TL0=0xf0;
		EA=1;
		ET0=1;
		
		TR0=1;
		
	    init();
		zhiling(0x80);			  //第一行
	    for(i=0;i<14;i++)
	    shuju(d[i]);
		zhiling(0x80+0x40);		  //第二行
	   	for(i=0;i<16;i++)
		shuju(b[i]);
		 while(1)
		{  
			zhiling(0x80+0x0e);
			shuju(h+'0');
			shuju(l+'0');
			
		}

}

void time0_int(void)  interrupt 1   //中断服务程序
{
		TH0=0xD8;
		TL0=0xF0;
		n++;
		if(n==100)
		{
		 n=0;
		 m--;
		 	h=m/10;l=m%10;
			if(h==0&&l==0)
			{
				P36=0;
				h=0;l=0;
				m=31;
			}
			else
			   	P36=1;
		 }
		 
		
		
}

⌨️ 快捷键说明

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