Go Down

Topic: Baud Rate and Bit rate (Read 1 time) previous topic - next topic

legolas93

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  :)
"Sono convinto che l'informatica abbia molto in comune con la fisica...Dentro i confini del computer, sei tu il creatore. Controlli - almeno

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

astrobeed


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.

leo72

#3
May 12, 2012, 04:54 pm Last Edit: May 12, 2012, 04:58 pm by leo72 Reason: 1
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:
Quote
The baud rate is defined to be the transfer rate in bit per second (bps)

1a legge dell'astrobeedotica  :smiley-sweat:

uwefed

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

astrobeed


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.

lesto

Anche io pensavo che un baud fosse più vicino al byte che al bit...
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Tobo

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

Quote
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


Quote
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 ;)

Nel caso dell'arduino è binaria quindi un baud è un bit.
Mom: Can he lead a normal life?
Doctor: NO! he'll be an engineer!

legolas93

Perfetto ragazzi!. Grazie delle risposte a tutti, chiari come sempre  :)
"Sono convinto che l'informatica abbia molto in comune con la fisica...Dentro i confini del computer, sei tu il creatore. Controlli - almeno

Go Up