Guter Rat ist ja nicht teuer. Es gibt ja genug Info wie man dieses Problem wieder löst und ich hatte genug Material zu Hause um in 25 Minuten beide t2313 wieder aus dem Koma zu holen.
Es muss aber nicht immer so einfach sein, wie in meinem Fall, wo ich 0 mit 1 verwechselt habe in dem Sinn, dass speziell bei den AVR Fuses gilt:
Das war mehr oder weniger die Einleitung zu den Fuses. AVR hat ja mehrere Möglichkeiten zur Programmierung ihrer Produkte vorgesehen. Es wäre günstig sich die Dokumentation vonAVR zu holen Einfach dafür den Link anklicken und "tinyAVR" auswählen. Dort finden sie die Dokumentation zum t2313, eine Datei mit 226 Seiten, updated August 2010. Etwas Englisch ist im uC Bereich Voraussetzung.
Ehe man ein Programm, ob in Assembler, GCC oder Bascom erstellt, muss man sich ja Gedanken machen welche Geschwindigkeit ich für die Ausführung brauche, also welche Taktfrequenz soll vorgesehen werden. Soll also das CKDIV8 Bit, Defaultwert 0 = aktiv so bleiben oder will ich 8x schnelleren Takt haben, d.h. das CKDIV8 Bit ohne Häkchen verwenden.
Genügt der interne RC Oszillator, oder soll es ein Quarz für höhere Genauigkeit sein?
( Seite 160 Tabelle 68). Trotzdem bitte um höchste Aufmerksamkeit!
Welche Setupzeit soll verwendet werden, d.h. es geht um die Frage wie lange die Betriebsspannung braucht um den Betriebswert zu erreichen.
Das sind im Prinzip die wesentlichen Fragen zu den Fuse Bits.
1. Serial Downloading ( Seite 172 )
Vorausetzung dafür ist ein programmiertes SPIEN Fuse Bit. (Seite 159 Tabelle 67)
Dann kann man das übliche Programmierverfahren über MOSI, MISO und SCK angewendet werden. Ich verwende dazu als Entwicklungsumgebung für die Programme AVR 4.16, die kostenlos von Atmel verfügbar ist, das Pollinboard als Hardwareplattform und Ponyprog um die HEX-File in den uC zu bringen.
Falls das SPIEN Bit aus irgend einem Grund umgefallen ist, so versagt das Serial Verfahren völlig, da ja die Voraussetzung für das Funktionieren nicht mehr gegeben ist.
Darum kann man, mit Programmen die dieses Verfahren benützen, das
SPIEN Fuse-Bit gar nicht verändern, um sich nicht irrtümlich selbst auszusperren. Leider ist in verschiedenen Foren zu lesen, dass dies doch öfter passiert, aber immer durch irgendeine Unzulänglichkeit. Viele schimpfen dann etwa auf Ponyprog. Zu haben von: http://www.lancos.com/prog.html
Das ist in etwa so zu verstehen wie Münchhausen, der sich am Zopf selbst aus dem Sumpf zieht. Kein Zopf, der uC bleibt im Koma!
Aber noch ist nichts verloren. Es gibt ja noch die Möglichkeit des Parallel Programming.
Übrigens: Sind sie bitte vorsichtig mit dem RSTDISBL Bit. Reset ist ja nötig für serielle Programmierung. Auch hier hilft nur Parallel Programming.
Vorher noch kurz zu den Lock Bits ( Seite 158 Table 64. Lock Bits)

Software ist ja für Viele die Quelle ihres Einkommens. Programme, also Software ist wertvoll. So wie es bei Büchern und Musik das Copyright diese Angelegenheit rechtlich regelt ist es bei Software noch nicht so eindeutig und Atmel hat mit den Lock Bits eine Möglichkeit vorgesehen sich gegen „Gedankendiebstahl" zu schützen.
Sind diese Fuse Bits gesetzt, so ist es nicht möglich die Software aus dem uC herauszubekommen, mit Riesenaufwand aber doch, wie z.B. das „die" freisetzen und die Mikro Verdrahtung am Chip zu verändern.
Hat man einen solchen uC und will ihn für eigene Zwecke verwenden, so ist dies durch das Kommando „Chiperase" im Rahmen des verwendeten Programmiertools möglich.
Ist das Kommando ausgeführt, z.B. im Serial Modus, fass SPIEN aktiv ist, so hat man dann einen leeren uC, der wie jeder andere neu programmiert werden kann.
2. Parallel Programmimg ( Seite 161 )
Es wird oft auch als HV-Programming bezeichnet mit HV = High Voltage, da am Reset Pin des uC 12 Volt angelegt werden müssen. Professionelle Lösungen gibt es natürlich auch von Atmel.
Auch hier gibt es aber billige Lösungen, die im Internet zu finden sind. Es gibt die Hardware und Software dazu. Ich habe diese Möglichkeit noch nicht gebraucht. Siehe folgende kurze Info HIER.
HV Parallel Programming
Für den Fall, dass die Lock Bits aktiviert sind und SPIEN deaktiviert ist. Durch das Chiperase Kommando werden die Lock Bits deaktiviert. Das SPIEN Bit kann im ISP Programmiermode nicht auf "1" = nicht programmiert gesetzt werden. Es würde ja die weitere serielle Programmierung verhindern. Falls es passiert, durch ???, hilft nur noch "Parallel Programming"
http://www.b-redemann.de/hvprog1.shtml Software zur HV-Programmierung
http://www.mikrocontroller.net/topic/112219 Ein Thread über ATmega8 Wiederbelebung
http://www.gtkdb.de/index_18_1044.html mit info wie:
Durch das SPIEN Fuse-Bit kann die ISP-Schnittstelle deaktiviert werden.
Dieses Fuse-Bit kann nur über die parallele Programmierung reaktiviert werden.
3. Self Programming ( Seite 153 )
Hier hat Atmel eine Möglichkeit der Programmierung vorgesehen, die das SELFPRGEN Fuse Bit voraussetzt. ( Seite 159 Tabelle 66).

Diese Art den Flashspeicher zu laden wird von proprietären Programmen gerne benützt, weil Fuses nur gelesen werden können
( Seite 156 ).
Das ist also eine sichere Methode um speziell Einsteigern Verzweiflung zu ersparen.
Im Franzis Lernpaket Mikrocontroller wird dies u.a. benützt.
Mit einem ISP Programm in diesem Lernpaket ist es übrigens nur möglich die Taktfrequenz via Fuses zu ändern und sonst nichts um Anfänger nicht zu überfordern.
Ich habe übrigens auch mit diesem Lernpaket begonnen uC's zu verwenden, obwohl in meiner Berufszeit in meiner Abteilung eine Menge Leute mit der Programmierung von uC's beschäftigt waren. Damals gab es noch keine Flashspeicher und öfters kam es vor, dass knapp vor Produktionsbeginn eine neue Software, weil man einen Bug entdeckte, notwendig wurde. Heutzutage ist dies ein Kinderspiel. In einer Minute ist die neue Software bereit zum Test und kann kurzfristig eingesetzt werden.
Immer wieder wird in der ATMEL Dokumentation auf die Polarität der Fuses hingewiesen, dass „1" nicht aktiv also nicht programmiert bedeutet.
Ich hoffe damit eine kurze Einführung gegeben zu haben und unbegründete Ängste zum Verschwinden gebracht zu haben.
Die passende Ergänzung zu diesem Artikel:
 | Lernpaket Mikrocontroller Lieferumfang: 15 Bauteile, Platine, Sub-D-9-Kabel, CD-ROM, Handbuch 160 Seiten ISBN 978-3-7723-4899-0 Versandkostenfrei* direkt beim Verlag bestellen
49,95 € 
|