DIL2106 - Manual
- Battery-powered Mode
- "Stand-alone" Programs
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.
The Philips controller LPC2106 aims at an area which was in the past dominated by 8/16Bit controllers, like the 68HC11 or 8051. As a 32Bit controller it can of course also be used in applications, where HC11/12 and 8051 are not powerful enough. Another advantage of a 32Bit controller over the 8051 and co. is its full 32Bit address space, thus eliminating the need for error-prone banking.
In 1991 the "ZWER11A" was created, which - on an area of 53mm x 51mm - provided everything needed for a single board computer. The controller, the MC68HC11A1, had 512 Bytes EEPROM for programs and 256 Bytes RAM on-chip. The processor clock was 2MHz. The ZWERG332 followed, a very powerful SBC with the controller MC68332 and external 512KB FLASH and 512KB RAM at 25MHz. With the DIL2106 the ZWERG series is continued.
The board consists of the controller, the core voltage supply (1,8V), the I/O voltage generator (3,3V), the reset controller and the RS232 interface.
The 2106 works with clock rates up to 60MHz. The clock is generated with a PLL, allowing variable clock rates. Thus, the power consumption of DIL2106 can be optimized by software.
1.1 Battery-powered Mode
DIL2106 ist perfectly suited for battery-powered applications.
The range for the supply voltage is from 3.4V to 5.5V. "On-board" are two voltage regulators. The core voltage is supplied by a DC-DC converter with 95% efficiency. The DC-DC converter is used for the 1.8V core voltage because the diffrerence between 5.5V and 1.8V is higher than between 5.5V and 3.3V for I/O. In addition, the core needs more current than I/O.
Besides these design features there are other methods to save power.
The current consumption of the 2106 depends on the clock rate. The clock rate can be adjusted from 20MHz (10MHz) to 60MHz by software. In applications which do not rquire the full processor power, this is a simple way to optimize power consumption. The DIL2106 can be adjusted to a current consumption between 6mA and 15mA (at 5V).
On-chip peripherals can be switched off by setting corresponding bits in the PCONP register (Power Control for Peripherals). Unused components can be disconnected from the supply voltage, such as Timer0, Timer1, UART0, UART1, PWM0, I2C, SPI and RTC.
In addition, the 2106 has two sleep modes. In "Idle Mode" the 2106 stops executing commands until reset or an interrupt occurs, e.g. from one of the two timers, the RTC, or other sources. In "Power Down Mode" the oscillator is halted, the current consumption falls below 1mA. Reset or an external interrupt causes the 2106 to "wakeup" from "Power Down Mode".
The DIL2106 development kit comes with:
- Single board computer DIL2106 with RS232 cable.
- CD-ROM with manuals and development software.
DIL2106 is plugged into a 32-pin high precision socket to protect the DIL2106 pins.
You need a PC with RS232 and the installed software, and a 5V power supply. Use the two wires at CN1: The red wire is for +5V, the blue wire is ground (GND). The power supply should provide 5V +/-10% to guarantee the mimimum RS232 levels.
After installation of the software and finishing the cabling you can compile and run your first program on the DIL2106. Read chapter "Download", to learn how this is done.
Our goal is now to compile and run a simple C program:
First, we create a project. From the menu bar select "Project-New Project". Give a name of your choice for the project. Now we add the example blink.c to our new project, selecting "Project-Project file list". The example blink.c is in the samples folder.
The program blink.c initializes Timer0, so that the LED (P0.16) blinks at a one second interval. Once initialized, the timer does this job without the CPU.
Under "ECO-C" we find the menu item "Rebuild all", to compile our program.
The last step is downloading the program to the target and start it. Select "Terminal-Download". When the terminal asks you to reset the target, switch off power and then on again. After the download has finished, the program is started automatically. And - we should see the LED blink.
For more information see the ECO-C-arm online help. The IDE is the same as the WinECO-C IDE and described in the WinECO-C manual.
4 "Stand-alone" Programs
After download, the program is already stored in the Flash of the LPC2106. The number of possible programming cycles is ca. 100000.
The solder jumper J1 selects the mode in which the controller starts after reset:
If J1 is connected (factory default), the internal Flash Boot Loader is activated,
J1 open starts the application program from Flash.
After "finishing" your program, you can remove J1 (best use desoldering wick). Alternatively you can connect two wires to the J1 solder pads, and use a switch to select the desired mode.
The Flash Boot Loader is part of the LPC2106 firmware, see description in the LPC2106 User Manual under "Flash Memory System and Programming".
NOTE: Programs generated with the Demo version of ECO-C-arm run only in bootstrap mode.
The controller LPC2106 is in a 48-pin LQFP package. The SBC DIL2106 has 32 pins. These pins are led to the I/O lines, GND and the supply voltage. Thus, all important I/Os are externally accessible.
In addition there are CN1 and CN2. CN1 is GND and VCC. CN2 is RxD0 and TxD0 with RS232 level. RxD0 and TxD0 are exclusively reserved for the RS232. Their alternate functions as I/O or PWM output (PWM1 and PWM3) cannot be used.
Wiring DIL32 (ST1):
Pin Function Alternative1 Alternative2
www.mct.net: Products: Singe Board Computers: DIL2106