UART Test mit Q-Basic

Gast #56557
Lesenswert?

Mal zurück zu QBasic: Wenn Du programmgesteuert Zeichenfolgen senden
willst, geht fast nix einfacher als QBasic (oder QuickBASIC, etwas
umfangreicher).

OPEN "COM1:9600,8,1,N" FOR RANDOM AS #1
'öffnet eine serielle Schnittstelle auf Port 1,
'mit 9600 Baud, 8 Datenbits, 1 Stopbit, keine Paritätsprüfung,
'für wahlfreien Zugriff (lesen und schreiben), mit der Kennung #1

PRINT #1,"Hello AVR";
'na was wohl?, Ausgabe von CR+LF wird mit ; unterdrückt
PRINT #1,CHR$(64);
'Ausgabe eines @ (Ascii 64), zum Ausgeben von binären Daten <32 sollte
allerdings der Schnittstellenmodus auf BIN stehen

CLOSE #1
'schließt die Schnittstelle, ganz wichtig, sonst gibts beim nächsten
Start Probleme

Du siehst, nicht wirklich schwer. Lustig wird's, wenn trotzdem nix
funktioniert. Bei nicht vollständig belegter Leitung oder falschem oder
fehlenden Handshake kann man verzweifeln. Hier hilft erstmal, alle
Handshakes auszuschalten. Schau in die QBasic-Hilfe unter OPEN COM.
Dort sind auch Beispiele.

Daten einlesen wird etwas schwieriger, weil man hier aufpassen muß,
dass das Programm nicht hängenbleibt, weil es auf Daten wartet. Befehle
dafür INPUT #, LINE INPUT #

Die Baudrate ist unter QBasic max. 9600 Baud, es können nur COM1 und
COM2 angesprochen werden.

Das ganze läuft unter Win95 im Vollbildmodus erfolgreich. Manchmal kann
eine Schnittstelle nicht geöffnet werden, wenn sie vorher nicht richtig
(auch von Windoofs) geschlossen wurde. Wenn Du es komfortabler willst,
gibt es mit 16-bit-GFWBasic eine Win-Version, die ich erfolgreich
einsetze. Da sind Baudraten bis 19200 Baud, mit Tricks bis 115000 Baud
und alle Schnittstellen möglich.

Weitere Fragen: swunn at gmx punkt de

Sven

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren