ARM7TDMI (LPC2103)
LPC2103

The LPC2101, LPC2102, LPC2103 microcontrollers are based on a 16-bit/32-bit ARM7TDMI-S CPU with real-time emulation that combines the microcontroller with 8 kB, 16 kB or 32 kB of embedded high-speed flash memory. A 128-bit wide memory interface and a unique accelerator architecture enable 32-bit code execution at the maximum clock rate. For critical performance in interrupt service routines and DSP algorithms, this increases performance up to 30 pct over Thumb mode. For critical code size applications, the alternative 16-bit Thumb mode reduces code by more than 30 pct with minimal performance penalty. Due to their tiny size and low power consumption, the LPC2101, LPC2102, LPC2103 are ideal for applications where miniaturization is a key requirement. A blend of serial communications interfaces ranging from multiple UARTs, SPI to SSP and two I2C-buses, combined with on-chip SRAM of 2 kB/4 kB/8 kB, make these devices very well suited for communication gateways and protocol converters. The superior performance also makes these devices suitable for use as math coprocessors. Various 32-bit and 16-bit timers, an improved 10-bit ADC, PWM features through output match on all timers, and 32 fast GPIO lines with up to nine edge or level sensitive external interrupt pins make these microcontrollers particularly suitable for industrial control and medical systems.


ON CHIP Debug with OPENOCD & JTAG-Tiny
JTAGkey-Tiny

eNGSistemi uses as JTAG interface for code download and in-circuit-debug the JTAG-Tiny device by Amontec, with ARM Multi-ICE 20-pin header. The circuit is USB self-powered, with supply current lower than 85 mA;wide voltage level compatibility, between 2.8V and 5V. Code download speed reaches about 130 kBytes/s(OpenOCD con DCC), with a max JTAG frequency of 6 MHz, full compatible with Open-On-Chip-Debugger (OpenOCD).


ECLIPSE
eclipse

Eclipse is an open source community whose projects are focused on building an open development platform comprised of extensible frameworks, tools and runtimes for building, deploying and managing software across the lifecycle. A large and vibrant ecosystem of major technology vendors, innovative start-ups, universities, research institutions and individuals extend, complement and support the Eclipse platform.

eNGSistemi uses CDT plug-in, a professional level IDE (Integrated Development Environment) to develop C/C++ code, born from an open source project and widely adopted in the world of embedded software developers, especially for ARM family microcontrollers by means of GCC compiler.

I²C bus i2c

The I²C bus (a registered trademark of NXP) represents for eNGSistemi a swiss army knife; this technology has been adopted in many applications, providing an effective and flexible communication channel between devices. The most important IC producers trend in using more often devices based on this bus, elevates this bus to a standard de facto rank. eNGSistemi had developed a proprietary software to manage I²C bus on microcontrollers without dedicated hardware (by means of bit banging). Following you'll find the link to the NXP's site, with the current version of the standard.

I²C standard

HD44780 standard for LCD control

The HD44780 control by Hitachi has been promoted, in time, to a reference for most LCDs in the market. The standard is based on 3 command lines and 4 or 8 data lines, with many look settings. It works with LCDs having 8, 16, 32, 40 characters with one or more lines, different font sizes and various visual effects. eNGSistemi has developed a proper device for I²C link between uC and LCD, using two I/O lines only.

Application note by Duane Bala on the HD44780 standard (very important)