پروژه ایپرام داخلی(ایمولیشن) و خارجی(ای سی ایپرام) stm32 HAL

به نام خدا و با سلام

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

بعضی از میکرو های شرکت ST دارای حافظه ایپرام داخلی نیستند به همین دلیل شرکت ST یک کتابخانه فراهم کرده است که ما بتوانیم اطلاعات را روی حافظه فلش میکرو بنویسیم.

اما اگر اطلاعات شما بسیار حساس و حجیم هستند انها در ای سی های خارجی میتوانید ذخیره کنید

دو نوع ای سی  خارجی برای ذخیره سازی دائمی اطلاعات  است

ایپرام

فلش

ای سی های EEPROM که معمولا ساخته شده توسط شرکت اتمل هستند و پارت نامبر انها با AT شروه میشود و نحوه محاسبه حجم انها به صورت زیر است و پروتکل ارتباطی انها I2C است:

AT24C01 ، عد 1 به معنی 1024 بیت می باشد پس برای مشخص شدن ظرفیت به بایت 1024 تقسیم بر 8 میشود 128 بایت.
AT24C02 ، عد 2 به معنی 2024 بیت می باشد پس برای مشخص شدن ظرفیت به بایت 2048 تقسیم بر 8 میشود 256 بایت.
AT24C04 ، عد 4 به معنی 4096 بیت می باشد پس برای مشخص شدن ظرفیت به بایت 4096 تقسیم بر 8 میشود 512 بایت.
AT24C08 ، عد 8 به معنی 8192 بیت می باشد پس برای مشخص شدن ظرفیت به بایت 8192 تقسیم بر 8 میشود 1024 بایت یا 1 کیلوبایت.

(که برای تبدیل به کیلو بایت 1024 تقسیم بر 1024 میشود،که نتیجه 1 کیلوبایت ظرفیت میشود)
AT24C16 ، عد 16 به معنی 16384 بیت می باشد پس برای مشخص شدن ظرفیت به بایت 16384 تقسیم بر 8 میشود 2024 بایت.(که برای کیلو بایت 2024 تقسیم بر 1024 میشود،که نتیجه 2 کیلوبایت ظرفیت میشود)

می توان اطلاعات درون این ایسی ها را تا 1 میلیون بار نوشت و از دوباره پاک کرد!( چرخه کامل)
این ایسی ها می توانند تا 100 سال ! اطلاعات را درون خودشان نگه دارند.

ای سی های فلش پروتکل ارتباطی انها SPI است و سرعت و حجم بیشتری در اختیار شما قرار میدهد

 

VCC : پایه تغذیه آی‌سی‌که ولتاژ آن بین 2.7 تا 3.6 ولت DC است

GND : پایه زمین یا صفر آی‌سی‌

CS : پایه انتخاب آی‌سی‌( اگر این پایه یک باشد ایسی غیر فعال و اگر صفر باشد آی‌سی‌فعال می شود )

WP : پایه نوشتن محافظت ورودی ( اگر این پایه صفر باشد ما فقط قابلیت خواندن از آی‌سی‌ را داریم و در صورتی که این پایه یک باشد ما قابلیت خواندن و نوشتن از داخل آی‌سی‌ را داریم )

RESET : پایه ریست آی‌سی‌ که با صفر فعال می شود

CLK , Do ,DI : پایه های ارتباط SPI جهت کنترل آی‌سی‌

نکات استفاده از ای سی فلش:

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

برای مثال اگر ما بخواهیم بایت دهم از حافظه را بخوانیم چون این بایت در صفحه صفر است ما باید کل این صفحه را که 256 بایت است را بخوانیم و سپس درون یک متغیر 256 بایتی بریزیم بعد از بایت دهم استفاده کنیم .

برای نوشتن اطلاعات نیز ما نمی توانیم به صورت بایت بایت اطلاعات را از روی آی‌سی‌ فلش بخوانیم و خواندن دیتا باید بصورت صفحه ای ( 256 بایتی ) صورت بگیرد .

نکته مهم : ما نمی توانیم دوبار روی یک صفحه اطلاعات بنویسم باید ابتدا اطلاعات صفحه را پاک کنیم و مجددا روی آن صفحه عملیات نوشتن را انجام دهیم .

 

mehdi sehati

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

مطالب مرتبط

guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x
مدیریت سایت : مهدی صحتی