Baud Rate and Bit rate

Dite che è una domanda stupida chiedere la relazione tra i due in caso di un Arduino Uno.

Ogni baud in questo Arduino a quanti bit corrisponde?

Grazie ragazzi :slight_smile:

Normalmente a 10 bit perché la trasmissione di default è impostata su 8N1 ossia:
1 bit di inizio trasmissione, 8 bit di dati, nessun bit di parità, 1 bit di stop

leo72:
Normalmente a 10 bit perché la trasmissione di default è impostata su 8N1 ossia:
1 bit di inizio trasmissione, 8 bit di dati, nessun bit di parità, 1 bit di stop

Su Arduino baud rate e bps (bit per secondo) sono la stessa identica cosa, cioè se trasmetti a 9600 bps sono anche 9600 baud, la conversione 10 bit trasmessi per ogni byte vale solo per passare dai bps ai byte per secondo reali ricevuti/trasmessi.
La differenza tra Baud e bps è che il primo indica i simboli per secondo trasmessi, il secondo i singoli bit,nel caso di linee che sfruttano l'ampiezza, la modulazione, etc, per aumentare il numero di stati logici per ogni ciclo della portante, come avveniva su i vecchi modem analogici, ogni baud può valere diversi bps.

astro, ma 1 baud sulla seriale è un simbolo, non è un singolo bit.
Se scrivo 9600 bps sono bit per second, ok. Ma se scrivo 9600 baud non è differente?

EDIT:
hai ragione te. A pag. 181 del datasheet si legge:

The baud rate is defined to be the transfer rate in bit per second (bps)

1a legge dell'astrobeedotica :sweat_smile:

Per trasmettere un carattere (1 Byte o 8 bit) vengono spediti sulla seriale 10bit (con altre impostazioni utilizzabili con la seriale si arriva anche a 12 Bit per Byte: 2 start, 8 dati, 1 parity, 1 stop).
Percui con un Baudrate di 9600 si possono spedire 960 Byte o caratteri.
Ciao Uwe

leo72:
astro, ma 1 baud sulla seriale è un simbolo, non è un singolo bit.
Se scrivo 9600 bps sono bit per second, ok. Ma se scrivo 9600 baud non è differente?

Semplicemente nel caso della UART, ma vale per tutti i tipi di trasmissione dove c'è equivalenza 1:1 tra i cicli e i bit trasmessi, un baud = 1 bps perché 1 simbolo = 1 bit dato che la trasmissione avviene in binario, cioè hai solo due livelli possibili.
Se la trasmissione avviene con una base numerica diversa, p.e. in base 4 sfruttando 4 livelli di tensione invece di due, allora bps e baud divergono perché ogni simbolo (quantità di informazione trasmessa per ogni ciclo) è composto da più bit, che poi è il "trucco" usato dai vecchi modem analogici per superare i limiti di banda imposti dalle vecchie linee telefoniche.

Anche io pensavo che un baud fosse più vicino al byte che al bit...

No no, ha ragione astro :slight_smile: la confusione si genera con la definizione di simbolo:

il simbolo è la più piccola quantità di dati numerici o bit trasmissibili in una sola volta sotto forma di una forma d'onda analogica di energia sul canale di comunicazione

nel caso di modulazione binaria, la più semplice delle modulazioni numeriche, in cui ogni simbolo trasporta una sola cifra binaria, 1bit/simbolo, dunque symbol rate e bit rate acquistano lo stesso valore cioè di fatto coincidono.

Ma la modulazione, come ha già detto astro, può non essere binaria :wink:

Nel caso dell'arduino è binaria quindi un baud è un bit.

Perfetto ragazzi!. Grazie delle risposte a tutti, chiari come sempre :slight_smile: