دانلود ‫پروژه طراحی و ساخت سیستم ضبط و پخش سیگنال با میکروکنترلر AVR و کارت حافظه ی MMC

  • Code: # 18554

  • تعداد صفحات: 73
  • فرمت فایل: Word
  • سال: مشخص نشده
  • مقطع: مشخص نشده
  • دسته بندی: کامپیوتر - IT
قیمت جدید: ۲۵,۰۰۰ تومان
۳۰,۰۰۰ تومان
دانلود
  • خلاصه
  • فهرست
  • خلاصه دانلود ‫پروژه طراحی و ساخت سیستم ضبط و پخش سیگنال با میکروکنترلر AVR و کارت حافظه ی MMC

    در این پروژه سعی بر این است که علاوه بر آشنایی با میکروکنترلر AVRو محیط نرم افزاری (labview) سخت افزار،به گونه ای طراحی شود که با دریافت سیگنال آنالوگ ورودی (صوت) از میکروفن ، از طریق واحدADC میکرو این سیگنال به دیجیتال تبدیل شود و با توجه به برنامه‎ای که در داخل میکرو تعبیه شده است،این اطلاعات به داخل MMC ریخته شده ومیکرو با دریافت فرمان از کامپیوتر به صورت ارتباط سریال دستور پخش را دریافت می‎کند و از طریق واحد تایمر/ کانترکه در مد PWM کار می‎کند,اطلاعات ذخیره شده در MMC را با آشکار سازی موج PWM توسط یک انتگرال گیر،باز سازی و به آنالوگ تبدیل می‎کند و این سیگنال آنالوگ بوسیله یک سری مدارات مورد نیاز برای پخش از طریق یک هدفن پخش می‎گردد.
    نگاهی اجمالی به میکروکنترلرها

    بخش اول : میکروکنترلرها

    سیر تکاملی میکروکنترلرها :

    اولین میکروکنترلرها در اواسط دهه 1970 ساخته شدند.

    این میکروکنترلرها در ابتدا پردازنده‎های ماشین حساب بودند که دارای حافظه برنامه کوچکی از نوع ROM ، حافظ داده از نوعRAM وتعدادی درگاه ورودی وخروجی بودند.


    با توسعه فناوری سیلیکون ، میکرو کنترلرهای 8 بیتی قویتری ساخته شدند .

    در این میکروکنترلرها علاوه بر بهینه شدن دستورالعمل ها، تایمر /شمارنده روی تراشه، امکانات وقفه و کنترل بهینه شده خطوط ورودی وخروجی نیز به آن اضافه شده است.

    حافظه موجود بر روی تراشه هنوز هم محدود می‎باشد و دربسیاری موارد کافی نیست .یکی از پیشرفتهای قابل توجه در آن زمان، قابلیت استفاده از حافظه EPROM قابل پاک شدن با اشعه ماورا بنفش، روی تراشه بود این قابلیت، زمان طراحی و پیاده سازی محصول را بطور محسوسی کاهش داد و نیز برای اولین بار امکان استفاده از میکروکنترلرها را در کاربردهایی که حجم تولید پایینی دارند، فراهم ساخت.
    خانواده 8051 در اوایل دهه 1980 توسط شرکت اینتل معرفی گردید .

    از آن زمان تاکنون 8051 یکی از محبوبترین میکروکنترلرها بوده و بسیاری از شرکتها دیگر نیز به تولید آن اقدام کرده‎اند .

    در حال حاضر مدل‎های مختلفی از 8051 وجود دارد که در بسیاری از آنها امکاناتی نظیر مبدل آنالوگ به دیجیتال حجم نسبتاً بزرگ از حافظه برنامه و حافظه داده،مدولاتور عرض پالس(PWM) در خروجی‎ها که امکان پاک کردن و برنامه ریزی مجدد آن توسط سیگنال‎های الکتریکی وجود دارد،تعبیه شده است.


    میکروکنترلرها اکنون به سمت 16 بیتی شدن در حرکت هستند .

    میکروکنترلر های 16 بیتی، پردازنده‎هایی با کارایی بالا (نظیر پردازش سیگنالهای دیجیتال ) می‎باشند که در کنترل فرایندهای بلادرنگ و در مواردی که حجم زیادی از عملیات محاسباتی مورد نیاز است، به کار برده می‎شوند.


    بسیاری از میکروکنترلرهای 16 بیتی، امکاناتی نظیر حجم زیاد حافظه برنامه و حافظه داده، مبدل های آنالوگ به دیجیتال چند کانالی، تعداد زیادی درگاهI/O ، چندین درگاه سریال، عملکردهای بسیار سریع ریاضی و منطقی و مجموعه دستورالعمل‎های بسیار قدرتمند با قابلیت پردازش سیگنال را دارا می‎باشند .


    معماری داخلی میکرو کنترلرها:
    ساده ترین معماری میکروکنترلر، متشکل از یک ریز پردازنده، حافظه و درگاه ورودی/خروجی است.

    ریز پردازنده نیز متشکل از واحد پردازش مرکزی (CPU)و واحد کنترل(CU) است.
    CPUدر واقع مغز یک ریز پردازنده است و محلی است که در آنجا تمام عملیات ریاضی و منطقی ،انجام می‎شود.

    واحد کنترل ، عملیات داخلی ریزپردازنده را کنترل می‎کند و سیگنال‎های کنترلی را به سایر بخش‎های ریز پردازنده ارسال می‎کند تا دستورالعمل‎های مورد نظر انجام شوند.
    حافظه بخش بسیار مهمی از یک سیستم میکروکامپیوتری است.ما می‎توانیم بر اساس بکارگیری حافظه ،آن را به دو گروه دسته‎بندی می‎کنیم: حافظه برنامه و حافظه داده .

    حافظه برنامه ، تمام کد برنامه را ذخیره می‎کند .این حافظه معمولا از نوع فقط خواندنی (ROM) می باشد.

    انواع دیگری از حافظه‎ها نظیرEPROM وحافظه‎های فلش EEPROM برای کاربردهایی که حجم تولید پایینی دارند وهمچنین هنگام پیاده‎سازی برنامه به کار می‎روند .

    حافظه داده از نوع حافظه خواندن/نوشتن(RAM) می‎باشد.

    در کاربردهای پیچیده که به حجم بالایی از حافظه ‎‎RAM نیاز داریم ، امکان اضافه کردن تراشه های حافظه بیرونی به اغلب میکروکنترلر ها وجود دارد.
    در گاههای ورودی / خروجی (I/O) به سیگنال‎های دیجیتال بیرونی امکان می‎دهند که با میکروکنترلر ارتباط پیدا کند .درگاههای (I/O) معمولاً به صورت گروههای 8 بیتی دسته بندی می‎شوند و به هر گروه نیز نام خاصی اطلاق می¬¬شود به عنوان مثال ، میکروکنترلر 8051 دارای 4 درگاه ورودی / خروجی 8 بیت می‎باشد که P3,P2,P1,P0 نامیده می‎شوند.

    در تعدادی از میکروکنترلرها ، جهت خطوط درگاه I/O قابل برنامه ریزی می‎باشد .

    لذا بیتهای مختلف یک درگاه را می توان به صورت ورودی یا خروجی برنامه‎ریزی نمود.

    در برخی دیگر از میکروکنترلرها (از جمله میکروکنترلرهای 8051) درگاههای I/O به صورت دو طرفه می‎باشند .

    هر خط از درگاه I/O این گونه میکرو کنترلرها را می توان به صورت ورودی و یا خروجی مورد استفاده قرار داد .

    معمولاً ، این گونه خطوط خروجی ، به همراه مقاومتهای بالا کش بیرونی به کار برده می‎شوند.

    خانواده AVR :
    میکروکنترولر AVR به منظور اجرای دستورالعملهای قدرتمند در یک سیکل کلاک (ساعت) به اندازه کافی سریع است و می‎تواند برای شما آزادی عملی را که احتیاج دارید به منظور بهینه سازی توان مصرفی فراهم کند .

    میکروکنترلر AVR بر مبنای معماری(RISC کاهش مجموعه‎ی دستورالعملهای کامپیوتر ) پایه‎ گذاری شده و مجموعه ای از دستورالعملها را که با 32 ثبات کار می‎کنند ترکیب می‎کند .

    به کارگرفتن حافظه از نوع Flash که AVR ها به طور یکسان از آن بهره می‎برند از جمله مزایای آنها است.یک میکرو AVR می‎تواند با استفاده از یک منبع تغذیه 2.7 تا 5.5 ولتی از طریق شش پین ساده در عرض چند ثانیه برنامه ریزی شود یا Program شود.
    میکروهای AVR در هرجا که باشند با 1.8 ولت تا 5.5 ولت تغذیه می‎شوند البته انواع توان پایین نیز وجود دارند که بهLow Power معروفند.

    ویژگیهایی که سبب شد، AVRها جای 8051 را بگیرند،عبارتست از:
    1.

    توان مصرفی پایین: توان مصرفی پایین آنها برای استفاده بهینه از باتری و همچنین کاربرد میکرو در وسایل سیار و سفری طراحی شده که میکروهای جدید AVR با توان مصرفی کم از شش روش اضافی در مقدار توان مصرفی ، برای انجام عملیات بهره می‎برند.

    این میکروها تا مقدار 1.8 ولت قابل تغذیه هستند که این امر باعث طولانی تر شدن عمر باتری می‎شود.

    در میکروهای با توان پایین ، عملیات شبیه حالت Standby است یعنی میکرو می‎تواند تمام اعمال داخلی و جنبی را متوقف کند و کریستال خارجی را به همان وضعیت شش کلاک در هر چرخه رها کند !
    2.

    حافظه ی فلش خود برنامه ریز با امکانات خاص
    3.

    قابلیت دوباره برنامه ریزی کردن بدون احتیاج به اجزای خارجی
    4.

    بایت کوچک که به صورت فلش سکتور بندی شده اند
    5.

    داشتن مقدار متغیر در سایز بلوک بوت
    6.

    خواندن به هنگام نوشتن
    7.

    بسیار آسان برای استفاده
    8.

    کاهش یافتن زمان برنامه ریزی
    9.

    کنترل کردن برنامه ریزی به صورت سخت افزاری
    10.

    استفاده از فیوزها و بیتهای قفل
    11.

    ایزوله بودن نسبت به نویز که باعث کابرد آن در محیط صنعتی می شود.
    راههای مختلف عمل برنامه ریزی :
     موازی یاparallel یکی از سریعترین روشهای برنامه ریزی.
     خود برنامه ریزی توسط هر اتصال فیزیکی.
     برنامه ریزی توسط هر نوع واسطی از قبیل TWIو SPI و غیره، دارا بودن امنیت صد درصد در بروزرسانی و کد کردن.
     : SPI واسطه سه سیمی محلی برای بروزرسانی سریع ، آسان و موثر در استفاده.
     واسط JTAG : واسطه ای که تسلیم قانون IEEE 1149.1 است و می‎تواند به صورت NVM برنامه‎ریزی کند یعنی هنگام قطع جریان برق داده‎ها از بین نروند .


    AVR همچنین مجهز به امکانات دیگر مانند تایمر واچ داگ و مبدل‎های ADC و PWM است.
    یکی از مهمترین بخشهای AVR که کمتر در هر میکروکنترلرهای دیگر دیده می‎شود مقایسه کننده آنالوگ با گین 1 و 200 و ...

    می باشد.

    لازم به ذکر است که در 8051 باید از فلش(EEPROM) وADC و کریستال مولد ساعت به صورت بیرونی استفاده می‎کردیم اما در AVR این امکانات به صورت درونی وجود دارد .

    انواع میکروهایAVR :
    شرکتATMEL که شرکت اصلی تولید کننده میکروهایAVR می‎باشد, سه نوع میکروکنترلر AVR تولید می‎کند :
    (1سری Tiny (2 سری AT90s (3 سریATmega

    که هر سری از این میکروها ویژگیهای خاصی داشته و در مصارف خاصی کاربرد بیشتری دارند که در ذیل به توضیح مختصری پیرامون هر یک از این سری‎ها پرداخته می‎شود :

    سریTiny:
    میکروهای این سری برای : 1- کاهش قیمت 2- صرفه جویی در وقت بهینه شده‎اند ، میزان مصرف ، حجم حافظه و تعداد پایه ها در میکروهای این سری کم است.
    از جمله میکروهای این سری می‎توان موارد زیر را نام برد :
    از جمله میکروهای این سری می‎توان موارد زیر را نام برد : • AT tiny 10 • AT tiny 11 • AT tiny 12 • AT tiny 15 L • AT tiny 26 • AT tiny 26 L • AT tiny 28 L سری 90s: از نظر حجم حافظه و تعداد پین ورودی / خروجی و توان مصرفی متوسط می‎باشد و به آن AVR معمولی هم میگویند.چند نمونه معروف از این میکروها در زیر نام برده شده است : • AT 90s 1200 • AT 90s 2313 • AT 90s2323/LS2323/S2343/LS2343 • AT 90s 2333/LS2333/S4433/LS4433 • AT 90s 8515 • AT 90s 8535/LS8535 سری MEGA: این میکروها نسبت به دو سری قبل دارای قابلیت‎های بیشتری می‎باشد ؛ تعداد ورودی / خروجی(I/O) بیشتر و فضای حافظه گسترده‎تر و به طبع اینها مصرف بالاتر.چند نمونه از AVR های موجود در بازار این سری ، در زیر لیست شده‎اند : • AT MEGA 323 , AT MEGA 323 L • AT MEGA 32 , AT MEGA 32 L • AT MEGA 128 , AT MEGA 128 L • AT MEGA 163 , AT MEGA 163 L • AT MEGA 8 , AT MEGA 8 L • AT MEGA 8515 , AT MEGA 8515 L • AT MEGA 8535 , AT MEGA 8535 L • AT MEGA 161 , AT MEGA 161L • AT MEGA 162 V , AT MEGA 162 • AT MEGA 16 , AT MEGA 16 L • AT MEGA 100 , AT MEGA 103 L • AT MEGA 169 V , AT MEGA 169 , AT MEGA 169 L • AT MEGA 64 L , AT MEGA 64 نگاهی گذرا به معماری درونی میکروکنترلرهایAVR : میکروکنترلرهای 8 بیتی AVR دارای 32 ثبات 8 بیتی همه منظوره هستند .(یعنی R0 تا R31 ) سه ثبات آدرس شانزده بیتی با نام مستعارX,Y,Z که هر کدام از این سه ثبات دو ثبات از همان 32 ثبات 8 بیتی هستند یعنی: (R28:R29) =رجیسترY (R26:R27)=رجیستر X (R30:R31)=رجیسترZ یک ثبات 16 بیتی به منظور اشاره گر پشته که در آدرسهای ورودی /خروجی : SPH(0x3e)و SPL (0x3d) قرارگرفته اند .همچنین این آدرسها در حافظه داده با آدرسهای 0x5e و0x5d هستند .

    یک ثبات 8 بیتی به منظور سنجش وضعیت یا همان ثبات پرچم با نامSREG I : فعال ساز و غیرفعال ساز عمومی وقفه یا Global Interrupt Enable/Disable Flag T : بیت انتقالی مورد استفاده دستورالعملهای BLD وBST H: Half Carry Flag S : بیت علامت یاSigned tests Instruction Set V : سرریزنما برای مکمل دو یا Two's Complement Overflow Indicator N : بیت منفی یا Negative Flag Z : بیت صفر یا Zero Flag C :Carry Flag حافظه داده و ثباتهای AVR : 32 آدرس اول حافظه یعنی 0x0000)تا (0x001f متعلق به ثباتهای R0 تا R31 هستند البته در برخیMCU ها برای ثبات ها از فضای حافظه ی داده استفاده می‎شود.

    آدرس های 0x0020تا 0x005f از حافظه داده در دسترس آدرسهای ورودی / خروجی0x00 تا 0x3f است.از آدرس0x006 حافظه ی داده به بعد فقط شامل حافظه استاتیک است یعنی SRAM است.

    دو ثبات برای واحد ریاضی منطقی ALU : تعداد زیادی از دستورالعملهایALU شامل دو ثبات هستند یکی مقصد یا (Destination(Rd و یکی منبع یا (Source(Rr که نحوه کدگشایی دستورالعمل را در زیر می‎بینید : بیتهایی که در آن حرف i قرار گرفته دستورالعمل و حرفd بیت های مقصد هستند وحرف r بیتهای منبع.

    ثبات منبع از بهم پیوستن بیتهای r0 :r1 :r2 :r3 :r9 ثبات مقصد از بهم پیوستن بیتهای d4 :d5 :d6 :d7 : d8 مشخص میشوند همچنین بیتهای باقی مانده i10 :i11 :i12 :i13 :i14 :i15 خود دستورالعمل را مشخص می‎کنند .

  • فهرست دانلود ‫پروژه طراحی و ساخت سیستم ضبط و پخش سیگنال با میکروکنترلر AVR و کارت حافظه ی MMC

  • ثبت سفارش
    عنوان محصول
    قیمت