Transcript of Microcontrollers, Basics Fundamentals of Designing with Microcontrollers 16 January 2012 Jonathan A....
- Slide 1
- Microcontrollers, Basics Fundamentals of Designing with
Microcontrollers 16 January 2012 Jonathan A. Titus
- Slide 2
- 2 Differences between Microprocessors and Microcontrollers
Microprocessors (Ps) General-purpose compute engine External memory
and I/O devices Often requires an operating system (OS)
- Slide 3
- 3 Microcontrollers (MCUs) Usually chosen for a specific purpose
Small packages On-chip memory and peripherals Fast on time, no BIOS
or OS needed Differences between Microprocessors and
Microcontrollers
- Slide 4
- 4 Where Did the MCU Come From? Intel introduced the 8051 MCU in
1980 Small amount of read-only memory (ROM) External memory
expansion if needed Four 8-bit I/O ports Not much different from
todays MCUs
- Slide 5
- 5 8051 Architecture (1980)
- Slide 6
- 6 Texas Instruments MSP430 MCU
- Slide 7
- 7 Why Use an MCU? Everything in one small package Mix and match
peripherals and I/O types Lots of memory, flash for code, SRAM for
data Readily available hardware and software tools Helpful support
communities and forums Reference designs Code libraries and
examples
- Slide 8
- 8 What Peripherals Do MCUs Offer? Digital I/O -- On or Off
Parallel signals Pulse-width-modulated logic signals Counters and
timers Analog I/O -- Voltages Comparators Analog-to-digital
converters (ADCs) Digital-to-analog converters (DACs)
- Slide 9
- 9 What Peripherals Do MCUs Offer? Communication Devices UART or
USART SPI I2C I2S CAN USB Ethernet Interrupts
- Slide 10
- 10 Peripherals Devices in MCUs Parallel I/O Ports Usually 8 or
16 bits for simultaneous control Toggle individual bits Require
setup of registers
- Slide 11
- 11 Parallel I/O-Port Examples
- Slide 12
- 12 How Do I Set Up I/O Ports?
- Slide 13
- 13 Pulse-Width Modulator PWM Peripheral Converts a value to a
proportional pulse width Operate continuously and independently
Motor, LED, servo, and power control
- Slide 14
- 14 Counters and Timers Operate for a specific period or create
a delay Count external events, count up or down Count clock ticks
between the same or different events Choose from various clock
sources
- Slide 15
- 15 Analog Comparator Compare two voltages and... Cause a bit to
change state Generate an interrupt Wake an MCU from a sleep
state
- Slide 16
- 16 Analog-to-Digital Converter Convert a voltage to a digital
value; 8, 10, 12 bits... Unipolar, 0 volts to MCU V+ (+3.3 or 5
volts) Might require external signal conditioning
- Slide 17
- 17 Digital-to-Analog Converter Unipolar output, might require
external offset High-impedance output, could require buffering 10-
and 12-bit DACs common on MCUs Filter a PWM output to get an analog
voltage
- Slide 18
- 18 UART Communications Universal Asynchronous
Receiver-Transmitter (UART) Serial communications Self-timing
operations Usually 8-bit transmissions at standard rates Common on
most MCUs
- Slide 19
- 19 UART Communications Timing Communications at 9600
bits/sec
- Slide 20
- 20 Serial-Communications Reference Serial Port Complete, 2nd
ed., by Jan Axelson, Lakeview Research, 2007. ISBN: 978-1-
931448-06-2.
- Slide 21
- 21 Serial Peripheral Interface (SPI) Used for chip-to-chip
communications Requires a clock signal to all SPI (spy) devices Not
a formal standard Operates with ADCs, DACs, real-time clocks
- Slide 22
- 22 Inter Integrated-Circuit Interface (I 2 C) Similar to SPI
communications, but two wires Multiple masters and slaves
Acknowledgements and bus arbitration Philips (NXP) standard (Rev.
3, June 2007)
- Slide 23
- 23 Controller-Area Network (CAN) A standard for vehicle
equipment Uses an ISO-type stack 2-wire differential bus, no common
ground needed Uses standardized packets of information 23
- Slide 24
- 24 Controller-Area Network (CAN) References ISO Standard
11898-x ($) Controller Area Network, by Konrad Etschberger, IXXAT
Automation, 2001. ISB: 978-3-00- 007376-0. A Comprehensive Guide to
Controller Area Network, by Wilfried Voss, Copper Hill Media, 2008.
ISBN: 978-0976511601.
- Slide 25
- 25 Ethernet and USB Governed by standards Require a software
stack Purchase, license, or create one yourself MCU vendors might
have stacks Some MCUs include everything except the physical
interface (PHY) Can demand considerable memory Start with a
development kit or reference design 25
- Slide 26
- 26 Interrupts Cause immediate action Internal and external
hardware and software sources Two types of action -- one or many
vectors Can present debug challenges 26
- Slide 27
- 27 An ADC Interrupt
- Slide 28
- 28 How Do I Get a Quick Start?
- Slide 29
- 29 How Do I Get Started?
- Slide 30
- 30 Hed Text Bullets If Needed