Hallo..
Ich hab mir jetzt ma die ganze Arduino-Sache angesehn und finde das
alles ja recht nett. Wenn man mal schnell was kleines machen will is die
ganze Lib ne feine sache. Ich will mir nun nicht aber schonwieder nen
neues Versuchsboard zulegen und würd das ganze gerne mit dem vorhandenen
Pollin-Board benutzen (ATMEGA 8, 16 und 32).
Hat das schonmal einer gemacht.? Vielleicht auch schon passende
Konfigurationen für Arduino für das Board.? Paar Tipps und hinweise für
mich.?
Danke schonma
Nachdem ich den FLOSS Podcast dazu gehört habe, werde ich mich auch dem
Thema Arduino "widmen".
Beitrag "FLOSS Podcast über Arduino"
Ich habe ein Pollin Funk-AVR-Evaluationsboard und einen Atmega16. Es
gibt Arduino-User, die ebenfalls mit Atmega16 arbeiten
http://www.subtours.com/ralph/theory/atmega16witharduino.html
Zwei Unterschiede (abgesehen vom AVR) sind allerdings offensichtlich:
* Die Pollinboards haben keinen USB-Anschluss, die modernen Arduino doch
(on board TTL-to-USB Konverter).
* Die Steckerbelegung für Erweiterungen ist unterschiedlich. Sog.
Arduino Shields werden nicht einfach aufsteckbar sein.
Einfach in den ATmega8-Sockel des Pollin-Boards einen ATmega328 stecken,
Bootloader drauf und loslegen!
Pinbelegungen muß man sich natürlich einzeln markieren. Aber der
Schaltplan ist ja offen und leicht verfügbar.
Das hört sich doch prima an :)
Nicht, das ich zu geizig bin, aber dies hier wird mein Xter anlauf mich
mit so nem Atmega auseinanderzusetzen.
Die Bastelkiste ist hervorgekramt und gefunden hab ich:
Das Pollin Board
4stck. Atmega8-16PU
2stck. Atmega32 16PU
232 Leitung 1:1
Paralleler ISP Adapter.
Damit sollte ich doch einen Start hinbekommen?
Google hat mir dies hier ans Herz gelegt:
http://itp.nyu.edu/physcomp/Tutorials/ArduinoBreadboard
Bevor der Abend in einer Sackgasse mit geschossenem Atmega verläuft -
Wird das was?
Wenn Du kein PronyProg benutzt, besteht kaum die Möglichkeit, einen AVR
zu zerflashen ...
Nee, im Ernst, lies einfach hier im Forum noch etwas weiter, besonders
auch die Artikel und lass Dich von Rückschlägen nicht ermutigen.
Für Probleme gibt es ja noch dieses Forum :-)
Wie befürchtet stecke ich jetzt fest.
Der Bootloader lässt sich nicht flashen.
SIcherlich bin ich der 100ste mit diesem Problem, Google und die
Suchfunktion haben mir leider auch nicht die Lösung gebracht.
Anhand der Seite aus dem Link gehe ich davon aus, das ich meinen
Atmega8-16PU auf dem Pollinboard verwenden kann.
In der Arduino Software habe ich als Board Adruino NG or older w/ATmega8
eingestellt.
Den ISP Programmer habe ich vor 2Jahren fertig gelötet gekauft und auch
schon einmal erfolgreich verwendet.
Das Pollin Board (Ver 2.0) funktioniert mit einem, von einem Kollegen,
bereits geflashten Atmega.
Für den Atmega ist ein 16Mhz Quarz eingelötet.
giveio habe ich Installiert, den Registrypatch habe ich aufgespielt
LPT1 ist im Bios auf EPP eingestellt.
Wenn ich jetzt versuche Burn Bootloader w/Parallel Programmer
auszuführen bekomme ich folgende Fehlermeldungen:
1
avrdude: AVR device not responding
2
avrdude: initialization failed, rc=-1
3
avrdude: Yikes! Invalid device signature.
4
avrdude: Expected signature for ATMEGA8 is 1E 93 07
5
avrdude: AVR device not responding
6
***failed;
7
avrdude: verification error, first mismatch at byte 0x0000
8
0xca != 0xff
9
avrdude: verification error; content mismatch
Ich habe noch versucht, in der
G:\arduino\Software\arduino-0017\hardware\programmers.txt anstelle des
stk500 einen stk200/300 eizustellen, da laut Anleitung mein ISP hiermit
kompatibel ist.
Anscheinend klappt da ja die Kommunikation schonmal generell nicht,
immer die gleiche Fehlermeldung.
Versuche ich das ganze über die Serielle ISP des Pollinboardes bleibt
die Software hängen, auch nach 30 Minuten ist kein Vortschritt zu
erkennen.
Für Hilfe / Tipps wäre ich euch jetzt wirklich dankbar
Also STK500 wird eigentlich seriell angesprochen (COMx) und das STK200
wird am Parallelport (LPTx) betrieben. Vielleicht in dieser Richtung mal
suchen?
Laut den Anleitungen im Netz hab ich an diesen Einstellungen mit einem
Parallelen ISP nicht zu suchen - aber wenns nicht klappt, dann testet
man halt alles aus.
Wegen der ausdrücklichen Warnung vor PonyProg hab ich dies jetzt
natürlich auch mal installiert :-)
Damit kann ich meinen Atmega problemlos auslesen, jetzt bin ich wirklich
ratlos.
Kann ich den Bootloader auch mit PonyProg flashen?
Hab da doch respekt vor den Fusebits
In der Datei Boards.txt, die mit der Software mitgeliefert wird steht
für den Atmega8:
1
atmega8.name=Arduino NG or older w/ ATmega8
2
3
atmega8.upload.protocol=stk500
4
atmega8.upload.maximum_size=7168
5
atmega8.upload.speed=19200
6
7
atmega8.bootloader.low_fuses=0xdf
8
atmega8.bootloader.high_fuses=0xca
9
atmega8.bootloader.path=atmega8
10
atmega8.bootloader.file=ATmegaBOOT.hex
11
atmega8.bootloader.unlock_bits=0x3F
12
atmega8.bootloader.lock_bits=0x0F
13
14
atmega8.build.mcu=atmega8
15
atmega8.build.f_cpu=16000000L
16
atmega8.build.core=arduino
wenn ich unter http://www.engbedded.com/fusecalc
DF und CA umrechnen lasse, dann sind das doch die Einstellungen, die
ich unter PonProg vornehmen muß oder?
Du kannst den Bootloader sicherlich damit Flashen, aber...das Problem
bleiben dann natürlich die Fusebits. Ich kenne PonyProg nicht da ich das
STK500 und den Dragon verwende, der zeigt die Fusebits richtig herum an.
Aber was kann schon groß passieren? Probiere doch die Fusebits, nen
ATMega 8 kostet doch nur 1,- Euro...
Er ist danach ja auch nicht defekt, müßte halt nur mit einem richtigen
Programmer wieder "gangbar" gemacht werden.
So, einige Stunden Später...
Mit der Arduino Software kann ich immernoch keinen Bootloader schreiben
(habs jetzt an 2 Rechnern versucht)
Mit PonyProg kann ich den Bootloader Schreiben und dann auch mit der
Arduino Software ein Programm auf den Atmega schreiben.
Ebenfalls kann ich einen Atmega auslesen und einen anderen beschreiben
und das Programm läuft.
Was nicht geht ist das Programm, das ich mit der Adruino Software auf
den Atmega schreibe.
Obwohl wirklich etwas geschrieben wird (mit Ponyprog wieder ausgelesen)
Anfangs konnte ich noch die LED zum Blinken bringen, aber leider nur
unzuverlässig. Dann ist mir aufgefallen, das auf dem Pollinboard ein
Kondensator am Quarz fehlt.
Seitdem ich diesen eingelötet habe klappt der Zugriff zwar prima aber
das Programm überhaupt nichtmehr. :-(
Jetzt liegt das Board fast 2 Stunden unberührt auf dem Schreibtisch und
fängt an zu Blinken.
Wenn das andere Programm nicht grundsätzlich auf Anhieb funktionieren
würde, dann würde ich auf ein Hardwareproblem tippen.
Oder doch ein Fehler bei den Fuses?
Leider bin ich immernochnicht weitergekommen.
Knnte mir ggf. jemand sagen, ob ich die Bits richtig gesetzt habe?
So soll es sein:
atmega8.bootloader.low_fuses=0xdf
atmega8.bootloader.high_fuses=0xca
atmega8.bootloader.path=atmega8
atmega8.bootloader.file=ATmegaBOOT.hex
atmega8.bootloader.unlock_bits=0x3F
atmega8.bootloader.lock_bits=0x0F
In dem Sccreenshot sind die Bits, so wie ich sie gesetzt habe
So, erstmal eine kleine Auflösung.
Um die Adruino Software daz zu überreden mit dem Psralelen Adapter den
Bootloader zu schreiben müssen folgende Zeilen im der programmers.txt
Datei ergänzt werden:
stk200.name=STK200
stk200.communication=dapa
stk200.protocol=stk200
Die FuseBits habe ich dann mit PonProg ausgelesen und als Anhang
beigefügt.
Das sollte allen helfen, die vor dem selben Problem wie ich stehe.
Leider läuft das Programm immernochnicht bzw. nur Sporadisch, wenn ich
die Versorgungsspannung mehrfach wegnehme.
Sascha W. schrieb:
> Leider läuft das Programm immernochnicht bzw. nur Sporadisch, wenn ich> die Versorgungsspannung mehrfach wegnehme.>
welches programm ?
das Pollinboard hat KEIN autoreset.
also startet der Bootloader nur,
wenn du in der richtigen Sekunde den Resettaster loslässt.
Ich habe das selbe Problem !!! aber bei mir funktioniert die Lösung
nicht!!
Das Problem: den Ardurino Bootloader auf den ATmega8 über PonyProg
Programmieren. den Bootloader flashen geht soweit prima, und auf dem
Ardurino board lässt sich der Atmega8 dann auch einmal programmieren,
nur eben kein 2. mal. daraus folgere ich, dass der bootloader immer
wieder vom Programm überschrieben wird.
Wenn ich die fusebits so setze wie Sascha W lässt sich der Chip in
Ardurino zwar beliebig oft programmieren aber das programm läuft nicht
mehr.
Wenn ich das häkchen von Bootreset dann rausnehme (ich nehme an daran
liegt es dass das programm dann nicht mehr von selbst startet) läuft das
Programm das ich draufflashe wieder einwandfrei, aber ich kann nur
einmal flashen...
wer kann mir helfen??