Forum: Mikrocontroller und Digitale Elektronik Atmega32 16PU, Bootloader schon drauf, evalboard mit RS232 u. LCD, Erste Schritte!


von Waldemar F. (wally)


Angehängte Dateien:

Lesenswert?

Hallo Leute.
Habe mir jetzt ein evalboard von deltawave besorgt. Im Anhang ein paar 
infos darüber. Ich habe kein ISP Programmiergerät oder sonst was. Nur 
RS232 auf dem Board. Auf dem Atmega32 ist anscheinend schon ein 
bootloader drauf, das Board wartet ein paar Sekunden und dann ein 
bisschen Text auf dem LCD, LEDs blinken usw ...
Auf http://www.deltawave.de/eprog/ gibts eine evalboard.zip ... da sind 
"Codebeispiele" ... Ich fand nirgens eine Beschreibung was welcher Code 
macht bzw. wie ich das auf den Atmega bekomme ...
Es sind .bat dateien dabei, eine makefile, paar headers und paar c 
quellcodes und sonst noch welche dateien.
Ich habe mir AVR-Studio 4 besorgt und installiert sowie WinAVR ... Ich 
würde gerne in C++ programmieren.

Problem: Ich habe keine Ahnung was ich starten muss im irgendwas auf den 
Atmega zu laden. Eigentlich sollten irgendwelche Bits gesetzt sein damit 
ich den Bootloader nicht überschreiben kann, kann ich das irgendwie 
überprüfen? oder zur sicherheit immer einen Bootloader mit überspielen 
?! ... In der Anleitung hier auf der Page geht es gleich mit einem ISP 
Programmer los und ein bisschen Assembler .... Deshalb finde ich da 
keine Stelle wo ich einsteigen kann?! ...

Frage: Welches Programm brauche ich um mein Programm auf den Atmeaga zu 
schreiben? Schließlich muss ich doch irgendwo einstellen was ich für ein 
Board hab oder sowas ... Hyperterminal hab ich schonmal gestartet und 
die Baudrate auf 2400 gestellt ... logischerweise kam aber nix ... da ja 
kein Programm auf dem Atmega ist was da irgendwas hinsendet ?! ... Muss 
ich meine C-Code kompilieren und dann das kompilierte hochladen ?! oder 
wie funktioniert das ? ...

Sorry aber in die Anleitungen hier auf der Page fangen alle mit einem 
ISP an - den ich nicht habe ...
Ich brauche nur ein programm mit dem ich mein Programm auf den Atmega 
schreiben kann, (welches ich vorher mit irgend nem anderen Prog (welchem 
auch immer) erzeugen muss) und ein C-Code wo ich einfach angeben kann 
"Aktiviere den Pin" -> Zack LED leuchtet ... Seitenlange Quellcodes kann 
ich mir selber schreiben. Kann mir jemand einfach die wichtigsten 
Dateien zusammenpacken?

z.B. "Hier ein kleiner Code um eine LED an dem Pin zu aktivieren, den 
öffnest du mit WINAVR, drückst auf dies und das, dann hast du eine datei 
die heißt soundso.datei, dann startest du dieses prog (was ich die in 
die .rar gelegt hab) und wählst die gerade erzeugte datei aus, jetzt 
schließt du dein Nullmodemkabel an dein COM-Anschluss am PC an, gibst 
strom auf dein Board sodass der Bootloader startet, schon geht es los. 
Auf dem Monitor erscheint "fertig", du kannst das Prog schließen und 
dein Board neustarten ?! ... jetzt siehst du die LED leuchten ..."

sowas in der Richtung wäre total genial ... Ich kann auch ein 
Schritt-für-Schritt Tutorial daraus machen für diese Page ... mit Bidern 
usw ... da ich finde, dass hier sowas fehlt ...
Überall ist nur die Rede von UART hier, Baudrate da, mit ISP die Flags 
setzen, dies und das Invertieren, und und und ... Mit welchem Programm 
und wo man vorher was einstellen muss um nix kaputt zu machen sagt hier 
irgendwie keiner ?! ... oder man findet im Forum "was benutzt ihr?" .. 
"ich benutz das, ist etwas kompliziert aber mit der richtigen 
einstellung 1a" ... usw ... aber welche einstellung sagt auch keiner ...

Ich hoffe, dass mir jemand helfen kann. Herzlichen Dank an alle die sich 
zumindest Gedanken machen.

Viele Grüße
Waldemar

von Gerhard. (Gast)


Lesenswert?

Hallo Waldemar,

Ich habe mir mal kurz die Schaltung angesehen. Da es ohne naehere 
Ueberpruefung der Files auf der obigen Website unklar ist, ob ein 
Bootloaderprogramm sowie die notwendigen Instruktionen vorhanden sind, 
schlage ich Dir vor Dir die folgende Link hier sorgfaeltig zu studieren:

http://www.mikrocontroller.net/articles/AVR (Boards & STarterkits)

Dort ist alles was Du brauchst um einen genauen Ueberblick ueber den 
Umgang mit AVRs zu erhalten. Ich wuerde Dir raten einen zuverlaessigne 
In Circuit Programmer wie z.B den AVR-ISP von Atmel, STK500 und 
aehnliche wie sie hier beschrieben sind, zuzulegen und wenn alles 
vorhanden ist und angeschlossen ist, Dich durch das Tutorial 
durchzuarbeiten damit Du praktische Erfahrung mit dem Umgang und 
Programerstellung mit Mikrokontrollern bekommst.

Von C++ wuerde ich Dir schon von vornherein abraten, da einfaches C fuer 
Mikrokontroller viel kompakter und schneller arbeitet und den sehr 
begrenzten Speicherraum (FLASH, RAM) viel besser ausnuetzt.

Auch sehe Dir die Seiten von Martin Thomas und die Codebeispiele an. 
Dort gibt es viel erprobte Programme zum studieren.

http://www.siwawi.arubi.uni-kl.de/avr_projects/

Beim Umgang mit Mikrokontrollern ist es vorerst wichtig, ein einfaches 
Program wie LED blinken zum Laufen zu bringen damit man weiss dass die 
ganze Hardware und die Programmierung des FLASH funktioniert.

Also, viel Erfolg und nicht gleich aufgeben. Bis jetzt haben es alle 
noch geschafft. Falls es dann immer noch nicht geht wird Dir hier im 
Forum bestimmt geholfen werden. Mehr als Dir den Kopf abzubeissen 
koennen sie hier Dir ja eh nicht; -)

Das Schaltbild Deiner Platine: 
http://www.deltawave.de/eprog/avr_evalboard_biglcd.pdf

Gruss,
Gerhard

P.S. Die DELTWAVE Leute sollten sich mal selber bei den Ohren nehmen.
Die Webseite ist ja schauderhaft!!! ; -(((

von Waldemar F. (wally)


Lesenswert?

Hi. Danke für die Links, die kannte ich zwar schon aber jetzt werde ich 
mich da mal genauer einlesen. Ich sehe ein, dass ich nicht um ein ISP 
herum komme ... früher oder später bräuchte ich eh einen ... Irgendwo 
habe ich eine Bauanleitung gesehen wie man an ein COM-Port einfach 4 
Widerstände lötet und fertig ... in irgend einem Programm wurde dieser 
ISP dann erkannt ... auf die schnelle habe ich nur diese Seite gefunden:
http://s-huehn.de/elektronik/avr-prog/avr-prog.htm
da interessiert mich der LPT-Port sehr, weil er leicht zu bauen ist ... 
könnte ich dann sowas benutzen oder ist es zu riskannt, dass ich mir 
mein Mainboard zerschieße ?

von Gerhard. (Gast)


Lesenswert?

Hi Waldemar,

ich habe keine persoehnliche Erfahrung mit Parallelportprogrammer. Habe 
aber schon oft gehoert dass der Einsatz manchmal problematisch sein 
soll.
Selber verwende ich den STK500 oder AVR-ISP mit RS232 Schnitstelle.

Den AVRISP MKII gibts zum Beispiel bei Digi-Key fuer Euro24.

http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail?name=ATAVRISP2-ND

Digi-Key ist natuerlich von Deutschland aus wegen der hohen 
Versandkosten nicht sehr appetitlich. Da musst Du schon selber 
rausfinden wo man den in DL am Besten beziehen kann.

SolltesT Du den LPT Port trotzdem verwenden wollen, schlage Ich Dir vor 
eine PCI Parallel/COM Schnittstellenkarte zu verwenden , da im Falle 
eines Unfalls zumindenstens nicht der IC auf der PC-Platine zerschossen 
wird. Sonst wuerde ich Dir empfehlen einen Bufferstuffe z.B. 74HC245 
oder aehnlich zu verwenden. (Auf Datenrichtung achten)

Durchsuche das Forum nach Erfahrungen mit Schnittstellenprogrammierern.

Muss weg - Die Arbeit ruft...


Gerhard

von Gerhard. (Gast)


Lesenswert?

Noch ein Hinweis: Beim Einsatz der ISP Programmer unbedingt immer 
aufpassen die FUSES richtig zu setzen. Wenn man versehentlich die JTAG 
Fuses setzt dann braucht man einen sogenannten "High Voltage" Programmer 
wie ein STK500 um den AVR wieder im Low Voltage Modus Flashen zu 
koennen.

Gerhard

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.