Autor |
Probleme mit Atmel 8252 über LPT und HCT 422 |
|
|
|
|
BID = 578744
MichaNRW Gerade angekommen
Beiträge: 6 Wohnort: Mülheim
|
|
Hallo!
Ich fange nach knapp 5 Jahren wieder mit dem Thema µC und habe meinen Atmel 8252 wieder aus dem Schrank hervorgeholt.
Das Problem, ich kann ihn nicht mehr vom PC aus programmieren.
Ich habe das ganze damals als fertige Platine gekauft, mit fertig aufgebauten Treiber für den parallelport über einen HCT 422 und handelsübliches LPT Kabel.
Da war auch eine Software bei, die allerdings beim rechnerwechsel verschütt gegangen und nicht mehr auffindbar ist.
Ich habe es nun mit PonyProg probiert, laut statusmeldungen sei alles in Ordnung, allerdings bekomme ich beim auslesen nur FF-Werte, das schreiben verläuft angeblich ebenfalls erfolgreich, allerdings bei ernuetem auslesen ebenfalls nur FFs.
Wo mache ich was falsch, bzw. was habe ich in den gut 5 Jahren vergessen?
Ich weiß, recht wenig genau Angaben, aber ich wüsste gerade nicht was ich sonst noch angeben soll ... Wenn ihr zu irgendwas genauere Infos braucht liefer ich die natürlich nach!
Schon mal danke im vorraus,
Michael
[ Diese Nachricht wurde geändert von: MichaNRW am 9 Jan 2009 11:37 ] |
|
BID = 578747
perl Ehrenmitglied
Beiträge: 11110,1 Wohnort: Rheinbach
|
|
Zitat :
| Wo mache ich was falsch, bzw. was habe ich in den gut 5 Jahren vergessen? | Vielleicht ein neues Windos auf dem Rechner, welches es dem Programm nicht mehr erlaubt direkt an den Portpins herumzufummeln ? |
|
BID = 578755
MichaNRW Gerade angekommen
Beiträge: 6 Wohnort: Mülheim
|
Windows ist XP ... zumindest PonyProg sollte doch unter XP laufen, oder nicht?
ein auf p01 angeschlossen LED-Board (jeder pin = 1 Led) blinkt beim programmieren / auslesen, anscheinend gehen ja Daten Richtung µC
|
BID = 578768
Kleinspannung Urgestein
Beiträge: 13367 Wohnort: Tal der Ahnungslosen
|
Zitat :
MichaNRW hat am 9 Jan 2009 12:19 geschrieben :
|
Windows ist XP ... zumindest PonyProg sollte doch unter XP laufen, oder nicht?
|
Jein.
Windoof XP kann den LPT Port nicht mehr direkt ansprechen.
Deshalb.Ging nur mit einem Trick,der mir aber entfallen ist.
Also entweder noch nen alten Rechner mit 98SE/ME,oder Brenner für seriellen Port bauen.Gibt aber auch schon welche für USB.
_________________
Manche Männer bemühen sich lebenslang, das Wesen einer Frau zu verstehen. Andere befassen sich mit weniger schwierigen Dingen z.B. der Relativitätstheorie.
(Albert Einstein)
|
BID = 578769
MichaNRW Gerade angekommen
Beiträge: 6 Wohnort: Mülheim
|
Hmm, entweder habe ich den Trick gerade gefunden oder lag an etwas anderem ...
Also, wenn ich in PonyProg nun beliebige werte in Buffer schreibe (mit 00 und FF probiert) kann ich diese nun an den µC senden und auch wieder empfangen.
Was mich nun stutzig macht ist: Ich habe mit dem mc51 entwicklertool eine demoprogram kompiliert, also eine hex datei erhalten. Öffne ich diese nun in ponyprog zeigt er mir den kompletten Buffer wieder als FF an, anscheinend liest er die HEX-Datei gar nicht ein.
Inhalt der Hex datei:
:0380000002806299
:03800B00028030C0
:10803000C0D075D010758CB8758A00B297D5300550
:10804000B290753032D0D032E58954F04401F589D0
:10805000758CB8758A00C28D753032D28CD2A9D297
:09806000AF22758131114880FE48
:00000001FF
Ist nun zwar OT, aber irgendwer eine AHnung was das ist?
|
BID = 578923
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Zitat :
| Brenner für seriellen Port bauen |
http://hoelscher-hi.de/hendrik/light/ressources/AN011.pdf Seite 2 Bild 1 Ponyprog richtig einstellen, dann klappst damit auch.
Über den LPT hab ich es unter XP auch mit einigen Anstrengungen nicht hinbekommen.
Irgendwie ist dein Post unklar.
Was verstehst du unter "Buffer"?
Was den Hex-Code betrifft:
Einen 8252 kennt das AVR-Studio nicht, wenn ich einen andern Chip (z.B. mega16) auswähle quittiert der Dissassembler mit der Meldung "Error loading ...." seinen Dienst. Ist wohl nicht kompatibel oder so.
|
BID = 579020
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Zitat :
| Über den LPT hab ich es unter XP auch mit einigen Anstrengungen nicht hinbekommen. |
Dann muss das an dir liegen - das geht in der Regel ziemlich einfach, und wer das nicht hinbekommt, sollte lieber nochmals ganz vorne anfangen ... (oder mal seine gebrutzelte Hardware überprüfen.. )
---
@MichaNRW
Lasse mal Binärkode erzeugen und lade den.
Bist du dir sicher, dass im Buffer befindliche Bytes korrekt geschrieben und rückgelesen werden? Beschreibe den µC mal und starte PP neu, bevor du den µC ausließt... PP hat das so einige Bugs, habe ich zumindest öfters bemerkt, da einige Dinge erst nach einem Programmneustart liefen.
_________________
|
BID = 579147
MichaNRW Gerade angekommen
Beiträge: 6 Wohnort: Mülheim
|
Also.
Das brennen des µC, bzw. die ISP klappt nun ... ich kann beliebige hex-Werte auf dem µC schreiben und auch wieder auslesen.
Auch nach Neustart des PCs, neustart des PonyProg ...
Aber das Problem das PonyProg meine .hex Dateien aus dem C51er Tool nicht annimmt bleibt.
Wenn ich die oben bereits erwähnte Hex Datei in PP einlesen erscheinen im Bufferfenster die besagten FFs.
Oder habe ich da einen Denkfehler?
Das Bufferfenster zeigt mir doch den Speicherinhalt des µC an, bzw. die Werte welche in diesen geschrieben werden.
Bei Adress 00 müsste dann ein Sprungbefehl zum Bereich 0800 stehen, an welchen der Programmcode dann steht, oder?
Nachtrag: wenn ich im PonyProg als device den AVR auto einstelle zeigt er mir den Buffer richtig an, aber ich kann ihn dann natürlich nicht auf den µC da dieser sich ja anders verhält, scheint also ein Problem zwischen dem C51 Studio und dem PonyProg zu sein.
[ Diese Nachricht wurde geändert von: MichaNRW am 10 Jan 2009 19:10 ]
|
BID = 579291
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Offtopic :
|
Zitat :
| Dann muss das an dir liegen - das geht in der Regel ziemlich einfach, und wer das nicht hinbekommt, sollte lieber nochmals ganz vorne anfangen ... |
Da könntest du sogar Recht haben.
Ich hab den LPT-Port jedenfalls auch mit diversen Programmen und BIOS-Einstellungen nicht zum Arbeiten bewegen können.
s. auch https://forum.electronicwerkstatt.d......html
Schönen Sonntag
|
|
BID = 579352
clembra Inventar
Beiträge: 5404 Wohnort: Weeze / Niederrhein
|
http://www.schulz-koengen.de/biblio/intelhex.htm
:LLAAAARRDDDDDDPP
:0380000002806299
:03800B00028030C0
:10803000C0D075D010758CB8758A00B297D5300550
:10804000B290753032D0D032E58954F04401F589D0
:10805000758CB8758A00C28D753032D28CD2A9D297
:09806000AF22758131114880FE48
:00000001FF
Wenn man sich die Adressen ansieht fällt auf, dass nur Daten für den Bereich ab 0x8000 vorhanden sind. Wenn du im PP soweit herunter scrollst sollten eigentlich ein paar Byte vorhanden sein.
_________________
Reboot oder be root, das ist hier die Frage.
|
BID = 579421
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Zitat :
| Wenn du im PP soweit herunter scrollst sollten eigentlich ein paar Byte vorhanden sein. |
Sind sie auch:
edit: PP2000 Version 2.07c Beta Jan 6 2008
[ Diese Nachricht wurde geändert von: bastler16 am 11 Jan 2009 16:03 ]
|
BID = 579655
MichaNRW Gerade angekommen
Beiträge: 6 Wohnort: Mülheim
|
Ok ... bei mir sind sie es nicht ... PonyProg 1.17h ... ich glaube ich besorge mir gleich erst mal ponyprog 2000 besorgen.
Aber der HexCode an sich ist richtig oder?
Ist ein simples Beispiel für den 89s8252 aus irgendeiner Codesammlung.
Bevor ich mich wieder ein Assembler und C reinknie will ich einfach nur ein Lebenszeichen von dem ich aus aufbauen kann.
|
BID = 579853
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Zitat :
| Aber der HexCode an sich ist richtig oder? |
Keine Ahnung, ich bekomm ihn nicht decompiliert.
Frage an die AVR-Profis: Ist dieser "8252" ein "normaler" AVR (wie mega8, tiny12 und viele andere) oder was besonderes? Ein Programm erst ab Adresse 0x800 zu speichern finde ich merkwürdig, so groß kann die Interrupt-Vektoren-Tabelle doch gar nicht sein...
|
BID = 579863
clembra Inventar
Beiträge: 5404 Wohnort: Weeze / Niederrhein
|
Ich kenne auch nur die "normalen" ATmega und ATtiny, aber da wird zumindest bei 0x00 ein Sprungbefehl benötigt.
_________________
Reboot oder be root, das ist hier die Frage.
|
BID = 579874
high_speed Schreibmaschine
Beiträge: 2073
|
Zitat :
bastler16 hat am 12 Jan 2009 21:17 geschrieben :
|
Ist dieser "8252" ein "normaler" AVR (wie mega8, tiny12 und viele andere) oder was besonderes?
|
Es ist eben eine andere Prozessorfamilie. Und ein RISC wie der AVR ist es
auch nicht eher ein CISC.
Schon mal etwas vom 8052 gehört. Dessen Papa war der 8051.
http://de.wikipedia.org/wiki/8052
Ist aber schon einige Jahre her, als er das Licht der Welt erblickt hat.
Inzwischen ist er schon selber Urgroßvater.
Der interne Programmspeicher fängt bei denen eben erst bei 0x8000 an.
An einem 8051/8052 konnte über eine externe Daten-/Adressbus ein externer
Programmspeicher angebracht werden. Der µC besitzt einen Pin, mit dem der
interne Speicher deaktiviert werden konnte.
Der einzige Unterschied zwischen den 8051/8052 und den 8031/8032 besteht
darin, dass die 803x mit defekten internen Programmspeicher verkauft
wurden. So konnte man fehlerhafte Chips noch verwerten.
Edit:
Mit dem internen (EP)ROM Speicher bin ich mir jetzt auch nicht mehr
ganz sicher. Ist schon eine Weile her, als ich einen 8032 programmiert
habe.
MfG
Holger
_________________
George Orwell 1984 ist nichts gegen heute.
Der Überwachungsstaat ist schon da!
Leider lernen die Menschen nicht aus der Geschichte,
ansonsten würde sie sich nicht andauernd wiederholen.
[ Diese Nachricht wurde geändert von: high_speed am 12 Jan 2009 22:36 ]
|