Hallo burli!
burli hat geschrieben:das man schnell an ihre Grenzen stößt
Man kann an die Grenzen der Highlevel-Befehle stoßen. Aber man kann nicht an die Grenzen von Bascom stoßen. Denn mit Bascom lässt sich alles machen, was man auch mit C machen kann. Man kann, gleich wie mit C, auch direkt auf die Register zugreifen und Teile des Programmes mit Inline-Assembler erweitern. Bascom wird kompiliert und liefert, genau wie C, einen Maschinencode, der direkt vom µC ausgeführt wird.
burli hat geschrieben:Die ganzen Funktionen sind nur so lange toll bis sie sich gegenseitig in die Quere kommen oder ähnliches.
Wenn man weiß, wie die Highlevel-Funktionen arbeiten, dann wird man so programmieren, dass sie sich nicht in die Quere kommen. Wenn man weiß, dass eine Highlevel-Funktion nicht unterbrochen werden darf, dann unterbindet man kurzzeitig die Interrupts. Wenn man weiß, dass eine Highlevel-Funktion in bestimmten Fällen etwas länger wartet und das Programm aufhält, dann wird man diese Funktion nicht in einer Schleife unterbringen in der es auf Zeit ankommt.
Je mehr man über Bascom und dessen Funktionen weiß, desto bessere Programme schreibt man damit. Und es gibt zwei gute deutschsprachige Bücher über die Programmierung mit Bascom. Das eine Buch erklärt mehr die Highlevelfunktionen und das andere Buch, wie man mit Bascom den µC voll ausnutzen kann. Es gibt mit Bascom keine Grenzen, die einem nicht der AVR-Mikrocontroller selbst vorgibt.
-
http://rowalt.de/mc/avr/avrbuch/index.htm
-
http://www.ckuehnel.ch/bcavr_buch2.htm
Mit Bascom hat man schon nach wenigen Stunden ein funktionierendes Programm zum µC übertragen. Während man bei C in dieser Zeit noch die Programme installiert und einrichtet, die dafür benötigt werden. C hat den entscheidenden Vorteil, dass man damit plattformunabhängiger programmieren kann. Und das beziehe ich jetzt nicht nur auf Windows, Linux und Mac, sondern auch auf die Zielcontroller. Wer einen AVR mit C programmieren kann, hat auch keine so großen Schwierigkeiten, einen AVR32 oder einen ARM mit C zu programmieren. Bascom ist hauptsächlich auf die ATtiny-, ATmega- und ATxmega-Familien begrenzt.
-
http://www.atmel.com/dyn/products/param ... ection=ASC
-
http://bascom-avr.de/Buch.aspx?ID=1
-
http://bascom-avr.de/Buch.aspx?ID=2
mfg
Gerold