ATTINY 13 - Reset Disabled (RSTDISBL)

Gast #841704
Lesenswert?

Hallo Leute

Ich beschäftige mich seit letzter Woche intensiv mit Mikrokontrollern. 
Es war mir bereits möglich, die Kontroller zu benutzen, indem ich einen 
Taster verschiedene Ausgänge steuern kann. Darüber war ich sehr stolz! 
Mit Timer-Funktion harhar!

Jetzt habe ich ein Problem, ich habe mir 3 schöne neue Attiny13 
disabled. Das Problem liegt daran, dass er irgend etwas gefragt hat, 
wegen DebugWire ich halt jaja machen wir mal. Danach 2x nichts mehr 
gegangen. Heute habe ich herausgefunden, beim dritten Kontroller, dass 
es am Reset liegt, der abgeschalten wurde.

So jetzt meine Frage:

Wie kann ich diesen Reset wieder aktivieren?

Zusatzfrage: ich habe jetzt mal den Taster auf einen Eingang geschalten 
und zwar mit einem 1kOhm über GND, ist das eine gute Lösung?

Meine Ausrüstung:
Programmierung über AVR-Dragon
Kontroller: ATTINY13

Danke für die Antwort.

Gruss Fox
Gast #841710
Lesenswert?

>Wie kann ich diesen Reset wieder aktivieren?

Das ist nur durch High-Voltage-Programmierung möglich.

>ich habe jetzt mal den Taster auf einen Eingang geschalten
>und zwar mit einem 1kOhm über GND, ist das eine gute Lösung?

Wie hast Du ihn den vorher angeschlossen?  Einen Taster kannst Du direkt 
zwischen einen Eingangspin und Masse anschließen.  Controller-internen 
Pullup aktivieren - fertig.  Ein Widerstand in Serie zum Taster ist 
unnötig.
Gast #841719
Lesenswert?

Hallo,

Danke für die schnelle Antwort.

Wie kann ich das High-Voltage-Programmierung machen? Die ISP war 
einfach, da hatte ich alles Bezeichnungen im Datasheet gefunden 
(MISO,MOSI etc.).

Wie kann ich den Internen Pull-UP Aktivieren?
Habe das mal so gemacht:
1
#include <avr/io.h>         
2
 
3
int main (void) {           
4
 
5
   DDRB = 0b00110111;             // Pin 3 = Eingang
6
   PORTB = 0b00101111;             // Pin 4 = LOW
7

8

9
   while(1) {               
10

11
  if ( !(PINB & (1<<PINB3)) ){
12

13
    PORTB |= (1<<PB4);
14
    }
15

16
  else {
17
    PORTB &= ~(1<<PB4);        //Pin 4 Einschalten
18
    }
19

20
}
21
                          
22
    return 0;               
23
}
Gast #841741
Lesenswert?

Hallo

So habe mal HVSP probiert. Konnte die Daten lesen, respektive die Fuses. 
Konnte aber nicht schreiben, das liegt an dem Serial Clock Input nehme 
ich mal an. da habe ich kein Kabel oder so was. Was muss ich machen?
#841756
Lesenswert?

> Was muss ich machen?

Du könntest Dir z.B. im AVR-Studio (das ist das Programm, für das der 
Dragon gebaut wurde) die Hilfedatei bzw. Dokumentation zum Dragon 
anschaun...

Du könntest z.B. den Experimentierteil des Dragon bestücken (Stiftleiste 
2x20, IC-Fassung 28-polig schmal und 40-polig breit oder gleich 
Textool-40 mit breiten Schlitzen) und könntest dann mit wenigen Strippen 
laut Dragon-Dokumentation (AVR-Studio-Hilfe) den Tiny13 mit dem 
HV-Brenner des Dragon verbinden...

Vielleicht hast Du aber nur den Debug-Wire-Mode aktiviert. Dann reicht 
es, wenn Du nochmal den Debugger startest und im Debugger den Debug-Mode 
des AVRs wieder deaktivierst, dann ist der AVR wieder per ISP 
ansprechbar.

Im Übrigen solltest Du Dir angewöhnen, Meldungen nicht einfach 
wegzuklicken, sondern sie zu lesen und versuchen zu verstehen.

...
Gast #842253
Lesenswert?

Hallo!

Die Programmierung mache ich mit dem AVR-Studio. Bei der Meldung hatte 
ich ja keine Ahnung was das DebugWire macht, von dem her konnte ich es 
nur ausprobieren.

Wie muss ich das HVSP korrekt anschliessen? ISP war einfach. HV 
eigentlich auch....

Siehe Bild. Den Restet habe ich nicht angeschlossen, muss ich das auch 
noch machen? Dieser geht danach aber auf 12V dem traue ich nicht so 
recht.
Angehängte Dateien:
Gast #842261
Lesenswert?

>Den Restet habe ich nicht angeschlossen, muss ich das auch
>noch machen?

Ja, und wie Du das musst.

>Dieser geht danach aber auf 12V dem traue ich nicht so recht.

Deine Sorge ist unbegründet; die 12 V am Reset-Pin sind eben die 
Besonderheit am HV-Programmiermodus und sie werden dem Pin garantiert 
keinen Schaden zufügen.

Viel Erfolg :-)
Gast #842299
Lesenswert?

Ich gebe es auf. es hat keinen Sinn. Es passiert gar nix und ich habe 
das Gefühl, das Dragon krazt gleich ab. Ich lass es sein. 8€ im Sand 
egal. Haupsache etwas gelernt und nie wieder Disable des Reset...
Gast #842320
Lesenswert?

>Ich gebe es auf. es hat keinen Sinn.

Blödsinn.

>Es passiert gar nix

Was hast Du denn gemacht?  Eine genaue Beschreibung erhöht die Chance, 
Dir helfen zu können, sehr.  Was geschieht, wenn Du den 
Programmierdialog im AVRStudio aufrufst und das Flashen startest? 
Erscheint eine Fehlermeldung? Wenn ja, welche?

>und ich habe das Gefühl, das Dragon krazt gleich ab.

Wieso das denn?

>Ich lass es sein. 8€ im Sand egal. Haupsache etwas gelernt und nie wieder 
>Disable des Reset...

Du Knaller, Dein Hilferuf mit dem ungewollt disableten Resetpin taucht 
in diesem Forum mit schöner Regelmäßigkeit alle paar Wochen auf.  Die 
meisten Unglücklichen haben aber nur ein einfaches Experimentierboard 
mit ISP.  Die stehn dann wirklich dumm mit ihrem verfusten AVR da.  Du 
dagegen hast nen Programmer, der die HV-Programmierung beherrscht.  Du 
kannst Dein Missgeschick wieder geradebiegen.  Also jammer nicht so 
einen Schmarrn hier rum sondern beiß Dich durch.  Steh auf und kämpf wie 
ein Mann! ;-))  Wenns Du geschafft hast, den µC wiederzubeleben, dann 
hast Du was gelernt.
#842334
Lesenswert?

Fox wrote:
> Ich gebe es auf. es hat keinen Sinn. Es passiert gar nix und ich habe
> das Gefühl, das Dragon krazt gleich ab. Ich lass es sein. 8€ im Sand
> egal. Haupsache etwas gelernt und nie wieder Disable des Reset...

Quatsch. Du hast nun gutes Wekkzeug, lerne es zu benutzen. Die 
Gebrauchsanweisung dazu liegt bereits auf Deiner Festplatte. Einfach mal 
im AVR-Studio auf "Help" klicken...

...
Angehängte Dateien:
Gast #842399
Lesenswert?

Danke für die Antwort und den Mut.

Also: ISP Funktioniert einwandfrei. Habe ich angeschlossen über das ISP 
Kabel.

DEN HVSP: habe ich wie folgt beschalten (siehe Bild).

> AVR kratzt fast ab

Das Problem ist, dass ich keine Verbindung so aufbauen kann, auch kann 
ich danach nicht mehr auf ISP umschalten. Das Dragon macht gar nichts 
mehr. Dann hilft nur noch ausstecken und wieder einstecken.

Gruss Fox
Angehängte Dateien:
Gast #842405
Lesenswert?

habe ich vergessen:

Das Dragon schaltet sich auch bei der externen Stromversorgung ein, also 
ohne USB-Kabel. Respektive die LEDs fangen an zu leuchten. Wenn ich 
danach Flashen möchte, oder Fuses setzte, dann kommt die Meldung keine 
Verbindung etc. Überprüfen Sie das 5V am Controller anliegt etc.
Gast #842410
Lesenswert?

Wahrscheinlich liegt es nur an irgendeinem winzigen Detail.

Was ist mit der roten Verbindung "A" in dem Plan, den Hannes gepostet 
hat (siehe oben)?  Hast Du die gesetzt?  Wenn nicht, würde das verdammt 
gut zu dieser Meldung...

>Überprüfen Sie das 5V am Controller anliegt etc.

...passen.
Gast #842433
Lesenswert?

Das mit dem A check ich nicht, denn  ich bringe ja schon 5V auf den 
HV_PROG Pin. Macht für mich keinen Sinn, dass ich dort auch nochmals 5V 
draufschalten muss, vorallem ist es ja nicht bei der HV_PROG-Prints.
Gast #842477
Lesenswert?

so habe es probiert:

Ergebnis, ich konnte fuses lesen, chip löschen (hat es angezeigt, aber 
nicht gemacht haha). Konnte sogar das Programm in das Flash schreiben, 
funktionierte aber danach trozdem nicht. Fehler beim schreiben der Fuses 
siehe Bild.
Angehängte Dateien:
#842492
Lesenswert?

Fox wrote:
> Ergebnis, ich konnte fuses lesen, chip löschen


Das Du Lese- und Erase-Befehle abschicken kannst, bedeutet nicht im 
geringsten, daß der AVR es auch getan hat.

Die Software schickt nur die entsprechenden Kommandos, ob das Gelesene 
sinnvoll ist, kann sie ja nicht wissen.

Was Du lesen kannst, ist der Devicecode, der muß stimmen.
Wenn der schon nicht stimmt, ist jede andere Aktion Mumpitz.


Peter
Gast #842506
Lesenswert?

OK, was könnte dann das Problem noch sein?

Vielleicht könnte mir mal jemand sagen, wie ich den AVR korrekt 
beschalten muss mit dem Dragon? Stimmt meine Ausführung nach dem letzten 
Schema? Danach habe ich im AVR-Config in Main auf PP/HVSP mode 
gwechselt. Es hat ja soweit geklappt, also liegt es daran, dass das 
Signal vom AVR nicht verarbeitet worden ist?
#842559
Lesenswert?

> beim Bild von Hannes Lux

Das ist kein Bild von mir, sondern von ATMEL. Es ist ein Schnappschuss 
aus der Hilfe zum AVR-Studio. Es ist auch auf Deinem Rechner vorhanden, 
Du musst nur mal das Help-Menü öffnen.

Das Bild symbolisiert den Prototypen-Bereich des Dragon, den man sich 
sinnvollerweise mit zwei IC-Fassungen (28-polig und 40-polig) und einer 
40-poligen Stiftleiste nachrüstet, um dort AVRs programmieren und 
debuggen zu können. Natürlich braucht man dann auch ein paar Strippen 
mit entsprechenden Steckverbindern.

Beim Ein/Ausschalten des Debug-Wire-Modus muss der AVR kurz von der 
Betriebsspannung getrennt werden (das sagt auch die Meldung, die Du mal 
schnell weggeklickt hast). Auch die Leitung zwischen Plus 
(Dragon-Stromversorgungspins) und ISP muss dabei kurz getrennt werden. 
Ich habe mir dazu einen Schalter an das ISP-Kabel angebaut, das 
erleichtert das Handling etwas.

Der Dragon misst über einen (vermutlich ADC-) Eingang die 
Betriebsspannung des Targets. Wenn Du ihn vom USB trennst, aber eine 
extern versorgte AVR-Schaltung angeschlossen hast, dann versorgt sich 
der Dragon-Controller über die Schutzdiode dieses Messpins. Das ist 
nicht gut für ihn, damit könntest Du ihn wirklich killen. Eine weitere 
Gefahr besteht darin, dass man durch Berühren von Bauteilen/Leiterzügen 
den Spannungsregler dazu bringen kann, eine zu hohe Spannung zu 
erzeugen, die dann den Dragon killt. Du solltest also in eingeschaltetem 
Zustand nicht unnötig daran herumgrabschen.

...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren