Forum: Mikrocontroller und Digitale Elektronik Kollisionsproblem 2er Usart's


von Thomas Haase (Gast)


Lesenswert?

hallo an alle,

ich bin eigentlich ein recht firmer AVR-Programmierer und doch bin ich
diesmal auf ein problem gestoßen. vielleicht kann mir einer von euch
weiterhelfen:

ich benutze einen Atmega128 um Daten über RS485 von einem Bus zu lesen
und zu schreiben. dieser Verkehr muss Interruptgesteuert
verlaufen(57k).
den 2.Usart des AVR benutze ich, um Daten vom PC zu laden und zu
senden(9,6k). diese Leitung müßte nicht unbedingt Interruptgesteuert
verlaufen.
Beide greifen auf gleiche Speicherplätze zu.
wie kann ich sicherstellen,dass sich beide Kommunikationssysteme nicht
gegenseitig unterbrechen. mir stehen nur (TxD,RxD,GnD) zur Verfügung.
Können die Usart's des Atmega128 parallel arbeiten?

bin für jede hilfe dankbar
Thomas

von A.K. (Gast)


Lesenswert?

Die UARTs arbeiten parallel, aber die Interrupt-Routinen lassen sich nur
dann gegenseitig unterbrechen, wenn man das im Programm eigens zulässt.
Und Interrupts kann man in kritischen Programmteilen auch kurz mal
abschalten - tatsächlich geschieht dies in komplexen Steuerungen recht
häufig, allein schon um Zugriffe auf globale Variablen abzusichern.

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.