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

📄 text2

📁 资料为主从控制的LED七彩灯
💻
字号:
#include<AT89X52.h>
#define uchar unsigned char;
#include <string.h> 
#define INBUF_LEN 4 //数据长度
unsigned char inbuf1[INBUF_LEN]; 
unsigned char checksum,count3; 
bit read_flag= 0 ; 
void init_serialcomm( void ) 
{ 
SCON = 0x50 ; //SCON: serail mode 1, 8-bit UART, enable ucvr 
TMOD |= 0x20 ; //TMOD: timer 1, mode 2, 8-bit reload 
//PCON |= 0x80 ; //

TH1=0XFD;
TL1=0XFD; 
//TH1 = 0xF4 ; //Baud:4800 fosc=11.0592MHz IE |= 0x90 ; //Enable Serial Interrupt 
TR1 = 1 ; // timer 1 run // TI=1; 
} 
//向串口发送一个字符 
void send_char_com( unsigned char ch)
{ 
SBUF=ch; 
while (TI== 0 );
TI= 0 ; 
} //向串口发送一个字符串,strlen为该字符串长度 
void send_string_com( unsigned char *str, unsigned int strlen)
{ 
    unsigned int k= 0 ; 
do{ 
    send_char_com(*(str + k)); k++;
    } while (k < strlen);
} 


void DELAY(unsigned char count2) 
{  unsigned char i;
do{ 
  for(i=0;i<6233;i++);
   count2--;
	}while(count2!=0);
	}


unsigned int data time;
uchar data count1;
uchar data count;
unsigned int  *trp;
uchar data display[7];
uchar code led_segment_code[]={ 0x3F,0x30,0x5B,0x4F,0x66,0X6D,0X7D,0x07,0x7F,0x6F};
main()
{TMOD=0x00;
TH0=0XCB;TL0=0X1D;
IE=0X82;TR0=1;
P2=0x10;
trp=&time;
init_serialcomm(); //初始化串口 
while(1)

{ DELAY(5);}
//send_char_com( 44); }
}
void timeint(void) interrupt 1
{	 uchar data i;
    uchar data r1;
    unsigned int data U;
TH0=0XCB;TL0=0X1D;
 count1++;
 if (count1==200)
    {time++;
	 count1=0;
	 SBUF=time; 
while (TI== 0 );
       TI= 0 ; 
//send_char_com(00);
	 }

	 U=time;
	 for(i=0;i<=7;i++) 
	 {display[i]=U%10;
    U=U/10;}
  
for(r1=3;(r1>=1)&&(display[r1]==0);r1--)
{if (display[r1]==0)
  display[r1]=0xff;}


	 if(P2==0X80)
	 {count=0;
	 P2=0x10;
	  P0=led_segment_code[display[count]];}
	 else
	 {count++;
    P0=led_segment_code[display[count]];
	 P2<<=1;
	  }
	 
	P1=0XAA;

	 }
	

⌨️ 快捷键说明

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