www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik stk500 und linux: einsteigertipps


Autor: An Fänger (hallofrage)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

ich will einen microcontroller in c programmieren und bin neu in der 
materie. und im moment suche ich noch nach dem passenden einstieg.

mein bisheriger weg:
ich habe das wiki-book c-programmierung gelesen. desweiteren bin ich 
gerade dabei das tutorial avr-gcc zu lesen (und hab schon einiges hinter 
mir). ausserdem habe ich bei mikrokontroller.net und an vielen anderen 
orten im netz gelesen und gelesen...
jetzt dachte ich, dass ich soweit wäre und habe mir ein stk500 gekauft. 
es ist mit einen usb-2-rs232-adapter am rechner angeschlossen.
ich verwende linux (debain lenny) und habe alle mögliche software 
installiert (u.a. avr-gcc, avrdude, eclipse mit avr-plugin,usw...).

ich habe mich an zwei tutorials geübt:
http://www.wiki.elektronik-projekt.de/mikrocontrol...
das zweite finde ich jetzt leider nicht mehr, aber es beschrieb das 
vorgehen mit konsolenbefehlen...

so - jetzt endlich die frage:
hat jemand eine weiteren tip für ein tutorial, mit dem ich es lernen 
kann, einen einfachen c-code zu erstellen und auf den controller zu 
laden?
ich bin für jeden einstiegstip dankbar (gui oder konsole)...

vielen dank und schöne grüsse

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vorausgesetzt, du hast das avr-gcc tutorial nicht nur gelesen, sondern 
auch ausprobiert:

besser als ein tutorial:
verwende dein bisher angesammeltes wissen und mach ein eigenes kleines 
projekt, z.b. einen einfachen led-zähler mit 4 leds und 3 tasten 
(vorwärts, rückwärts, reset (nicht den controller, nur den zählerwert).
wenn das geklappt hat, such dir eine neue - ein bisschen 
anspruchsvollere - aufgabe.

falls du das tutorial aber nur gelesen hast, dann programmier die 
aufgaben nach (im assembler-tut gibts afaik ein paar mehr) möglichst 
OHNE auf die beispielcodes zu schauen (datenblatt!)

Autor: An Fänger (hallofrage)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

zunächst einmal vielen dank für die schnelle antwort!

vielleicht habe ich mich missverständlch ausgedrückt: das programmieren 
habe ich zwar noch nicht drauf, aber da werde ich schon reinkommen. 
bisher fehlt mir der einstieg in das "wie" nach dem coden (kompilieren, 
linken, upload und der kram).
als erster programm könnte ich ja z.b. die erste aufgabe aus dem 
gcc-avr-tutorial nehmen, aber wie wird der code zur maschinensprache und 
wie kommt er in den controller (in der theorie klar, aber wie in der 
praxis unter linux)?
irgendwie bin ich mit dem theoriewissen und den man-pages von avr-gcc, 
avrdude usw allienbe überfordert.

dafür suche ich ein tutorial oder sowas...

(das gcc-avr-tutorial habe ich bisher nur gelesen, aber deshalb habe ich 
mir jetzt ja das stk500 gekauft - zum selber in der praxis ausprobieren)

nochmal danke und grüsse
vom anfänger

Autor: Ronald S. (mline)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Guck dir im avr-gcc Tutorial mal "Makefile" an.
Ist dieses korrekt kannst du mit

make all
das programm compilieren und mit

make program
auf den AVR brennen.

Wichtig ist aber das im Makefile alles korrekt eingetragen wurde.

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ronald S. schrieb:

> Wichtig ist aber das im Makefile alles korrekt eingetragen wurde.

Was für den konkreten Fall bedeutet, dass

AVRDUDE_PROGRAMMER = stk500v2
AVRDUDE_PORT = /dev/ttyUSB0

eingestellt worden sind.

Autor: An Fänger (hallofrage)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo ihr beiden,

danke - so einen tip meinte ich!

es leuchten jetzt zwar die leds an p2-p5, aber das ist ja ein fehler, um 
den ich mich selbst kümmern kann.
zumindest hab ich jetzt etwas auf den controller geschickt und bin sehr 
happy!

so - und jetzt kann ich mit dem avr-gcc-tutorial rumspielen...

nochmals danke und schöne grüsse
vom anfänger

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
An Fänger schrieb:

> es leuchten jetzt zwar die leds an p2-p5, aber das ist ja ein fehler, um
> den ich mich selbst kümmern kann.

Sowohl die LEDs als auch die Taster am STK500 sind low-aktiv.

Autor: An Fänger (hallofrage)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
super info - danke.
erstaunlich nur, dass led 6 und 7 nicht leuchten. aber da werde ich 
schon noch dahinter kommen...

nochmal allen dank für die hilfe.
grüsse vom anfänger

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
An Fänger schrieb:

> erstaunlich nur, dass led 6 und 7 nicht leuchten. aber da werde ich
> schon noch dahinter kommen...

Vielleicht hat der Controllerport, den du benutzt hast, ja gar keine
Bits 6 und 7?  Nicht jeder Port an jedem AVR hat alle 8 Bits, das
ist erst ab den 40-pinnigen Typen (aufwärts) dann gegeben.  Selbst
da gibt es Ausnahmen wie den Port G bei den 64- und 100-Pinnern.
Dieser hat nur 5 Bit, da er Leitungen zusammenfasst, die bei den
Vorgängertypen gar nicht als Portpins verfügbar waren (sondern nur
als Sonderfunktion).

Autor: An Fänger (hallofrage)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo jörg,

auch diesmal wieder vielen dank.
du hast natürlich wieder recht - wenn ich das datenblatt richtg lese, 
sind beim atmega8 pin B keine bits 6 und 7 vorhanden. es ist also alles 
richtig...

du wirst in den nächsten wochen bestimmt noch einige "dumme fragen" von 
mir bekommen :-)

danke und grüsse
der anfänger

Autor: gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wenn alle deine weiteren fragen in der qualität wie die hier gestellt 
werden, sind es eigentlich keine dummen fragen und die chancen auf 
sinnvolle antworten stehen sehr gut.

dass es keine "dummen fragen" gibt ist aber ein gerücht - 
gegenbeispiele: "schläfst du schon", "warum funktioniert die led nicht, 
wenn ich sie in die steckdose stecke", ... ;-)

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tu uns allen nur einen Gefallen dabei: neues Thema, neuer Thread.  Dass
du mal Probleme hattest zu verstehen, wie man einen STK500 unter Linux
einbindet, interessiert niemanden mehr, wenn du eines Tages Rat suchst,
um einen Hebdrehwähler an einen AVR anzubinden. ;-)

Autor: An Fänger (hallofrage)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
auch hier wieder danke für die hinweise - werde versuchen, mich dran zu 
halten...

aber jetzt gibts erstmal noch ne frage in diesem thread:
sehe ich das richtig, dass es sich bei dem hier vorgeschlagenen weg um 
isp und nicht um high-voltage-programming handelt?

wenn ja: im stk500-manual steht, dass der jumper bsel2 dann nicht 
gesetzt sein soll (und das soll default sein). bei mir war/ist er aber 
(ab werk oder zumindest ab kauf) gesetzt. was nun tun? lassen oder 
wegnehmen (nach anleitung würde ich ihn wegnehmen, aber funktioniert hat 
es ja mit gesetztem jumper)? oder alles egal?

(wenn es eine ausführliche erklärung im netz gibt, dann lese ich auch 
gerne die und niemand muss das erneut erklären. ich bin beim suchen nur 
noch etwas hilflos, weil all die begriffe so neu für mich sind und ich 
erst reinkommen muss...)

danke und grüsse
vom anfänger

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.