Forum: Mikrocontroller und Digitale Elektronik Riesen Prob mit ATtiny12


von Golgatha (Gast)


Lesenswert?

So..da bin ich nun !!

Bin grad dabei, das Heartbeat Projekt von Loetstelle.net mal
nachzubasteln ! Hab mir nen Tiny 12L DIP gekauft und versuche nun, ihn
über ein STK500 Board zu programmieren ! Das programm ansich lässt sich
mittels AVR Studio 4.12 SP1 wunderbar "builden" ..... keine Fehler !
Hab das Board auch nach beschreibung für den ATtiny12 gejumpert und
alle einstellungen ausgelesen, nur wenn ich dann das .hex file ins
eeprom schreiben will kommt immer die fehlermeldung:

The contenst of the .hex file does not fit in the selected device

Und dann immer der standard mist von wegen ISP frequenz checken und so
!!??
Habs au schon mit nem tiny15 probiert --> selbe meldung !!
Was zum henker ist das ???

HILFE !!

MFG
Golgatha

von johnny.m (Gast)


Lesenswert?

Das Hex-File gehört auch nicht wirklich ins eeprom...

von Rahul (Gast)


Lesenswert?

Versuchs mal mit dem Flash...

von Wolfram (Gast)


Lesenswert?

Zu deutsch:
der Inhalt des Hexfiles passt nicht in/zum ausgewählten Gerät.
Hast du bei Projekt Device Attiny12 angegeben?
Steht beim der STk500 Programmierfenster attiny12?
Wie gross ist der Programmcode?
kannst du die device ID des attiny auslesen?

Ich gehe mal davon aus du hast das STK500 gerade bekommen und es sind
deine ersten Schritte.
Dumme Frage: Im Auslieferzustand steckt in der Targetsektion ein
at90s8515. Hast du den entfernt?

von Golgatha (Gast)


Lesenswert?

Bin da nicht sooooooo... fit mit dem mist muss ich zugeben !!
In Flash kann ichs ja schreiben, aber dem Programmcode nach sollte ich
das ganze doch auch irgendwie ins EEPROM kriegen oder ??
Wie liest der denn sonst das im EEPROM hinterlegte programm wieder raus
??

Da gibts zumindest bei AVR Studio die möglichkeit, es da rein zu
speichern...sprich ich will halt auf EEPROM schreiben !!
Nur wie nu ??

Greetings
Golgatha

von johnny.m (Gast)


Lesenswert?

DAS PROGRAMM STEHT NICHT IM EEPROM SONDERN IM FLASH!!!!! Außerdem haben
die Tinys nur 64 Bytes EEPROM, da dürften die wenigsten Programme
reinpassen...

von Golgatha (Gast)


Lesenswert?

Der AT90s8515 is scho draussen, hab au auf SPROG 1 umgesteckt, den RST
von PortE auf PB5 von PortB und XT1 von E auf PB3 von B !!
Bei Programm Device steht der ATtiny12 au drin !
Signature Byte kann ich auch auslesen, da steht überall "OK" !!
Calibration BYte und Voltages ausgelsen ---> OK !!

Das .asm File hat 3KB !!

????????????????????????????????

MfG
Golgatha

von Mike (Gast)


Lesenswert?

EEPROM und Flash sind zumindestens in groben Zügen das gleiche.
Bei den AVRs ist es aber so, daß das Programm immer im Flash stehen
muß. Im EEPROM kannst du Einstellungen oder Daten speichern, die du
dann auch während der Programmlaufzeit verändern kannst.
Wenn dein Programm das EEPROM benutzt, müßtest du nach dem Übersetzen
neben bem .hex  File auch noch ein (hoffe die Endung ist richtig) .eep
haben. Das gehört dann ins EEPROM.

Mike

von Mike S. (memme)


Lesenswert?

Die Größe des .asm Files hat gar nichts zu sagen. das kann auch 2 MB
groß sein und trotzdem noch in einen Tiny passen (zumindestens mit
vilen vielen Kommentaren).

Entscheident ist das .hex und das ist auf Grund des verwendeten Formats
auch noch größer als es scheinbar sein dürfte.


Du solltest übrigens mal weniger Satzzeichen verwenden.

von Golgatha (Gast)


Lesenswert?

@mike

also du meinst wenn ich einmal da auf "build and run" geklickt hab,
sollte sich im Project Ordner so ne .eep datei erstellen oder wie ??
also zumindest steht da bisher nix !! :-(

Das programm lässt sich ja problemlos übersetzen aber reicht das dann
im flash, um auch das eeprom zu nutzen wenns im prog. angesprochen wird
??
schnall da den zusammen hang no ned so ganz ??!! :-)

Golgatha

von Golgatha (Gast)


Lesenswert?

Ey !
Die satzzeichen sind ein ausdruck der verzweiflung !
Aber kann mich ja bisserl zurücknehemen bevor hier so adminseitig
irgendwas gelöscht wird ;-)

MfG
Golgatha

von Wolfram (Gast)


Lesenswert?

im Avrstudio tools->...->STK500
Registerkarte Programm
in Sektion Flash wählst du die hex File deines Programmes aus
und drückst auf "Program" direkt darunter
Wenn da ok kommt ist es übertragen.

in Sektion EEProm wählst du die File für den EEprom aus FALLS du den
eeprom verwendest z.B. für Konstanten
Ich glaube bloss nicht dass du dies schon tust, also benutz diese
Sektion erstmal nicht.

von Mike S. (memme)


Lesenswert?

Gelöscht wird hier so schnell nicht, nur ignoriert :-)

Zu Wolframs Anleitung läßt sich nichts hinzufügen. Das EEPROM und die
.eep Datei kannst du erst mal vergessen, da das Programm von
Loetstelle.net kein EEPROM verwendet.

Ansonsten empfehle ich das lesen (und bearbeiten) des Datenblatts und
des Tutorials auf dieser Seite.

von Golgatha (Gast)


Lesenswert?

Hm?
Also "OK" kommt da schon! Hab da glaub ich voll den denkfehler drin,
weil ich nach wie vor davon ausgehe, dass dat programm sowohl im flash
als auch im eeprom stehn muss.
kannst ja mal hier gucken:

http://www.loetstelle.net/projekte/heartbeat/heartbeat.php

ist vielleicht einfacher? Das is das programm, das ich haben will und
jetzt wollt ich halt nur noch wissen, ob das so passt, ich also mit dem
prog. das eeprom nutzen kann, oder ich da noch was reinschreiben muss?

Danke schonmal an Alle bisherigen antworten an dieser stelle !! :-)

von Manos (Gast)


Lesenswert?

Das EEPROM ist nicht vergleichbar mit einer Festplatte... Das Programm
muß beim Starten des uC nicht erst geladen werden sondern steht schon
im Programmspeicher fest drin (Flash).

Je nach dem was Dein Programm mach schieb doch einfach mal Dein
.HEX-File in de Flashspeicher, steck ein paar Kabel um (z.B. für Tasten
oder LED) und schau mal was passiert...

Im EEPROM werden normalerweise nur veränderbare Daten (Parameter) für
den Betrieb des Programms gespeichert, die nach dem nächsten Neustart
auch noch vorhanden sein sollen. Zumal man in 64Byte EEPROM nicht
wirklich viel unterbringen könnte.

Der Programmspeicher (Flash) ist in diesem Fall 1kByte groß.

von Manos (Gast)


Lesenswert?

Laut der Seite wird nur der OSCCAL-Wert aus dem EEPROM gelesen. Da das
anscheinen nur ein Kalibrierwert ist sollte das Programm auch erstmal
ohne laufen...

Das Programm selbst wird in den Flashspeicher geschrieben...

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.