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