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

📄 led.lst

📁 单片机控制火车车厢门上方的LED显示程序
💻 LST
📖 第 1 页 / 共 4 页
字号:
 293          
 294          {0x00,0x00,0x00,0x40,0x00,0x20,0x00,0x10,0x00,0x0C,0x00,0x03,0xC0,0x00,0x3F,0x00,0xC2,0x01,0x00,0x06,0x00,
             -0x0C,0x00,0x18,0x00,0x30,0x00,0x60,0x00,0x20,0x00,0x00},/*"人",27*/
 295          
 296          {0x10,0x02,0x08,0x01,0x84,0x00,0xC6,0xFF,0x73,0x00,0x22,0x00,0x40,0x00,0x44,0x00,0x44,0x40,0x44,0x80,0xC4,
             -0x7F,0x44,0x00,0x44,0x00,0x44,0x00,0x40,0x00,0x00,0x00},/*"行",28*/
 297          
 298          {0x80,0x00,0x84,0x04,0x44,0x04,0xC4,0x04,0xA4,0x04,0x94,0x44,0x8C,0x84,0xFF,0x7E,0x8C,0x05,0x94,0x04,0xA4,
C51 COMPILER V6.12  LED                                                                    07/12/2008 18:39:28 PAGE 8   

             -0x04,0x24,0x04,0x44,0x04,0xC4,0x04,0x40,0x04,0x00,0x00},/*"李",29*/
 299          
 300          {0x40,0x04,0x3C,0x04,0x10,0x02,0xFF,0x7F,0x10,0x01,0xD0,0x44,0x20,0x22,0x18,0x11,0xCF,0x08,0x38,0x04,0x08,
             -0x43,0xF8,0x80,0x08,0x40,0xF8,0x3F,0x00,0x00,0x00,0x00},/*"物",30*/
 301          
 302          {0x00,0x00,0x00,0x7F,0x00,0x21,0x00,0x21,0x7E,0x21,0x22,0x21,0x22,0x7F,0x22,0x00,0x22,0x7F,0x22,0x21,0x22,
             -0x21,0x7E,0x21,0x00,0x21,0x00,0x7F,0x00,0x00,0x00,0x00},/*"品",31*/
 303          
 304          {0x00,0x00,0x00,0x18,0x00,0x24,0x00,0x24,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
             -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"。",32*/
 305          
 306          
 307          {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
             -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*  ",23*/
 308          {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
             -0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"  ,133*/
 309          
 310          
 311          
 312          0xbb
 313          
 314          };
 315          
 316          uint8 const code CHAR[][16]=
 317          {
 318          
 319          {0x00,0x00,0xE0,0x0F,0x10,0x10,0x08,0x20,0x08,0x20,0x10,0x10,0xE0,0x0F,0x00,0x00},/*"0",0*/
 320          
 321          {0x00,0x00,0x10,0x20,0x10,0x20,0xF8,0x3F,0x00,0x20,0x00,0x20,0x00,0x00,0x00,0x00},/*"1",1*/
 322          
 323          {0x00,0x00,0x70,0x30,0x08,0x28,0x08,0x24,0x08,0x22,0x88,0x21,0x70,0x30,0x00,0x00},/*"2",2*/
 324          
 325          {0x00,0x00,0x30,0x18,0x08,0x20,0x88,0x20,0x88,0x20,0x48,0x11,0x30,0x0E,0x00,0x00},/*"3",3*/
 326          
 327          {0x00,0x00,0x00,0x07,0xC0,0x04,0x20,0x24,0x10,0x24,0xF8,0x3F,0x00,0x24,0x00,0x00},/*"4",4*/
 328          
 329          {0x00,0x00,0xF8,0x19,0x08,0x21,0x88,0x20,0x88,0x20,0x08,0x11,0x08,0x0E,0x00,0x00},/*"5",5*/
 330          
 331          {0x00,0x00,0xE0,0x0F,0x10,0x11,0x88,0x20,0x88,0x20,0x18,0x11,0x00,0x0E,0x00,0x00},/*"6",6*/
 332          
 333          {0x00,0x00,0x38,0x00,0x08,0x00,0x08,0x3F,0xC8,0x00,0x38,0x00,0x08,0x00,0x00,0x00},/*"7",7*/
 334          
 335          {0x00,0x00,0x70,0x1C,0x88,0x22,0x08,0x21,0x08,0x21,0x88,0x22,0x70,0x1C,0x00,0x00},/*"8",8*/
 336          
 337          {0x00,0x00,0xE0,0x00,0x10,0x31,0x08,0x22,0x08,0x22,0x10,0x11,0xE0,0x0F,0x00,0x00},/*"9",9*/
 338          };
 339          
 340          uint8 const code WEEK[][32]=
 341          {
 342          
 343          {0x00,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,0x00,0x80,
             -0x00,0x80,0x00,0x80,0x00,0xC0,0x00,0x80,0x00,0x00,0x00},/*"一",0*/
 344          
 345          {0x00,0x00,0x00,0x10,0x04,0x10,0x04,0x10,0x04,0x10,0x04,0x10,0x04,0x10,0x04,0x10,0x04,0x10,0x04,0x10,0x04,
             -0x10,0x06,0x10,0x04,0x10,0x00,0x18,0x00,0x10,0x00,0x00},/*"二",1*/
 346          
 347          {0x00,0x00,0x04,0x20,0x84,0x20,0x84,0x20,0x84,0x20,0x84,0x20,0x84,0x20,0x84,0x20,0x84,0x20,0x84,0x20,0x84,
             -0x20,0x84,0x20,0x84,0x20,0x04,0x20,0x00,0x20,0x00,0x00},/*"三",2*/
 348          
 349          {0x00,0x00,0xFE,0x7F,0x02,0x28,0x02,0x24,0x02,0x23,0xFE,0x20,0x02,0x20,0x02,0x20,0xFE,0x21,0x02,0x22,0x02,
             -0x22,0x02,0x22,0x02,0x22,0xFE,0x7F,0x00,0x00,0x00,0x00},/*"四",3*/
 350          
C51 COMPILER V6.12  LED                                                                    07/12/2008 18:39:28 PAGE 9   

 351          {0x00,0x20,0x02,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0x82,0x3F,0xFE,0x20,0x82,0x20,0x82,0x20,0x82,0x20,0xC2,
             -0x3F,0x82,0x20,0x02,0x20,0x00,0x30,0x00,0x20,0x00,0x00},/*"五",4*/
 352          
 353          {0x10,0x00,0x10,0x40,0x10,0x20,0x10,0x10,0x10,0x0C,0x91,0x03,0x12,0x01,0x1E,0x00,0x94,0x00,0x10,0x01,0x10,
             -0x02,0x10,0x0C,0x10,0x78,0x10,0x30,0x10,0x00,0x00,0x00},/*"六",5*/
 354          
 355          {0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x3F,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,0x10,0x42,
             -0x10,0xFE,0x3F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00},/*"日",6*/
 356          
 357          };
 358          void LCD_INIT()
 359          {
 360   1      	LCD_WRITE_COMMAND(0x0c);
 361   1      	LCD_WRITE_COMMAND(0x38);
 362   1      	LCD_WRITE_COMMAND(0x06);
 363   1      	LCD_WRITE_COMMAND(0x01);
 364   1      }
 365          
 366          
 367          
 368          void RTC_Write(uint8 dat)
 369          {
 370   1      	uint8 i;	  
 371   1      	for(i=0;i<8;i++)
 372   1      	{
 373   2      		RTC_IO=(bit)(dat&0x01);
 374   2      		RTC_SCLK=1;
 375   2      		RTC_SCLK=0;
 376   2      		dat>>=1;
 377   2      	}
 378   1      }
 379          
 380          uint8 RTC_Read()						
 381          {
 382   1          uint8 i;
 383   1          for(i=0; i<8; i++)
 384   1          {
 385   2              AA >>=1;         			//相当于汇编中的 RRC 
 386   2              AA7 = RTC_IO;
 387   2              RTC_SCLK = 1;
 388   2              RTC_SCLK = 0;
 389   2          } 
 390   1          return AA; 
 391   1      }
 392          
 393          void RTC_Write_Byte(uint8 addr,uint8 dat)
 394          {
 395   1      	RTC_RST=0;
 396   1      	RTC_SCLK=0;
 397   1      	RTC_RST=1;
 398   1      	RTC_Write(addr);
 399   1      	RTC_Write(dat);
 400   1      	RTC_SCLK=1;
 401   1      	RTC_RST=0;
 402   1      }
 403          
 404          uint8 RTC_Read_Byte(uint8 addr)
 405          {
 406   1      	uint8 dat;
 407   1      	RTC_RST=0;
 408   1      	RTC_SCLK=0;
 409   1      	RTC_RST=1;
C51 COMPILER V6.12  LED                                                                    07/12/2008 18:39:28 PAGE 10  

 410   1      	RTC_Write(addr|0x01);
 411   1      	dat=RTC_Read();
 412   1      	RTC_SCLK=1;
 413   1      	RTC_RST=0;
 414   1      	return dat;
 415   1      }
 416          
 417          
 418          typedef struct __SYSTEMTIME__
 419          {
 420          	uint8 Second;
 421          	uint8 Mine;
 422          	uint8 Hour;
 423          	uint8 Day;
 424          	uint8 Month;
 425          	uint8 Week;
 426          	uint8 Year;
 427          }SYSTEMTIME;
 428          
 429          
 430          SYSTEMTIME TIMETYPE;
 431          void CurrentTime(SYSTEMTIME *dat)
 432          {
 433   1      	uint8 TimeValue;
 434   1      	TimeValue=RTC_Read_Byte(READ_SECOND);
 435   1      	dat->Second=(((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
 436   1      	TimeValue=RTC_Read_Byte(READ_MINE);
 437   1      	dat->Mine=  (((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
 438   1      	TimeValue=RTC_Read_Byte(READ_HOUR);
 439   1      	dat->Hour=  (((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
 440   1      	TimeValue=RTC_Read_Byte(READ_DAY);
 441   1      	dat->Day=	(((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
 442   1      	TimeValue=RTC_Read_Byte(READ_MONTH);
 443   1      	dat->Month= (((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
 444   1      	TimeValue=RTC_Read_Byte(READ_WEEK);
 445   1      	dat->Week=	(TimeValue&0x0f);
 446   1      	TimeValue=RTC_Read_Byte(READ_YEAR);
 447   1      	dat->Year=	(((TimeValue&0x70)>>4)*10)+(TimeValue&0x0f);
 448   1      }
 449          
 450          
 451          
 452          
 453          
 454          
 455          void delay()
 456          {
 457   1          unsigned int i,j;
 458   1      	for(i=0;i<10;i++)
 459   1      	for(j=0;j<11;j++);
 460   1      }
 461          
 462          void timer0() interrupt 1 using 0
 463          {
 464   1      	TH0=0x0a;
 465   1      	TL0=0x01 ;
 466   1          brk++;
 467   1      }
 468          void LED_WRITE(uint8 dat)
 469          {
 470   1      	WR_LED=1;
 471   1      	P1=dat;
C51 COMPILER V6.12  LED                                                                    07/12/2008 18:39:28 PAGE 11  

 472   1      	WR_LED=0;
 473   1      	WR_LED=1;
 474   1      }	
 475          
 476          
 477          void Disp_HZ(unsigned char *dat)
 478          {
 479   1      	unsigned int i,c;
 480   1      	i=0;
 481   1          if(brk>=1){tmp+=2;brk=0;}
 482   1      	while(i!=32)
 483   1      	{
 484   2      		if(i<8)
 485   2      		{
 486   3      			P3=0xf9;
 487   3      			LED_WRITE(0xff);
 488   3      			P3=0xfa;
 489   3      			LED_WRITE(0xff);

⌨️ 快捷键说明

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