www.pudn.com > tc35i-SMS_Mcu_Program.rar > init.c, change:2005-07-16,size:1052b


#include <c8051F020.h> 
void SYSCLK_Init(void); 
void UART0_Init(void); 
void  Port_Init(); 
#define SYSCLK  22118400 
#define BAUDRATE 9600 
void main(void) 
{ 
   unsigned char a=0x80; 
  //关闭看门狗 
  WDTCN = 0xDE; 
  WDTCN = 0xAD; 
//初始化系统时钟和串口 
//  SYSCLK_Init(); 
  UART0_Init(); 
  Port_Init(); 
  for(;;) 
  { 
  SBUF0=a; 
  while(TI0==0); 
  TI0=0; 
  while(RI0==0); 
  a=SBUF0; 
  a++; 
  } 
  } 
void SYSCLK_Init(void) 
  { 
  int i; 
  //??????? 
  OSCXCN=0x67; 
  //?????? 
  for(i=0;i<256;i++); 
  //??????? 
  while(!(OSCXCN&0x80)); 
  //?????????,???????????? 
  OSCICN=0x88; 
  } 
  //******************UART0????1????????,???????1 
  void UART0_Init(void) 
  { 
//????? 
  TMOD=0x20; 
  TH1=-SYSCLK/BAUDRATE/16; 
  TL1=-SYSCLK/BAUDRATE/16; 
  TR1=1; 
  CKCON|=0x10; 
//????????1 
  SCON0|=0x50;PCON|=0x80; 
//  ?????? 
  IE&=0xEF; 
  } 
 
   //????? 
  void Port_Init(void) 
  { 
  XBR0=0x0c; 
  XBR1=0x14; 
  XBR2=0x46; 
  P0MDOUT=0xe5; 
  P1MDOUT=0xc4; 
  P2MDOUT=0xff; 
  P3MDOUT=0xff; 
  P0|=0x1a; 
  P1|=0x3b; 
  }