Hallo liebe MikroControllers,
Ganz zu Anfang schon: Ich bin ein Noob. Ich habe vor einigen Wochen
damit begonnen, mich mit Schaltungen und dergleichen zu beschäftigen,
habe Stunden um Stunden gelesen und ausprobiert, doch jetzt weiß ich
nicht mehr weiter :(
Zu aller erst - was habe ich:
Atmel Evaluation Board 2.0.1 von Pollin
(Beschreibung, Bilder und Schaltplan unter
http://www.pollin.de/shop/downloads/D810038B.PDF)
mit einer AtMEGA 644
Prolific USB-RS232 Konverter
Hauptsystem Windows 7 x64
Zwei virtuelle Maschinen mit
- Debian 6
- Windows XP
TestTool von Pollin mit BAS Sourcecode unter
http://www.pollin.de/shop/downloads/D810022S.ZIP
Kurz die Geschichte:
Nachdem ich den Bausatz zusammen gelötet hatte (das kann ich, alles
getestet, sollte funktionieren), wollte ich das von Pollin bereit
gestellte TestTool ( http://www.pollin.de/shop/downloads/D810022S.ZIP )
aufspielen. Da PonyProg und AVRDude auf meinem Win7 x64 Hostsystem nicht
wollten, habe ich mit VMware Workstation die oben genannten Maschinen
erzeugt und meine Arbeit nach dort verlagert. Unter Debian habe ich mit
avrdude versucht, die testtool.hex Datei mit dem Befehl
1 | avrdude -p m644 -c ponyser -P /dev/ttyUSB0 -U flash:w:testtool.hex -v
|
auf den Chip zu schubsen. Dabei wurden jedes Mal beim Verify Fehler
festgestellt. Fuse-Bits habe ich nicht geändert.
Unter Windows XP mit PonyProg2000 dauert das ganze ewig (mehrere
Stunden) und das Ergebnis ist auch nicht besser. Auf der Platine brennt
LED1 dauerhaft, sonst passiert nichts. Angeschlossen ist die Platine
über den oberen linken Port (ISP) an den USB-Konverter, der ist wiederum
in die jeweilige virtuelle Maschine eingebunden.
Nun stellen sich mir viele Fragen:
- Lässt sich der AtMEGA644 überhaupt venünftig über den Konverter
programmieren, wenn ja mit welchen Einstellungen?
- Welchen internen Takt verwendet der AtMEGA644? Mir ist aus den
Fuse-Bits und der Tabelle unter http://www.engbedded.com/fusecalc/ nicht
ersichtlich, was für ein Takt genutzt wird. Außerdem sind auf dem Eval.
Board meiner Ansicht nach (siehe Schaltplan) externe Quarze aufgebaut,
aber ich verstehe nicht, welche FuseBit Einstellung richtig ist - der
Quarz bei Q3 ist ja ein 16MHz Quarz, welche Fuse Einstellung wäre
angebracht? Das verstehe ich leider überhaupt nicht.
- Das TestTool von Pollin habe ich mit einer Demoversion von BASCOM AVR
geöffnet und dabei festgestellt, das darin die Definitionen für einen
falschen Controller waren - auch eine Änderung hat leider nichts
gebracht.
- Was für einen Bootloader würdet Ihr für den AtMEGA644 empfehlen, wie
kann man mit diesem dann seine Programme übertragen?
- Wie entwickelt man mit dem AVR Studio 5 seine Anwendung für das
Board, gibt es einfache Demos (die anders als das Testtool besser
dokumentiert sind), kann man mit dem AVR Studio 5 auch direkt den Chip
beschreiben?
Des weiteren ist mir nicht klar, wofür JP9 bis JP12 gut sind - in der
Beschreibung steht etwas von I2C Clock und Data, kann mich da jemand
erleuchten?
Insgesamt ist mir der Ablauf der Applikationsentwicklung unklar, welche
Programme am besten zu verwenden sind (ich liebe C, deswegen würde ich
gerne das AVR Studio benutzen), wie das Programm auf den Chip kommt und
ob und wenn ja welchen Bootloader man verwenden sollte, wie
dementsprechen die Fuses geändert werden müssen.. und so weiter. Ich
bitte um Entschuldigung, wenn ich hier Verwirrung stifte und Äpfel mit
Birnen vergleichen sollte, aber... So sieht es momentan in meinem Kopf
aus - bitte helft mir ;)