(1)设置单片机的传输速率子程序:
void clk_init () reent rant using 0
{
PCON =0x80;
EA=1;
ET0 = 1;
TMOD=0x21;
//采用定时器1 用于串口波特率的设置,定时器0 用于超时设置
TH0=0x00 ;
TL0=0x00;
//此时可以至多为65. 536ms 的时间段,对于模块的时间高限设为5s
TR0=1;
}
(2)接收数据程序子程序:
void Rev_data (unsigned char j)
{
unsigned char i=1;
j++;
while (i<j)
{
max_t=0;
while (RI == 0)
{
if (max_t > 6) break ;
//max_t是通过定时器计时,防止程序在接收数据时陷入死循环
}
RI=0;
Comd[i]=SBUF;
// Comd[i]数据接收暂存区
i++;
}
}