Forum: Mikrocontroller und Digitale Elektronik AVR Totaler Anfänger braucht Starthilfe


von Micha (Gast)


Lesenswert?

Hallo liebe Gemeinde,

ich bin ein totaler Anfänger was Microkontroller und Elektronik 
anbelangt und habe dadurch etwas Startschwierigkeiten mit der Hardware 
und Elektronik. Das programmieren an sich ist weniger das Problem da ich 
seit über 10 Jahren Software, Tools und Games für PC in verschiedenen 
Sprachen programmiere.
Da mich aber Mikrokontroller schon immer fasziniert haben, habe ich mich 
nun doch entschlossen mich in meiner Freizeit damit zu befassen und mich 
einzuarbeiten. Ich möchte keine großen Projekte realisieren, es geht mir 
eher nur um den Spass an der Freude und das Verständnis wie 
Mikrokontroller funktionieren, wie man diese Programmiert und "brennt". 
Und vlt entsteht ja das Ein oder Andere nützliche daraus :) ...

Ich habe mir ein paar Bücher über die Programmierung der AVR 
Mikrocontroller mit Bascom AVR gekauft, Elektronik Grundlagen Bücher 
usw...

Hardware mäßig habe ich ein paar ATMega8, den Programmieradapter 
mySmartUSB light, steckbretter und notwendinges kleinzeug wie kabel, 
Widerstände, LEDs, taster usw. zum experimentieren gekauft.

Nun stehe ich ein bissl an, wie bekomme ich jetzt das in Bascom 
geschriebene Programm über den mySmartUSB Adapter auf den ATMega8? 
Brauche ich da jetzt noch ein extra board oder kann ich dies auch auf 
dem steckbrett machen? Wenn ja wie muss dann die Schaltung auf dem 
steckbrett aussehen?
Ich kann leider nur über USB programmieren da mein Ultrabook keine 
Serielle Schnittstelle hat.

Hier noch ein Link zum mySmartUSB Programmer den ich verwende:
http://www.amazon.de/mySmartUSB-light-Light/dp/B005CNA1M2

Bitte seid nachsichtig, das ist wirklich totales Neuland für mich. :)

Vielen dank und LG
Micha

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Micha schrieb:
> Bitte seid nachsichtig, das ist wirklich totales Neuland für mich. :)
https://www.mikrocontroller.net/articles/Bascom_AVR

Prinzipiell musst du erst mal "deinen" Controller kennenlernen. Denn ob 
du den letztlich mit BASCOM oder C oder sonstwas programmierst: du hast 
immer die selbe Hardware. Und die musst du kennen, sonst kommt Käse 
raus...

Siehe also dort knapp oberhalb der Mitte:
https://www.mikrocontroller.net/articles/Hauptseite

von Jonas G. (jstjst)


Lesenswert?

Hallo,

schau dir mal das 
an:http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment#Hardware

Zudem kannst du nach Arduino Steckbrett googeln. Dort wird dann ein 
ATMEGA328 verwendet dieser ist pinkompatibel zum ATMEGA8.

Jst

PS: lass dich nicht von den Kommentaren andere hier runter ziehen

von SonicHazard (Gast)


Lesenswert?

Die "In System Programmierung" des Atmel macht man über das 
Flachbandkabel.
Hierzu belegt man am einfachsten einen Pfostenstecker auf dem Atmel 
Board mit den Signalen. Kennst Du die Belegung des Steckers?
Im Datenblatt des ATmega findest Du wo welche Signale auf welchen Pins 
zu finden sind (MISO,MOSI,CLK,RST,GND)

von c-hater (Gast)


Lesenswert?

Micha schrieb:

> ich bin ein totaler Anfänger was Microkontroller und Elektronik
> anbelangt

Das ist schlecht. Zumindest Grundlagenkenntnisse der Elektronik sind 
praktisch unverzichtbar, wenn man eigene µC-Lösungen bauen will. 
Ansonsten bleibt nur völlig überteuerter Baukasten-Kram á la Arduino.

> das Verständnis wie
> Mikrokontroller funktionieren

Im Prinzip doch ziemlich genau so, wie ein PC auch funktioniert. Bloß 
daß eben viele Komponenten des PC in einen Chip gewandert sind. 
Allerdings: auch beim PC geht die Tendenz seit Jahrzenten zu immer 
weitgehenderer Integration von Komponenten.

> Ich habe mir ein paar Bücher über die Programmierung der AVR
> Mikrocontroller mit Bascom AVR gekauft

Bascom ist ziemlicher Mist. Wer wirklich schon "Programmiererfahrung in 
vielen Sprachen" hat, sollte und wird sich das nicht antun. Es sei denn, 
diese "vielen verschiedenen Sprachen" sind auf's Detail runtergebrochen 
eigentlich nur VB6 und PHP oder irgendwas anderes in dieser 
Preisklasse...

> Elektronik Grundlagen Bücher

Das war jedenfalls definitiv eine gute Idee.

von Micha (Gast)


Lesenswert?

Hallo,

danke für die Antworten und die hilfreichen Links. :)

@c-hater:
ja das ist mir bewusst dass es ohne elektronische Grundkenntnisse 
schwierig ist, aber ich dachte, ich lerne das notwendige nebenbei durch 
lesen, ausprobieren und experimentieren, wenn ich dabei halt mal ein 
paar chips durchbrenne ist das halb so wild - diese kosten nicht die 
Welt ;).
Also runtergebrochen sind es in meiner Freizeit überwiegend 
Basic-dialekte (VB, freebasic, monkey etc) beruflich je nach Gebiet 
c/c++, c#, Java etc.
Aber da ich in meiner Freizeit lieber Basic Programmiere dachte ich, 
wäre Bascom AVR eine gute Wahl. Ob und wie gut und was für Nachteile im 
Gegensatz zu c oä sprachen bestehen, hab ich mir keine Gedanken gemacht, 
zumal ich bezweilfle dass ich mit meinem Kenntnisstand bezüglich 
Mikrocontrollern bezweifle, dass ich schnell an die grenzen des 
möglichen stoßen werde, was Bascom anbelangt. Und einmal die Materie 
verstanden, ist ein umstieg, falls notwendig, nicht das Problem.

@SonicHazard:
also wenn ich das richtig verstanden habe, kann ich im einfachsten Sinne 
die 6 Verbindungen des Flachbandkabels vom programmer direkt mit den 
jeweiligen Pins des ATMega8 verbinden, programmer in den Laptop und dann 
das Programm draufladen? Ohne irgend eine extra Schaltung aufzubauen?

@Jonas G:
ja habe mir auch schon das Arduino UNO board zugelegt, wollte es aber 
erstmal ohne solche Komplettlösungen versuchen, sollte das nix werden, 
weil ich mich zu dumm anstelle, werde ich damit weiter machen :)

LG Micha

von R. F. (rfr)


Lesenswert?

Micha schrieb:
> @SonicHazard:
> also wenn ich das richtig verstanden habe, kann ich im einfachsten Sinne
> die 6 Verbindungen des Flachbandkabels vom programmer direkt mit den
> jeweiligen Pins des ATMega8 verbinden, programmer in den Laptop und dann
> das Programm draufladen? Ohne irgend eine extra Schaltung aufzubauen?

Genau. Hierzu ist er nämlich entwickelt worden. Du solltest aber ein 
Uploader-Programm verwenden, falls das nicht bereits in den anderen 
Tools integriert ist. Als Uploader verwende ich AVRDUDE.

Robert

von m.n. (Gast)


Lesenswert?

Micha schrieb:
> ja habe mir auch schon das Arduino UNO board zugelegt, wollte es aber
> erstmal ohne solche Komplettlösungen versuchen,

Warum? Zum Einstieg ist die fertige Hardware doch eine richtige 
Erleichterung und Referenz für Deinen eigenen Aufbau. Der 6-polige 
Programmieranschluß ist auch schon vorhanden.
Damit bleibt der Anfangsfrust auf das (notwendige) Mindestmaß 
beschränkt.

von Oliver S. (oliverso)


Lesenswert?

Wenn du Steckbretter und AVRs schon da hast, einfach anfangen:

http://rn-wissen.de/wiki/index.php/AVR-Einstieg_leicht_gemacht

Oliver

von Micha (Gast)


Lesenswert?

Also ich habe jetzt doch mal meine ersten Gehversuche mit dem Arduino 
Uno gemacht, was auch gut funktioniert. Schaltung mit 3 LEDs wo man über 
einen Taster durch 6 verschiede Blinkmuster schalten kann.
Jetzt noch ne kleine Frage:
Funktioniert der Mikrocontroller dann nur auf dem Arduino board, oder 
könnte ich den Mikrocontroller nach dem brennen auch aus der Fassung 
nehmen und in meine Schaltung stecken? Also funktioniert der dann auch 
unabhängig vom Arduino, sodass ich das Arduino nur als programmer 
benutzen kann.
Und da der ATMega8 ja pingleich mit dem ATMega328 ist, kann ich doch 
diesen dann auch mit dem Arduino programmieren und dann unabhängig vom 
Arduino verwenden oder?

BASCOM hat mich am Anfang einfach zu sehr mit den 
Einstellungsmöglichkeiten erschlagen, dass ich für den Anfang doch zum 
Arduino und dessen IDE gewechselt bin...

LG Micha

von m.n. (Gast)


Lesenswert?

Micha schrieb:
> Also ich habe jetzt doch mal meine ersten Gehversuche mit dem Arduino
> Uno gemacht, was auch gut funktioniert.

Das ist doch schon mal gut!

Der ATmega328, den Du auf dem Arduino-Board programmiert hast, 
funktioniert auch in einer anderen/eigenen Schaltung. Allerdings braucht 
diese einen ext. Quarz zur Takterzeugung.
Den ATmega8 kannst Du nicht über die Arduino-IDE benutzen, da dort kein 
Bootloader vorhanden ist. Allerdings geht die Programmierung auf dem 
Board über Deinen Programmieradapter (6-pol. Anschluß).

Was Du jetzt geschickterweise machen kannst ist, das AVR-Studio 4.18 
(bitte keine 6er Version!) zu installieren und damit Deine weiteren 
Programme zu schreiben. Der µC kann ja zunächst auf dem Arduino-Board 
stecken bleiben. Damit hast Du dann alle Freiheiten, den µC über Deinen 
Programmieradapter zu programmieren.
Probiere es aus, es kostet nichts!

von Micha (Gast)


Lesenswert?

Ah super, das klingt schon mal sehr gut. Warum nicht Version 6?

Dann hätte ich noch eine Frage:
Um mich auf mein Beispiel mit den 3 LEDs zu beziehen, wäre es auch 
möglich anstatt mit einem Taster hardwareseitig durch die 6 Blinkmuster 
zu schalten, dies auch Softwareseitig zu realisieren?
Also was ich meine ist, dass ich den Arduino gern über ein kleines 
selbstgeschriebenes Tool auf dem PC steuern würde. Also zb ein kleines 
Tool wo ich zu Testzwecken eben einen Button habe wo ich durch die 
Blinkmuster schalten kann.
Nur als Beispiel um die Funktionsweise zu verstehen.

Ich bin wirklich sehr dankbar für die tolle Hilfe, ist echt ein super 
Forum!

LG Micha

von m.n. (Gast)


Lesenswert?

Micha schrieb:
> Warum nicht Version 6?

Die ist überladen und langsam. Manchmal ist weniger einfach besser!
Für die ATmega braucht man sie nicht.

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.