LCD Busy Flag Abfrage im 8 Bit Modus

Gast #6285668
Lesenswert?

Hallo, ich möchte das Busyflag abfragen und ich finde den Fehler im 
Programm nicht. Ein "normaler" HD44780 wird an einem ATMega8A betrieben.
Solange ich mit delays arbeite funktioniert alles problemlos, wenn ich 
das BF abfrage, dann funkioniert es nicht wie es soll.
Daraus die Vermutung dass der Fehler in der BF Routine liegt.
Im Anhang der Programmteil. Vielen Dank für konstruktive Antworten.
Im Anhang der Programmcode.
Angehängte Dateien:
Gast #6285694
Lesenswert?

rudolf58 schrieb:
> Vielen Dank für konstruktive Antworten.

Erst mal einen Prgrammcode liefern der lesbar ist.
Wer Tabs in Sources verwendet lebt für sich allein.

Jeder Editor von heutzutage erlaub es Tabs durch Spaces
zuersetzen und zu formatieren (zur Not mit Find & Replace)

Sources postet man in *.c oder in *.asm, aber nicht in *.txt
Gast #6285787
Lesenswert?

Berater schrieb:
> Jeder Editor von heutzutage erlaub es Tabs durch Spaces
> zuersetzen und zu formatieren (zur Not mit Find & Replace)

Sie haben Recht, dieser Datei im Anhang ist Mist. Wenn ich gewusst 
hätte, dass das in einem derartigem grausigen Format angezeigt wird, 
hätte ich das so nicht abgeschickt. Mir fehlt leider das Know How wie 
das mit dem Ersetzen funktioniert. Ich habe deshalb diese Textdatei 
nochmals bearbeitet und hoffe nun, dass es jetzt besser lesbar ist.
Angehängte Dateien:
Gast #6285806
Lesenswert?

Georg G. schrieb:
> E aktivieren, Register lesen und merken, E wieder deaktivieren. Flag
> auswerten (aus gemerktem Wert). Wenn Busy, von vorn.

Danke, wenn ich das richtig verstehe würde das dann so aussehen:

sbi Steuerport, PIN_E    ; wie bisher
in temp1, Datenport      ; Datenport = Port D
cbi Steuerport, PIN_E    ; PIN_E = 4 Steuerport = Port B

.... wenn das BF gesetzt ist würde dann im MSB eine 1 stehen.
Die Auswertung mit sbic funktioniert mit temp1 = r16 nicht.
Ich steh da einfach auf der Leitung ...

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