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

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
08/18/10 11:25
Read: times


 
#178083 - Reduced Baud Rate
Responding to: ???'s previous message
With the high baud rate of 31250, the system used to run unevenly and sometimes used to hang and restart.

As a trial and error scenario, we tried with reducing the baud rate from 31250 to 3906. Then, we found a kind of stability in the system. The system is running steadily.

Our communication stream patterns are as shown:

a) (MASTER -> SLAVE):

ADDRESS A SLAVE ( by sending command byte - TB8 = 1)
- WAIT FOR ACKNOWLEDGE
SEND MASTER PROTOCOL START BYTE (TB8 = 0)
- WAIT FOR DATA ACKNOWLEDGE
SEND DATA FRAME TYPE BYTE (TB8 = 0)
- WAIT FOR DATA ACKNOWLEDGE
SEND DATA BYTE (TB8 = 0)
- WAIT FOR DATA ACKNOWLEDGE
SEND DATA BYTE (TB8 = 0)
- WAIT FOR DATA ACKNOWLEDGE
SEND MASTER PROTOCOL END BYTE (TB8 = 0)
- WAIT FOR DATA ACKNOWLEDGE

b) (SLAVE -> MASTER):

Slave gets a chance to send its data....

SEND SLAVE PROTOCOL START BYTE
- WAIT FOR DATA ACKNOWLEDGE
SEND DATA FRAME TYPE BYTE (TB8 = 0)
- WAIT FOR DATA ACKNOWLEDGE
SEND DATA BYT
- WAIT FOR DATA ACKNOWLEDGE
SEND DATA BYTE
- WAIT FOR DATA ACKNOWLEDGE
SEND SLAVE PROTOCOL END BYTE
- WAIT FOR DATA ACKNOWLEDGE


As far as the state of communication is concerned, there is no problem with sending / receiving data bytes. At some point of time, a slave (which is intended to get addressed after receiving the common Command Byte and send the acknowledge) is not responding. After counting 5 fails, we are treating it as a failure case.

Q1. How to address a failed slave back and how to refresh the communication?

Q2. What is the difference between the performance in communication with using 'Fixed' and 'Variable' baud rates?

Q3. How to judge how much baud rate to use?


List of 46 messages in thread
TopicAuthorDate
Multiprocessor Communication 8052            01/01/70 00:00      
   missing info            01/01/70 00:00      
      Hardware and slaves placement            01/01/70 00:00      
         How to TriState???            01/01/70 00:00      
            Using Tristate IC in Slave Card            01/01/70 00:00      
               at the receive ...            01/01/70 00:00      
               RE: I think that this IC handles the Tristate situation            01/01/70 00:00      
               then you need to read            01/01/70 00:00      
                  At the Master end            01/01/70 00:00      
                     again, you need a schmitt            01/01/70 00:00      
                        Hysterese            01/01/70 00:00      
                        Re: Thanks...Info about hardware we are using            01/01/70 00:00      
                           how do you know?            01/01/70 00:00      
                              Lowering baud rate            01/01/70 00:00      
                           Really            01/01/70 00:00      
                              Modified the code in Master and Slave            01/01/70 00:00      
                                 Haven't seen full code - slave protocol state fully cleared?            01/01/70 00:00      
                                    Slave protocol code            01/01/70 00:00      
                                       Slave send code fails to synchronize            01/01/70 00:00      
                                          breaking infinite waits in slave acknowledge wait            01/01/70 00:00      
                                       Stop fooling yourself            01/01/70 00:00      
                                          why didn't you before posting updated code            01/01/70 00:00      
                                          How to reset?            01/01/70 00:00      
                                             Hard reset by doing a hard reset.            01/01/70 00:00      
                                          Errors gone            01/01/70 00:00      
                                             But slave still doesn't synchronize with a resend request            01/01/70 00:00      
                                                that is not the way to do it            01/01/70 00:00      
                                                   too late for an edit            01/01/70 00:00      
      Reduced Baud Rate            01/01/70 00:00      
         not surprised            01/01/70 00:00      
            Never reboot for a transfer error            01/01/70 00:00      
               never be an afterthought            01/01/70 00:00      
                  Transfer validation before implementing command processing            01/01/70 00:00      
                     a trick            01/01/70 00:00      
                        address coding example required            01/01/70 00:00      
                           example            01/01/70 00:00      
                        Added "No message" byte            01/01/70 00:00      
                  never be an afterthought: Amen            01/01/70 00:00      
               Slave Recovery in Error            01/01/70 00:00      
                  Find out Why            01/01/70 00:00      
                     absolutely            01/01/70 00:00      
                        worse in the real world            01/01/70 00:00      
                  in addition: rise baudrate            01/01/70 00:00      
               Slaves follow Synchronization            01/01/70 00:00      
   + Error Checking?            01/01/70 00:00      
      It would be smart to assume that a percentage of messages...            01/01/70 00:00      

Back to Subject List