در این مقاله ، ما نحوه نوشتن و خواندن از حافظه فلش را با استفاده از Arduino با استفاده از میکرو مدار 25L8005 به عنوان مثال بررسی خواهیم کرد.
ضروری است
- - تراشه حافظه فلش با پشتیبانی SPI ؛
- - یک آداپتور برای حافظه یا یک صفحه با افزایش صفر (صفحه ZIF) ؛
- - آردوینو ؛
- - کامپیوتر؛
- - اتصال سیم ها
دستورالعمل ها
مرحله 1
ابتدا باید آنرا درست کنیم تا بتوانیم به راحتی به میکرو مدار متصل شویم. برای این کار می توانید از یک آداپتور مخصوص که می بایست میکرو مدار را به آن لحیم کنید استفاده کنید یا (که ترجیح دارد) از یک صفحه صفر سود (به اصطلاح صفحه ZIF) استفاده کنید.
گام 2
حال بیایید نمودار الکتریکی اتصال تراشه فلش مموری به آردوینو را با هم جمع کنیم. ما برای برنامه نویسی حافظه از رابط SPI استفاده خواهیم کرد ، بنابراین به پایه های استاندارد متصل خواهیم شد:
- CS - پین دیجیتال 10 ،
- MOSI - پین دیجیتال 11 ،
- MISO - پین دیجیتال 12 ،
- SCK - پین دیجیتال 13.
مرحله 3
قبل از نوشتن داده در حافظه ، لازم است که بخش یا صفحه ای را که می خواهیم در آن بنویسیم پاک کنید. اگر داده های زیادی برای نوشتن وجود ندارد (در مثال آموزشی ما فقط 16 بایت خواهد بود) ، برای پاک کردن 1 بخش کافی است. از مستندات مربوط به میکرو مدار ، می بینیم که ترتیب پاک کردن به شرح زیر است: اجازه نوشتن (1 بایت) ، ارسال دستور پاک کردن (1 بایت) و آدرس (3 بایت) ، تنظیم ممنوعیت نوشتن (1 بایت) را تنظیم کنید. این دقیقاً همان کاری است که طرح فوق انجام می دهد. بیایید آن را در آردوینو بارگذاری کنیم. پس از تکمیل طرح ، درایو فلش برای ضبط آماده است.
مرحله 4
حالا بیایید داده ها را بنویسیم. بیایید یک آرایه کوچک از 16 بایت را به عنوان مثال در نظر بگیریم. همانطور که از اسناد مشاهده می کنید ، ابتدا باید اجازه نوشتن (1 بایت) را تنظیم کنید ، سپس دستور نوشتن (1 بایت) ، آدرس شروع (3 بایت) و داده ها (در مثال ما 16 بایت) را در در پایان ممنوعیت نوشتن (1 بایت) تنظیم شده است.
طرح را در Arduino بارگذاری کنید. پس از اجرای این طرح ، آرایه تست ما باید برای حافظه فلش نوشته شده باشد. بیایید بررسی کنیم که آیا چنین است؟
مرحله 5
بیایید یک طرح بنویسیم تا 16 بایت از حافظه فلش بخواند. بیایید آن را در Arduino بارگیری کرده و مانیتور پورت سریال را باز کنیم. در مانیتور ، همانطور که انتظار می رود ، آرایه ما که از حافظه با استفاده از آردوینو خوانده می شود ، 1 بار در ثانیه نمایش داده می شود.