Forum: Mikrocontroller und Digitale Elektronik USB und 9600Bd mit AT89C5131


von unterStrom (Gast)


Lesenswert?

Hallo,
ich habe einen AT89C5131AM, den ich mit Flip über USB programmieren 
kann. Funktioniert soweit bestens!
Jetzt muss ich ein Gerät mit RS232 auslesen, das nur 9600Bd kennt; und 
schon gehen die Probleme los:
Die USB Programmierung geht nur mit 12Mhz Quarz. Damit bekomme ich die 
9600Bd aber nicht hin. Mit einem 11059,2MHz Quarz passt das Timing der 
RS232, aber USB läuft nicht mehr.

Ich habe mittlerweile Schaltungen mit 16MHz oder 24MHz gefunden, die 
(scheinbar) funktionieren.

Meine Fragen:
Läuft der USB-Bootlader nur mit (12+n*4) MHz (n E 0..9) ?
Wie wäre die Sache zu lösen?
Externer Takt für die RS232?
Ein "Quarzumschalter"? Wechselschalter aus der Hausinstallation :-)) ?
Treiber/Schnittstellenkarte, die auch die 11059MHz umgehen kann? Gibts 
so was?
Am Nähesten liegen bei 24Mhz und reload Wert 13: 9616,38 Bd. Akzeptiert 
das eine standard RS232 noch als 9600 Bd?

Danke,
Jürgen

von Alexander S. (schroeder_90)


Lesenswert?

Der 89C5131 hat nen pll für die USB frequenz also ist egal was fürn 
quarz du an den dranhängst. Ansosnten mit 12mhz kanst du leicht ne 
9600br erzeugen ich muss bloß mal schnell gucken.

von Alexander S. (schroeder_90)


Lesenswert?

1
Initialisierung:
2
orl PCON,#10000000b ;SMOD=1 bei 9600 Baud
3
mov BDRCON,#00011111b ;int. Baudraten-Generator für Senden und Empfangen, SPD=1
4
mov BRL,#217 ;Reloadwert für int. Baudratengenerator
5
mov SCON,#01010000b ;8-Bit-UART (Mode 1), Empfang zulassen
damit funktionierts zumindest hat so meine kommunikation mit jedem 
rechner über rs232 funktioniert

von unterStrom (Gast)


Lesenswert?

Hallo Alexander,
funktioniert!!!
"interner Baudratengenerator" und BDRCON war das Zauberwort!

Danke,
Jürgen

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.