Hallo ich habe ein Programm geschrieben was mir einen Wert den ich über ADC einlese, auf einem LCD-Display ausgeben soll. Die Ausgabe von irgend welchen Zeichen Funktioniert auch (z.B.Ue=12,3V). Aber sobald ich die Funktionen ad_wandlung() oder umrechnung() mit reinnehme erscheint auf meinem Display irgend ein Mist. Was kann das sein? Es scheint als käme der Kontroller durcheinander. Vielleicht hat ja einer eine Idee. Vielen Dank Gruß Guido
[Kristallkugel leider gerade kaputt...] Falsche Funktionsprototypen? C-Konventionen über argument promotion nicht beachtet? Falsche Datentypen überhaupt? Bißchen mehr mußt Du schon aus Deinem Projekt zitieren...
>> ad_wert=ADCL+ADCH*256;
Muß man Register nicht erst mit entspr. Funktionen auslesen ?
Und dann: in Deiner Routine zum Umrechnen des Wertes in seine einzelnen
Stellen: ist der Wert garantiert kleiner 1000? Wenn nicht, landet Dein
char-Wert für das Displayzeichen im Nirvana, wobei das wörtlich zum
nehmen ist, denn irgendwann stehen da im LCD-Controller chinesische und
japanische Schriftzeichen drin...
gruß
mz
...doch, habe ich gerade geprüft: DDRA=0xFF; PORTA=0xFF; legt PortA auf Ausgang und "1" Compiler: gcc3.3 mz
(Sorry, unsere Postings haben sich gekreuzt, Martin, mein Kommentar bezog sich auf »anja«.)
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.