


DIL2106 - Handbuch |
Autor: Erhard Scherer
Copyright © MCT Paul & Scherer Mikrocomputertechnik GmbH. Alle Rechte vorbehalten.
Dieses Handbuch, wie auch das beschriebene Produkt, wurde sorgfältig erstellt und geprüft. Trotzdem können Fehler und Irrtümer nicht ausgeschlossen werden. MCT übernimmt keinerlei Verantwortung für die uneingeschränkte Richtigkeit und Anwendbarkeit des Handbuchs oder des beschriebenen Produkts und für die aus eventuell vorhandenen Fehlern resultierenden Schäden.
Änderungen ohne vorherige Ankündigung vorbehalten.
![]()
1 Einführung
Der Controller LPC2106 von Philips zielt auf Applikationen, die seither von 8/16Bit Controllern wie dem 68HC11 oder 8051 beherrscht wurden. Als 32Bit-Controller kann er natürlich auch in Bereichen eingesetzt werden, für die HC11 und 8051 oder auch HC12 einfach zu schmalbrüstig sind. Ein weiterer Vorteil eines 32Bit-Controllers gegenüber 8051 und Co. ist der durchgängige 32Bit-Adressraum. Fehleranfälliges Banking hat man einfach nicht nötig.
Ende 1991 entstand der Einplatinencomputer "ZWER11A" der auf einer Fläche von 53mm x 51mm alles vereinte, was einen kompletten Einplatinencomputer ausmacht. Der dabei eingesetzte MC68HC11A1 verfügte über 512 Bytes EEPROM für Programme und 256 Bytes RAM. Der Prozessortakt lag bei 2MHz. Es folgte ZWERG332, ein sehr leistungsfähiger SBC mit dem Controller MC68332 als Herzstück und extern 512KB FLASH und 512KB RAM bei 25MHz Takt. DIL2106 setzt die Tradition der ZWERGE fort.
Auf dem Board finden sich neben dem Controller die Spannungserzeugung für den Core (1,8V), die I/O-Spannungserzeugung (3,3V), der Reset-Controller und der RS232-Pegelwandler.
Der 2106 kann bis zu 60MHz Takt vertragen. Erzeugt wird der Prozessortakt über eine PLL. Mit Hilfe der PLL kann der Prozessortakt auch auf Werte kleiner als 60Mhz eingestellt werden. Der Stromverbrauch von DIL2106 kann damit per Software optimiert werden.
![]()
1.1 Batteriebetrieb
DIL2106 ist hervorragend für batteriebetriebene Applikationen geeignet.
Der Bereich für die Versorgungsspannung geht von 3,4V bis 5,5V. Erreicht wird dies durch den Einsatz von zwei Spannungsreglern "on-board". Für den Betrieb mit Batterie oder Akku können die Zellen in Reihe geschaltet werden, um den Arbeitsbereich von 3,4-5,5V zu treffen.
Die Corespannung wird von einem DC-DC-Wandler mit einem Wirkungsgrad von ca. 95% erzeugt. Der etwas teurere DC-DC-Wandler wurde für die 1,8V Corespannung gewählt, weil an dieser Stelle am meisten Verlustleistung eingespart werden kann. Die Spannungsdifferenz ist von 5,5V nach 1,8V grösser als von 5,5V nach 3,3V. Der Core hat zudem eine höhere Stromaufnahme im Vergleich zur I/O.
Neben den oben beschriebenen Massnahmen im Schaltungsdesign gibt es noch weitere Möglichkeiten, Strom zu sparen.
Die Stromaufnahme des 2106 ist abhängig von seiner Taktrate. Die Taktrate kann per Software von 20MHz (10MHz) bis 60MHz eingestellt werden. Bei Applikationen, die ohnehin nicht die volle Prozessorleistung beanspruchen, ist dies ein einfacher Weg, die Leistungsaufnahme zu optimieren. Beim DIL2106 lässt sich so ein Strom einstellen, der sich zwischen 6mA und 15mA bewegt (Werte für eine Versorgungsspannung von 5V).
On-Chip-Peripherie kann per Software abgeschaltet werden. Dazu werden einzelne Bits im PCONP-Register (Power Control for Peripherals) gesetzt. Nicht benötigte Funktionen werden so einfach von der Stromzufuhr abgeschnitten. Im Einzelnen sind dies: Timer0, Timer1, UART0, UART1, PWM0, I2C, SPI und RTC.
Um die Qual der Wahl noch ein bisschen zu steigern, kennt der 2106 noch zwei Stromsparbetriebsarten. Im "Idle Mode" führt der 2106 keine Befehle mehr aus, sondern wartet auf Reset oder einen Interrupt. Dieser Interrupt kann z.B. von einem der beiden Timer, der RTC, oder weiteren Quellen kommen. Im "Power Down Mode" wird der Oszillator angehalten, die Stromaufnahme von DIL2106 geht dann in den Bereich deutlich unter 1mA. Aus dem "Power Down Mode" kann der 2106 durch Reset oder einen externen Interrupt aufgeweckt werden.
![]()
2 Inbetriebnahme
Der Lieferumfang des DIL2106-Entwicklungspaketes besteht aus:
- Einplatinencomputer DIL2106 mit bereits angelötetem RS232-Kabel.
- CD-ROM mit den Handbüchern und der Entwicklungssoftware.
DIL2106 steckt bereits in einem 32poligen Präzisionssockel. Der Sockel soll die Beinchen von DIL2106 beim Transport schützen. Außerdem können Sie den Sockel in Ihrer Applikation einsetzen - vorausgesetzt, er hat den Transport unbeschadet überstanden.
Für die erste Inbetriebnahme ist ein PC mit RS232, auf dem die Entwicklungssoftware installiert wird, sowie ein 5V-Netzteil nötig. Für die Stromversorgung sind an CN1 zwei Litzen angelötet. Die rote Litze kommt an +5V, die blaue an Masse (GND). Das Netzteil sollte 5V +/-10% liefern, damit die Erzeugung der Spannungspegel für die RS232 sichergestellt ist.
Nachdem die Softwareinstallation und die Verkabelung erledigt sind, können Sie erste Programme übersetzen und auf DIL2106 laufen lassen. Wie das geht, erfahren Sie im Kapitel Download.
![]()
3 Download
Starten Sie ECO-C-arm.
Unser Ziel ist nun das Übersetzen und Ausführen eines kleinen C-Programms:
Als erstes legen wir ein Projekt an. Im Menue "Project" wählen wir "New Project". Der Projektname ist frei wählbar. Nun fügen wir das Beispiel blink.c zu diesem Projekt hinzu, Menuepunkt "Project-Project file list". Das Beispiel blink.c befindet sich im Verzeichnis samples.
Das Programm blink.c initialisiert den Timer0 so, dass dieser die LED an P0.16 im Sekundentakt blinken lässt. Der Vorgang läuft - nachdem er angestossen ist - selbständig ab.
Im Menue "ECO-C" finden wir den Menuepunkt "Rebuild all". Damit wird das Programm übersetzt.
Als letzten Schritt laden wir das Programm in unser Target und starten es, Menuepunkt "Terminal-Download". Das Terminal fordert uns zum Powerup-Reset auf. Also, Netzteil ausschalten und wieder einschalten. Der Download läuft ab, das Programm wird automatisch gestartet. Und - Zitat - "Sie blinkt doch".
Weitere Informationen finden Sie in der Online-Hilfe von ECO-C-arm. Die Oberfläche ist identisch mit der von WinECO-C und im WinECO-C-Handbuch beschrieben.
![]()
4 "Stand-alone" Programme
Nach dem Download ist das Anwendungsprogramm bereits fest im Flash des LPC2106 gespeichert. Die Zahl der möglichen Progammierzyklen liegt bei 100000.
Mit dem Lötjumper J1 wird festgelegt, in welchem Mode der Controller nach dem Reset startet:
Ist J1 verbunden (standardmässig bei Auslieferung), startet der interne Flash Boot Loader,
ist J1 offen, wird das Anwendungsrogramm im Flash gestartet.Nachdem Ihr Programm "fertig" ist, können Sie J1 entfernen (am besten geht es mit Hilfe von Lötsauglitze). Die beiden Lötpads von J1 eignen sich aber auch zum Anlöten von zwei Litzen, die dann mit einem Schalter verbunden werden, um bequem zwischen beiden Varianten umzuschalten.
Der Flash Boot Loader ist fest im LPC2106 eingebaut. Wie er funktioniert, können Sie im LPC2106 User Manual unter "Flash Memory System and Programming" nachlesen.
ACHTUNG: Bei der Demo-Version ECO-C-arm kann das Programm nur im Bootstrap-Mode gestartet werden.
![]()
5 Steckerbelegung
Der Controller LPC2106 ist in ein 48poliges LQFP-Gehäuse verpackt. Auf dem SBC DIL2106 stehen 32 Anschlüsse zur Verfügung. Auf diese Anschlüsse sind die I/O-Leitungen, GND und die Versorgungsspannung gelegt. Alle wichtigen I/Os sind so zugänglich.
Zusätzlich gibt es noch weitere Anschlüsse auf CN1 und CN2. Auf CN1 liegt die Stromversorgung GND und VCC. Auf CN2 sind RxD0 und TxD0 zugänglich, und zwar schon mit RS232-Pegel. RxD0 und TxD0 sind ausschließlich für die RS232 reserviert. Ihre Funktion als I/O bzw. als PWM-Output (PWM1 und PWM3) ist nicht zugänglich.
Belegung DIL32 (ST1):
Pin Funktion Alternative1 Alternative2 1
P0.10
RTS1
CAP1.0
2
P0.11
CTS1
CAP1.1
3
P0.12
DSR1
MAT1.0
4
P0.25
PIPESTAT2
-
5
P0.26
TRACESYNC
-
6
P0.13
DTR1
MAT1.1
7
P0.14
DCD1
INT1
8
P0.15
RI1
INT2
9
P0.16
-
INT0
10
P0.17
-
CAP1.2
11
P0.18
-
CAP1.3
12
P0.19
-
MAT1.2
13
P0.20
-
MAT1.3
14
P0.21
-
PWM5
15
P0.27
TRACEPKT0
TRST
16
GND
-
-
17
P0.28
TRACEPKT1
TMS
18
P0.29
TRACEPKT2
TCK
19
P0.30
TRACEPKT3
TDI
20
P0.31
EXTIN0
TDO
21
P0.2
SCL
CAP0.0
22
P0.3
SDA
MAT0.0
23
P0.4
SCK
CAP0.1
24
P0.5
MISO
MAT0.1
25
P0.6
MOSI
CAP0.2
26
P0.7
SSEL
PWM2
27
P0.8
TxD1
PWM4
28
P0.9
RxD1
PWM6
29
P0.22
TRACECLK
-
30
P0.23
PIPESTAT0
-
31
P0.24
PIPESTAT1
-
32
VCC
-
-
Belegung CN2:
Pin Funktion 1
GND
2
RxD0
3
TxD0
Belegung CN1:
Pin Funktion 1
GND
2
VCC
www.mct.de: Produkte: Einplatinencomputer: DIL2106