آردوینو آموزش آردوینو پروژه های آردوینو

آموزش راه‌اندازی نمایشگر OLED SPI آردوینو

آموزش ماژول نمایشگر OLED SPI
نوشته شده توسط علیرضا قربانی

در پست‌های قبلی راه‌اندازی ماژول نمایشگر OLED‌ با پروتکل I2C را آموزش دادیم.با توجه به فیدبک‌های دریافت شده مشاده کردیم که این آموزش مورد استقبال قرار گرفته و برای کاربران بسیار مفید و موثر بوده. ولی در مقابل پی بردیم که درصد بسیار از کاربران در راه‌اندازی این ماژول که از طریق پروتکل SPI استفاده می‌کنند ،در راه‌اندازی این نمایشگر ما مشکل مواجه هستند.از این رو  امروز تصمیم گرفتم به نحوه اتصال نمایشگر OLED SPI با آردوینو و هنچنین نحوه کد نویسی‌ آن بپردازیم.در ادامه  آموزش با مرجع تخصصی آردوینو ، دیجی اسپارک همراه باشید.

 

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

آردوینو Uno

ماژول نمایشگر OLED SPI

 

 

اتصالات

ماژول OLED را طبق  تصویر زیر به آردوینو متصل می‌‌کنیم:

پین vcc به ۵ ولت DC و GND به زمین مدار .

CLK پین سورس کلاک ماژول می‌باشد و باید به SCK آردوینو متصل شود

MOSI  ماژل نیز باید به MOSI آردوینو متصل شود

پین CS  بر روی ماژول له منظور select کردن آن می‌باشد و به پین شماره ۱۰ متصل می‌شود

پین D/C بر روی ماژول برای این است که ماژول را آگاه کنیم که آیا برای آن داده می‌فرستیم یا دستور.

fd9fb683-5d3b-40b9-b901-23a7955fc249

 

 

پروتکل SPI در سایر آردوینو‌ها به صورت زیر می‌باشد:

آموزش ماژول نمایشگر OLED SPI

پین‌های SPI در ماژول‌های آردوینو

 

 

شمارش پیکسل‌ها

در عرض این نمایشگر ۱۲۸ پیکسل قرار  دارد که شمارش آن از ۰  در سمت چپ شروع می‌شود و به راست تا پیکسل شماره ۱۲۷ ادامه می‌یابد. و همچنین در طول این نمایشگر ۶۴ پیکسل قرار دارد که از شماره صفر شروع می‌شود و به سمت پایین تا شماره ۶۳ ادامه می‌یابد.

آموزش OLED آردوینو

کدنویسی

 کتابخانه U8glib را از لینک زیر دانلود کنید  و سپس طبق آموزش زیر آن را به نرم‌افزار آردوینو اضافه کنید.

دانلود کتابخانهU8glib

آموزش نصب کتابخانه در آردوینو

اکنون کد‌های زیر را بر روی آردوینو آپلود کنید:

 

اگر اتصالات درست باشد و کار‌های گفته شده را به درستی انجام داده باشید نتیجه‌ی زیر را مشاهده می‌کنید:

آموزش ماژول نمایشگر OLED SPI

آموزش ماژول نمایشگر OLED SPI

 

 

شرح برنامه

پس از فراخوانی کتابخانه U8glib توسط دستور زیر به برنامه اعلام می‌کنیم که از یک عدد OLED 128*64 با استفاده از رابط SPI استفاده می‌کنیم .سپس باید طبق اتصالات آرگمان‌ها را تکمیل کنیم.

اتصالات پین‌ها به صورت تصویر زیر می‌باشند:

 

آموزش ماژول نمایشگر OLED SPI

اتصالات ماژول نمایشگر OLED SPI به آردوینو

پس آرگمان‌ها را اینگونه باید تکمیل کنیم:

 

 

 

توسط این تابع ، نوشته بر روی صفحه نمایش OLED نمایش داده خواهد شد.پاراکتر‌های این تابع به صورت زیر می‌باشد:

 

x : موقعیت نمایش در راستای محور Xها

Y:موقعیت نمایش در راستای محور y ها

s: رشته‌ای که قصد نمایش آن را داریم.

 

 

در کتابخانه‌هایی که برای LCDهای گرافیکی و OLED ها استفاده می‌شود اصطلاحی وجود دارد به نام “حلقه رسم”. “حلقه رسم توسط دستور زیر شروع می‌شود.

و توسط دستور زیر به پایان می‌رسد:

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

 

” حلقه رسم ” برای اجرای دستورات گرافیکی در OLED نیاز می‌باشد و تمام دستورات گرافیکی در میان این حلقه قرار می‌گیرد. و ما نیز تابع draw را نیز در میان این حلقه قرار داده‌ایم.

 

در این آموزش با اصول راه اندازی OLED SPI آشنا شدید . آموزش توابع تکمیلی این کتابخانه در پست‌های زیر در درسترس می‌باشند.

آموزش ماژول نمایشگر OLED بخش دوم

آموزش ماژول نمایشگر OLED بخش سوم

آموزش ماژول نمایشگر OLED بخش چهارم

آموزش ماژول نمایشگر OLED بخش پنجم

آموزش ماژول نمایشگر OLED بخش ششم

آموزش نمایش لوگو در نمایشگر OLED

درباره نویسنده

علیرضا قربانی

علیرضا قربانی هستم دانشجوی مهندسی پزشکی. چیزهای خیلی زیادی رو در دنیا دوست دارم. یک گیک هستم و یشه گفت یک هکر. نه به معنی دزدی پسورد و ایمیل مردم. به معنی عشق به دونستن و عشق به تحقیق درباره خیلی از چیزهایی که می بینم و می‌شنوم. اگر بخوام علاقه‌مندی‌ درجه یکم رو نام ببرم میتونم بگم برنامه نویسی و بعد از اون امبدد سیستم ها.

تبادل نظر و رفع عیب با ثبت دیدگاه

۴ دیدگاه

  • بسیار عالی بود مثل همیشه فوق العاده بود.
    جای آموزش GLCD خالیه.پیر شدیم و این آموزش را یادمون ندادید.
    ولی منهای شوخی مطالبتون عالیه
    با تشکر

  • سلام ممنون از راهنمایی هاتون
    من یک ماژول OLED تهیه کردم که علاوه بر پایه های بالا پایه ریست هم داره وبرنامه شما روی اون جواب نمیده میتونید راهنمایی کنید؟

  • سلام
    ممنون از راهنمایی هاتون
    من یک ماژول OLED تهیه کردم که علاوه بر پایه های بالا پایه ریست هم داره وبرنامه شما روی اون جواب نمیده میتونید راهنمایی کنید؟