Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
04/16/08 15:56
Read: times


 
#153510 - Mixing modes on UART
Responding to: ???'s previous message
One place where polled Tx makes sense is with smarter UARTs with hardware fifos, like those on ARM controllers. There's less overhead by loading up a fifo (polling fifo full flag) and waiting for a single tx interrupt when the fifo empties. I don't know of any 8051s that use fifos.

Another use of polled tx, especially if the data rate is low, is to ensure there is a gap between characters. When the baud rate generator isn't exact, say 1-2 percent error on clock rate (or same on receiver end) then sending long strings of data at the fastest possible rate may result in a missed bit. A small gap between bytes generated by the nature of asynchronous polling instead of synchronous interrupts allows time for the remote receiver to realign the bit sampling window. I do this with some SiLabs 8051 controllers to compensate for the 2% variance in the internal oscillator, though I use a timer to generate a gap instead of polling TI.

List of 14 messages in thread
TopicAuthorDate
Interrupt-driven Rx, polled Tx            01/01/70 00:00      
   this is why we have the FAQs...            01/01/70 00:00      
      Maybe I'm crazy            01/01/70 00:00      
         if you do that            01/01/70 00:00      
         Polled transmission            01/01/70 00:00      
            Mixing modes on UART            01/01/70 00:00      
   Here's why I asked            01/01/70 00:00      
      the risks of doing things the "wrong way"            01/01/70 00:00      
         the old nugget            01/01/70 00:00      
            Cool idea            01/01/70 00:00      
               size            01/01/70 00:00      
         Is the \"wrong way\" risky, or just stupid?            01/01/70 00:00      
            explanation            01/01/70 00:00      
               Thanks. I understand now what you are saying            01/01/70 00:00      

Back to Subject List