PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wer kann helfen bei Fuse-Problem?



gpsklaus
09.10.2006, 12:31
Hallo,
mithilfe der Programmer-Software von BASCOM-AVR mache ich die ersten Gehversuche zur ATMEGA-Programmierung unter Verwendung eines USB-ISP-Programmers.
Dabei habe ich Versuche mit aus zwei unterschiedlichen Quellen stammenden ATMEGA8-Prozessoren angestellt. Die Programmierung klappt auch soweit, aber während sich die Umstellung auf die in beiden Fällen benutzten externen 16MHz-Quarze einmal völlig problemlos gestaltete, will mir die Anwahl bei der zweiten Serie von Prozessoren einfach nicht gelingen.
Über die Fuse-Bit-Auswahl der Programmer-Software von BASCOM-AVR habe ich auch schon das folgende, für die externe Quarzanwahl zuständige Kommando:
$prog &H00 , &H00 , &H00 , &H00
ausgewählt und an den Anfang des Quellcodes gestellt, aber es klappt dennoch nicht.

PS: Im Codelisting findet sich natürlich auch der Befehl:
$crystal = 16000000

An der Hardware-Beschaltung der Prozessoren konnte ich übrigens keine Unterschiede feststellen. Da sie sich aber zum Einen in einem DIP-Gehäuse befinden und zum Anderen direkt in die verwendete Platine gelötet sind, kann ich das Problem leider auch nicht durch direktes Chiptauschen einkreisen.

Wer hat dazu eine Idee?

Klaus

x-ryder
09.10.2006, 13:14
mach das doch mal manuell über die manuelle programmierung, da kannste auf nen reiter fuse-bits gehen und das fusebit A987 auf 1111:1111 stellen, die unterste konfiguration, dann drückste auf Write FS und die fuses müssten passend gesetzt sein

Martin

gpsklaus
09.10.2006, 13:39
Danke,
aber so habe ich das auch schon mehrmals versucht. Im FuseBit-A987-Fenster steht auch: 1111:1111 external XTAL, aber nach Drücken von Write FS passiert nichts weiter.
Wenn ich auch noch Write PRG drücke, dann wird im Programmlisting das schon erwähnte: $prog &H00 , &H00 , &H00 , &H00
zugefügt, aber auch das bleibt bei einer anschliessenden Programmierung offensichtlich ohne Auswirkungen.

Klaus

x-ryder
09.10.2006, 13:45
hmm du kannst ja mal versuchen die fuses mit ponyprog zu setzen, da gibts hier auchn bildle: http://mikrocontroller.cco-ev.de/files/PonyProgeinstellungen_ISA_Ctrl.jpg

versuchs so mal...

Martin

gpsklaus
09.10.2006, 17:11
Mit PonyProg bekomme ich keine Verbindung über den USB/ISP-Adapter. Der derzeit benutzte Laptop hat aber leider nur USB-Schnittstellen. Ich werde das Ganze deshalb in den nächsten Tagen noch einmal mithilfe eines geeigneten Adapters über die Parallelschnittstelle eines anderen PC's versuchen und dann berichten.

Klaus

veit
09.10.2006, 17:43
hmmmm ich hab GENAU DAS GLEICHE problem.
hab mir nen ganz simplen parallelportprogrammer gebaut, und mit dem atmega16 kann ich die fuses nicht setzen mit pony prog ...

gpsklaus
10.10.2006, 11:58
Hallo,
inzwischen bin ich einigermaßen sicher, daß man zumindest mit der hier benutzten Version von BASCOM-AVR ( 1.11.8.2 ) und meinem USB-ISP-Adapter ( von MyAVR ) keine Fusebits lesen und setzen kann.
Ich habe daraufhin das AVR-Studio von ATMEL heruntergeladen und mit dem dabei bereitgestellten Programm "AvrProg" klappt es jetzt problemlos.

Vielen Dank noch einmal für alle Hilfestellungen

Klaus

Marco78
20.10.2006, 22:07
AvrProg sagt bei mir das es kein Board findet.

Ist verwende diesen ISP: http://www.lancos.com/e2p/avrisp-siprog.gif

Mein Problem ist folgendes:
Normalerweise verwende ich Bascom zum programmieren und Fusebits setzen.
Jetzt habe ich aber einen Mega48, der mit 4MHz laufen soll. Da ich keinen passenden Quarz zur Hand habe, habe ich ins Datenblatt geschaut, wie der AVR 1. ausgeliefert wird und wie ich ihn 2. mit 4MHz intern laufen lassen kann.
Ausgeliefert wird er mit 8MHz. Auf Seite 38 im Datenblatt sind die Fuses gelistet, mit denen ich den Clock durch zwei teilen kann.
Bascom listet diese Bits aber nicht mit auf.
Also habe ich es (mal wieder) mit PonyProg probiert. Aber auch wenn ich mich auf den Kopf stelle, ich finde da keine Einstellung, womit der AVR erkannt wird. Das Problem hatte ich früher schon und habe das Programm gleich wieder gelöscht.
Die letzte Version mit 1.X von PonyProg hab den M48 noch nicht drin. Also habe ich 2.06Beta probiert. Aber auch damit geht es nicht.

Durch die Suche bin ich dann auf diesen Beitrag gestoßen.
AVR-Studio habe ich auch installiert. Aber wie schon gesagt, AvrProg erkennt den Chip bzw den Programmer auch nicht. Und das Studio selbst scheint keine Option für LPT-Programmer zu bieten.

Kann mir jemand sagen, wie ich entweder PonyProg oder AVR-Studio verwenden kann um die Bits zu setzen oder wie es mit Bascom doch geht?

BT
20.10.2006, 23:45
probiers mal damit das unterstützt den M48 und ne ganze reihe programmer:

http://www.myavr.com/download/myAVR_WorkpadPLUS_Demo.exe

ich weiß aber nicht genau ob es auch den SI-Prog unterstütz, musst einfach mal unter einstellunegn gucken

cu BT

BT
20.10.2006, 23:54
hab noch mal rein geschaut... es sollte mit dem Programmertyp "ponyser" gehen

cu BT

x-ryder
20.10.2006, 23:55
außerdem ist es bei bascom auch so: du suchst die bits die du setzen willst und findestr sie meist unter nem anderen namen, wenn du 4MHz internal clock source nehmen willst musste das bei bascom einfach nur bei fusebit A987 einstellen, müsste dann daneben stehen 4MHz internal clock oder sowas

Martin

Marco78
21.10.2006, 00:14
pony-stk200 wäre die richtige Einstellung. Oder anders ausgedrückt, es funktioniert.

Aber da habe ich die gleichen Optionen wie bei Bascom. Das Problem liegt also bei mir.

Entweder habe ich das Datenblatt falsch gelesen, oder ich finde die richtigen Bits nicht.
Im Datenblatt finde ich auch nichts zu Fusebits, High Fusebits, ... Es werden andere Namen verwendet.
Also liegt der Fehler jetzt nur noch bei mir :(

BT
21.10.2006, 10:07
du kommst also mit dem myAVR Workpad ran. OK erst mal.
Der M48 hat im Gegensatz zum M8 (1,2,4,8MHz) nur die 8Mhz Option über die Fusebits, die Zielfrequenz von 4MHz musst du über einen Systemtakt-Vorteiler (CLKPR) und das Calibrationbyte einstellen. das erfolgt im Programm nicht über die Fusebits. Das ist sehr listig damit kann man bei diesen moderenen Controllern sozusagen Step-Down oder Step-Up den Controller auf maximale Systemleistung oder minimale Stromverbrauch bringen.

cu BT

PS schau ins Datenblatt Seite 34.

Marco78
21.10.2006, 21:35
Wie ich schon schrieb, im Datenblatt auf Seite 38 sind die Bits der Vorteiler aufgeführt.
Ich habe ja auch soetwas "einfaches" wie bei den anderen Megas erwartet um die interne Frequenz umzustellen.
Nachdem ich ins Datenblatt geschaut habe, habe ich dann hat ein paar weitere Bits zum einstellen erwartet.

Ich gebe auch zu, das ich den Teil nicht so intensiv gelesen habe sondern nur überflogen bis ich alle Infos hatte, die ich brauchte (dachte ich zumindest).

Ich werd das wohl nochmal alles genauer lesen müssen.


Vielen Dank für die Hilfe!