Hallo Leute! ich hoffe das mir jemand einen Rat hat zu folgenden Problem: Ich benutze einen AT89C51ED2 der enthält einen 2K großen Speicher den man für igendwelche Daten ablegen benutzen kann. Ich habe eine kleine Routine geschrieben die Daten in den Speicher schreibt, soweit OK. Daten Abgelegt ab der Adresse 0000h nur 5 Werte 11h,22h,33h,77h,88h Wenn ich jetzt dem Controller den Saft wegnehme und nach ner Sekunde wieder draufgebe fällt mir auf, das der erste wert 11h nicht ausgegeben wird sondern 22h zuerst. Kann mir jemand sagen woran dies liegen kann!
Der ist wirklich gut. Sorry, aber Hellsehen darf ich erst im nächsten Leben, kannst Du noch solange warten ? Peter
Sorry! brauchst Du den code! um zu verstehen was ich damit gemeint habe?? Gruß Klaus
SO hier mal den Quellcode! Ich muss hinweisen dass ich kein Profi bin sondern noch Anfänger. Klaus
Hallo! Ich habe das Problem gefunden! Port 2 war nicht zurück gesetzt trotzdem ist mir schleierhaft warum, das nicht zurücksetzen des P2 solch einen effekt haben sollte! Kann nur vermuten das Port 2 beim ersten durchlauf noch auf Eingang Initialisert war ????? Gruß Klaus
"Sorry! brauchst Du den code! um zu verstehen was ich damit gemeint habe??" Wenn man einen Fehler im Code finden soll, braucht man nunmal den Code. Das es nicht am Chip liegt, ist ja klar. "Ich muss hinweisen dass ich kein Profi bin sondern noch Anfänger." Das ist kein Problem. Das aber nirgendwo beschrieben ist, was das Progamm macht und keinerlei Kommentare und Funktionsköpfe, dagegen ein sehr großes. "Kann nur vermuten das Port 2 beim ersten durchlauf noch auf Eingang Initialisert war ?????" Nun, P2 ist laut Datenblatt nach einem Reset 0FFh. Wenn es was anderes sein soll, muß man es reinschreiben. Da die Ports open-drain sind, gibt es keine Richtungsumschaltung, sie sind immer Ein- und Ausgang. Peter
Hallo Peter! Danke für deine Kritik und Hilfestellung, tut mir leid das ich nicht beschrieben habe was dieses Programm tun soll wollte mich eben nur kurz fassen. Ich hielt es nicht für erwähnenswert schliesslich besteht das Programm aus zwei teilen, die erste schreibt Daten ins EEPROM, die zweite liest aus und sollte nur zum Testen verwendet werden. MFG Klaus
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.