程序如下,请前辈们指教
#include <regx51.h>
sbit RW485 = P3^2;//485发送接收控制端
void delay_1ms()
{
unsigned int i;
for(i=1;i <(12*143-2);i++);
}
void delay_10ms()
{
unsigned int i;
for(i=0;i <10;i++)
delay_1ms() ;
}
void InitSerial(void)
{
TMOD = 0X20; //设置T1为模式2,8位自动重装,T0为模式1。
SCON = 0X50;
PCON = 0X00; //设置波特率为 9600B/S。
TH1 = 0xFD;
TL1 = 0xFD;
TR1 = 1; //启动定时器
RW485 = 0;//485接收状态
}
void SerialOUTByte(unsigned char SData)
{
RW485 = 1;//485发送状态
SBUF = SData;
while (TI == 0);
TI = 0 ;
RW485 = 0;//485接收状态
}
//主函数
void main()
{
unsigned char i,t[5]={0x11,0x22,0x33,0x44,0x55};
InitSerial();
while(1)
{
for(i=0;i <10;i++) delay_10ms();
for(i=0;i <5;i++) SerialOUTByte(t[i]);
}
}