1 / 116

AVR Microcontrollers

AVR Microcontrollers. Firsrt Session. منابع : منابع موجود در www.atmel.com مرجع كامل ميكروكنترلرهاي AVR - انتشارات نص - محمد مهدي پرتوي فر و .. ميكروكنترلرهاي AVR و كاربردهاي آنها - انتشارات نص - امير ره افروز نرم افزارها : CodeVisionAVR Proteus AVR Studio. ميان ترم : 5 نمره

rachel
Télécharger la présentation

AVR Microcontrollers

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. AVR Microcontrollers Firsrt Session

  2. منابع : • منابع موجود در www.atmel.com • مرجع كامل ميكروكنترلرهاي AVR - انتشارات نص - محمد مهدي پرتوي فر و .. • ميكروكنترلرهاي AVR و كاربردهاي آنها - انتشارات نص - امير ره افروز • نرم افزارها : • CodeVisionAVR • Proteus • AVR Studio

  3. ميان ترم : 5 نمره • تمرين : 3 نمره • پروژه : 3 نمره • پايان ترم : 10 نمره

  4. Introduction • ATMEL • 8 bit Microcontroller • Families • Tiny • 90S (CLASSIC) • Mega • LCD AVR • Execute One Instruction Per Cycle (MIPS)

  5. جایگزینی تراشه های قدیمی

  6. نام میکروکنترلر از دو یا سه قسمت تشکیل شده است • ATMEGA 16 • ATMEGA 8 • ATTINY 28L • ATTINY 28 V قسمت اول نوع و سری میکرو و قسمت دوم حافظه flashرا بیان می کند. قسمت سوم مخفف low power و very low power است. که در جدول زیر شرح داده شده است:

  7. PDIP-Package – Mega32

  8. TQFP/MLF Package – Mega32

  9. Architecture • RISC: Reduced Instruction Set Computer ==> AVR • CISC: Complex Instruction Set Computer

  10. CPU Structures

  11. Memory Types • Data • SRAM (Static Random Access Memory) • EEPROM (Electrically Erasable Programmable Read Only Memo) • Program • Flash

  12. Program Memory • Flash (for mega32) • 32K Bytes of In-System Self-Programmable Flash Endurance: 10,000 Write/Erase Cycles

  13. Data Memories • SRAM (for mega32) • 2K Byte Internal SRAM- Register file, I/O Register, Data Address. • EEPROM (for mega32) • 1024 Bytes EEPROM Endurance: 100,000 Write/Erase Cycles

  14. Program Counter (PC) • Instruction Register (IR) • Instruction Decoder (ID)

  15. REGISTER FILES

  16. X-Y-Z Registers

  17. ALU • Arithmetic And Logic Unit • Arithmetic • ADD R1,R2 • R1R1+R2 • Logic • AND R1,R2 • R1R1 AND R2

  18. فیوز بیت ها قسمتی از حافظه میکرو کنترلر ها هستند که امکاناتی را در اختیار کاربر قرار می دهند و با پاک شدن حافظه میکرو تنظیمات آنها از بین نمی رود

  19. Clock Source

  20. Clock Sources

  21. PDIP-Package – Mega32

  22. External Crystal Oscillator

  23. Low Frequency Crystal Oscillator

  24. External RC Oscillator

  25. Calibrated Internal RC Oscillator

  26. External Clock

  27. Timer/Counter Oscillator • For AVR microcontrollers with Timer/Counter Oscillator pins (TOSC1 and TOSC2), the crystal is connected directly between the pins. No external capacitors are needed. The Oscillator is optimized for use with a 32.768 kHz watch crystal. Applying an external clock source to TOSC1 is not recommended.

  28. Clock Distribution

  29. AVR Microcontrollers Second Session

  30. SRAM Management

  31. SRAM Data Memory (mega32)

  32. Programming With CodevisionAVR

  33. Prototype • #include <mega32.h> • global definition • main() • { • local variable; • statements; • } • function1() • { • local variable; • Statements; • } • function2() • { • local variable; • Statements; • }

  34. Prototype چون میکرو همیشه باید در حال فعالیت باشد، درون تابع main یک حلقه دائم قرار داده می شود. • #include <mega32.h> • global definition • main() • { • local variable; • دستوراتی که باید یک بار اجرا شوند • While (1) • { • دستورات و کدهای اصلی برنامه که دائما اجرا می شوند • } • }

  35. نکاتی در مورد برنامه نویسی خط اول همیشه دستور فراخوانی فایل های حاوی توابع header است در انتهای هر عبارت یک سمی کالن قرار داده می شود } و { در ابتدا و انتهای هر حلقه، عبارت شرطی و یا بلوک قرار داده می شود از // یا ( /* و */) برای نوشتن توضیح در برنامه استفاده می شود

  36. Data Type • Type Size (Bits) Range • bit 1 0 , 1 • char 8 -128 to 127 • unsigned char 8 0 to 255 • signed char 8 -128 to 127 • int 16 -32768 to 32767 • short int 16 -32768 to 32767 • unsigned int 16 0 to 65535 • signed int 16 -32768 to 32767 • long int 32 -2147483648 to 2147483647 • unsigned long int 32 0 to 4294967295 • signed long int 32 -2147483648 to 2147483647 • float 32 ±1.175e-38 to ±3.402e38 • double 32 ±1.175e-38 to ±3.402e38

  37. متغیر ها و ثابت ها ابتدا باید معرفی شوند نام متغیر نوع متغیر حافظه مورد نیاز برای متغیر eeprom int temp; flash int temp=10; eeprom char str; float a; int b=30; نام متغیر ها می تواند ترکیبی از حروف و اعداد باشد، فقط نام متغیر نباید با عدد شروع شود.

  38. Constants • flash int x=123; • const char y=‘a’; • #define C 100;

  39. آرایه ها تعدادی متغیر دلخواه از یک نوع و یک نام که با اندیس های شماره دار از هم جدا هستند intstr[10]; inti[3]= {2,5,6} رشته(string): به آرایه هایی که حروف اسکی را درون خود نگه می دارند، رشته می گوییم. Char t[5]= “temp”;

  40. bit Data type • bit x,y; • x=1; • from R2.0 to R14.7  max=104 • Set in following menu: • Project/Configure/C Compiler/Code Generation/Bit Variable size

  41. Operators + - * / % ++ -- = == ~ ! != < > <= >= & && | || ^ ? << >> -= += /= %= &= *= ^= |= >>= <<=

More Related