Hallo, nachdem ich mein Problem mit Port C nun im Griff habe, kommt auch gleich das nächste. Das Problem verfolgt mich schon seit Stunden oder besser Tagen. Ich habe an Port C alle 8 Datenbits des LCD, die Steuerleitungen hängen an Port D (siehe Header File). Mein Problem ist nun, das das Auslesen des Busy Bits des LCD nicht klappt. Ich lese immer eine "0". Ich hänge in der Busy Loop fest. Kommentiere ich das "Busy Wait" aus und mache einen entsprechend langen Delay, funktioniert alles wie erwartet, nur viel zu langsamm. Nur komme ich nicht dahinter was ich falsch mache. Vielleicht kann ja einer nen Blick auf den Code werfen und mir sagen woran es liegt ?! Erwähnen sollte ich noch, das ich mit dem Oszi das gleiche Messe. sobald "E" High wird, wird Bit 7 "0" :-( Eventuell ist es ja was im Init. Es ist ein 2*40 Zeichen Display. Danke Juergen PS: Ich willo den 8 Bit Modus nutzen, da später ein Display ran soll, das nur 8 Bit kann....
Gast
#520266
> Vielleicht kann ja einer nen Blick auf den Code werfen und mir sagen
woran es liegt ?!
Wo ist der Code?
Hmm, kann es sein, das wenn man die Beitrags Vorschau betätigt Anhänge rausfallen.... Egal, hier kommt der Code...
Gast
#520345
So auf den ersten Blick... etwas was mir auch immer wieder passiert
1 | |
in
1 | |
ändern. Werde mal weiterforschen ...
Gast
#520349
Vorschlag zum Testen. Mach ein lcdWaitBusy draus.
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
Gast
#520350
Upps! in der Vorschau war's anders formatiert :-(
Einen Busy Wait kann ich in meiner App leider nicht nutzen. Mehr wie "LCD hat Zeit, Ok nextes Zeichen ausgeben, Nein, also weiter im Text" kann ich nicht verwenden.... Danke für den Wink mit dem "PINC", das dürfte mein Problem sein !! So was hatte ich schon vermutet, aber nach einer gewissen Zeit sieht man den Wald vor lauter Bäumen nicht mehr. Grosses DAnke !! Juergen
Gast
#520505
Anbei Code für das Busy-Flag testen
Danke für den Code. Aber wie gesagt ein Busy Wait kann ich nicht verwenden. Aber nach Ersetzen des PORTC durch PINC ging alles. Naja bei den Tastern usw. überall darauf geachtet, nur hier eben nicht. Manchmal ist man eben Betriebsblind :-) Danke für die Hilfe Juergen
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.