STC8A8K64D4 Series Manual
Signal
#define UART1_BUF_LENGTH 32
#define UART2_BUF_LENGTH 32
#define LIN_ID 0x31
u8 TX1_Cnt; // count of sendding
u8 RX1_Cnt; //count of recieving
u8 TX2_Cnt; // count of sendding
u8 RX2_Cnt; // count of recieving
bit B_TX1_Busy; // busy flag of sendding
bit B_TX2_Busy; // busy flag of sendding
u8 RX1_TimeOut;
u8 RX2_TimeOut;
u8 xdata RX1_Buffer[UART1_BUF_LENGTH]; //buffer if recieving
u8 xdata RX2_Buffer[UART2_BUF_LENGTH]; // buffer if recieving
void UART1_config(u8 brt);
void UART2_config(u8 brt);
void PrintString1(u8 *puts);
void delay_ms(u8 ms);
void UART1_TxByte(u8 dat);
void UART2_TxByte(u8 dat);
void Lin_Send(u8 *puts);
void SetTimer2Baudraye(u16 dat);
//========================================================================
// function: void main(void)
// description: main function
// parameters: none.
// return: none.
// version: VER1.0
// date: 2014-11-28
// remark:
//========================================================================
void main(void)
{
u8 i;
P0M1 = 0; P0M0 = 0; //set as quasi-bidirectional port
P1M1 = 0; P1M0 = 0; //set as quasi-bidirectional port
P2M1 = 0; P2M0 = 0; //set as quasi-bidirectional port
P3M1 = 0; P3M0 = 0; //set as quasi-bidirectional port
P4M1 = 0; P4M0 = 0; //set as quasi-bidirectional port
P5M1 = 0; P5M0 = 0; //set as quasi-bidirectional port
P6M1 = 0; P6M0 = 0; //set as quasi-bidirectional port
P7M1 = 0; P7M0 = 0; //set as quasi-bidirectional port
UART1_config(1);
UART2_config(2);
EA = 1; // Enable global interrupt
SLP_N = 1;
PrintString1("STC8A8K64D4 UART1 Test Programme!\r\n"); //UART1 sends a string
while (1)