Berechnung Timer1 für DMX-Protokoll

OP #3508580
Lesenswert?

Herzliches Hallo !

Ich habe eine Verständnisfrage zu dem Thema 8051er und DMX-Protokoll.
Ich betrachte gerade dieses wahrscheinlich bekannte Skript hier:

http://electronic-labs.de/index.php?site=51dmxrx&t=10

dort wird ein 8051 mit 16Mhz Taktgeber vorausgesetzt und mit
1
 PCON = 0x00; // 64tclk 250 Baud 16MHz
2
SCON = 0x98; // Serial Port Mode 2 10011000
3
IE |= 0x90; // Enable RX I

wird gesagt das 16000000 / 64 = 250000 ist, und somit kommt die 
Kommunikation zustande.

Mein Testboard hat aber einen 11.0592 Mhz Quarz, somit geht das ja nicht 
ohne Änderung.
Ich grübel nun schon eine Weile dran wie ich ( und ob ich überhaupt) das 
kleine Programm anpassen muss, damit es auf meinem Testboard läuft.

Mein Denkansatz ist der Serial Mode 3  also SCON = 0xD8; // 10011000
Dann übernimmt Timer1 die Baudrate

Ich habe in einem Buch die Formel gefunden:
oder eben / 192 wenn PCON.7 = 1 (SMOD)

entspricht
oder Pcon.7 gesetzt :

wie bekommt man denn nun die 0.152 weg ? Oder wie ist denn der 
Denkansatz, das ganz wird im Timermode 2 (8bit) gemacht.

Oder geht das ganz einfach nicht, da hier ein 16.0Mhz Quarz einfach 
genommen wird, der einfachheit halber.

Für Denkanstöße oder Löungsansätze bin ich sehr dankbar.

Gruß Andre
#3508589
Lesenswert?

@ Andre Thomas (andret)

>Mein Testboard hat aber einen 11.0592 Mhz Quarz, somit geht das ja nicht
>ohne Änderung.

Eben. Du brauchst einen anderen Quarz.

>wie bekommt man denn nun die 0.152 weg ? Oder wie ist denn der
>Denkansatz, das ganz wird im Timermode 2 (8bit) gemacht.

Mit einem anderen Quarz.

>Oder geht das ganz einfach nicht, da hier ein 16.0Mhz Quarz einfach
>genommen wird, der einfachheit halber.

Genau.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren