Forum: Mikrocontroller und Digitale Elektronik nach Print Aufruf, Programm läuft in Zeitlupe!


von Peter K. (amp65)


Angehängte Dateien:

Lesenswert?

Hallo,
habe am Mega128 ein Graphik-Touch-LCD angeschlossen.
Über eine Menüführung kann ich am LCD Touch-Eingaben machen, welche mich 
durchs Menü führen, sowie über bestimmte Button, Strings an der UART 
ausgegeben werden(485-Schnittstelle).
Soweit funzt alles.
Jetzt mein Problem:
Sende ich einen Print Befehl, lauft das Programm nur noch in Zeitlupe 
ab,
am Bildaufbau des Displays zu erkennen.
Bei Disable Interrupts vor dem Print läuft alles normal, aber nach 
Enable Interrupt nach dem Print, nur alles wieder in Zeitlupe.

Hat jemand eine Idee zur Lösung des Problems??

Vielen Dank!

von Gonzo (Gast)


Lesenswert?

Fehler in Zeile 42.

von Peter K. (amp65)


Lesenswert?

Vielen Dank für den Hinweis, habe die beiden Subroutinen korrigiert,
der ursprüngliche Fehler des verzögerten Programmablaufes nach dem 
"Print" ist jedoch geblieben.

Gruß Peter

von holger (Gast)


Lesenswert?

Mach das mal weg:

On Urxc Onrxd

von Peter K. (amp65)


Lesenswert?

Hallo Holger,

du lagst richtig, habe UART_Recive_Complete Interrupt entfernt und schon 
läufts, auch beim Senden.
Muss denn in dieser Routine unbedingt Code stehen (wäre wahrscheinlich 
noch gekommen!!)?

Besten Dank!!

von holger (Gast)


Lesenswert?

>du lagst richtig, habe UART_Recive_Complete Interrupt entfernt und schon
>läufts, auch beim Senden.

Dabei kann ich gar kein BASCOM;)

>Muss denn in dieser Routine unbedingt Code stehen (wäre wahrscheinlich
>noch gekommen!!)?

Ja, wenn er da rein springt musst du als Minimum das UDR Register
lesen. Sonst bleibt die Interruptanfordeung stehen und der uC springt
immer wieder dort rein.

von Peter K. (amp65)


Lesenswert?

Hallo Holger,
habe mal im Datasheet nachgeschaut( hätte ich gleich machen sollen )
beim m128can gibts das  Rxcie_enable für Empfang Complete.

so sollte es auch mit dem UART_Empfang klappen:

On RXCIE On_rxcie
'
'
On_rxcie:
'Code......
Return

Danke noch mal
Peter

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.