Single-board microcontroller

This board provides all of the circuitry necessary for a useful control task: a microprocessor, I/O circuits, a clock generator, RAM, stored program memory and any necessary support ICs.

The development board exists to showcase or train on some particular processor family and, therefore, internal implementation is more important than external function.

Some microcontroller boards using a general-purpose microprocessor can bring the address and data bus of the processor to an expansion connector, allowing additional memory or peripherals to be added.

Analog signals, representing a continuous variable range, such as temperature or pressure, can also be inputs and outputs for microcontrollers.

Discrete digital inputs and outputs might be buffered from the microprocessor data bus only by an addressable latch, or might be operated by a specialized input/output IC, such as an Intel 8255 or Motorola 6821 parallel input/output adapter.

Several controllers, particularly those intended for training, also include a pluggable, re-usable breadboard for easy prototyping of extra I/O circuits that could be changed or removed for later projects.

Some devices have firmware available to implement a Web server, allowing an application developer to rapidly build a Web-enabled instrument or system.

Early microcontrollers relied on erasable programmable read-only memory (EPROM) devices to hold the application program.

As the EPROM would be removed and replaced many times during program development, it was common to provide a ZIF socket to avoid wear or damage.

When the single-board controller formed the entire development environment (typically in education), the board might also have included a simple hexadecimal keypad, calculator-style LED display, and a "monitor" program set permanently in ROM.

Single-board "keypad and calculator display" microcontrollers of this type were very similar to some low-end microcomputers of the time, such as the KIM-1 or the Microprofessor I.

[5] When desktop personal computers appeared, initially CP/M or Apple II, then later the IBM PC and compatibles, there was a shift to hosted development.

This massive reduction in the cycle time to test a new version of a program gave an equally large boost in development speed.

Single-chip microcontrollers integrate memory (both RAM and ROM) on-package and, therefore, do not need to expose the data and address bus through the pins of the IC package.

These changes also reduce the area required on the printed circuit board and simplify the design of the single-board microcontroller.

With the development of affordable EEPROM and flash memory, it became practical to attach the controller permanently to the board and to download program code from a host computer through a serial connection.

Higher level programming languages abstract details of the hardware, making differences between specific processors less obvious to the application programmer.

Accordingly, almost all development now is based on cross-compilation from personal computers and programs are downloaded to the controller board through a serial-like interface, usually appearing to the host as a USB device.

The Make Controller Kit with an Atmel AT91SAM7X256 ( ARM ) microcontroller.
Arduino Diecimila with Atmel ATMEGA168
A single-board computer with a hex keypad and 7-segment display
A 8048 -family microcontroller with an on-board UV EPROM , the 8749
A development board for a PIC family device
Dwengo board