Atmel AVR microcontroller primer programming and interfacing /

This textbook provides practicing scientists and engineers a primer on the Atmel AVR microcontroller. Our approach is to provide the fundamental skills to quickly get up and operating with this internationally popular microcontroller. The Atmel ATmega16 is used as a representative sample of the AVR...

Full description

Bibliographic Details
Main Author: Barrett, Steven F. 1957-
Other Authors: Pack, Daniel J.
Format: Electronic
Language:English
Published: San Rafael, Calif. (1537 Fourth Street, San Rafael, CA 94901 USA) : Morgan & Claypool Publishers, c2008.
Series:Synthesis lectures on digital circuits and systems (Online) ; #15.
Subjects:
Online Access:View fulltext via EzAccess
Table of Contents:
  • Atmel AVR architecture overview
  • ATmega16 architecture overview
  • Reduced instruction set computer
  • Assembly language instruction set
  • ATmega16 architecture overview
  • Nonvolatile and data memories
  • In-system programmable flash EEPROM
  • Byte-addressable EEPROM
  • Static random access memory
  • Programmable lock bits
  • Port system
  • Peripheral features, internal subsystems
  • Time base
  • Timing subsystem
  • Pulse width modulation channels
  • Serial communications
  • Serial USART
  • Serial peripheral interface
  • Two-wire serial interface
  • Analog-to-digital converter
  • Interrupts
  • Physical and operating parameters
  • Packaging
  • Power consumption
  • Speed grades
  • Application: ATmega16 test bench
  • Hardware configuration
  • Software configuration
  • Programming the ATmega16
  • Programming procedure
  • Software portability
  • Summary
  • References and further reading
  • Chapter problems
  • Serial communication subsystem
  • Serial communications
  • Serial communication terminology
  • Asynchronous versus synchronous serial transmission
  • Baud rate
  • Full duplex
  • Nonreturn to zero coding format
  • RS-232 communication protocol
  • Parity
  • American standard code for information interchange
  • Serial USART
  • System overview
  • USART clock generator
  • USART transmitter
  • USART receiver
  • USART registers
  • SPI operation
  • Registers
  • Programming
  • Two-wire serial interface
  • Summary
  • References and further reading
  • Chapter problems
  • Analog-to-digital conversion
  • Background theory
  • Analog versus digital signals
  • Sampling, quantization, and encoding
  • Resolution and data rate
  • Analog-to-digital conversion process
  • ADC conversion technologies
  • Successive approximation
  • Integration
  • Counter-based conversion
  • Parallel conversion
  • Atmel ATmega16 ADC system
  • Block diagram
  • Registers
  • ADC multiplexer selection register
  • ADC control and status register A
  • ADC data registers (ADCH and ADCL)
  • Programming the ADC
  • Digital-to-analog conversion
  • Summary
  • References and further reading
  • Chapter problems
  • Interrupt subsystem
  • Interrupt theory
  • ATmega16 interrupt system
  • Programming an interrupt
  • Application
  • External interrupts
  • Internal interrupt
  • Summary
  • References and further reading
  • Chapter problems
  • Timing subsystem
  • Overview
  • Timing-related terminology
  • Frequency
  • Period
  • Duty cycle
  • Timing system overview
  • Applications
  • Input capture, measuring external timing event
  • Counting events
  • Output compare, generating timing signals to interface external devices
  • Industrial implementation case study (PWM)
  • Overview of the Atmel timers
  • Timer 0 system
  • Modes of operation
  • Normal mode
  • Clear timer on compare match
  • Phase correct PWM mode
  • Fast PWM
  • Timer 0 registers
  • Timer/counter control register 0
  • Timer/counter register
  • Output compare register
  • Timer/counter interrupt mask register
  • Timer/counter interrupt flag register
  • Timer 1
  • Timer 1 registers
  • TCCR1A and TCCR1B registers
  • Timer/counter register 1 (TCNT1H/TCNT1)
  • Output compare register 1 channel A (OCR1AH/OCR1AL)
  • Output compare register 1 channel B (OCR1BH/OCR1BL)
  • Input capture register 1 (ICR1H/ICR1L)
  • Timer/counter interrupt mask register (TIMSK)
  • Timer/counter interrupt flag register (TIFR)
  • Timer 2
  • Timer/counter control register 2
  • Timer/counter register (TCNT2)
  • Output compare register (OCR2)
  • Timer/counter interrupt mask register (TIMSK)
  • Timer/counter interrupt flag register
  • Programming the timer system
  • Precision delay
  • Pulse width modulation
  • Input capture mode
  • Summary
  • References and further reading
  • Chapter problems
  • Atmel AVR operating parameters and interfacing
  • Operating parameters
  • Input devices
  • Switches
  • Switch debouncing
  • Keypads
  • Sensors
  • Digital sensors
  • Analog sensors
  • Output devices
  • Light-emitting diodes
  • Seven-segment LED displays
  • Tristate LED indicator
  • Dot matrix display
  • Liquid crystal display
  • High-power DC devices
  • DC motor speed and direction control
  • DC motor operating parameters
  • AC devices
  • Application: flight simulator panel
  • Summary
  • References and further reading
  • Chapter problems
  • ATmega16 register set
  • ATmega16 header file.