Burkhard Kainka, André Helbig

Messen, Steuern, Regeln mit C-Control II

Franzis-Verlag 2002

Probekapitel 10


Vorwort

Viele Anwender der C-Control/Basic-Unit von Conrad sind bei ihren Anwendungen an die Grenzen dieses relativ kleinen Systems gestoßen und haben mit Begeisterung die neuere und wesentlich leistungsfähigere C-Control II Unit aufgenommen. Außer einem leistungsstarken Prozessor und einem umfangreichen Speicher bietet C-Control II mit seinem Multithreading-Betriebssystem ein wirksames Werkzeug zur professionellen Lösung auch größerer Aufgaben. Die speziell für dieses System entwickelte Programmiersprache C2 bietet viele Möglichkeiten eines C-Compilers, ist aber mit ihrer vereinfachten Syntax gegenüber C wesentlich leichter zu erlernen.

Dieses Buch versucht, den Einstieg in die Arbeit mit C-Control II zu vereinfachen. Es soll keineswegs das Handbuch zur Unit ersetzen, sondern praxisbezogene Beispiele liefern, die entscheidende Grundlagen verdeutlichen und zugleich als Bausteine für eigene Entwicklungen dienen. Die Vielzahl der vorhandenen Schnittstellen und Hardwarefunktionen machen C-Control II zu einem universell einsetzbaren System. Eine Einführung in die Systemprogrammierung mit Assembler und C erweitert die Möglichkeiten auch für extrem zeitkritischen Aufgaben.

Wir wünschen unseren Lesern viel Erfolg bei der Arbeit mit diesem Buch.

Burkhard Kainka (www.B-Kainka.de)
André Helbig (www.CC2Net.de)


Inhalt

1 Einleitung 11
1.1 Die ersten Schritte mit dem Application Board 11
1.2 C2-Dateien 14
1.3 Erweiterung eines Programms 16
1.4 Der Simulator 21
1.5 Downlaod des OS 23
1.6 Arbeiten ohne das Application Board 25

2 Port-Ein- und Ausgaben 28
2.1 Schnelle Portausgaben 28
2.2 Schalten externer Lasten 30
2.3 Eingangsports 33
2.4 Eine Mini-SPS 36
2.5 Impulszähler 39
2.6 Frequenzmessung 41
2.7 Zusätzliche Porteingänge 42
2.8 Ausgabe über Schieberegister 45
2.9 Multithread-Programme 48

3 Ein/Ausgaben am Application Board 52
3.1 Verwendung der Tastatur 52
3.2 Verwendung einer Eingabemaske 56
3.3 Das externe LCD 59
3.4 Eine DCF-Funkuhr 63
3.5 Der Druckerport 65
3.6 Das Modul strx.c2 V2 67

4 Analoge Eingänge 74
4.1 Spannungsmessung 74
4.2 Ein vierfaches Voltmeter 77
4.3 Passive analoge Sensoren 79
4.4 Sensoren mit Spannungsausgang 83
4.5 Analoge Sensoren und Sensor-Tabellen 84
4.6 Ein AD-Multiplexer 87
4.7 Langzeit-Datenerfassung 91

5 PLM-Ausgänge 95
5.1 Leistungssteuerung 95
5.2 Servosteuerung 98
5.3 Ein Drehstromgenerator 100
5.4 Ein Schaltregler 102

6. Die seriellen Schnittstellen 106
6.1 Textausgaben über Hwcom 106
6.2 Textempfang 109
6.3 Empfang von Steuerdaten 110
6.4 Eine Interface-Emulation 112
6.5 Anwendung der Softwareschnittstelle Swcom 119
6.6 Erweiterte Interface-Software für Swcom 123
6.7. Experimente mit DoIt-CC 129
6.8 Turbo Compact 2000 131
6.9 Fernabfrage und Steuerung über Modem 133

7. Der I²C-Bus 154
7.1 Das Busprotokoll 154
7.2 Anschluss eines Portbausteins PCF8574 156
7.4 Ein Standard-LCD am I²C-Bus 159
7.5 Serielle EEPROMs 160
7.6 Das Modul EEPROM.c2 164
7.7 Ein EEPROM-Datenlogger 170
7.8 Das CC2Net-RAM-Device 179

8 Der 2W-Bus 184
8.1 Das Busprotokoll 184
8.2 Übertragung der Busadresse 186
8.3 Das Digitalportmodul PIO4 188
8.4 Das 2W-Bus Display 189

9 Der CAN-Bus 193
9.1 CAN-Grundlagen 193
9.2 Übertragung von Portdaten 197
9.3 Übertragung analoger Messwerte 200

10 Assembler-Systemfunktionen 203 (Textauszug online)
10.1 Aufruf von Systemfunktionen 203
10.2 Der Controller C164CI 207
10.3 Der Kommandozeilen-Assembler 208
10.4 Assembler in der Tasking EDE 210
10.5 Speicherzugriffe 217
10.6 Systemroutinen im User-RAM 221
10.7 Systemroutinen im internen RAM 223

11 Systemprogrammierung in C 230
11.1 C-Projekte 230
11.2 Schieberegister-Ausgabe 236
11.3 LCD-Zugriffe in C 242
11.4 Analoge Datenerfassung in C 244
11.5 Interface-Emulation in C 247
11.6 Ein Speicheroszilloskop 249

12 Die C-Control II Station 252
12.1 Einsatzbereiche und Zusatzgeräte 252
12.2 Stromversorgung 254
12.3 Interne Peripherie der Station 255
12.4 Schnelle Ausgaben durch Systemroutinen 259

Anhang 263
Literatur 263
Sachverzeichnis 264