B. Kainka:

Basiskurs R8C/13

Elektor-Verlag, 2008

Vorwort

Mit dem Dezemberheft 2005 stellte die Firma Glyn allen Elektor-Lesern eine Prozessorplatine mit dem R8C/13 und der nötigen Software zur Verfügung. Elektor war damit die erste Elektronik-Zeitschrift in Deutschland, die ihren Lesern ein kostenloses und vollständiges Mikrocontroller-System überreichte, ein wunderbares Weihnachtsgeschenk für zigtausend interessierte Mikrocontroller-Anwender. Der Erfolg blieb nicht aus. Das Dezemberheft war schnell vergriffen, und auch im Forum der Elektor-Homepage konnte man das rege Interesse sehen. In kurzer Zeit kamen mehr als 1000 Beiträge zusammen, Probleme wurden gelöst und Anwendungen diskutiert. Inzwischen kann man das R8C/13-Carrierboard bei mehreren Firmen preiswert bekommen, sodass es sich weiterhin lohnt, mit diesem System zu arbeiten.

In den folgenden Elektor-Ausgaben wurden die Grundlagen der Programmierung behandelt. Immer mehr Anwender schafften den Sprung von kleineren 8-Bit-Controllern zum R8C mit 16 Bit, von Assembler oder Basic zu einem professionellen C-Compiler. Dazu kam ein Leser-Wettbewerb, der weitere Ideen und Lösungen brachte, in denen man auf der Elektor-Homepage und auch auf der Buch-CD stöbern kann. Dieses Buch will einen Überblick geben. Es soll sowohl dem Einsteiger die ersten Schritte erleichtern als auch erfahrenen Anwendern des R8C weitere Anwendungsbereiche erschließen.

Allein hätte ich es nicht geschafft. Ich bedanke mich bei allen Elektor-Lesern, die sich am Forum und am R8C-Wettbewerb beteiligt haben und besonders Gunther Ewald und Alexander Pokorny von der Firma Glyn, die mit großem Einsatz Hilfe in allen technischen und organisatorischen Fragen geleistet haben. Mein ganz besonderer Dank gilt Olaf Kaluza, der als erster ein R8C-Board aus Japan mitgebracht hat. Daraus entstand dann die Idee für ein großes Elektor-Projekt. Dass es wirklich machbar ist, hätte ich nicht für möglich gehalten. Aber eine Anfrage beim Elektronik-Distributor Glyn und der Einsatz der Elektor-Redaktion unter Ernst Krempelsauer öffneten die Türen. Und so wurde das Unmögliche wahr: Ein kostenloser Mikrocontroller für alle Elektor-Leser.

Burkhard Kainka

Inhalt:

1 Einleitung    9
2 Die ersten Schritte    13
2.1 Die R8C/13-Platine    13
2.2 Einfache Downloadschaltung    14
2.3 Software-Installation    16
2.4 Der erste Hardware-Test    19
2.5 Musik ertönt!    24
2.6 Quelltexte bearbeiten und übersetzen    24
2.7 Takt mit Quarz oder Ring Oszillator    27
2.8 Eigene Projekte von Anfang an    32
3 Das Application-Board    41
3.1 Hardwareausstattung    41
3.3 Die USB-Schnittstelle    46
3.4 Treiber-Installation    48
3.5 Test der Platine    49
3.6 Arbeiten mit dem Debugger KD30    51
3.7 Start des KD30 über die HEW    53
4 Erste Software-Experimente    57
4.1 Das Ports-Projekt    57
4.3 Portausgaben an P1    61
4.4 Versuche mit Port 3    63
4.5 Ports als Eingänge    64
4.6 Pullup-Widerstände    65
4.7 AD-Wandler    66
4.8 Timer X als Zeitgeber    67
4.9 Ereigniszähler    68
4.10 Signalgenerator    69
4.11 Servosteuerung    70
5 R8C/13-Schnittstellen    73
5.1 Ansteuerung des LCD    73
5.2 Der AD-Wandler    81
5.3 Die serielle Schnittstelle UART0    83
5.4 Anwendung: Das Voltmeter    86
6 Der R8C/13 als Oszilloskop    89
6.1 Speicheroszilloskop für den PC    89
6.2 Messwert-Darstellung in Visual Basic    92
6.3 Fourier-Analyse    93
7 Das Grafik-LCD    95
7.1 Anschluss am Application-Board    95
7.2 Ansteuerung    97
7.4  Das LCD-Oszilloskop    99
7.5 Triggerung    100
7.6  Fourier-Analyse auf dem R8C/13    101
8 Der I²C-Bus    105
8.1 I²C-Basisfunktionen    105
8.2 Der Portexpander PCF8574    110
8.3 Der AD/DA-Wandler PCF8591    112
8.4 Das 64-KB-EEPROM 24C512    115
8.5 Der Uhrenbaustein PCF8583    118
8.7 Uhr mit LC-Anzeige    120
9 Ein universelles PC-Interface    123
9.1 Interface-Protokoll    123
9.2 Firmware    125
9.3 Ansteuerung in Visual Basic    128
9.4 Anwendersoftware CompactDefinition    132
9.5 Do-It-Programme    133
9.6 Porterweiterung mit I2C-Bus    138
10 HF-Messlabor mit dem R8C/13    141
10.1 Zusatzhardware    141
10.2 Auswahl der Gerätefunktionen    143
10.3 Frequenzmessung    144
10.4 L/C-Messgerät    150
10.5 Eichgenerator    152
10.6 Software-DDS    154
11 HF-Generatoren und Empfängersteuerung    157
11.1 DDS-Generator AD9835    157
11.2 Programmierbarer Quarzgenerator CY27EE16    162
11.3 Programmierbarer Oszillator ICS307-2    169
12 Projekte aus dem R8C-Wettbewerb    179
12.1 Speedmaster    179
12.2 TiltRocket    183
12.3  Lauf-Roboter aNT    184
12.4 M&M Sorting Machine    185
12.5 Fahrtregler    186
12.6 MicroPLC    187
12.7 MusicTree    188
12.8 Trenntrafo    189
12.9 Transrapid    190
12.10 Digitaluhr    191
12.11 Pendel-Anzeige    192
12.2 Datenlogger    193
12.13 Sprachanalyse    194
12.14 Universales Graphisches Display    195
12.15 Temperaturregler    196
12.16 Farberkennung    197
12.17 Clip und SMS    198
12.18 SD-Logger    199
12.19 Universal-Steuerung    200
12.20 TicTacToe    200
12.21 Gießerei    202
12.22 Zweikanal-Oszilloskop    202
12.23 DTMF-Fernsteuerung    204
12.24 GPS-Display    205
12.25 DCF77-Uhr    205
12.26 Mühlen-Modell    206
12.27 Pulsmessung    207
12.28 3D-Beschleunigungsmesser    208
12.29 Rotorinterface    209
12.30 Thermoalarm    210
12.31 16-Bit-Oszilloskop    211
12.32 XY-Plotter    212
12.33 Thermoelement    213
12.35 Tetalogger    214
12.36 Mobile    215
12.37 DCF-Zeitmessung    216
12.38 Anticarjacking    217
12.39 Analog-Multiplexer    218
12.40 SoundOfMadness    219
12.41 Tennis-Zähler    220
12.42 FreqVolt    221
12.43 FreqOszi    222
12.44 Funkuhr    223
12.45 SynthOS2    224
12.46 SoftStart    225
12.47 DCF77    225
12.48 ZweikanalOszi    226
12.49 Heizungssteuerung    227
Anhang  228

Siehe auch:   16-Bit-Mikrocontroller R8C