در حال بارگزاری . . .

شما هنوز وارد نشده اید
×

راه اندازی ال سی دی نوکیا ۵۱۱۰ با آردوینو

دسته بندی : متفرقه

چکیده :

راه اندازی ال سی دی نوکیا 5110 lcd با آردوینو به همراه سورس و آموزش کامل ( بدون استفاده از کتابخانه ) با تمامی جزئیات در خدمت شما قرار گرفته

در این آموزش میخوایم ال سی دی نوکیا ۵۱۱۰ را راه اندازی کنیم و با استفاده از اون هر تصویری رو نمایش بدیم

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

 

چرا ال سی دی نوکیا ۵۱۱۰ گرافیکی هست؟

ال سی دی نوکیا ۵۱۱۰ با رزولوشن ۸۴ در ۴۸ هست میخوام یه درک کلی تر نسبت به رزولوشن داشته باشید

ببینید دوستان ۸۴ * ۴۸ = ۴۰۳۲ میشه

این به این منظور هست که توی یک صفحه ال سی دی میتونیم به ۴۰۳۲ قسمت دستور ۰ و یا ۱ رو بدیم

برای درک بهتر این موضوع به تصویر پایین توجه کنید

فکر میکنم این موضوع رو به خوبی درک کرده باشید

 

 

پایه های ال سی دی کاراکتری :

این ماژول ۸ پایه داره و این ماژول از ارتباط spi استفاده میکنه

ماژول ال سی دی نوکیا ۵۱۱۰آردوینو
led۳.۳ ولت
vcc۵ ولت
GndGnd
sceD7
rstD6
dcD5
mosiD4
sclkD3

راه اندازی ال سی دی نوکیا 5110

 

 

برنامه نویسی :

توی این قسمت میخوایم قطعه قطعه کد رو براتون توضیح بدیم

#define LCD_CE        7
#define LCD_RESET     6
#define LCD_DC        5
#define LCD_DIN       4
#define LCD_CLK       3
#define LCD_C     LOW
#define LCD_D     HIGH

توی این قسمت ما پایه ها رو مشخص کردیم

 

 

static byte grap[]={
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 

این کد هایی که بالا میبینید وضعیت هر کدوم از اون پیکسل ها رو مشخص میکنه که جلو تر میگم چه طور باید این کد رو تولید کنید

 

عناصر موجود در این آرایه عنصری هستند که گرافیکی را که روی صفحه LCD نمایش داده میشه ، هر ۸ بیت در صفحه LCD با هم دسته بندی میشه ، هر عنصر در این آرایه ۸ بیتی است (۲ رقمی در شش ضلعی). بگذارید اولین عنصر را با عنوان 0xF0 در نظر بگیریم. 0Xf0  در   hexadecimal  معادل 0b11110000  در باینری هست. بنابراین ، هنگامی که  0Xf0به صفحه LCD فرستاده می شه (جلو تر این مسئله رو توضیح خواهم داد ) ، چهار پیکسل اول در گروه اول پیکسل های گروه بندی شده ۸ عمودی (تیره می شوند ( سیاه) به عنوان چهار بیت اول در داده های ورودی “۱” هستند و به همین ترتیب ، ۴ بیت باقی مانده به دلیل “۰” روشن نمی شه.

در ابتدا ، در آغاز ، مکان نما در گروه سمت چپ بالای ۸ پیکسل قرار دارد. به محض ارسال اولین داده های ۸ بیتی ، مکان نما به گروه بعدی منتقل می شه. پس از پوشاندن همه گروه ها ، مکان نما به پیکسل بالا سمت چپ (اول) بر می گرده. بنابراین ، من همیشه ترجیح می دهم برای همه گروه ها داده ارسال کنم ، حتی اگر ترجیح می دهم پیکسل را با ارسال  0x00تاریک نکنم تا مکان نما به گروه پیکسل اول برگرده

 

 

من درباره ارسال داده ۸ بیتی با شما صحبت کردم پس بیاید کمی اون رو باز تر کنیم

قبل از ارسال داده یا دستور به صفحه LCD ، باید پین CE (فعال کردن) را خاموش کنیم و بعد از ارسال دستور مجدداً آنرا روشن کنیم. (اساساً ، پین CE یک پایه فعال است. بنابراین ، استفاده از صفحه LCD را خاموش کنید). همچنین ، ما باید پین DC (data / command) را برای دستور پایین و برای داده ها خاموش کنیم.

خوب از این موضوع ها بگذریم میرسیم سر طراحی صفحه که خودش حکایتی داره

 

 

طراحی صفحه مورد نظر

اولین کاری که باید انجام بدید از این لینک نرم افزار LCDAssistant رو دانلود کنید

بعد داخل نرم افزار paint که توی ویندوز ها موجود هست تصویر مورد نظرو طراحی میکنیم و اون رو با فرمت bmp ذخیره میکنیم

داخل نرم افزار LCDAssistant از منو فایل گزینه load image را انتخاب میکنیم

عکس ذخیره شده رو وارد میکنیم و در قسمت whith و height را ۸۴ و ۴۸ وارد کنید و از منو فایل گزینه sava output را انتخاب کنید و فایل خود را ذخیره کنید و با نوت پد باز کنید و قسمت مورد نیاز را کپی کنید و جایگذین کنید

 

دانلود سورس

دانلود دیتاشیت

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

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

در حال اعتبار سنجی لطفا منتظر بمانید ...