دانلود ‫پروژه تستر حافظه FLASH و EEPROM و SRAM با استفاده از میکرو کنترلر AVR

Word 554 KB 30846 91
مشخص نشده مشخص نشده الکترونیک - برق - مخابرات
قیمت قدیم:۲۲,۱۰۰ تومان
قیمت با تخفیف: ۱۹,۸۰۰ تومان
دانلود فایل
  • بخشی از محتوا
  • وضعیت فهرست و منابع
  • حافظه های ATMagUlb, AVR

    این بخش تفاوت میان حافظه های دو، ATmegulb را توصیف
     می کند در ساختار AVR  دو فضای حافظه ای، فضای حافظه ای برنامه تولیست وفضای حافظه ای اولیه وجود دارد در مجموع ATMega16  یکEEPROM برای نگهداری اطلاعات حافظه ای دارد همه فضاهای این حافظه به صورت خطی ومنظم
    می باشد.

     

    سیستم REprogrammabl  حافظه فلش در برنامه نویسی حافظه

    ATMega16  شامل 16 کیلو بایت تک تراشه ای در سیستم وقابلیت برنامه ریزی مجدد حافظه فلش برای نگه داری برنامه است در زمانی که طول بایت حافظه های avr16 یا32 بیت بوده حافظه فلش دار برای avr    16*k5 شناخته شده است برای جلوگیری از اسیب نرم افزار حافظه فلش به دو بخش تقسیم می کنیم بخش راه اندازی وبخش برنامه نویس.

    حافظه فلش قابلیت10000 یا نوشتن وپاک کردن می باشد پروگرم کانتر ATM mega16  دارای طول 13 بیت می باشد که قابلیت آدرس دهی 8 کیلو بایت را دارد کار قسمت راه اندازی برنامه قفل وراه اندازی برایحالت نرم افزار در اجر ا وحمایت از بار گذاری در هنگام راه اندازی (نوشتاری- خواندنی) است که در فصل بعد بعد به آن اشاره شده است.که شامل توصیف اجزای سری اطلاعات فلش که در پینهایspi ودر ارتباط با JTAK می باشد.

    مقادیر ثابت می توانند در آدرس های حافظه برنامه قرار گیرند MP که در شکل زیر نشان داده شده است.

    نمودار زمانی برای ساختار وخروجی ها در نمودار خروجی وزمانی موجود شده است.

    حافظه داده  SRAM :

    شکل زیر نشان می دهد که SRAM  و ATMEGA  چگونه برنامه نویس می شود خانه ها حافظه پایین  نمایش می دهد که فایلها در حافظه SRAM داخلی وحافظهI/o ثبت شده است. اولین برنامه در آدرس 96 آدرس دهی می کند.

    پنج روش آدرس دهی برای پوشش دیتای حافظه وجود دارد:

    جهت، 2. خلاف جهت وتغییر موقعیت ،3. خلاف جهت، 4. خلاف جهت با

      PRO-decrement ، 5. خلاف جهت با POST- Increment.

    در فایلهای رجیستری، رجیسترهای­ R3 ,  R26  به صورت غیر مستقیم آدرس دهی می شود وبه صورت مستقیم در دنیای مخصوص ذخیره می شود.

    در حال خلاف جهت: تغییر مکان باعث می شود که63 خط آدرس با استفاده از رجیسترهای Z,Y آدرش دهی می شود.

    زمانیکه از رجیسترهای در آدرس دهی مستقیم در حالت کاهش آدرس دهی یا افزایش آدرس دهی می باشدازآدرس دهی رجیستر Z<>

    32رجیستر از 64 رجیستر به عنوان I/0 عمل می کنند ویک کیلو بایت دنیای داخلی SRAM درATMEGA16 برای آدرس دهی در همه حالتها قابل استفاده است. رجیستر فایلها در فایلهای همه سطوره در پایین توصیف می شود.     

     

    زمان پذیرش دیتای حافظه:

    این زمان پذیرش حافظه داخلی را توصیف می کند SRAM با دیتنای داخلی با دو clookcpu  که دراین قسمت همانطوری که در شکل زیر نشان داده شده دیتای آن اطلاعات را می پذیرد.

    دیتای حافظه ایEEPROM:

     ATMEGA16,516  بایت حافظه EEPROM دارد وبه صورت جداگانه سازماندهی می شود وهر بایت آنرا می توانیم بنویسیم وپاک کنیم از EEPROM می توان 100000 با ربرنامه نوشته وپاک کردعملکرد EEPROM در پایین توضیح داده شده است.

    عملکرد نوشتن وخواندن در EEPROM:

     همکارEEPROM وجیسترهایI/O قابل دسترس است درزمان الصبل کردن EEPROM در نمودار یک آمده است یک تابع به کاربرد اجازه می دهدکه بهصورت خودکار زمانیکه بایت بعدی بنویسید اجازه می دهد اگر کد کادر شامل نوشتن EEPROM باشد بعضی اقدامات لازم است در فیلتر کردن سنگینpower supply وvcc­  بالا وبرای پایین برد power باز می گذاشته می شود. برای جلویری از نوشتن در حافظه wreter, EEPROM  مخصوص بایستی فعال شودوبرای نوشتن در جزئیات در رجیسترهای EEPROM که کنترل کننده EEPROM مراجعه کندزمانی کهEEPROM قبل از فعال شدن خروجی cpu بایستی به مدت چهار کلاک غیر فعال باشد.

    وقتی در EEPROM اطلاعات نوشته می شود قبل از فعال شدن خروجی cpu به مدت دو کلاک صبر می کند.

    دریافت بیتهاs…0 – 15….9 bits

    این بیتها اطلاعاتی را که در ATmegal6 است از صفر شروع به خواندن می کند. آدرس ریجتر EEAROM- EEARH& EEARL – مخصوص آدرس دهیEEPROMبرای 512 بایت زاEEPROM است اطلاعات در EEPROM از 511تا  0 به صورت  خطی آدرس دهی می شود اندازه داخلی رجیستر EEAR ذخیره می شود.

    7 Bit -  7…..0 EEDR: دیتا رجیستر

    بیت 7…….0 -  EEDR  7….0 دیتای EEPROM:

    برای نوشتن درEEPROM وEEPROM شامل رجیسترEEDR است کد درهنگام نوشتن اطلاعات در EEPROM از طریق رجیسترهای EEAR آدرس دهی می شود. ورای خواند محتوای اطلاعات EEPROM از طریق EEDR از دیتای خروجی اطلاعاتی کد بوسیله EEAR آدرس دهی شده خوانده می شود.

    دریافت بیتها:  bit 7….4- Res

    این بیت ها شاما بیتهای نگه داری شده هستند که در ATMEGA16 از صفر شروع به خواندن می کند.

    خواندنEEPROM از وقفه با استفاده از اینترانت (Bit3):

    زمانیکه با بیت srev از طریق EERIE یک شود وقفه EEPROM فعال می شود ودر صورتیکه به SREV صفر نوشته شود وقفه غیر فعال است وقتی EEWE پاک شود EEPROM یک وقفه ثابت تولید می کند.

    نوشتن در اینیبیل .مستر EEPROM   Bit – EEMWE:

    هنگامی که EEMWE نوشته شده EEWE دربین چهار سیکل زمانی نوشته می شود ودیتا در آدرس انتخاب شده نوشته می شود اگر EEMWE صفر باشد نوشتن درEEWE هیچ تاثیری نخواهد داشت وقتی EEMWE بوسیله برنامه ای یک  شود. سخت افزار بیت را از چهار کلاک پاک کرده به توضیح زیر در مورد پرو سدنوشتن EEPROM توجه کنید.

     

    Bit7 – EEWE: نوشتن در وقفه EEPROM:

    سیگنال فعال ساز RW EEPROM یک سیگنالی است که زمانیکه آدرس دیتا به صورت صحیح نوشته می شود ببیت EEWE بایستی فعال شود ودراندازه EEPROM نوشته شود.

    بیتEEMW بایستی یک شود قیل از اینکه یک منطقی در EEWE نوشته شود در یک طرف EEPROM ذخیره می شود.

    پروسه جاری زمانی که در EEPROM نوشته شود بایستی روابط زیر انجام شود:

    منتظر بماند تا وقتی که EEWE صفر شود.

    منتظر بماند تا وقتی که SPMENدرSPMCR صفر شود.

    آدرس جدیدEEPROM در EEAR انتقال دهد ( اختیاری).

    نوشتن اطلاعات جدید EEPROM در EEDR  انتقال می دهد ( اختیاری).

    زمانیکه صفر در EEWE صفر شود ویک منطقی در بیت EEMWE نوشته شود.

    در چهار کلاک کد در EEMWE قرار می دهد یم منطقی را دربیت EEMWE نوشته شود.

    EEPROM نمی تواند همزمان با نوشتن در فلش cpu را برنامه ریزی شود.

    قبل از اینکه برنامه ای در EEPROM نوشته شود به صورت نرم افزاری حافظه فلش را چک می کند مرحله دوم اول شامل نرم افزاری هستند که باعث بالا آمدن  برنامه فلش cpu می شود.

    اگر فلش توسط cpu فلش را updated نکندمی تواند cpu نگاهی به نرم افزار بالا آمده درصورتیکه برنامه ریزی شده نوشته شده بخواند.

    نکته: وقتی فعالساز رایتر اصلیEEPROM از سیکل زمانی خارج شده ووقفه بین مرحله پنجم وششم ممکنه یک سیکل نوشتن را ازدست بدهد اگر یک دو تین وقفه به EEPROM برسد وقفه دیگری را به EEPROM لازم دارد تا محتوی رجیستر EEAR یا EEDR تغییر پیدا می کندبه همین دلیل دستیابی به وقفه EEPROM دستور دوباره برای EEPROM داده می شود تا FLAY وقفه عمومی پاک شود که درطول مراحل از مشکلات جلوگیری می شود.

    وقتی که زمان دسترسی به Write تمام شود بیت EEWE بخ وسیله سخت افزار پاک می شود کاربرد نرم افزار می تواند بازیافت کند اطلاعات را منتظر بماند برای یک صفر قبل از نوشته شدن بایت بعدی وقتیEEWE بسته شده است برای دو سیکل زمانی قبل از خروج دستور العمل بعدی متوقف می شود.

    فصل دوم 

    پروگرم حافظه:

    بیتهای حافظه دیتا وبرنامه نویسی:

     ATMEGA16 شش قفل را فراهم می کندکه می تواند مانع برنامه نویسی شود یا می تواند صفر برنامه ریزی کند مجموع آن در لیست (1) به دست آمده است.

    نکته:

    برنامه ریزی می تواند فیوز بیتها قبل از برنامه ریزی را قفل بیتها صورت گیرد.

    یسک یعنی غیر برنامه ریزی وصفر یعنی برنامه ریزی شده.

    فیوزها:

    ATMEGA16 دوفیوز بیت دارد جدول «2» وجدول «3» به طور خلاصه وضیفه همه فیوز بیتها را ونحوه طراحی داخلی فیوز بیت ها را توضیح می دهد نکته ای که فیوز ها می توانند صفر منطقی را بخوانند اگر آنها را برنامه نویسی کند.

    نکات مهم:

    فیوز بیت SPIEN در SPI به صورت سریال برنامه نویسی در دسترس نمی باشد.

    فیوز بیت CKOPT وظیفه مربوط به قرار دادن CKSEL بیتها که به منبع کلاک وابسته است.

    مقدار پیش فرض BOTTSZ 0…..1 از خروجی در حد اکثر اندازه است به جدول «زیر» نگاه کنید.

     

     

    همیشه طراحی که برنامه نویسی فیوز OCDEN علیرغم قرار دادن قفل بیت وفیوزJTAGEN فراهم می کند هر برنامه ریزی OCDEN فیوزها را قادر می سازد بعضی قسمتهای سیستم ها رااداره کند وهمه قسمت ها را غیر فعال می کند این ممکن است مصرف توان را افزایش دهد.

     

    نکات:

    مقدار پیش فرض از sut 1……0 خروجی ماکزیمم شروع زمانی است.

    مقدار قرار داده شده از CKSEL  3….0 ناشی از خروج RC اسیلاتور MHZ است وضعیت فیوز بیتها تاثیری روی پاک کردن تراشه ندارد نکته ای که فیوز بیتها قفل می شود اگر بیت«1» توسط برنامه قفل شود (lb1) برنامه فیوز بیتها قبل از برنامه نویسی قفل بیتها است.

    لچ فیوزها:

     ظرفیت لچ فیوز ها زمانی که قطع داخلی برنامه ریزی شد وظرفیت فیوزها تا معلوم شدن قسمت از برنامه از مد خارج شده وتغییر پیدا می کند.

    این فیوزهای صحبت شده در اول برنامه معلوم می کند کد resave بکار نرفته همچنین فیوز لچ در توان بالا حالت زمان پیدا می کند.

     

    تاثیر بایتها:

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

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

    $000 : $1E (شامل طراحی که به وسیله اتمل می شود )

    $001 : $94 ( شامل 16 کیلوبایت حافظه فلش است )

    $ 002 : $03

    کالیبره کردن بایت ها :

    در Atmega 16 یک بایت کالیبره شده برای تولید RC اسیلاتور است این بایت با ارزش از آدرس $000 در آدرس موثر قرار گرفته است در زمان ری ست کردن این بایت به طور اتوماتیک در داخل رجیستر osccal نوشته می شود و به طور نامطمئن فرکانس مرکزی RC اسیلاتور کالیبره می شود .

    فیوز بیت های ATM EGA16

    ATMEGA16 دارای دو بایت فیوز بیت طبق جدول زیر می باشد : جدول در ص 92 کتاب است . فیوز بیت ها با پاک کردن (ERASE)  میکرو تاثیری نمی بینند ولی می توانند با برنامه ریزی بیت LB1 قفل شوند . منطق صفر به معنای برنامه ریزی شدن و یک به معنای برنامه ریزی نشدن است .

    OCDEN : در صورتی که بیتها قفل برنامه ریزی نشده باشند برنامه ریزی این بیت به همراه بیت JTAGEN باعث می شود که در سیستم  CHIPDEBUG  ON فعال شود برنامه ریزی شدن این بیت به قسمتهای از میکرو امکان می دهد که در مدهای SLEEP کار کنند که این خود باعث افزایش مصرف سیستم می گردد این بیت در صورتی پیش فرض برنامه LU می شود .

    JTAGEN : بیتی برای فعال سازی برنامه ریزی میکرو از طریق استاندارد ارتباط IEEE (JTAG) که در حالت پیش فرض فعال است و میکرو می تواند از این ارتباط برای برنامه ریزی خود استفاده نماید .

    SPIEN : در حالت پیش فرض برنامه ریزی شده و میکرو از طریق سریال SPI برنامه ریزی می شود .

    CICOPT : انتخاب کلاک که به صورت پیش فرض برنامه ریزی نشده است 

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

مقدمه فصل يک در موردانواع ميکروکنترلر هاي MEGAAVR است که سعي شده است به طور کلي توضيح داده شود . در فصل دوم شاهد توضيحاتي در مورد عملکرد پروژه ساخت (مدار الکترونيکي ، قطعات تشکيل دهنده ، برنامه مورد استفاده وتوضيحات کامل کننده است . درف

مقدمه: آشنايي با ميکرو کنترلرهاي :AVR ميکرو کنترلر : به آي سي هايي که قابل برنامه ريزي مي باشد و عملکرد آنها از قبل تعيين شده ميکروکنترلرگويند ميکرو کنترل ها داراي ورودي - خروجي و قدرت پردازش مي باشد. بخشهاي مختلف ميکروکنترلر :

فصل 1 - توصيف کامل پروژه ضرورت ها و نياز ها : در بسياري از مدارات ديجيتالي ( ميکروکنترلي ) که با برق و باطري کار مي کنند با دو مشکل مواجه مي باشيم : مشکل اول مربوط به عملکرد است. يعني عملکرد نمايش LCD با ولتاژ 5 ولت است در حالي که اي

چکیده : سخت افزار این پروژه به طور کلی از یک میکروکنترلر Atmega16 از شرکت ATMEL و یک LCD 4*20 جهت نمایش عملکرد و 4 رله در خروجی و چند قطعه دیگر جهت کارهای جانبی و تنظیمات سخت افزاری تشکیل شده است . این پروژه جهت کنترل 4 موتور مجزا با تنظیمات مجزا می باشد که توسط برنامۀ Bascom و به زبان Basic طراحی شده است . جهت شناسایی این که کدام موتور باید روشن شود به صورت مقایسه ای برنامۀ ...

چکیده : در این پروژه پیرامون طراحی نرم افزار ساخت یک قفل الکترونیکی با استفاده از میکرو کنترلر AVR(ATMEGA8) مطالبی چند به میان آمده است این قفل توانایی این را دارد که توسط سه نفر و با سه رمز رقمی متفاوت مورد استفاده قرار گیرد . میکرو AVR رمز را از یک صفحه کلید ماتریسی دریافت می کند و پس از نمایش برروی صفحه نمایشگر LCD پس از مقایسه با رمز موجود در حافظه در صورت صحیح بودن رله ای ...

مقدمه اي بر ميکروکنترلرهاي AVR : ميکروهاي AVR داراي انعطاف پذيري غير قابل مقايسه و بي همتايي هستند.آنها قادر به ترکيب هر نوع کدي با يک معماري کارامد از طريق زبانهاي C و Assembly هستند و قادرند از طريق اين برنامه ها تمام پارامترهاي ممکن در يک سيک

چکيده سيتم اعلان واطفاء حريق به عنوان يک سيستم امنيتي براي کارخانجات ومراکز عمومي و ادارات کاربرد فراواني دارد.و در صورت حس کردن حرارت ويا دود سيستم آلارم مي دهد . و مي توان بگونه اي برنامه ريزي کرد که بتواند از حريق جلوگيري نمايد.

:حافظه ها ROM حافظه فقط خواندنی یا ROM ،نوعی از حافظه است که میتواند به طور دائمی داده ها را نگاه دارد. زیرا نوشتن در آن غیرممکن است .معمولا به ROM ، حافظه غیرفرار هم گفته می شود زیرا داده های ذخیره شده در RAM حتی با قطع برق کامپیوتر نیز در آن باقی می مانند. ROM به تنهایی یک مکان ایده آل برای قرار دادن دستورالعمل های شروع به کار PC می باشد به عبارت دیگر نرم افزاری می باشد که ...

مقدمه : میکروکنترلر چیست ؟ میکروکنترلر در واقع یک کامپیوتر تک تراشه ای ارزاتقیمت می­باشد. کامپیوتر تک تراشه ای بدین معنی است که کل سیستم کامپیوتر در داخل تراشه مدارمجتمع جای داده شده است.میکروکنترلری که برروی تراشه سیلیکونی ساخته میشود دارای خصوصیاتی مشابه خصوصیات کامپیوترهای شخصی استاندارد است. نخستین ویژگی میکرولنترلر دارای یک CPU (واحد پردازشگر مرکزی) حافظه RAM3 و حافظه ROM4 ...

ثبت سفارش
تعداد
عنوان محصول