Microcontroller

From Free net encyclopedia

A microcontroller (or MCU) is a computer-on-a-chip used to control electronic devices. It is a type of microprocessor emphasizing self-sufficiency and cost-effectiveness, in contrast to a general-purpose microprocessor (the kind used in a PC). A typical microcontroller contains all the memory and interfaces needed for a simple application, whereas a general purpose microprocessor requires additional chips to provide these functions.

A microcontroller is a single integrated circuit with the following key features:

This integration drastically reduces the number of chips and the amount of wiring and PCB space that would be needed to produce equivalent systems using separate chips.

Microcontrollers are inside many kinds of electronic equipment (see embedded system). They are the vast majority of all processor chips sold. Over 50% are "simple" controllers, and another 20% are more specialized digital signal processors (DSPs). A typical home in a developed country is likely to have only one or two general-purpose microprocessors but somewhere between one and two dozen microcontrollers. They can be found in almost any electrical device, washing machines, microwave ovens, telephones etc. Image:PIC18F8720.jpg

Contents

Description

In addition to the key features listed above, most microcontrollers today take further advantage of not needing external pins for memory buses. They can afford to use a Harvard architecture: separate memory buses for instructions and data, allowing accesses to take place concurrently.

Microcontrollers also usually have a variety of input/output interfaces. Serial I/O (UARTs) are very common, and many include analog-to-digital converters, timers, or specialized serial communications interfaces like I²C, Serial Peripheral Interface and Controller Area Network.

Originally, microcontrollers were only programmed in assembly language, or later in C code. Recent microcontrollers integrated with on-chip debug circuitry accessed by In-circuit emulator via JTAG enables a programmer to debug the software of an embedded system with a debugger.

Some microcontrollers have begun to include a built-in high-level programming language interpreter for greater ease of use. The Intel 8052 and Zilog Z8 were available with BASIC very early on, and BASIC is more recently used in the popular BASIC Stamp MCUs.

Microcontrollers trade speed and flexibility against ease of equipment design and low cost. Manufacturers have to balance the need to minimize the chip size against additional functionality.

Finally, it must be mentioned that microcontroller architectures are available from many different vendors in so many varieties that they could rightly belong to a category of their own. Chief among these are the 8051, Z80 and ARM derivatives.

Common Microcontrollers

AMCC

Until May 2004, these µCs were developed and marketed by IBM, whose 4xx family was sold to Applied Micro Circuits Corporation.

Image:ATmega169-MLF.jpg

Atmel

Cypress MicroSystems

Freescale Semiconductor

Until 2004, these µCs were developed and marketed by Motorola, whose semiconductor division was spun-off to establish Freescale.

Fujitsu

  • F²MC Family (8/16 bit)
  • FR Family (32 bit)
  • FR-V Family (32 bit RISC)

Holtek

Infineon

Intel

Microchip

  • 8 and 16-bit microcontrollers with 12 to 24-bit instructions
  • ability to include DSP function
  • 12-bit instruction PIC
  • 14-bit instruction PIC
  • 16-bit instruction PIC

National Semiconductor

NEC

Philips Semiconductors

Renesas Tech. Corp.

(Renesas is a joint venture of Hitachi and Mitsubishi.)

Silicon Motion

STMicroelectronics

Texas Instruments

Toshiba

  • TLCS-870 (8-bit CISC)
  • TLCS-900 (16 and 32-bit CISC)
  • TX19A (32-bit RISC)

Western Design Center

Ubicom

  • SX-20 SX-28, SX-48, SX-52
    • Ubicom's SX series is an 8 bit microcontroller which has unusually high speed, up to 75Mhz (75 MIPS), and a high degree of flexibility. Some users have referred to these microcontrollers as PICs on steroids. While Ubicom's SX micros are limited in variety, their high speed and additional resources allow programmers to create 'virtual devices' as required. Refer to Parallax's Web site for information, as they are the main distributor of these devices.
  • IP2022
    • Ubicom's IP2022 is a high performance (120 MIPs) 8 bit microcontroller. Features include: 64k FLASH code memory, 16k PRAM (fast code and packet buffering), 4k data memory, 8-channel A/D, various timers, and on-chip support for Ethernet, USB, UART, SPI and GPSI interfaces.
  • IP3022
    • IP3022 is Ubicom's latest high performance 32bit processor running at 250Mhz featuring 8 hardware threads. It is specifically targeted at Wireless Routers.

Xemics

  • XE8000 8-bit microcontroller family

Xilinx

ZiLOG

...And endless BASIC programmed MCUs

For almost every bare microcontroller manufacturer, there are a dozen little companies repacking them into a more hobbyist friendly package. Their product is often an MCU preloaded with a BASIC interpreter, soldered onto a Dual Inline Pin board along with a power regulator and other goodies. PICs seem to be very popular here, possibly due to good static protection. More powerful examples (e.g. faster execution, more RAM and code space) seem to be based on Atmel AVR or Hitachi chips.

Parallax, Inc.

  • BASIC Stamp – The Big Name in BASIC microcontrollers. They are Microchip PICmicros programmed with an interpreter that processes the program stored in an external EEPROM. Several different modules are available of varying processing speeds, RAM, and EEPROM sizes. Most popular is the original BASIC Stamp 2 module. The BASIC Stamp is used by Parallax as a platform for introductory programming and robotic kits.
  • SX-Key – Parallax's development tool for the SX line of microcontrollers, supporting every SX chip commercially available. Using free SX-Key software (Assembly language), or the SX/B Compiler (BASIC-style language) from Parallax, the SX-Key programming tool can program SX chips in-system and perform in-circuit source-level debugging.

PICAXE

This range of controllers is based upon Microchip PICmicro's programmed with a BASIC interpreter. Using internal EEPROM or Flash to store the user's program they deliver a single-chip solution and are quite inexpensive. A PICAXE programmer is simply a serial plug plus two resistors. Complete development software, comprehensive documentation and application notes are all available free of charge.

The BASIC-like programming language is almost identical to that used by Parallax's Basic Stamp 1 (BS1) but has been enhanced to support on-chip hardware and additional functionality. In common with the BS1 programming language, the PICAXE has support only for a limited number of variables and lacks block-structured programming constructs.

Initially targeted at the UK educational sector, use of the PICAXE has spread to hobbyists, semi-professionals and it can also be found inside commercial products. With its user base in many countries, the PICAXE has steadily gained a good international reputation.

ZX-24, ZX-40

The ZX series MCUs are based on the Atmel ATmega32 processor and run a Virtual Machine that features built-in multi-tasking, 32-bit floating point math and over 1K of RAM for user's programs. Multi-tasking facilitates a more structured approach to coding for interface devices that require prompt service, e.g. serial devices, infrared remotes, etc.

The programming language for the ZX series is ZBasic, a modern dialect of Basic modeled after Microsoft's Visual Basic. The biggest improvement over the typical MCU Basic dialect is parameterized subroutines/functions that support local variables. Strong type checking is another improvement that aids in writing correct programs more quickly.

Cubloc

Comfile produces a series of microcontrollers branded as Cubloc, using the Atmel ATmega128 processor. They are very price competitive, being aimed at industrial applications, and include some nice features such as Ladder Logic in addition to BASIC, a huge 80Kbyte program memory, and hardware pulse width modulation.

See also

  • In-circuit emulator (ICE)
  • Microbotics
  • Contiki – A small-footprint open source, yet fully featured, operating system developed for use on a number of smallish to large industrial systems ranging from 8-bit computers to embedded microcontrollers. Comfile provides many development boards for development of industrial automation systems. CuTOUCH is also the world 1st Touch-screen integrated module that supports programming in BASIC and/or Ladder Logic. They also have 100% support for MODBUS protocol.

www.comfiletech.com

Template:Wikibookspar

Forums & Discussion Groups

Tutorials

Robotics

Others

da:Mikrocontroller de:Mikrocontroller es:Microcontrolador fr:Microcontrôleur id:Mikrokontroler is:Örtölva it:Microcontrollore hu:Mikrokontroller nl:Microcontroller ja:マイクロコントローラ no:Mikrokontroller nn:Mikrokontroller pl:Mikrokontroler pt:Microcontrolador ru:Микроконтроллер sl:Mikrokontroler fi:Mikrokontrolleri sv:Mikrokontroller vi:Vi điều khiển tr:Mikrodenetleyici zh:单片机