Configuració de la velocitat de Baud de comunicació en sèrie i algoritme de Baud Rate

Aug 07, 2018Deixa un missatge

Configuració de la velocitat de transmissió de sèrie i algoritme de velocitat de baud


Quan s'utilitza la comunicació en sèrie del microordinador de xip individual, s'ha d'establir la velocitat de transmissió, i la velocitat de transmissió s'ha de fixar en 9600, 19200 ...? És aquesta una tradició? De què? L'oscil·lador de cristall corresponent també és generalment de 11.0592 MHz.

És primer establir l'oscil·lador de vidre i, a continuació, establir la velocitat de transmissió o establir la velocitat de transmissió primer i, a continuació, establir l'oscil·lador de cristall. Per què s'hauria d'establir?


Hi ha dues declaracions més fiables:


1: Segons les característiques físiques de l'electricitat, mitjans de transmissió, etc., combinats amb els requisits de l'ús del dispositiu en sèrie

Per assegurar una comunicació eficaç, d'acord amb les característiques físiques de l'electricitat, mitjans de transmissió, etc., combinats amb els requisits de l'ús del dispositiu en sèrie, es determina que la velocitat màxima de transmissió de RS232 només pot ser de 115200 i després obtinguda mitjançant dos passos obtenir 57600, 28800, 19200; per adaptar-se a aquestes taxes, dissenyar la freqüència de cristall corresponent.


2: Això es determina per les característiques de la línia de telecomunicacions.

El pas de banda de la línia telefònica és de 300 a 3 kHz. En aquest moment, els hayes es van dedicar primer al mòdem, de manera que el senyal de 2400 Hz utilitzat, la velocitat de transmissió corresponent és 2400. Atès que es determina la freqüència bàsica, el pas avançat s'adopta, el mètode de la velocitat es multiplica sobre la base de 2400 més tard, de manera que la formació de 9600.19200. . . .


De qualsevol manera, hi ha una velocitat de baudios i, a continuació, una freqüència de cristall.


Càlcul de la velocitat de transmissió en sèrie de microordinadors de xip individual.


En mode 0 i mode 2, la velocitat de transmissió del port sèrie es fixa, i la manera 0 és Fosc / 12. Mode 2 és Fosc / 32 o Fosc / 64, que es determina pel bit SMOD del registre de PCON.


A Mode 1 i Mode 3, la velocitat de bauditat és un valor de variable. La velocitat de bauditat es pot generar mitjançant el temporitzador 1 (8052 es pot generar mitjançant el temps 2). Quina és la taxa de baudios? Velocitat de baud per velocitat de desbordament del temporitzador 1 a determinar:

Baud Rate = (2SMOD / 32) * (Taxa de desbordament del temporitzador 1)

Nota: 2SMOD aquí SMOD és l'índex, SMOD és la taxa de baud rate doble de baud rate, aquest bit està en el registre de PCON.


Quan s'utilitza el temporitzador 1 com a generador de velocitat de baud, normalment és necessari configurar el temporitzador 1 per operar en mode de recarrega automàtica de 8 bits, i també per desactivar la interrupció del temporitzador 1 i, a continuació, el desbordament del temporitzador 1 com calcular? La velocitat de desbordament és la freqüència del desbordament. Si se suposa que la freqüència de cristall és de 12MHz i el valor TH1 és 0xFE, només es necessitaran dos polsos de rellotge per desbordar, i el període de desbordament és 2us, llavors la freqüència de desbordament és de 500KHz. Segons la secció temporitzador, el temps de cronometratge té la següent fórmula:

Temps de temps = (valor màxim del recompte - valor inicial del comptador) * cicle de la màquina = (valor màxim del comptador - valor inicial del comptador) * (12 / freqüència de cristall (Hz)) (s) = (256-TH1) * (12 / OSC_FREQ Hz)) (s).


Llavors, la freqüència del desbordament és naturalment:

OSC_FREQ (Hz) / ((256-TH1) * 12).


Per tant, la velocitat final d'embranzida és:

(2SMOD / 32) * (OSC_FREQ (Hz) / ((256-TH1) * 12)).


La fórmula de càlcul de la taxa de baudis està disponible i , naturalment, es pot obtenir el valor inicial de TH1 segons la velocitat de baudis:

BAUD_RATE = (2SMOD / 32) * (OSC_FREQ (Hz) / ((256-TH1) * 12))


32 * 12 * (256-TH1) = (2SMOD * OSC_FREQ (Hz)) / BAUD_RATE


256-TH1 = (2SMOD * OSC_FREQ (Hz)) / (BAUD_RATE * 32 * 12)


TH1 = 256- (2SMOD * OSC_FREQ (Hz)) / (BAUD_RATE * 32 * 12)


Si se suposa que la freqüència de cristall és de 11.0592 MHz, la velocitat de transmissió és de 9600, SMOD = 0, què ha de ser el valor inicial de TH1? Segons la fórmula anterior, es pot calcular TH1 = 256-11059200 / (9600 * 32 * 12) = 0xFD.



Enviar la consulta

whatsapp

Telèfon

Correu electrònic

Investigació