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

word قابل ویرایش
79 صفحه
12700 تومان
127,000 ریال – خرید و دانلود

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

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

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

فصل اول :

نگاهی اجمالی به میکروکنترلرها

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

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

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

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

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

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

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

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

حافظه بخش بسیار مهمی از یک سیستم میکروکامپیوتری است.ما می‎توانیم بر اساس بکارگیری حافظه ،آن را به دو گروه دسته‎بندی می‎کنیم: حافظه برنامه و حافظه داده . حافظه برنامه ، تمام کد برنامه را ذخیره می‎کند .این حافظه معمولا از نوع فقط خواندنی (ROM) می باشد. انواع دیگری از حافظه‎ها نظیرEPROM وحافظه‎های فلش EEPROM برای کاربردهایی که حجم تولید پایینی دارند وهمچنین هنگام پیاده‎سازی برنامه به کار می‎روند . حافظه داده از نوع حافظه خواندن/نوشتن(RAM) می‎باشد. در کاربردهای پیچیده که به حجم بالایی از حافظه ‎‎RAM نیاز داریم ، امکان اضافه کردن تراشه های حافظه بیرونی به اغلب میکروکنترلر ها وجود دارد.

در گاههای ورودی / خروجی (I/O) به سیگنال‎های دیجیتال بیرونی امکان می‎دهند که با میکروکنترلر ارتباط پیدا کند .درگاههای (I/O) معمولاً به صورت گروههای ۸ بیتی دسته بندی می‎شوند و به هر گروه نیز نام خاصی اطلاق می¬¬شود به عنوان مثال ، میکروکنترلر ۸۰۵۱ دارای ۴ درگاه ورودی / خروجی ۸ بیت می‎باشد که P3,P2,P1,P0 نامیده می‎شوند. در تعدادی از میکروکنترلرها ، جهت خطوط درگاه I/O قابل برنامه ریزی می‎باشد . لذا بیتهای مختلف یک درگاه را می توان به صورت ورودی یا خروجی برنامه‎ریزی نمود. در برخی دیگر از میکروکنترلرها (از جمله میکروکنترلرهای ۸۰۵۱) درگاههای I/O به صورت دو طرفه می‎باشند . هر خط از درگاه I/O این گونه میکرو کنترلرها را می توان به صورت ورودی و یا خروجی مورد استفاده قرار داد . معمولاً ، این گونه خطوط خروجی ، به همراه مقاومتهای بالا کش بیرونی به کار برده می‎شوند.

 

خانواده AVR :
میکروکنترولر AVR به منظور اجرای دستورالعملهای قدرتمند در یک سیکل کلاک (ساعت) به اندازه کافی سریع است و می‎تواند برای شما آزادی عملی را که احتیاج دارید به منظور بهینه سازی توان مصرفی فراهم کند . میکروکنترلر AVR بر مبنای معماری(RISC کاهش مجموعه‎ی دستورالعملهای کامپیوتر ) پایه‎ گذاری شده و مجموعه ای از دستورالعملها را که با ۳۲ ثبات کار می‎کنند ترکیب می‎کند . به کارگرفتن حافظه از نوع Flash که AVR ها به طور یکسان از آن بهره می‎برند از جمله مزایای آنها است.یک میکرو AVR می‎تواند با استفاده از یک منبع تغذیه ۲٫۷ تا ۵٫۵ ولتی از طریق شش پین ساده در عرض چند ثانیه برنامه ریزی شود یا Program شود.

میکروهای AVR در هرجا که باشند با ۱٫۸ ولت تا ۵٫۵ ولت تغذیه می‎شوند البته انواع توان پایین نیز وجود دارند که بهLow Power معروفند. ویژگیهایی که سبب شد، AVRها جای ۸۰۵۱ را بگیرند،عبارتست از:

۱٫ توان مصرفی پایین: توان مصرفی پایین آنها برای استفاده بهینه از باتری و همچنین کاربرد میکرو در وسایل سیار و سفری طراحی شده که میکروهای جدید AVR با توان مصرفی کم از شش روش اضافی در مقدار توان مصرفی ، برای انجام عملیات بهره می‎برند. این میکروها تا مقدار ۱٫۸ ولت قابل تغذیه هستند که این امر باعث طولانی تر شدن عمر باتری می‎شود. در میکروهای با توان پایین ، عملیات شبیه حالت Standby است یعنی میکرو می‎تواند تمام اعمال داخلی و جنبی را متوقف کند و کریستال خارجی را به همان وضعیت شش کلاک در هر چرخه رها کند !

۲٫ حافظه ی فلش خود برنامه ریز با امکانات خاص
۳٫ قابلیت دوباره برنامه ریزی کردن بدون احتیاج به اجزای خارجی
۴٫ بایت کوچک که به صورت فلش سکتور بندی شده اند
۵٫ داشتن مقدار متغیر در سایز بلوک بوت

۶٫ خواندن به هنگام نوشتن
۷٫ بسیار آسان برای استفاده
۸٫ کاهش یافتن زمان برنامه ریزی
۹٫ کنترل کردن برنامه ریزی به صورت سخت افزاری
۱۰٫ استفاده از فیوزها و بیتهای قفل

۱۱٫ ایزوله بودن نسبت به نویز که باعث کابرد آن در محیط صنعتی می شود.
راههای مختلف عمل برنامه ریزی :

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

یکی از مهمترین بخشهای AVR که کمتر در هر میکروکنترلرهای دیگر دیده می‎شود مقایسه کننده آنالوگ با گین ۱ و ۲۰۰ و … می باشد. لازم به ذکر است که در ۸۰۵۱ باید از فلش(EEPROM) وADC و کریستال مولد ساعت به صورت بیرونی استفاده می‎کردیم اما در AVR این امکانات به صورت درونی وجود دارد .

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

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

سریTiny:
میکروهای این سری برای : ۱- کاهش قیمت ۲- صرفه جویی در وقت بهینه شده‎اند ، میزان مصرف ، حجم حافظه و تعداد پایه ها در میکروهای این سری کم است.
از جمله میکروهای این سری می‎توان موارد زیر را نام برد :
• AT tiny 10
• AT tiny 11
• AT tiny 12
• AT tiny 15 L
• AT tiny 26

• AT tiny 26 L
• AT tiny 28 L
سری ۹۰s:
از نظر حجم حافظه و تعداد پین ورودی / خروجی و توان مصرفی متوسط می‎باشد و به آن 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 :
میکروکنترلرهای ۸ بیتی AVR دارای ۳۲ ثبات ۸ بیتی همه منظوره هستند .(یعنی R0 تا R31 ) سه ثبات آدرس شانزده بیتی با نام مستعارX,Y,Z که هر کدام از این سه ثبات دو ثبات از همان ۳۲ ثبات ۸ بیتی هستند یعنی:
(R28:R29) =رجیسترY (R26:R27)=رجیستر X
(R30:R31)=رجیسترZ
یک ثبات ۱۶ بیتی به منظور اشاره گر پشته که در آدرسهای ورودی /خروجی :
SPH(0x3e)و SPL (0x3d) قرارگرفته اند .همچنین این آدرسها در حافظه داده با آدرسهای ۰x5e و۰x5d هستند .
یک ثبات ۸ بیتی به منظور سنجش وضعیت یا همان ثبات پرچم با نام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 آدرس اول حافظه یعنی ۰x0000)تا (۰x001f متعلق به ثباتهای R0 تا R31 هستند البته در برخیMCU ها برای ثبات ها از فضای حافظه ی داده استفاده می‎شود.
آدرس های ۰x0020تا ۰x005f از حافظه داده در دسترس آدرسهای ورودی / خروجی۰x00 تا ۰x3f است.از آدرس۰x006 حافظه ی داده به بعد فقط شامل حافظه استاتیک است یعنی 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 خود دستورالعمل را مشخص می‎کنند .
به عنوان مثال حاصل جمع r17 وr2 که همانAdd r17,r2 است به صورت زیر کدگشایی یاEncode می‎شود

که در این صورت خروجی از این قرار است:
Hex : 0 :12 0d add r17 , r2
توجه داشته باشید که یک کلمه ی ۱۶ بیتی از هشت بیت کم ارزش آن در حافظه ذخیره می شود.

فصل دوم:

مختصری درباره MMC و واسط SPI در میکروکنترلرهای AVR

پروتکل های ارتباطی درMMC

پروتکل‎های ارتباطی آن دردومد MMC وSPI می‎باشند. بیشترین فرکانس پالس ساعت هر هر دو مد ۲۰MHZ است. اگرچه نحوه کار واسطها در دو مد متفاوت است، ولی داده های نوشته شده در هرمد، در مد دیگر قابل خواندن است.تفاوت عملکرد پایه ها در مد در جدول زیر آمده است.

Multimedia card(MMC)

امروزه اکثر دستگاه های دیجیتال که به بازار ارائه می شوند معمولاً شامل هستند و دلایل استفاده از این است که آنها از طریق سریال داده ها را انتقال می دهند و سرعت بالایی در حدود Mbit/s 20 یا به عبارت دیگر چیزی حدود Mbyte/s 2.5 دارند.
همچنین یکی دیگر از دلایل استفاده از mmc این است که به راحتی می توان اطلاعات را بر روی آنها ذخیره و بازیابی کرد.
مقدمه:
شکل زیر ساختار درونی را نشان می دهد که از بلوک های جداگانه تشکیل شده است . همه این بلوک ها به وسیله یک اسیلاتور داخلی کلاک می خورند.
چون دارای اسیلاتور داخلی با فرکانس مشخص است بنابراین برای انتقال داده توسط خطوط (دستور) و (داده) باید فرکانس اسیلاتور داخلی با فرکانس خط (کلاک) که توسط (کنترلر) بوجود می آید سکنرون (همزمان) شود. این کارت توسط واحد انجام می شود.
ها به وسیله ۳ پین (خط داده) کنترل می شوند که هریک از این خطوط داده کار خاصی را در طول انتقال داده انجام می دهند.
همچنین ها دارای ۴ رجیستر داخلی هستند که از این رجیستر ها برای شناسایی و یک سری از خصوصیات استفاده می شود. این رجیستر ها عبارتند از:
• OCR : این رجیستر رنج ولتاژهایی را که توسط کارت پشتیبانی می شود نشان می دهد.
• رجیستر شناسایی کارت
• رجیستر تعیین داده ( دانستن محتویات این رجیستر مهم است)
• رجیستر تخصیص آدرس برای انتقال داده بین و دانستن محتویات این رجیستر ها حائز اهمیت است.

برای انتقال داده از دو پروتکل پشتیبانی می کند یا به عبارت دیگر به دو روش می توان داده را بین و تبادل کرد که عبارتند از :
در هریک از دو پروتکل بالا طریقه اتصال بین و تفاوت دارد(به شکل زیر توجه کنید)
(mmc mode) Multimedia mode :
در این روش برای انتقال داده از کمترین خط داده استفاده شده است که عبارتند از:
CLK : با هر دوره تناوب از سیگنال ورودی به این پین یک بیت داده بر روی خط یا جابجا می شود . فرکانس این خط می تواند بین صفر و ماکزیمم فرکانس ممکنه باشد() و این فرکانس می تواند در حین انتقال داده تغییر کند(این یک مزیت است).
CMD : این خط یک خط داده دو طرفه است(ورودی و خروجی) که برای فعال کردن و دستور انتقال داده و پاسخ مورد استفاده قرار می گیرد . این خط داده به دو روش عمل می کند :
۱- برای فعال سازی
۲- برای انتقال سریع داده
دستور همیشه توسط اما پاسخ توسط فرستاده می شود.
DAT : این خط یک خط داده دو طرفه است وبرای انتقال داده ای که باید بر روی حافظه ذخیره یا از حافظه خوانده شود مورد استفاده قرار می گیرد.

RSV : این خط در این روش بدون استفاده است اما در به عنوان خط انتخاب تراشه به کار می رود.

SPI mode :
پروتکل توسط شرکت ارائه شد و توسط اکثر میکروکنترلرهای پشتیبانی می شود . این مزیت باعث شده که بیشتر پروژه های امروزی از این کارت استفاده کنند.
در پروژه انجام شده مذکور نیز از این پروتکل استفاده شده است.
خطوط داده در این پروتکل عبارتند از:
CLK :سیگنال کلاک برای سنکرون سازی انتقال داده است.
Data In : این خط داده ورودی است. بر روی میکرو کنترلر خط داده باید به این پین وصل شود. زیرا به عنوان و به عنوان عمل می کند.
Data Out : این خط داده ورودی است . بر روی میکرو خط داده(پین) باید به این پین وصل شود.
CS :() از این خط داده برای انتخاب و فعال سازی استفاده می شود. در پروتکل به وسیله آدرس مخصوصی که توسط (کنترلر) به آن اختصاص داده, شناسایی می شود. اما در پروتکل شناسایی کارت توسط خط انجام می گیرد که برای انتخاب هر کارت می توانیم به وسیله خط (وقتی که ۰ می شود کارت فعال می شود) را انتخاب کنیم و باید توجه کنیم که در طول انتقال داده این خط باید فعال باشد . همچنین در پروتکل بر خلاف پروتکل که خطوط دو طرفه بود, خطوط یک طرفه است یعنی یا ورودی است یا خروجی و این باعث کاهش سرعت و کاهش دستورات انتقال داده در پروتکل است.

این فقط قسمتی از متن مقاله است . جهت دریافت کل متن مقاله ، لطفا آن را خریداری نمایید
word قابل ویرایش - قیمت 12700 تومان در 79 صفحه
127,000 ریال – خرید و دانلود
سایر مقالات موجود در این موضوع
دیدگاه خود را مطرح فرمایید . وظیفه ماست که به سوالات شما پاسخ دهیم

پاسخ دیدگاه شما ایمیل خواهد شد