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

📄 main.c

📁 手表在液晶上动态显示
💻 C
字号:
#include"160128_driver.h"
#include"t6963.h"
#include"tab.h"
#include"reg51.h"
unsigned char i=0,j=0,k=0,m=0,n=0,p=0;
bit b;
//演示500ms子程序
/*void Delay_500ms()
{
unsigned char a,b,c;
for(a=0;a<250;a++)
for(b=0;b<3;b++)
for(c=0;c<220;c++);
}*/
//初始化显示
void Init_disply()
{
		LCD_Init(0x00,0x00,0x14,0x40,0x01,0x14,0xa1,MOD_XOR,0x9c);
		Clear_LCD();
		/*CGRAM偏置地址设置函数*/
		Write_CGORM();
		Han_Zi(2,0,0x81);
		Han_Zi(4,0,0x85);
		Han_Zi(6,0,0x89);
		Han_Zi(8,0,0x8d);
		Han_Zi(10,0,0x91);
		Han_Zi(2,18,0x95);
		Han_Zi(4,18,0x99);
		Han_Zi(6,18,0x9d);
		Han_Zi(8,18,0xa1);
		Han_Zi(10,18,0xa5);
		Han_Zi(10,12,0xa9);
		Circle(123,79,1,1);
		Circle(123,79,2,1);
		Circle(63,139,1,1);
		Circle(63,139,2,1);
		Circle(3,79,1,1);
		Circle(3,79,2,1);
		Circle(63,19,1,1);
		Circle(63,19,2,1);
		Set_xy(5,4);
		Write_8_Data(0x2d,0xc4);
		Set_xy(5,5);
		Write_8_Data(0x41,0xc4);
		Set_xy(5,6);
		Write_8_Data(0x44,0xc4);
		Set_xy(5,7);
		Write_8_Data(0x45,0xc4);
		
		Set_xy(5,9);
		Write_8_Data(0x29,0xc4);
		Set_xy(5,10);
		Write_8_Data(0x4e,0xc4);
		Set_xy(5,12);
		Write_8_Data(0x23,0xc4);
		
		Set_xy(5,13);
		Write_8_Data(0x48,0xc4);
		Set_xy(5,14);
		Write_8_Data(0x49,0xc4);
		Set_xy(5,15);
		Write_8_Data(0x4e,0xc4);
		Set_xy(5,16);
		Write_8_Data(0x41,0xc4);
		Circle(115,109,1,1);
		Circle(93,131,1,1);
		Circle(33,131,1,1);
		Circle(11,109,1,1);
		Circle(11,49,1,1);
		Circle(33,27,1,1);
		Circle(93,27,1,1);
		Circle(115,49,1,1);
		Circle(63,79,60,1);
}
//时钟显示子程序
void Time_disply()
{
		Set_xy(11,6);
		Write_Data1(p/10+0x10,0xc4);
		Set_xy(11,7);
		Write_Data1(p%10+0x10,0xc4);
		Set_xy(11,8);
		Write_Data1(0x1a,0xc4);
		Set_xy(11,9);
		Write_Data1(n/10+0x10,0xc4);
		Set_xy(11,10);
		Write_Data1(n%10+0x10,0xc4);
		Set_xy(11,11);
		Write_Data1(0x1a,0xc4);
		Set_xy(11,12);
		Write_Data1(i/10+0x10,0xc4);
		Set_xy(11,13);
		Write_Data1(i%10+0x10,0xc4);
}

void main()
{
		TH0 = 0x3C;     //定时100ms
		TL0 = 0xB0;
        TMOD = 1;
        TR0 = 1;
        ET0 = 1;
        EA = 1;
		Init_disply();
		while(1)
        {   Time_disply();
			Line(Sec[i][0],Sec[i][1],63,79,1);
			Line(Min[n][0],Min[n][1],63,79,1);
			Line(Hour[m][0],Hour[m][1],63,79,1);
			Circle(63,79,2,1);
			while(!b);
		    {
		      Line(Sec[i][0],Sec[i][1],63,79,0);b=0;i++;
		      if(i==60)
		      {
		          i=0;Line(Min[n][0],Min[n][1],63,79,0);j++;n++;
		          if(j==12)
		          {
					j=0;Line(Hour[m][0],Hour[m][1],63,79,0);m++;
					if(m==60)m=0;
					}
				  if(n==60){n=0;p++;if(p==12)p=0;}
		      }
		}
	}
}
void time_0() interrupt 1 using 0
{
		TH0=0x3C;
		TL0=0xB0;
		k++;
		if(k==20)
		   {
		   k=0;
		   b=1;
           }
}






⌨️ 快捷键说明

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