[linux] baudrate 74880 ?

paai j.j.paijmans op gmail.com
Di Okt 29 14:28:43 CET 2019


On 29-10-19 13:59, Paul Slootman wrote:
> On Tue 29 Oct 2019, paai wrote:
>> spelende met een esp8266 wilde ik de baud rate op 74880 zetten. Mooi niet.
>> Niet via Minicom, niet via de Arduino interface of zelfs met stty.
>>
>> 'anybaud' gedownloaded, die beweert dat de baud met succes is aangepast,
>> maar stty rapporteert 0 baud en de Arduino terminal wil van niets weten.
>> Minicom ook niet. Volgens de aanwijzingen op de site heb ik eerst het
>> terminal programma gestart en daarna pas de nieuwe baud rate gezet, maar
>> nada.
>>
>> Wat is er mis met dat getal 74880 en hoe kan ik mijn /dev/ttyUSB0 alsnog op
>> die snelheid krijgen?
> Uit de termios(3) manpage:
>
> cfsetospeed() sets the output baud rate stored in the  termios  structure  pointed  to  by
> termios_p to speed, which must be one of these constants:
>
>       B0
>       B50
>       B75
>       B110
>       B134
>       B150
>       B200
>       B300
>       B600
>       B1200
>       B1800
>       B2400
>       B4800
>       B9600
>       B19200
>       B38400
>       B57600
>       B115200
>       B230400
>
> Dit zijn de "standaard" baudrates. stty zal ook geen afwijkende snelheid
> kunnen tonen, wat die 0 baud mogelijk verklaart.
>
> Baudrate wordt meestal gezet door een deler in te stellen. Als de jouw
> gewenste baudrate daarmee niet in te stellen is, dan houdt het op.
>
> https://electronics.stackexchange.com/questions/314060/how-does-16550-uart-handle-non-integer-baud-rates
> The 16550 UART calculates the baud rate using formula 115200 divided by
> the 16-bit number obtained by concatinating the High and Low DL
> registers. There are several well-known divisors that get you well known
> baud rates, and are easy to calculate. A baud rate of 9600 is just
> 115200/12. 57600 is 115200/2, 300 baud is 115200/384, etc... 115200 has
> 90 integer divisors.
>
> Nu blijkt een esp8266 een max. baud rate van 4608000 te kennen.
> Als ik dat deel door jouw 74880 dan komt daar geen geheel getal uit.
>
> Hoe kom jij aan die 74880? Wat is er mis met 115200 of 57600?


Om de een of andere onnaspeurbare reden heeft de fabrikant van de 
esp8266 gekozen voor 74880 als de startup baudrate van die dingen. Bij 
het wakker worden stuurt hij op die snelheid diagnostische troep naar 
buiten en pas als hij daarmee klaar is schakelt hij over op 115200...

https://www.esp8266.com/viewtopic.php?t=2664






74880

74880



Meer informatie over de Linux maillijst