LPC2387 RS485通信

     最近一款基于LPC2387方案的产品要用到RS485通信,查了下datasheet,LPC2387的Uart没有内置RS485功能,故只能采用电平转化了。最后选择了MAX485和英联的UM3085,两款芯片管脚兼容,都能进行TTL和RS485转化。

     因为采用半双工通信,所以用一个GPIO口同时控制DE和RE,某一刻只能是接收或发送。LPC2387的TXD1和RXD1分别和485的DI和RO连接。

 

LPC2387 RS485通信_第1张图片

 

 

//RS-485收发控制示意代码,和普通串口通信相比多了485芯片的发送/接收使能设置

#define RS485_DE_RE (0x01<<9)  //GPIO P0.9控制DE,RE

/*********************************************
******   使能RS485发送
*********************************************/
void Enable_RS485_Tx(){
 
 
  
  FIO0DIR |= RS485_DE_RE;  //GPIO Dir Out
  FIO0SET = RS485_DE_RE;  //P0.9输出高电平,DE为1,RE为0
}

/*********************************************
******   使能RS485接收
*********************************************/
void Enable_RS485_Rx(){
 
 
  
  FIO0DIR |= RS485_DE_RE;  //GPIO Dir Out
  FIO0CLR = RS485_DE_RE;  //P0.9输出低电平,DE为0,RE为1
}





你可能感兴趣的:(产品)