hello forum,
let me first explain my practical application that i am trying to implement.....i am receiving non stop data from PC on a CC1110 @9600bps baudrate through UART0 using DMA....it takes approx 1ms to transfer 1 byte from PC to CC1110 @9600bps baudrate....i receive 16 bytes in my ram...store them in a buffer on ram....and a software flag is set...once the flag is raised high....the flag is reset and the available 16 byte data is sent over the air using RF....the RF baud rate is 250kbps....the RF front end software is implemented using MRFI protocol which is the heart of the proprietary simplciti protocol.....it takes 1ms to send the 16 byte packet from Transmitter over the air....i add 8 network bytes in the packet header for managing the peer to peer network....so the total time taken by the transmitter to transfer 24 bytes over the air equals 1.5ms....the same 1.5ms will be consumed at the receiver to receive these bytes over the air and copy them into a 16 byte payload buffer which is stored in ram....this 16 byte packet is then transferred to another PC over UART0 @9600bps baudrate which here again takes 16ms....
the problem that i am facing here is that the UART TX operation at the CC1110 receiver is not yet completed before another RF interrupt is experienced....since the UART RX operation at the CC1110 transmitter has a non stop data refresh rate.....it does not wait for the 16 byte packet to be sent completely at the receiver UART TX function before another RF interrupt arrives and the UART Tx operation is halted....
the outcome is an RF UART Bridge that missed 1 byte once it reaches the other PC connected with Receiver CC1110....the problem is that missing one byte per 16 bytes is unacceptable.....
i want a flawless UART bridge....all the operations are being carried out using DMA...the micro controller is only used as an ISR handler.....but the RF interrupt is clashing with UART Tx interrupt...is there any way i can latch this RF intterupt at the receiver to wait until the UART Tx operation is completed.......the result will be a a few ms delay in the whole system...but i can live with that...but i cannot afford to miss one byte...
please advise and suggest
apart from this nifty little issue....i am impressed with the capabilities that CC1110 has to offer in an SOC
best regards
ali