在Modbus RTU模式中,帧起始至少保持3.5个字符传送的时间空
闲,帧结束也一样至少保留3.5个字符的时间内没有数据传送,下一
帧的传送必须在这个时间间隔之后。而帧内的每个字符的传送必须是
连续的,每个字符间的时间间隔不能超过1.5个字符传送的时间,如
果字符之间的时间间隔大于1.5个字符的时间并小于3.5个字符的时
间,那么接收设备会认为该帧是坏帧,将该帧(包含前面已接收的)
闲,帧结束也一样至少保留3.5个字符的时间内没有数据传送,下一
帧的传送必须在这个时间间隔之后。而帧内的每个字符的传送必须是
连续的,每个字符间的时间间隔不能超过1.5个字符传送的时间,如
果字符之间的时间间隔大于1.5个字符的时间并小于3.5个字符的时
间,那么接收设备会认为该帧是坏帧,将该帧(包含前面已接收的)
丢弃。
那么在LPC1765的MCU中,怎么处理字符之间的时间间隔呢?
使用接收FIFO。
当使能FIFO功能时,会有CTI中断。
CTI中断产生的条件是:当UARTn Rx FIFO内含有至少一个字符并且在接收到3.5到4.5字符的时间内没有发生UARTn Rx FIFO动作时,该中断激活。