دستورات خواندن ونوشتن در حافظه بلند مدت میکرو (حافظه eeprom )


با سلام

ذخیره یک عدد در حافظه میکرو این حافظه میکرو با قطع تغذیه هم از بین نمیرود <> مثلا در مواقعی که میکرو در حال شمارش هست وقتی تغذیه قطع شود این شمارش صفر نمیشود و با وصل مجدد تغذیه میکرو شمارش خود را ادامه داده......

در کل میکرو دو حافظه دارد حافظه flash  که برنامه ای که ما داخل آیسی میریزیم تو این حافظه قرار میگیره و یک حافظه بلند مدت eeprom  که برای ذخیره داده ها میباشد برای اینکه بتوانیم در این حافظه عدد را ذخیره کنیم و دوباره بخونیم باید از دستورات writeeeprom , readeeprom استفاده کنیم که در برنامه زیر مثال زدیم.

برنامه زیر بر متغییر A افزوده و در حافظه ذخیره میکند و قتی برق قطع شود دو باره میکرو حافظه خود را خوانده و از ادامه همان عدد شروع به افزودن میکند.


 

توضیح برنامه 

===========

خط اول معرفی میکرو atmega8 خ دوم فرکانس کاری میکرو

خ سوم و چهارم پیکره بندی lcd برای پورت d 

خ 5 خاموش کردن  نشانگر ( _ ) بروی lcd , همیشه مزاحمه:)

تعریف یک متغییر از نوع word  که از 0 تا 65535 میتونه افزایش پیدا کنه

در خط بعد a=0  قرار دادیم یعنی مقدار اولیه عدد 0 هست

خط بعد دستور خواندن حافظه ولی ما که هنوز چیزی توش ذخیره نکردیم !!!

شروع حلقه do loop

خط بعد دستور incr یعنی یکی بر متغییر a اضافه کن یعنی الان a=1 میشه 

حالااااااااااااا همین A با دستور writeeeprom در آدرس 1 حافظه بلند مدت میکرو ذخیره میشه(آدرس حافظه eeprom )  چرا ؟<<>>>> تا هر وقت برق قطع شد عددمون صفر نشه و تو حافظه میکرو ذخیره شده

در خط بعد یه وقفه کوچولو واسه احتیاط که میکرو حول نشه عدد رو ذخیره نکنه:)

در خط بعد پاک کردن lcd  و نمایش عدد a  وقفه 300 میلی ثانیه 

و loop میکرو میرسه به این دستور دوباره میره دستورات رو از زیر do  میخونه  و دوباره همون آشو همون کاسه انقدر افزایش میده تا یهو میبینیم ااااااااااااااااااااااااااه

:( برق قطع شد:(( عدد تا چند بود؟؟؟؟؟؟؟؟؟ نگران نباشید :)

در مخ میکرو ذخیره شده حالا وقتی تغذیه وصل میشه میکرو میرسه به دستور readeeprom  و مقدار a  رو میخونه و دوباره میوفته  تو حلقه و هی به این متغییر اضافه میکنه تا  65535 و صفر میشه و دوباره میره بالا(چون متغییر ما از نوع word بود <>>>>>اگه میبینی کمه؟ از نوع long بزار که از  منفی-2147483648 تااااااا  214748364 بازم کمه؟؟؟؟؟) 

دستور end واسه خودم نوشتم میکرو که گوش نمیکنه :)) چون حلقه do loop نمیزاره به این خط برسه

 

اینم سخت افزار

 =============

                                                                                                           

 

دانلود پروتیوس و فایل بسکام


                                                             >>>>>>موفق باشین<<<<<<

 



مطالب مشابه :


ساعت دیجیتالی با نمایش روز و تاریخ شمسی

ارائه انواع پروژه رشته های و میکروکنترولر پروژه های عملی با avr




دستورات خواندن ونوشتن در حافظه بلند مدت میکرو (حافظه eeprom )

سایتی برای دانلود پروژه های رایگان و سفارش ساخت پروژه های عملی شما(طراحی پروژه پروژه با




دانلود فایل کامل میکروکنترولر AVR

و تسلط به دانش میکروکنترولر های avr خصوصا های عملی وحل پروژه کامل آسانسور با




گزارش کار آزمایشگاه میکروکنترولر 8051 ( دانشکده فنی تهران جنوب )

گزارش کار آزمایشگاه میکروکنترولر آموخته هایم را با شما دوستان به و پروژه های




دوره عملی آموزش طراحی و ساخت کامپوزیت ها (فایبرگلاس)

» برترین پهپاد های جهان و مقایسه ی آنها با نمونه های میکروکنترولر های پروژه های




آموزش کامل ساخت ربات تعقیب صدا

این آموزش 100 درصد عملی و ترین پروژه های برق و مهندسی پروژه ها همراه با ایمیل و




برچسب :