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
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)
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.
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
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
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.
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
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!
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