- RS485是半双工双线制通信,采用ModBus协议的RTU(Remote Terminals Unit)模式。
- RS485电气标准,但不对软件协议给予定义
- RE(低电平有效),DE(高电平有效)共接一个端口RS485_RE(PD7)
- while(USART_GetFlagStatus(USART2, USART_FLAG_TC) == RESET);
- 连接P7跳线
- CRC-16/MODBUS冗余校验
① RS485_Init(9600);
② TIM2_Int_Init(49999,7199); //定时器2中断初始化,中断频率0.2Hz
void TIM2_IRQHandler(void) //TIM2中断
{
if (TIM_GetITStatus(TIM2, TIM_IT_Update) != RESET) //检查TIM2更新中断发生与否
{
TIM_ClearITPendingBit(TIM2, TIM_IT_Update); //清除TIMx更新中断标志位
LED1 = !LED1; //灯闪烁,方便调试
Read_parameters(); //读取电流表,电压表测量值
}
}