P
Peter
Guest
Hallo,
ich versuche einen AT89S52 ľC zu programmieren, habe dabei jedoch so
meine Probleme...
Das programmiergerät hierfür will ich mir selber bauen.
Als ersten Schritt wollte ich den Programming Enable Befehl an den ľC
senden und testen, ob dieser dann "0110 1001" zurück gibt (sollte er
doch, oder?).
Das ist mir aber noch nicht so richtig gelungen.
Um das Signal zu senden, benutze ich einen von mir programmierten
AT89C2051, der dann so ca. 2Bit pro Sekunde sendet, damit ich das
Ganze besser beobachten kann.
Der MISO-Port vom Zielcontroller bleibt jedoch immer auf high.
Ich bin mir auch nicht ganz sicher ob ich das Prinzip der seriellen
Schnitstelle wirklich richtig verstanden habe.
Z.Z. versuche ich es folgendermaßen:
Nach dem Einschalten sind MOSI und SCK low.
Dann wird MOSI je nach dem zu sendenden Bit eingestellt.
SCK wird auf high gesetzt und nach einiger Zeit (im Moment zum testen
noch 0.5s) wieder auf low. Dann wird das ganze mit dem nächsten Bit
wiederholt.
Für das 4. Byte, das ja nur gelesen werden soll werden dann beliebige
Daten gesendet und MISO überwacht.
Der Port bleibt jedoch immer auf high.
Was könnte ich falsch machen?
Ich hab noch nicht all zu viel Erfahrung (keine ) mit der
Programmierung von ľC. Es könnte also ein einfacher Fehler sein.
Gibt es ggf. auf der Seite von Atmel eine genaue Beschreibung der ISP
Programmierung?
Gruß + Vielen Dank schon mal,
Peter
ich versuche einen AT89S52 ľC zu programmieren, habe dabei jedoch so
meine Probleme...
Das programmiergerät hierfür will ich mir selber bauen.
Als ersten Schritt wollte ich den Programming Enable Befehl an den ľC
senden und testen, ob dieser dann "0110 1001" zurück gibt (sollte er
doch, oder?).
Das ist mir aber noch nicht so richtig gelungen.
Um das Signal zu senden, benutze ich einen von mir programmierten
AT89C2051, der dann so ca. 2Bit pro Sekunde sendet, damit ich das
Ganze besser beobachten kann.
Der MISO-Port vom Zielcontroller bleibt jedoch immer auf high.
Ich bin mir auch nicht ganz sicher ob ich das Prinzip der seriellen
Schnitstelle wirklich richtig verstanden habe.
Z.Z. versuche ich es folgendermaßen:
Nach dem Einschalten sind MOSI und SCK low.
Dann wird MOSI je nach dem zu sendenden Bit eingestellt.
SCK wird auf high gesetzt und nach einiger Zeit (im Moment zum testen
noch 0.5s) wieder auf low. Dann wird das ganze mit dem nächsten Bit
wiederholt.
Für das 4. Byte, das ja nur gelesen werden soll werden dann beliebige
Daten gesendet und MISO überwacht.
Der Port bleibt jedoch immer auf high.
Was könnte ich falsch machen?
Ich hab noch nicht all zu viel Erfahrung (keine ) mit der
Programmierung von ľC. Es könnte also ein einfacher Fehler sein.
Gibt es ggf. auf der Seite von Atmel eine genaue Beschreibung der ISP
Programmierung?
Gruß + Vielen Dank schon mal,
Peter