B. Kainka 

Basiskurs BASCOM-AVR

Elektor-Verlag, 2011

FAQ-Seite zum Buch: Hinweise und Korrekturen

Vorwort

Mikrocontroller der ATMEL AVR-Familie sind besonders einfach und vielseitig einsetzbar und daher inzwischen weit verbreitet. In Elektor wurden schon viele spezielle Anwendungen und Platinen mit einem ATmega oder einem ATtiny-Controller vorgestellt. Aber meist ging es um fertige Anwendungen. Hier nun soll die Programmierung im Mittelpunkt stehen. BASCOM ist dazu ein ideales Werkzeug, denn die Lernkurve ist steil. Es braucht nur wenig Vorbereitung, dann kann jeder eigene Ideen umsetzen.
 
AVR-Controller und BASCOM sind ein starkes Team! Was immer man entwickeln möchte, meist hat der ATmega schon das Wichtigste an Board. Ports, Timer, AD-Wandler, PWM-Ausgänge und serielle Schnittstelle, RAM, Flash-ROM und EEPROM, alles ist reichlich vorhanden. Und BASCOM macht die Anwendung zu einem Kinderspiel. Auch komplexe Peripherie wie LCD, RC5 und I2C lassen sich mit wenigen Befehlen nutzen.
 
Die Hardware-Basis ist breit. Ganz gleich, ob Sie das STK500 von ATMEL verwenden, das ATM18 aus dem ELEKTOR/CC2-Projekt, eines der zahlreichen Boards anderer Firmen oder ein eigenes Board, das Sie auf einer Lochrasterplatine aufbauen, mit den Beispielen aus diesem Buch können Sie gleich loslegen. Es macht auch keinen großen Unterschied, ob Sie einen Mega8 bzw. den Mega88 oder einen der größeren Controller wie Mega16 oder Mega32 einsetzen. Die Controller unterscheiden sich im Wesentlichen durch die Anzahl der verfügbaren Ports und die Größe der internen Speicher. Für sehr kleine Projekte bieten sich auch Controller aus der ATtiny-Serie wie der besonders preiswerte ATtiny13 an. So lassen sich eigene Projekte mit geringen Kosten und wenig Zeitaufwand umsetzen.
 
Viel Spaß und guten Erfolg wünscht
 
Ihr Burkhard Kainka

 




Inhalt:

1 Entwicklungssysteme    7
1.1 Bascom-AVR    7
1.2 ATM18   10
1.3 Das ES-M32    16 (Siehe auch: www.elexs.de/ESM32.htm )
2. Bascom-Grundlagen    22
2.1 Verwendung der seriellen Schnittstelle    22
2.2 Der AD-Wandler    24
2.3 Die serielle Software-Schnittstelle    25
2.4 Ports und ihre Anwendung    26
2.5 Schrittmotoren ansteuern    30
2.6 Timer    31
2.7 Timer-Interrupt    35
2.8 Gemittelte Messwerte    36
2.9 PWM-Ausgaben   38
2.10 RAM und EEPROM    39
2.11 Tastenabfragen   40
2.12 Tastenabfragen im Timer-Interrupt    44
3 Hardware-Erweiterungen   47
3.1 Der I2C-Bus    47
3.2 LC-Display    52
3.3 RC5-Decoder    63
3.4 Ansteuerung eines Relais-Interface   64
3.5 Encoder    57
4 LED-Controller    59
4.1 LED-Lichtsensor    59
4.2 Tiny13-Softblinker    61
4.3 LED-Steuerung mit sechs PWM-Kanälen    62
4.4 Programmierbarer LED-Controller    65
4.5 LED-Controller mit 64 Ausgängen    73
4.6 Trigger-Blitzlicht mit ATM18    79
5 Messtechnik    85
5.1 Frequenzmessung    85
5.2 Anwendungen des AD-Wandlers    86
5.3 Vermeidung von AD-Messfehlern    91
5.4 ATM18-Oszilloskop    95
5.5 ATM18 Logikanalyzer    105
5.6 Kapazitätsmessung bis 10 µF    112
5.7 Kapazitätsmessung im pF-Bereich    114
5.8 Touch-Slider    118 (Siehe auch: www.elektronik-labor.de/Projekte/Slider1.html )
5.9 NF-DDS-Generator    126
6 Mikrocontroller-Interfaces    129
6.1 Temperaturmessung mit  DS1820    129
6.2 Thermoelement-Interface MAX6675    136
6.3 Mega32-Datenlogger    137
6.4 Ein universelles PC-Interface    142
7 DSP-Radio SI4735    151
7.1 ATM18 und SI4735    151
7.2 RDS-Dekodierung    158
7.3 SI4735-Potiabstimmung    162
7.4 Das Elektor-DSP-Radio    167  (siehe auch: http://www.elektronik-labor.de/ElektorDSP/ElektroDSP.html )
8 Touch-Display eDIP 240-7   179 (siehe auch: www.elexs.de/mikros/edip1.html )
8.1 Die Steuerplatine    179
8.2 Einschaltbildschirm    184
8.3 Hello World    188
8.4 Touch-Felder    191
8.5 Berührungsdauer auswerten   194
8.4 Grafische Anzeige    199
9 Anhang  202