2014/04/16

The Labs.Com System Lab MCU Lab
Last update 2001/04/22

The Labs - Design & Functionality For The Net

MCU/uC Microcontrollers

While reviewing items for our HomeNetwork (Home-Automation) project we reviewed several microcontrollers (aka MCU or uC). Here some infos we digged out.
  1. What is a MCU?
  2. PIC MCU
  3. AVR 8 bit RISC
  4. MCU Networking
  5. MCU Resources
MCU Lab
1. What is a MCU?
A computer is usually build by several components, CPU, Memory, peripherial controllers and so forth and all together make up a machine, a computer. A CPU (aka microprocessor) itself can't do anything. A microcontroller usually integrates a minimal functionality on one or few chips. As of 2001 several one-chip microcontrollers are available with Flash memory which are programmable serial via PC, this means, you get a micro-computer literally in one chip plus few electronic components like quartz and 1-2 capacitors.

MCU Lab
2. PIC MCU

The PIC serie is developed by Microchip.Com for quite a while has many tools and application notes and implementation have been done. Among hobby engineers one chip made its way: PIC-16F84. Its features:
  • 18 pin
  • 1K (14bit) Flash memory
  • 13 I/O
  • 8 bit counter/timer
  • cost ~$8-$10 (4/10 MHz versions)
PIC-16F628 is pin-compatible with real UART and 2K Flash memory, for other PIC microcontrollers (vast selection) visit
Microchip.Com
PIC manufacturer site

Programmer

 
NOPPP ("No-Parts Programmer")
Support for PIC16C84, PIC16F83, and PIC16F84(A), schematics and infos, via parallel port (minimal components required 'no-parts')
No Parts PIC Programmer Linux
Same as NOPPP plus support for PIC-16X83/4

Compilers

 
GCC Man Page
GCC natively support PIC cross-compiler

Resources

 Fortunately a lot resources are available, best use google to search for application notes, examples, and experiences, or look here:
Microchip.Com
Start here first, especially the Application Notes are worthwhile and tell a lot
WebRing: PICmicro
Good point to start

MCU Lab
3. AVR 8 bit RISC

Another popular MCU has been the AVR from Atmel.Com.
  • AT-90C2323: 8pin, 2K Flash, 3 I/O, cost ~$8
  • AT-90C1200: 20pin, 1K Flash, 15 I/O, PWM, cost ~$8
  • AT-90C2313: 20pin, 2K Flash, 15 I/O, UART, PWM, cost ~$10
  • AT-90C4433: 28pin, 4K Flash, 20 I/O, 6x A/D 10bit, UART, PWM, cost ~$15
  • AT-90C8515: 40pin, 8K Flash, 32 I/O, UART, PWM, cost ~$20
  • just to list a few ...
PWM (Pulse Width Modulation) allows D/A conversion indirectly, all are operational at 0-8/10 MHz, 2.7-6/8V (check datasheets).

Atmel.Com
Manufactured site

Programmers

 
AVR-1 Programmer for Linux
Driver for the STK-200 board (sold by Atmel)

Misc Infos

 The AVR 8 bit RISC are considered 'low-end' MCUs, and there has been reliability issues as well: Considering the AVR? Read This..., so "Brown-Out" (voltage going below suggested operation range) seems common problem compromising Flash memory on MCU despite having 'detectors' build-in, many real-life applications suggest external "Brown-out" circuits, especially in case of AVR recommended. Another problem with AVRs has been availability, check with your local store; here in Switzerland the major electronic distributor has them.

Compilers

 
GNU Tools & Atmel AVR MCUs
Download infos (patches for GCC)
AVR Tools for Linux
AVR GCC infos & mailing-list

Resources

 
Atmel.Com
Start here first, get the Application Notes which show what can be done with the MCUs
AVRFreaks.Net
Good starting point
AVR Embedded MCU Resources
Extremely useful collection of links related to AVR MCUs

MCU Lab
4. MCU Networking

One of the next considerations are how to network MCUs together? Most Application-Notes describe various microcontroller networking approaches:

LIN

 LIN (Local Interconnect Network), short-range, 20kbps, master/slave, 2 wires.

CANbus

 CAN (Control Area Network), 120kbps - 1Mbps, (100m 500kbps, 200m 250kbps,.. 6km 10kbps), 4 wires.
CAN
Main site
Philips.Com: CAN
More infos

I2C

 I2C (Philips): 2 signals + ground, 100kbps (400kbps). Voxel Project: I2C for Linux.

1-Wire

 1-Wire formerly known as MicroLAN (Dallas Semi.), 1-wire (signal+ground), 115.2kbps

RS-232 / RS-485

 RS-232 with UART (or emulated UART), point-to-point, up-to 1Mbps, 4 wires (2-25 wires).
RS-485 with internal/external UART, multi-drop/point, up-to 10Mbps, 2 wires.
RS-485.Com: Specifications
RS-232, RS-485 and RS-422 Overview

Other Approaches

 
National Semi: Microwire
Motorola: SPI

TCP/IP for MCUs

 
uC/IP
TCP/IP for MCU/uC's (not yet much, May 2001)
iPic
World's tinyest web-server
Thin Server
Overview of thin servers based on MCU or small boards
EthernetEmbedded.Com
Embedded ethernet (small board)

MCU Lab
5. MCU Resources

EPanorama: Microcontrollers
Good starting point
Microcontroller.Com
Another resource site
Dontronics.Com
Australian company developing SIMM-Stick with PIC/AVR

                                                                                                                                   

CPU Lab System LabHardDisk Lab

Hipocrisy of the finest:

"I agree that no single company can create all the hardware and software. Openness is central because it's the foundation of choice."
-- Steve Balmer (Microsoft) blaming Apple regarding iPhone, February 18, 2009

"Things work better when hardware and software are considered together, [..]. We control it all, we design it all, and we manufacture it all ourselves."
-- Steve Balmer announcing Windows 8 Tablet, June 19, 2012

Last update 2001/04/22

All Rights Reserved - (C) 1997 - 2012 by The Labs.Com

Top of Page

The Labs.Com