Dear all,
looking iMX6ULL reference manual, we try to understand the whole picture.
In 55.7.3 Receive 9-bit RS-485 frames, is reported the following sentence:
There are two slave address detect modes, normal detect mode and automatic detect
mode, and can be selected by SLAM (UMCR[1]).
In 55.7.3.1 RS-485 Slave Address Normal Detect Mode, is reported the following sentence:
To enable Normal Detect mode, clear SLAM (UMCR[1] to 0). The receiver ignores all
data frames (9 th bit = 0) until an address frame is received (9 th bit = 1). At that time, the
slave address detected (SAD = USR1[3]) bit is asserted and the interrupt_uart interrupt is
generated (if SADEN = UMCR[3] = 1). The address byte and sebsequent bytes are all put
into RxFIFO along with their 9 th bit.
In 55.15.17 UART RS-485 Mode Control Register (UARTx_UMCR), there is the SADEN bit inside UMCR register.
Description: RS-485 Slave Address Detected Interrupt Enable.
SADEN 0 Disable RS-485 Slave Address Detected Interrupt
1 Enable RS-485 Slave Address Detected Interrupt
We don't want this kind of functionality due to incompatibility with the MDB/ICP protocol:
The receiver ignores all data frames (9 th bit = 0) until an address frame is received (9 th bit = 1).
because a slave never sends its address on the bus.
Question:
- disabling SADEN bit (set to 0), we also disable the Slave Address Detect Mode functionality, so the RS485 serial port will operate in "standard" mode (9 bit enabled) receiving all the characters received by the hardware ?
Regards,
A.Biasci.