Serial Tx Interrupts


I’m using the Digi ME which uses the N7520 processor. The operating system is Net OS 7.2.

All the work I’m doing is in xm_em_serl.c

I need to know when all serial data has been transmitted. To do this I thought I could monitor serial status register A
address FFD0 0008 / 48

I’m monitoring the TBC (reg & 0x2) which is supposed to indicate when the serial sift register is empty.

I’ve been contantly monitoring this flag when writting data and have noticed that it doesn’t change. I need this flag in order to have my RS485 control turn off straight after transmission. Without it the last byte is cut short.

I was using TCDRAIN however this doesn’t cut it if the device on the receiving end replies quickly as I haven’t been able to put the device into recieve prior to transmission.

Has anybody come across this before and is there some register I’m to configure that will enable this. Or is there some kind of work around to know that all data has been transmitted.

Thank you in advance