THE AVR MICROCONTROLLER AND EMBEDDED SYSTEMS

2y ago
49 Views
4 Downloads
2.90 MB
6 Pages
Last View : 5d ago
Last Download : 8d ago
Upload by : Vicente Bone
Transcription

THE AVR MICROCONTROLLERAND EMBEDDED SYSTEMSUsing Assembly and СMuhammad AH MazidiSarmad NaimiSepehr NaimiPrentice HallBoston Columbus Indianapolis New York San Francisco Upper Saddle RiverAmsterdam Cape Town Dubai London Madrid Milan Munich Paris Montreal TorontoDelhi Mexico City Sao Paulo Sydney Hong Kong Seoul Singapore Taipei Tokyo

CONTENTSCHAPTER 0: INTRODUCTION TO COMPUTINGSECTION 0.1: NUMBERING AND CODING SYSTEMSSECTION 0.2: DIGITAL PRIMERSECTION 0.3: SEMICONDUCTOR MEMORYSECTION 0.4: CPU ARCHITECTURECHAPTER 1: THE AVR MICROCONTROLLER: HISTORY ANDFEATURESSECTION 1.1: MICROCONTROLLERS AND EMBEDDEDPROCESSORSSECTION 1.2: OVERVIEW OF THE AVR FAMILYCHAPTER 2: AVR ARCHITECTURE AND ASSEMBLY LANGUAGEPROGRAMMINGSECTION 2.1: THE GENERAL PURPOSE REGISTERS IN THE AVRSECTION 2.2: THE AVR DATA MEMORYSECTION 2.3: USING INSTRUCTIONS WITH THE DATA MEMORYSECTION 2.4: AVR STATUS REGISTERSECTION 2.5: AVR DATA FORMAT AND DIRECTIVESSECTION 2.6: INTRODUCTION TO AVR ASSEMBLY PROGRAMMINGSECTION 2.7: ASSEMBLING AN AVR PROGRAMSECTION 2.8: THE PROGRAM COUNTER AND PROGRAM ROMSPACE IN THE AVRSECTION 2.9: RISC ARCHITECTURE IN THE AVRSECTION 2.10: VIEWING REGISTERS AND MEMORY WITH AVRSTUDIO IDE12913293940445556596171758082859397CHAPTER 3: BRANCH, CALL, AND TIME DELAY LOOPSECTION 3.1: BRANCH INSTRUCTIONS AND LOOPINGSECTION 3.2: CALL INSTRUCTIONS AND STACKSECTION 3.3: AVR TIME DELAY AND INSTRUCTION PIPELINE107108118128CHAPTER 4: AVR I/O PORT PROGRAMMINGSECTION 4.1:1/0 PORT PROGRAMMING IN AVRSECTION 4.2: I/O BIT MANIPULATION PROGRAMMING139140149CHAPTER 5: ARITHMETIC, LOGIC INSTRUCTIONS, AND PROGRAMSSECTION 5.1: ARITHMETIC INSTRUCTIONSSECTION 5.2: SIGNED NUMBER CONCEPTS AND ARITHMETICOPERATIONSSECTION 5.3: LOGIC AND COMPARE INSTRUCTIONSSECTION 5.4: ROTATE AND SHIFT INSTRUCTIONS AND DATASERIALIZATIONSECTION 5.5: BCD AND ASCII CONVERSION161162CHAPTER 6: AVR ADVANCED ASSEMBLY LANGUAGE PROGRAMMINGSECTION 6.1: INTRODUCING SOME MORE ASSEMBLERDIRECTIVESSECTION 6.2: REGISTER AND DIRECT ADDRESSING MODESSECTION 6.3: REGISTER INDIRECT ADDRESSING MODE197170176183190198202208

SECTIONSECTIONSECTIONSECTIONSECTION6.4: LOOK-UP TABLE AND TABLE PROCESSING6.5: BIT-ADDRESSABILITY6.6: ACCESSING EEPROM IN AVR6.7: CHECKSUM AND ASCII SUBROUTINES6.8: MACROS216226233238244CHAPTER 7: AVR PROGRAMMING IN СSECTION 7.1: DATA TYPES AND TIME DELAYS IN СSECTION 7.2: I/O PROGRAMMING IN СSECTION 7.3: LOGIC OPERATIONS IN СSECTION 7.4: DATA CONVERSION PROGRAMS IN СSECTION 7.5: DATA SERIALIZATION IN СSECTION 7.6: MEMORY ALLOCATION IN С255256263265275280282CHAPTER 8: AVR HARDWARE CONNECTION, HEX FILE, ANDFLASH LOADERSSECTION 8.1: ATMEGA32 PIN CONNECTIONSECTION 8.2: AVR FUSE BITSSECTION 8.3: EXPLAINING THE HEX FILE FOR AVRSECTION 8.4: AVR PROGRAMMING AND TRAINER BOARD289290294300305CHAPTER 9: AVR TIMER PROGRAMMING IN ASSEMBLY AND СSECTION 9.1: PROGRAMMING TIMERS 0, 1, AND 2SECTION 9.2: COUNTER PROGRAMMINGSECTION 9.3: PROGRAMMING TIMERS IN С311313348353CHAPTER 10: AVR INTERRUPT PROGRAMMING IN ASSEMBLYAND СSECTION 10.1: AVR INTERRUPTSSECTION 10.2: PROGRAMMING TIMER INTERRUPTSSECTION 10.3: PROGRAMMING EXTERNAL HARDWAREINTERRUPTSSECTION 10.4: INTERRUPT PRIORITY IN THE AVRSECTION 10.5: INTERRUPT PROGRAMMING IN СCHAPTER 11: AVR SERIAL PORT PROGRAMMING IN ASSEMBLYAND СSECTION 11.1: BASICS OF SERIAL COMMUNICATIONSECTION 11.2: ATMEGA32 CONNECTION TO RS232SECTION 11.3: AVR SERIAL PORT PROGRAMMING IN ASSEMBLYSECTION 11.4: AVR SERIAL PORT PROGRAMMING IN СSECTION 11.5: AVR SERIAL PORT PROGRAMMING IN ASSEMBLYAND С USING TER 12: LCD AND KEYBOARD INTERFACINGSECTION 12.1: LCD INTERFACINGSECTION 12.2: KEYBOARD INTERFACING429430452CHAPTER 13: ADC, DAC, AND SENSOR INTERFACINGSECTION 13.1: ADC CHARACTERISTICSSECTION 13.2: ADC PROGRAMMING IN THE AVR463464469

SECTIONSECTIONSECTIONSECTIONSECTION6.4: LOOK-UP TABLE AND TABLE PROCESSING6.5: BIT-ADDRESSABILITY6.6: ACCESSING EEPROM IN AVR6.7: CHECKSUM AND ASCII SUBROUTINES6.8: MACROS216226233238244CHAPTER 7: AVR PROGRAMMING IN СSECTION 7.1: DATA TYPES AND TIME DELAYS IN СSECTION 7.2: I/O PROGRAMMING IN СSECTION 7.3: LOGIC OPERATIONS IN СSECTION 7.4: DATA CONVERSION PROGRAMS IN СSECTION 7.5: DATA SERIALIZATION IN СSECTION 7.6: MEMORY ALLOCATION IN С255256263265275280282CHAPTER 8: AVR HARDWARE CONNECTION, HEX FILE, ANDFLASH LOADERSSECTION 8.1: ATMEGA32 PIN CONNECTIONSECTION 8.2: AVR FUSE BITSSECTION 8.3: EXPLAINING THE HEX FILE FOR AVRSECTION 8.4: AVR PROGRAMMING AND TRAINER BOARD289290294300305CHAPTER 9: AVR TIMER PROGRAMMING IN ASSEMBLY AND СSECTION 9.1: PROGRAMMING TIMERS 0, 1, AND 2SECTION 9.2: COUNTER PROGRAMMINGSECTION 9.3: PROGRAMMING TIMERS IN С311313348353CHAPTER 10: AVR INTERRUPT PROGRAMMING IN ASSEMBLYAND СSECTION 10.1: AVR INTERRUPTSSECTION 10.2: PROGRAMMING TIMER INTERRUPTSSECTION 10.3: PROGRAMMING EXTERNAL HARDWAREINTERRUPTSSECTION 10.4: INTERRUPT PRIORITY IN THE AVRSECTION 10.5: INTERRUPT PROGRAMMING IN СCHAPTER 11: AVR SERIAL PORT PROGRAMMING IN ASSEMBLYAND СSECTION 11.1: BASICS OF SERIAL COMMUNICATIONSECTION 11.2: ATMEGA32 CONNECTION TO RS232SECTION 11.3: AVR SERIAL PORT PROGRAMMING IN ASSEMBLYSECTION 11.4: AVR SERIAL PORT PROGRAMMING IN СSECTION 11.5: AVR SERIAL PORT PROGRAMMING IN ASSEMBLYAND С USING TER 12: LCD AND KEYBOARD INTERFACINGSECTION 12.1: LCD INTERFACINGSECTION 12.2: KEYBOARD INTERFACING429430452CHAPTER 13: ADC, DAC, AND SENSOR INTERFACINGSECTION 13.1: ADC CHARACTERISTICSSECTION 13.2: ADC PROGRAMMING IN THE AVR463464469

SECTION 13.3: SENSOR INTERFACING AND SIGNALCONDITIONINGSECTION 13.4: DAC INTERFACING480484CHAPTER 14: RELAY, OPTOISOLATOR, AND STEPPER MOTORINTERFACING WITHAVRSECTION 14.1: RELAYS AND OPTOISOLATORSSECTION 14.2: STEPPER MOTOR INTERFACING491492498CHAPTER 15: INPUT CAPTURE AND WAVE GENERATION IN AVRSECTION 15.1: WAVE GENERATION USING 8-BIT TIMERSSECTION 15.2: WAVE GENERATION USING TIMER1SECTION 15.3: INPUT CAPTURE PROGRAMMINGSECTION 15.4: С PROGRAMMING509510520531539CHAPTER 16: PWM PROGRAMMING AND DC MOTOR CONTROLIN AVRSECTION 16.1: DC MOTOR INTERFACING AND PWMSECTION 16.2: PWM MODES IN 8-BIT TIMERSSECTION 16.3: PWM MODES IN TIMER1SECTION 16.4: DC MOTOR CONTROL USING PWM549550560574597CHAPTER 17: SPI PROTOCOL AND MAX7221 DISPLAY INTERFACINGSECTION 17.1: SPI BUS PROTOCOLSECTION 17.2: SPI PROGRAMMING IN AVRSECTION 17.3: MAX7221 INTERFACING AND PROGRAMMING603604609615CHAPTER 18:12C PROTOCOL AND DS1307 RTC INTERFACINGSECTION 18.1:12C BUS PROTOCOLSECTION 18.2: TWI (I2C) IN THE AVRSECTION 18.3: AVR TWI PROGRAMMING IN ASSEMBLY AND СSECTION 18.4: DS1307 RTC INTERFACING AND PROGRAMMINGSECTION 18.5: TWI PROGRAMMING WITH CHECKING STATUSREGISTER629630638642654APPENDIX A: AVR INSTRUCTIONS EXPLAINEDSECTION A. 1: INSTRUCTION SUMMARYSECTION A.2: AVR INSTRUCTIONS FORMATSECTION A.3: AVR REGISTER SUMMARY695696700732APPENDIX B: BASICS OF WIRE WRAPPING733APPENDIX C: 1С INTERFACING AND SYSTEM DESIGN ISSUESSECTION С 1 : OVERVIEW OF 1С TECHNOLOGYSECTION C.2: AVR I/O PORT STRUCTURE AND INTERFACINGSECTION C.3: SYSTEM DESIGN ISSUES737738744750APPENDIX D: FLOWCHARTS AND PSEUDOCODE755APPENDIX E: AVR PRIMER FOR 8051 PROGRAMMERS761668

APPENDIX F: ASCII CODES762APPENDIX G: ASSEMBLERS, DEVELOPMENT RESOURCES, ANDSUPPLIERS764APPENDIX H: DATA SHEETS766INDEX771

chapter 1: the avr microcontroller: history and features 39 section 1.1: microcontrollers and embedded processors 40 section 1.2: overview of the avr family 44 chapter 2: avr architecture and assembly language programming 55 section 2.1: the

Related Documents:

AVR Basics The AVR microcontrollers are divided into three groups: 1. tiny AVR 2. AVR (Classic AVR) 3. mega AVR 4. xmega AVR The difference between these devices lies in the available features. The tinyAVR μC are usually devices with lower pin-count or a reduced feature set compared to the mega & xmega AVR's. All AVR devices have identical

Silat is a combative art of self-defense and survival rooted from Matay archipelago. It was traced at thé early of Langkasuka Kingdom (2nd century CE) till thé reign of Melaka (Malaysia) Sultanate era (13th century). Silat has now evolved to become part of social culture and tradition with thé appearance of a fine physical and spiritual .

May 02, 2018 · D. Program Evaluation ͟The organization has provided a description of the framework for how each program will be evaluated. The framework should include all the elements below: ͟The evaluation methods are cost-effective for the organization ͟Quantitative and qualitative data is being collected (at Basics tier, data collection must have begun)

The AVR 3700/AVR 370 7.2-channel and AVR 2700/AVR 270 7.1-channel digital audio/ video receivers continue this tradition with some of the most advanced audio and video processing capabilities yet, and a wealth of listening and viewing options. To obtain the maximum enjoyment from your new receiver, please read this manual and

the Avr 3700/Avr 370 7.2-channel and Avr 2700/Avr 270 7.1-channel digital audio/ video receivers continue this tradition with some of the most advanced audio and video processing capabilities yet, and a wealth of listening and viewing options. to obtain the maximum enjoyment from your new receiver, please read this manual and

download the AVR 3650, AVR 365, AVR 2650, AVR 265 Owner’s Manual. Place the Receiver Place the receiver on a firm and level surface. Be certain that the surface and any mounting hardware can support the receiver’s weight. Provide proper space above and below the receiver for ventilation. If you install the receiver

The Bridge II-ready Harman Kardon receivers, and the Harman Kardon DMC 1000 digital media center. As of the printing of this manual, these models include: Audio playback only: AVR 140, AVR 240, AVR 340, AVR 145, AVR 245, AVR 445, AVR 645, AVR 745, HK 3490

avr 3700 и avr 2700 предназначены для использования с переменным током напряжением 120 В. avr 370 и avr 270 предназначены для использования с переменным током напряжением 220 – 240 В. Подключение к напряжению,