void serial_rec() interrupt 4 using 0 //需要连续接收
{
uchar i;
uchar r_buf[3];
//ES=0;
// EN485=1;
for(i=0; i<3; i++) // 接收数据
{
//RI = 0;
_nop_();
_nop_();
while(!RI);
r_buf[i]=SBUF;
_nop_();
RI = 0;
_nop_();
}
//RI = 0;
if((r_buf[0]==0x41)&&(r_buf[1]==0x01)&&(r_buf[2]==0x42)) // 接收到的上一个字节为#,
{
setbit1=1;
//ES=1;
}
else
{
//ES=1;
setbit1=0;
}
}
max485不能与PC机串口通信的,PC机是max232电平(-15V~+15V),max485电平是0~5V