This is the personal website of Garthee, who believes it is the perspiration not the perception that brings the success

Search:     All roads lead to ROME !  

Be Miracle!

Microcontrollers Introduction

Microcontrollers is a hot-topic thesedays with the introduction of wireless support - let it be bluetooth, zigbee or wifi - that is being added inbuilt. To kindle some interest and assist in answering questions that could be asked in any introduction level courses the digest from techonline course on microcontrollers.

  • System on chip
  • Same functionalities as of a computer in a chip
  • Always contains
    • CPU (ALU, Instruction decoder, register, counter, stack pointer)
    • Memory (RAM, ROM)
    • I/O (Serial, I2C)
    • Peripheral (Timer, counter, ADC, PWM)
  • Comparison
    • Microprocessor - External memory , peripheral, external address / data busses
    • Microcontroller - all inside but specially for controlling
    • DSP - mathematical calculations
  • History
    • MU: TMS1000 (first)
    • MP: Intel 4004 - 8008,8080-pc, Motorola 6800 (later MU 68000 as well) - mac
  • Bit definition - 8bit means data bus width, rarely related to address bus

    clip_image001

  • CISC - hardware is faster than software - powerful instruction , shorter code - complex circuit to decode
  • RISC - more instructions will be needed, and compilers must generate complex instructions that were available readily in CISC

  • Harvard - separate bus for data and program
    • Both data / instruction can be fetched
    • Complex memory management
  • Princeton / Von Neumann - the same bus
  • Complex interlaced instructions / data fetching
  • Interrupts
    • Can be external or internal (CPU generated)
    • Programmable Interrupts (PI) / Advanced PI (API)
    • Latency - Time to act on - critical for RTOS
  • ROM - Program memory , non volatile - Masked ROM, PROM, EPROM, OTP, EEPROM, Flash
  • RAM - nonvolatile, SRAM (faster, common in MU), DRAM(slower)
  • I/O serial - USB
    • CAN(automobile, automation)
    • SPI (4wires, motorola)
    • I2C(2wires, philips)
    • UART (RS232)
    • LIN (Local Interconnect Network), ETHERNET
    • Wireless - ZigBee, Bluetooth
  • On chip peripherals
    • Timer - counter, watchdog timer
    • LCD controller
    • GPIO - do not have any specific actions - just register settings - tri state
  • Low power
    • Dynamic power - application based
    • Static power - standby power - turning off various components
    • Lower power modes - Deeper the sleeping state, greater the time needed to wakeup
  • Licensed Cores
    • 8051 - From Intel - now NXP , Atmel
    • Arm - ARM 5 , 9 , 11
    • MIPS - Microchip
  • Vendors
    • Renesas - (Hitachi - Mitsubishi) - world leading - mainly RISC
    • ATMEL - popular for AVR architecture
    • Freescale - (Motorola) - MC68K
  • Development tools - Editor, Compiler, Assembler, Linker, (Simulator, Debugger)
    • IDE
    • In circuit emulator - allow viewing control / control of program as seen within the chip
    • JTAG - interface for test and debug - obliterating In CE
    • Evaluation kits - MCU test drives and quick evaluation
    • 3rd party tools
  • Designing of a system
    • Product specification - market analyse / drivers
    • Real world interfaces - sensors , display
    • MCU needed to meet functions
    • MCU that suits
    • Smaller design - hardware , Bigger design - software tool
    • Features - DAC, PWM | Communication Interface | Package - size, pins
    • Power - sleep modes, voltage | Speed - clock F, Interrupt latency, Critical inst
    • Reliability - demands, environment, temperature, Memory - size, type
  • Choosing a MU
    • Familiarity
    • Price - device, volume, software, OS, compiler
    • Available kits - evaluation, development, reference design
    • Documents - white papers, example code, user guide, Community
    • Portability / Scalability - roadmap, large family, abstraction layer

The detailed course can be followed at http://www.techonline.com/learning/course/208800447?_requestid=104336