genügt die hex Datei zum Brennen?

Gast #4578812
Lesenswert?
• ▲
▼
Hallo,

ich habe mir vor etwa 7 Jahren einige ATTINY26 von einer Firma 
programmieren lassen und benötige nun noch ein paar Controller. Man hat 
mir damals den Quellcode überlassen, aber ich bin mir nicht sicher, 
welche der Dateien ich eigentlich benötige. Leider ist die Firma nicht 
mehr im Geschäft, sonst hätte ich die Controller dort gern wieder 
bestellt :(
Ich habe selbst bisher nur ein paar einfache LED Ansteuerungen über 
Bascom programmiert und dass ist genauso lange her - nun möchte ich gern 
versuchen die Controller selbst zu brennen - deshalb nun die Frage.

Es sind folgende Dateien vorhanden:

main.c
taster.c
taster.h
counter_avr.hex

Reicht es aus, wenn ich die hex Datei brenne oder muss ich mit den 
anderen Dateien auch noch etwas machen?

LG,
Stefan
(Firma: matzetronics) #4578822
Lesenswert?
• ▲
▼
Stefan schrieb:
> Reicht es aus, wenn ich die hex Datei brenne

Fürs Programm ja. Allerdings haben die AVR auch noch Fuses zur 
Einstellung z.B. der Taktfrequenz und -quelle. Die sollten mit dem 
übereinstimmen, was bei den alten Controllern gemacht wurde.
Du kannst allerdings erstmal nicht viel falsch machen, wenn du nur das 
Programm flashst und an den Fuses nichts änderst. Dann läuft der Tiny 
mit internem RC Oszillator und 1Mhz Takfrequenz. Wenn ein externer Quarz 
montiert ist, könntest du auch gleich auf Ext. Crystal fusen. Der Tiny26 
hat 4 über Fuses wählbare Frequenzen für den internen Oszillator: 1Mhz 
(Standard), 2Mhz, 4 Mhz und 8Mhz.

Vermutlich wirst du aus dem Verhalten des Programmes dann rausfinden 
können, welche Einstellung die richtige ist - wenn du keinen originalen 
MC mehr zu Auslesen hast.
Wenn die Jungs damals gut waren, haben sie auch im Quellcode Angaben zum 
Takt gemacht.
Gast #4578849
Lesenswert?
• ▲
▼
Herzlichen Dank für die superschnellen Antworten.
Also ist die hex Datei quasi die compilierte Version der c und h 
Dateien?

Ich kann im Moment nur die C-Dateien öffnen - und da steht drin:

/

#include <avr/io.h>
#include <avr/pgmspace.h>
#include <avr/interrupt.h>
#include "taster.h"

#ifndef F_CPU
#define F_CPU           1000000                   // processor clock 
frequency
#endif

#define SELF_COUNTER   1
#define MANUAL_COUNTER  2
#define SPK_ON     3

/

Taktfrequenz dann standard 1MHz, richtig?
Es sind nicht wirklich viele Bauteile auf der Platine, also kein Quartz.

Muss ich die anderen include Dateien auch noch irgendwo hernehmen oder 
sind die auch schon in der hex enthalten?

Keine Infos über die Fusebits - dann lass ich die erstmal so oder 
versuche mal einen Controller auszulesen. Muss mich da erstmal wieder 
hineinknien :)

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