So kleines Update.....hab diesmal wirklich das Problem mit dem zickigen Controller gelöst 
Das hier ist mein erster Ansatz zum UART:
Code:
'ISR vom UART
Uart_recieved:
Uart_buffer = Udr 'Eingehendes Zeichen zwischenspeichern
If Uart_buffer <> Chr(13) Then 'Abfrage nach Enter
If Uart_buffer <> Chr(8) Then 'Abfrage nach Backspace
Print Chr(uart_buffer); 'Eingehendes Zeichen ausgeben
Input_uart_overlay(bytes_recieved) = Uart_buffer
Incr Bytes_recieved
Else
Decr Bytes_recieved 'Zähler um eins verringern
Input_uart_overlay(bytes_recieved) = "" 'Zeichen löschen
End If
End If
Return
In Kombination mit einer Select-Case Abfrage klappt das auch schonmal recht gut.
Allerdings muss ich noch dafür sorgen, dass der Zähler nicht unter 0 fallen kann (ist mir beim löschen des Strings aufgefallen, dass er ja tiefer als 0 zählt wenn man zu oft Backspace drückt
) und ich muss den Kram aus der ISR rausnehmen.....ich denke ich werde da auch mit einem Flag arbeiten....ähnlich wie bei der MCP2515 ISR, sprich wenn ein Zeichen reinkommt wird ein Flag gesetzt und dieses Flag wird im Hauptprogramm abgefragt.
Oder ist diese Idee nicht so prall?
Wüsste nicht wie man die ISR sonst schlanker gestalten könnte, weil sie soll auch nicht zu lang werden
Lesezeichen