Das hier soll kein "BASCOM ist besser als Arduino" oder umgekehrt werden sondern einfach nur zeigen wie man einen Arduino UNO mit Bascom nutzen kann. Gerade vielleicht für Leute interessant die Bascom einfach einmal probieren wollen ohne grossartig zu investieren. So ein UNO R3 mit gesockeltem Amega328P und ATmega16U2 als USB wandler bekommt man ab ca 6 EUR, ein Programmer ist nicht notwendig. Vorteil ist auch das man sich nicht mit den Fuses beschäftigen muss, die kann man über den Bootloader nicht ändern. Den Atmega328P auf dem UNO bekommt man mit der Beschränkung auf 4K Programm der Demo nicht voll.
Getestet mit der aktuellen Bascom Demoversion 2.0.7.5 , einem frisch erworbenem UNO und frischem Windows7.
Zuerst Installieren wir Bascom und die Arduino Programmierumgebung von hier: arduino.cc/en/Main/Software . Ich empfehle die: Windows ZIP file for non admin install, gebraucht wird eigentlich nur der Unterodner drivers. Zip entpacken reicht bei der non admin Version.
Jetzt erst Arduino UNO am PC anschliessen, Windows wird einen Treiber suchen und keinen finden, Treiber dann manuell installieren, liegen unter ...\arduino-1.6.13\drivers .
Im Gerätemanager nachschauen unter welchem COM port sich der UNO installiert hat, den COM port merken. Auf dem UNO ist standardmässig ein Blinkprogramm installiert, die LED mit der Bezeichnung L blinkt im Sekundentakt sobald Strom (z.b.per USB) anliegt.
3. Bascom starten, unter Options\programmer braucht der UNO dies hier:
bild4.PNG
Nun ein kleines testprogramm, kopieren und kompilieren.
Alles anzeigen
Nun sollte sich das Programm mit der Brennfunktion von Bascom Brennen lassen.
Erster unterschied ist das die LED jetzt nun 1 Sekunde an ist und 2 Sekunden aus bleibt. Zweiter test ist die serielle ausgabe der print befehle.
Dazu in Bascom den Terminal Emulator starten, den gemerkten COM Port vom Gerätemanager einstellen und die serielle Geschwindigkeit passend zum Programm (4800) einstellen:
bild5.PNG
Jetzt sollte der UNO auch mit uns kommunizieren:
bild6.PNG
Somit einfach und günstig das erste "Hello World" mit Bascom produziert.
Eigentlich macht sich sowas besser im Wiki, da kann man sowas bestimmt noch genauer erklären. Was nicht ist kann noch werden, hab noch ähnliches für den Mega2560, der ist ein bisschen anders.
Wenn thematisch nicht ins Programmerforum passt bitte verschieben.
Tobias
Getestet mit der aktuellen Bascom Demoversion 2.0.7.5 , einem frisch erworbenem UNO und frischem Windows7.
Zuerst Installieren wir Bascom und die Arduino Programmierumgebung von hier: arduino.cc/en/Main/Software . Ich empfehle die: Windows ZIP file for non admin install, gebraucht wird eigentlich nur der Unterodner drivers. Zip entpacken reicht bei der non admin Version.
Jetzt erst Arduino UNO am PC anschliessen, Windows wird einen Treiber suchen und keinen finden, Treiber dann manuell installieren, liegen unter ...\arduino-1.6.13\drivers .
Im Gerätemanager nachschauen unter welchem COM port sich der UNO installiert hat, den COM port merken. Auf dem UNO ist standardmässig ein Blinkprogramm installiert, die LED mit der Bezeichnung L blinkt im Sekundentakt sobald Strom (z.b.per USB) anliegt.
3. Bascom starten, unter Options\programmer braucht der UNO dies hier:
bild4.PNG
Nun ein kleines testprogramm, kopieren und kompilieren.
BASCOM-Quellcode
- $regfile = "m328pdef.dat"
- $crystal = 16000000
- $hwstack = 40
- $swstack = 16
- $framesize = 32
- baud = 4800
- Config Portb.5 = output 'Konfigurieren des Ausgangs der Onboard LED
- dim Durchlauf as Byte 'Variable fuer Durchlaufe setzen
- Durchlauf = 0 'Durchläufe auf null setzen, default ist 255
- Print "Bascom Test auf Arduino UNO R3"
- Wait 1
- DO 'start der schleife
- Print "durchlauf Nr "; durchlauf
- print "LED an"
- portb.5 = 1 'LED einschalten
- print "Warten 1 sekunde"
- wait 1
- print "LED aus"
- portb.5 = 0 'LED ausschalten
- wait 2
- print "Warten 2 sekunden"
- incr durchlauf
- loop 'ende der Schleife, zurueck zum anfang der Schleife
Nun sollte sich das Programm mit der Brennfunktion von Bascom Brennen lassen.
Erster unterschied ist das die LED jetzt nun 1 Sekunde an ist und 2 Sekunden aus bleibt. Zweiter test ist die serielle ausgabe der print befehle.
Dazu in Bascom den Terminal Emulator starten, den gemerkten COM Port vom Gerätemanager einstellen und die serielle Geschwindigkeit passend zum Programm (4800) einstellen:
bild5.PNG
Jetzt sollte der UNO auch mit uns kommunizieren:
bild6.PNG
Somit einfach und günstig das erste "Hello World" mit Bascom produziert.
Eigentlich macht sich sowas besser im Wiki, da kann man sowas bestimmt noch genauer erklären. Was nicht ist kann noch werden, hab noch ähnliches für den Mega2560, der ist ein bisschen anders.
Wenn thematisch nicht ins Programmerforum passt bitte verschieben.
Tobias
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von stefanhamburg () aus folgendem Grund: BASCOM und Arduino kann man ruhig ausschreiben. Muss nicht mit B... und A... abgekürzt werden.