AVR Microcontroller and Embedded Systems: Using Assembly and C

Muhammad Ali Mazidi / Sarmad Naimi / Sepehr Naimi  
Total pages
November 2013
Related Titles

Product detail

Product Price CHF Available  
AVR Microcontroller and Embedded Systems: Using Assembly and C
102.00 approx. 7-9 days


You'll find the eBook here.:

Free evaluation copy for lecturers


For courses in Embedded System Design, Microcontroller’s Software and Hardware, Microprocessor Interfacing, Microprocessor Assembly Language Programming, Peripheral Interfacing, Senior Project Design, Embedded System programming with C.

The AVR Microcontroller and Embedded Systems: Using Assembly and C features a step-by-step approach in covering both Assembly and C language programming of the AVR family of Microcontrollers. It offers a systematic approach in programming and interfacing of the AVR with LCD, keyboard, ADC, DAC, Sensors, Serial Ports, Timers, DC and Stepper Motors, Opto-isolators, and RTC. Both Assembly and C languages are used in all the peripherals programming. In the first 6 chapters, Assembly language is used to cover the AVR architecture and starting with chapter 7, both Assembly and C languages are used to show the peripherals programming and interfacing.


It covers The AVR C Programming with many examples and emphasizes the use of I/O ports programming in C language starting from chapter 7.

  • Makes it much easier to learn and teach the C programming of the AVR.

There is a chapter for each of the Peripherals of Timer, LCD, ADC, Motors, and RTC.

  • It shows how to program the peripheral in Assembly first and then moves to C programming of that peripheral.
  • This allows both teachers and students to pick and choose the topics according to their needs and the objective of the course without losing the flow of the materials.

It has an appendix dedicated to the detail description of the AVR instructions with many examples.

  • This allows students to gain deeper insight into the AVR instructions and get a better understanding the AVR architecture.
  • It makes the job of teachers much easier in helping students to master the AVR architecture.

Chapter pedagogy.

  • Each chapter begins with a list of learning objectives.
  • Examples are clearly stated in a box making the lesson easier to follow.
  • Review questions at end of the each section help students check their understanding of the material.
  • End-of-chapter problems offer students opportunity to practice what they have learned.

Table of Contents

  • 0: Introduction to Computing  
  • 1: The AVR Microcontrollers: History and Features   
  • 2: AVR Architecture & Assembly Language Programming   
  • 3: Branch, Call, and Time Delay Loop   
  • 4: AVR I/O Port Programming  
  • 5: Arithmetic, Logic Instructions, and Programs
  • 6: AVR Advanced Assembly Language Programming
  • 7: AVR Programming in C  
  • 8: AVR Hardware Connection and Flash Loaders   
  • 9: AVR Timer Programming in Assembly and C
  • 10: Interrupt Programming in Assembly and C   
  • 11: AVR Serial Port Programming in Assembly and C   
  • 12: LCD and Keyboard Interfacing
  • 13: ADC, DAC, and Sensor Interfacing   
  • 14: Relay, Optoisolator, and Stepper Motor Interfacing
  • 15: Input Capture and Wave Generation in AVR
  • 16: PWM Programming and DC Motor Control
  • 17: SPI Protocol and Max7221 Display Interfacing   
  • 18: I2C Protocol and DS1307 RTC Interfacing
  • A: AVR Instruction Description
  • B: Basics of Wire Wrapping   
  • C: IC Technology and System Design Issues  
  • D: Flowcharts and Pseudocode
  • E: AVR Primer for x86 Programmers
  • F: ASCII Codes  
  • G: Assemblers, Development Resources, and Suppliers
  • H: Data Sheets