Forum: Mikrocontroller und Digitale Elektronik welche Firmware braucht der HV-Brenner (HV-Prog / der Hammer)


von min (Gast)


Lesenswert?

Habe mir diesen HV-Brenner nachgebaut:
http://www.der-hammer.info/hvprog/

Die LED leuchten bei der Initialisierung, wie sie sollen. Die 
ISP-Programmierung und die Kommunikation mit AVR-Studio funktioniert, 
nur die Parallel-HV-Programmierung funktioniert nicht. Schaltung wurde 
überprüft. RES und HV sind richtig gesetzt.
Ich habe folgende Firmware stk500_Mega8535_hack.hex aus dem Paket 
fixSTK500 in den Mega8535 gebrannt. Die STK500.ebn aus dem AVR-Studio 
funktioniert überhaupt nicht.
Ausserdem meint mein AVR-Studio, dass ich die Firmware 2.0 benutze,  zur 
korrekten Funktion aber die Firmware 2.0A bräuchte. Wo bekomme ich diese 
her? Und ist das überhaupt das Problem?

von min (Gast)


Lesenswert?

Achso nochwas vergessen:
Ich versuche einen Mega8 zu brennen. Der hat keinen PB6 und PB7, 
deswegen wird in der Hammerbeschreibung folgende Belegung vorgegeben:
PPD6/MISO   PortB.6; wenn PJUMP, dann an PortC.0
PPD7/SCK   PortB.7; wenn PJUMP, dann an PortC.1
Die habe ich auch PC0 und PC1 gelegt BSEL2 liegt auf PC2. Der Rest wie 
beschrieben.    Doch wo ist der PJUMPer?

von min (Gast)


Lesenswert?

Update: Zwischenzeitlich habe das stk500.ebn file mit meinem avr910 
gebrannt bekommen und wiederum funktioniert nur der serielle SPI-mode.

Wie muss ich den mega8 zum parallel brennen verschalten?


habe momentan folgendes mapping:
*************************************
VCC   Spannungsversorgung für den Ziel-uC
GND   Ground
TRST   Reset (High Voltage Enable Jumper muss gesetzt sein)
SWCLK   XTAL1
PPC0   Wenn BSEL2, dann an PortA.0, sonst nicht benötigt
PPC1   PortD.1: Rdy/Bsy
PPC2   PortD.2: OE
PPC3   PortD.3: WR
PPC4   PortD.4: BS1
PPC5   PortD.5: XA0
PPC6   PortD.6: XA1
PPC7   PortD.7: PAGEL
PPD0   PortB.0
PPD1   PortB.1
PPD2   PortB.2
PPD3   PortB.3
PPD4   PortB.4
PPD5/MOSI   PortB.5
PPD6/MISO   PortB.6; wenn PJUMP, dann an PortC.0
PPD7/SCK   PortB.7; wenn PJUMP, dann an PortC.1

wo ist der PJUMP?

gruß min

von Hannes Lux (Gast)


Lesenswert?

> Wie muss ich den mega8 zum parallel brennen verschalten?

Das Datenblatt des Mega8, Kapitel Memory Programming, Absatz Parallel 
Programming Parameter..., Seite 226 Figure 104 und folgende Tabellen 
dürfte in Verbindung mit der Doku des HV-Programmers von Tobias Hammer 
die Lösung bringen.

...

von min (Gast)


Lesenswert?

@Hannes Lux: Vielen DAnk ersteinmal für die Antwort. Das Datenblatt habe 
ich mir natürlich schon angeschaut. Trotzdem erschliesst sich mir daraus 
nicht
wohin ich:
PPD6/MISO  PortB.6; wenn PJUMP, dann an PortC.0
PPD7/SCK   PortB.7; wenn PJUMP, dann an PortC.1
legen muss.

Und wo ich diese Belegung dem Controller mitteilen kann, denn der PJUMP 
fehlt auf dem HV-Prog und die Firmware kann ich mangels fehlendem 
kommentierten Code nicht einsehen.

Ich habe auch den Verdacht, dass meine Resetschaltung mit den BC327 und 
337
nicht richtig funktioniert. Lege ich an PD3 ein Signal an, so aktiviere 
ich
die 12 V an TRST, soweit funktioniert es auch. Aber mit PD2 sollte ich 
das
TRST-Signal dann doch auf GND ziehen können. Die Spannung geht aber nur 
minimal runter.
Deswegen werde ich jetzt einmal die verbesserte Version mit BC547 und 
557
aufbauen und mal durchmessen.

von Hannes L. (hannes)


Lesenswert?

min schrieb:
> @Hannes Lux: Vielen DAnk ersteinmal für die Antwort. Das Datenblatt habe
> ich mir natürlich schon angeschaut. Trotzdem erschliesst sich mir daraus
> nicht
> wohin ich:
> PPD6/MISO  PortB.6; wenn PJUMP, dann an PortC.0
> PPD7/SCK   PortB.7; wenn PJUMP, dann an PortC.1
> legen muss.

Mangels voll belegter 8-Bit-Ports hat man beim Mega8 und den 
Pinkompatiblen den HV-Datenbus gesplittet. Die Schreibweise:
1
PC[1:0]:PB[5:0]
verstehe ich so, Bit 7 und Bit 6 des Datenbusses an PC1 und PC0 gelegt 
werden müssen und die Bits 5 bis 0 des Datenbusses an PB5 bis PB0.

>
> Und wo ich diese Belegung dem Controller mitteilen kann, denn der PJUMP
> fehlt auf dem HV-Prog und die Firmware kann ich mangels fehlendem
> kommentierten Code nicht einsehen.

PJUMP gibt es auf dem STK500. Mit diesen beiden Jumpern wird PC0 mit PB6 
sowie PC1 mit PB7 verbunden. Somit werden die Leitungen des 
HV-Datenbusses wieder zu einem Port zusammengefasst, worauf die 
Verbindung wie bei den meisten anderen HVP-tauglichen AVRs über eines 
der zum STK500 gehörenden 10-poligen Flachbandkabel zum PortB erfolgen 
kann. Nur so lassen sich die immens vielen Leitungen für die 8 
verschiedenen Programmiersockel auf dem STK500 einigermaßen vernünftig 
verwalten.

>
> Ich habe auch den Verdacht, dass meine Resetschaltung mit den BC327 und
> 337
> nicht richtig funktioniert. Lege ich an PD3 ein Signal an, so aktiviere
> ich
> die 12 V an TRST, soweit funktioniert es auch. Aber mit PD2 sollte ich
> das
> TRST-Signal dann doch auf GND ziehen können. Die Spannung geht aber nur
> minimal runter.
> Deswegen werde ich jetzt einmal die verbesserte Version mit BC547 und
> 557
> aufbauen und mal durchmessen.

Mit dem HV-Programmer von Tobias Hammer habe ich mich mangels 
Notwendigkeit nicht beschäftigt, denn ich verfüge über ein STK500. Ich 
gehe mal davon aus, dass er nicht für jedes AVR-(DIL_)Pinout einen 
eigenen Sockel hat, sondern nur Anschlüsse für HV-Datenbus und 
HV-Steuerbus. Ich habe zwar schon etliche AT90S4433, ATMega8 und 
ATMega48 eingesetzt, war aber noch nie in der Situation, den HV-Mode 
benutzen zu müssen, kann daher auch nicht über praktische Erfahrungen 
berichten.

Tip:
Betrachte die HV-Leitungen doch einfach mal als Datenbus und Steuerbus. 
Dann sollte es doch leicht verständlich sein, die Pins (gemäß 
Datenblatt) richtig zuordnen zu können.

Vielleicht hilft Dir die Hilfe zum AVR-Studio weiter, speziell die 
Hinweise zum STK500 und die Anschlussbelegung bei Verwendung des 
Targetsteckplatzes des Dragons (der kann auch HV). Beim Dragon ist beim 
(pinkompatiblen) Mega48/88/168 nachzusehen, da er den Mega8 nicht 
unterstützt.

...

von min (Gast)


Lesenswert?

Vielen Dank nocheinmal Hannes. Den PJump brauche ich demnach auch nicht. 
Hat mir schonmal weitergeholfen.
gruss min

von min (Gast)


Lesenswert?

Und jetzt funktioniert er auch :-)

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
Noch kein Account? Hier anmelden.