
Atmel AVR Microcontroller Primer : Programming and Interfacing
by Barrett, Steven-
This Item Qualifies for Free Shipping!*
*Excludes marketplace orders.
Buy New
Rent Textbook
Rent Digital
Used Textbook
We're Sorry
Sold Out
How Marketplace Works:
- This item is offered by an independent seller and not shipped from our warehouse
- Item details like edition and cover design may differ from our description; see seller's comments before ordering.
- Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
- Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
- Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.
Summary
Table of Contents
Atmel AVR Architecture Overview | p. 1 |
ATmega16 Architecture Overview | p. 1 |
Reduced Instruction Set Computer | p. 1 |
Assembly Language Instruction Set | p. 2 |
ATmega16 Architecture Overview | p. 3 |
Nonvolatile and Data Memories | p. 3 |
In-System Programmable Flash EEPROM | p. 3 |
Byte-Addressable EEPROM | p. 5 |
Static Random Access Memory | p. 5 |
Programmable Lock Bits | p. 5 |
Port System | p. 6 |
Peripheral Features-Internal Subsystems | p. 8 |
Time Base | p. 8 |
Timing Subsystem | p. 9 |
Pulse Width Modulation Channels | p. 9 |
Serial Communications | p. 9 |
Serial USART | p. 9 |
Serial Peripheral Interface | p. 10 |
Two-Wire Serial Interface | p. 10 |
Analog-to-Digital Converter | p. 10 |
Interrupts | p. 11 |
Physical and Operating Parameters | p. 11 |
Packaging | p. 11 |
Power Consumption | p. 11 |
Speed Grades | p. 13 |
Application: ATmega16 Testbench | p. 13 |
Hardware Configuration | p. 13 |
Software Configuration | p. 15 |
Programming the ATmega16 | p. 19 |
Programming Procedure | p. 20 |
Software Portability | p. 22 |
Summary | p. 23 |
References and Further Reading | p. 23 |
Chapter Problems | p. 23 |
Serial Communication Subsystem | p. 25 |
Serial Communications | p. 25 |
Serial Communication Terminology | p. 25 |
Asynchronous versus Synchronous Serial Transmission | p. 26 |
Baud Rate | p. 26 |
Full Duplex | p. 26 |
Nonreturn to Zero Coding Format | p. 26 |
The RS-232 Communication Protocol | p. 27 |
Parity | p. 27 |
American Standard Code for Information Interchange | p. 27 |
Serial USART | p. 27 |
System Overview | p. 28 |
USART Clock Generator | p. 29 |
USART Transmitter | p. 30 |
USART Receiver | p. 30 |
USART Registers | p. 30 |
System Operation and Programming | p. 32 |
Serial Peripheral Interface | p. 34 |
SPI Operation | p. 34 |
Registers | p. 35 |
Programming | p. 37 |
Two-Wire Serial Interface | p. 38 |
Summary | p. 38 |
References and Further Reading | p. 38 |
Chapter Problems | p. 39 |
Analog-to-Digital Conversion | p. 41 |
Background Theory | p. 41 |
Analog versus Digital Signals | p. 42 |
Sampling, Quantization, and Encoding | p. 44 |
Resolution and Data Rate | p. 48 |
Analog-To-Digital Conversion Process | p. 50 |
ADC Conversion Technologies | p. 53 |
Successive Approximation | p. 53 |
Integration | p. 55 |
Counter-Based Conversion | p. 55 |
Parallel Conversion | p. 55 |
The Atmel ATmega16 ADC System | p. 55 |
Block Diagram | p. 56 |
Registers | p. 58 |
ADC Multiplexer Selection Register | p. 58 |
ADC Control and Status Register A | p. 59 |
ADC Data Registers (ADCH and ADCL) | p. 59 |
Programming the ADC | p. 59 |
Digital-to-Analog Conversion | p. 62 |
Summary | p. 63 |
References and Further Reading | p. 63 |
Chapter Problems | p. 64 |
Interrupt Subsystem | p. 65 |
Interrupt Theory | p. 65 |
ATmega16 Interrupt System | p. 65 |
Programming An Interrupt | p. 66 |
Application | p. 68 |
External Interrupts | p. 68 |
Internal Interrupt | p. 71 |
Summary | p. 74 |
References and Further Reading | p. 74 |
Chapter Problems | p. 74 |
Timing Subsystem | p. 75 |
Overview | p. 75 |
Timing-Related Terminology | p. 76 |
Frequency | p. 76 |
Period | p. 76 |
Duty Cycle | p. 76 |
Timing System Overview | p. 76 |
Applications | p. 79 |
Input Capture-Measuring External Timing Event | p. 79 |
Counting Events | p. 81 |
Output Compare-Generating Timing Signals to Interface External Devices | p. 81 |
Industrial Implementation Case Study (PWM) | p. 82 |
Overview of the Atmel Timers | p. 83 |
Timer 0 System | p. 84 |
Modes of Operation | p. 86 |
Normal Mode | p. 87 |
Clear Timer on Compare Match | p. 87 |
Phase Correct PWM Mode | p. 87 |
Fast PWM | p. 87 |
Timer 0 Registers | p. 87 |
Timer/Counter Control Register 0 | p. 88 |
Timer/Counter Register | p. 88 |
Output Compare Register | p. 88 |
Timer/Counter Interrupt Mask Register | p. 90 |
Timer/Counter Interrupt Flag Register | p. 91 |
Timer 1 | p. 91 |
Timer 1 Registers | p. 91 |
TCCR1A and TCCR1B Registers | p. 91 |
Timer/Counter Register 1 (TCNT1H/TCNT1) | p. 91 |
Output Compare Register 1 Channel A (OCR1AH/OCR1AL) | p. 94 |
Output Compare Register 1 Channel B (OCR1BH/OCR1BL) | p. 94 |
Input Capture Register 1 (ICR1H/ICR1L) | p. 94 |
Timer/Counter Interrupt Mask Register (TIMSK) | p. 94 |
Timer/Counter Interrupt Flag Register (TIFR) | p. 94 |
Timer 2 | p. 94 |
Timer/Counter Control Register 2 | p. 94 |
Timer/Counter Register (TCNT2) | p. 95 |
Output Compare Register (OCR2) | p. 95 |
Timer/Counter Interrupt Mask Register (TIMSK) | p. 96 |
Timer/Counter Interrupt Flag Register | p. 96 |
Programming the Timer System | p. 96 |
Precision Delay | p. 98 |
Pulse Width Modulation | p. 99 |
Input Capture Mode | p. 101 |
Summary | p. 103 |
References and Further Reading | p. 103 |
Chapter Problems | p. 104 |
Atmel AVR Operating Parameters and Interfacing | p. 105 |
Operating Parameters | p. 106 |
Input Devices | p. 107 |
Switches | p. 109 |
Switch Debouncing | p. 110 |
Keypads | p. 111 |
Sensors | p. 111 |
Digital Sensors | p. 111 |
Analog Sensors | p. 114 |
Output Devices | p. 114 |
Light-Emitting Diodes | p. 115 |
Seven-Segment LED Displays | p. 117 |
Tristate LED Indicator | p. 117 |
Dot Matrix Display | p. 120 |
Liquid Crystal Display | p. 120 |
High-Power DC Devices | p. 124 |
DC Motor Speed and Direction Control | p. 125 |
DC Motor Operating Parameters | p. 126 |
AC Devices | p. 126 |
Application: Flight Simulator Panel | p. 127 |
Summary | p. 157 |
References and Further Reading | p. 158 |
Chapter Problems | p. 158 |
ATmega16 Register Set | p. 159 |
ATmega16 Header File | p. 161 |
Author Biography | p. 177 |
Index | p. 179 |
Table of Contents provided by Ingram. All Rights Reserved. |
An electronic version of this book is available through VitalSource.
This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.
By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.
Digital License
You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.
More details can be found here.
A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.
Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.
Please view the compatibility matrix prior to purchase.