راهنمای استفاده از lcd
راهنمای استفاده از lcd
یکی از پر کاربرد ترین وسایل الکترونیکی که امروزه در سیستم های الکترونیکی به کار برده می شود صفحه نمایش کریستال مایع است . هنگام استفاده از دستگاه خود پرداز ،در هنگام رزرو غذا با استفاده از سیستم اتوماسیون تغذیه دانشگاه ، نمایشگر وضعیت خودرو ها در سیستم های جدید و سیستم حضور و غیاب الکترونیکی و... چند مثال ساده از استفاده از lcd در اتوماسیون است که روزانه بارها با آنها بر خورد داریم.
Lcd برای اطلاع دادن به کاربر سیستم و یا نمایش داده های پردازش شده و اخطار و... کاربرد دارد . سیستم ATM یا خود پرداز بانک را در نظر بگیرید پس از قرار دادن کارت در دستگاه سیستم از شما خواهد خواست تا زبان مورد نظر را وارد کنید و سپس کلمه رمز را از شما خواهد پرسید . در صورتی که کلمه رمز را اشتباه وارد کنید به شما اطلاع داده می شود و ... در اینجا LCD دقیقا به جای زبان دستگاه عمل می کند.
یکی از مشخصه های LCD ها تعداد سطر و ستون است، lCDها در انواع مختلف در بازار موجودند از منظر این تقسیم بندی ،LCD های 4*16, 4*20 و هر یک ازاین LCD ها می توانند دارای 14 یا 16 پایه می باشند شکل یک LCD را درشکل زیر می بینید.
LCD به طور استاندارد دارای 14 پایه است این 14 پایه برای کار کردن با LCD ضروری است در جدول زیر مشخصات پایه های LCD آمده است :
پایه شماره یک به زمین مدار متصل می شود. پایه شماره دو ولتاژ تغذیه LCD است که به ولتاژ 5 ولت متصل مشود.
Vo ولتاژ تنظیم کنتراست متن نمایشی را تنظیم می کند . این پایه هم می تواند به زمین متصل شود و هم می تواند به یک پتانسیو متر به صورت زیر متصل گردد.
RS : این پایه تعیین می کند که اطلاعاتی که به LCD فرستاده می شود دستور است یا داده . در صورتی که مقدار این پایه را HIGH قرار دهیم یعنی اطلاعات ارسالی داده است و در صورتی که این پایه صفر باشد یعنی اطلاعات ارسالی یک دستور است.
R/W :
این پایه LCD را در مد خواندن یا نوشتن قرار می دهد . هنگامی که می خواهیم اطلاعات LCD را بخوانیم آن را در مد Read قرار می دهیم این کار با استفاده از HIGH کردن این پایه انجام می شود .مد Write با استفاده از قرار دادن این پایه در حالتLOW ولتاژ صورت می گیرد.
E :
این پایه فعال ساز lcd است .(Enable)
DB0..DB8:
8 بیت اطلاعات ارسالی و دریافتی LCD با استفادهاز این 8 پایه صورت می گیرد .این 8 پایه باس داده برای LCD هستند.
بعضی LCD هادارای 16 پایه می باشند که علاوه بر 14 پایه تشریح شده در بالا دارای دو پایه برای نور زمینه LCD هستند پایه شماره 15 برای آند و پایه 16 برای کاتد LCD می باشد.
دستورات مربوط به LCD :
هنگام استفاده از میکرو یا کامپیوتر برای استفاده از LCD ،سه پایه از LCD دارای اتصالات ثابتی هستند . پایه شماره یک به زمین مدار پایه شماره دو به VCC و پایه شماره سه هم می تواند به یک پتانسیو متر یا به زمین مدار وصل شود .بقیه پایه ها که شامل 8 پین داده و 3 پین کنترلی است می تواند به میکروکنترلر یا به کامپیوتر متصل شود.دستورات LCD بااستفاده از این پایه ها به LCD فرستاده می شوند.
جدول زیر لیست دستورات LCD را نشان می دهد ما فعلا دستورات پر کاربرد را خواهیم گفت وسپس با یک مثال این دستورات را در برنامه ای به کار خواهیم برد .
در جدول بالا ستون اول نام دستور و سپس مقادیری که به 9 پایه LCD باید اعمال شود آمده است این مقادیر مقادیر منطقی است که باید به سطح ولتاژ TTL تبدیل شود یعنی 1 معادل 5 ولت و 0 معادل صفر ولت است. در نهایت در ستون آخر تعداد سیکلهایی که هر کدام از دستورات برای اجرا لازم دارند تا اجرای دستور تکمیل شود آمده است.
در صورتی که به جدول بالا دقت کنید می بینید که هر کدام از دستورات با دستروات قبلی خود یک بیت فرق دارند این عمل خطای ارسال داده را برای تفکیک دو دستور از هم به حداقل می رساند .
توضیح بعضی از دستورات به صورت زیر خواهد بود.
دستور NOP هیچ عملیاتی را انجام نمی دهد 9 بیت این دستور همگی صفر هستند.
دستور Clear Display نمایشگر را پاک می کندو مکان نما را در ابتدای آن در مکان صفر قرار می دهد( گوشه ی چپ – بالا )
Entry Mod Set:
در این دستور LCD ، جهت حرکت مکان نما مشخص می شود.بیت S شیفت صفحه نمایش به صورت خودکار را مشخص می کند.
Display:
بیت D از 9 بیت این دستور Lcd را روشن می کند . و بیت C هم مکان نما را روشن یا خاموش می کند.. در صورتی که بیت B ،HIGH باشد مکان نما چشمک زن خواهد بود (blinking)
Busy Flag:
هنگامی که دستوری به LCD داده یم شود LCD در حین اجرای دستور ، BF را ست می کند تا نشان دهد فعلا مشغول پردازش است .به محض اینکه انجام دستور به پایان رسید بیت BF صفر می شود تا LCD آمادگی خود را برای گرفتن دستور بعدی اعلام کند.
READ،WRITE:
با استفاده از این دستورات در DDRAM،CGRAM می توان نوشت یا اطلاعات را از آنها خواند .این دو دستور جزء پر کاربرد ترین دستوراتLCD هستند.
در جدو ل بالا بیت هایی که با علامت X مشخص شده اند به این معنی است که مقدار بیت ، اینکه صفر است یا یک هیچ تاثیری در دستور ندارد.(Don’t Care)
راهنمای بیتهایی که در جدول بالا نوشته شده است در جدول زیر آمده است.
برای مثال در دستور Cursor Display Shift بیتR/L به این صورت معنی شده است که در صورتی که این بیت 1 باشد شیفت به راست صورت می گیرد و در صورتی که صفر باشد شیفت به چپ صورت می گیرد .
کاراکتر ها در LCD:
LCD ها می توانند 20*4 و یا 16*4 و... باشند LCD 20*4 یعنی اینکه تعداد سطر های LCD 4 و تعداد ستونهای آن 20 می باشد.که این LCD جمعا 80 کاراکتر را می تواند نمایش دهد (در هر صفحه بدون شیفت)
هر کاراکتر به وسیله روشن و خاموش کردن سلول های یک ماتریس 10*5یا 8*5 به نمایش در می آید . LCD می تواند با دو اندازه فونت کاراکتر ها را نمایش دهد در اندازه فونت کوچک از ماتریس 8*5 و در اندازه فونت بزرگ از ماتریس 10*5 استفاده می کند.اندازه فونت استفاده شده توسط بیتF دستور Function Set از مجموعه دستورات LCD تنظیم می شود (جدول دستورات و راهنمای آن را ببینید!)
مکان هر کاراکتر در LCD دارای آدرس منحصر به فردی است که هنگامی که بخواهیم کاراکتری را در آن مکان بنویسیم قبلا آدرس را باید ذکر کنیم.شکل زیر این مطلب را نشان می دهد.
فرض کنید که می خواهیم در ستون اول خط سوم LCD یک کاراکتر را بنویسیم قبل از ارسال کاراکتر به LCD باید آدرس خانه مورد نظر را شناسایی کنیم .مطابق شکل بالا می بینیم که آدرس مکان کاراکتر سطر سوم و ستون اول 14 در مبنای 16 می باشد.
مقدار دهی اولیه LCD:
LCD هم مانند اجزاء میکرو کنترلر قبل از استفاده باید مقدار دهی اولیه شود.یک سری تنظیمات همیشه باید قبل از استفاده از LCD انجام گیرد.فلو چارت زیر نحوه انجام این تنظیمات را نشان می دهد.این تنظیمات برای عملیات 8 بیتی و فلوچارت بعدی برای عملیات 4 بیتی می باشد توضیحات خود فلوچارت کاملا گویاست و نیازی به توضیح اضافی ندارد.
CGRAM OR DDRAM:
LCD دارای دو حافظه بانامهای CGRAM , DDRAM است ِDDRAM حافظه ای است که کاراکتر ها برای نمایش باید در آنجا قرار گیرند ( مانند حافظه نمایش در کامپیوتر ها ! قابل توجه برنامه نویسان اسمبلی). این امکان برای استفاده کنندگان دیگر زبانها هم گذاشته شده است تا بتوانند خود زبان دیگری را برای نمایش به LCD اضافه کنند این کار با تعریف تک تک کاراکتر ها و قرار دادن آن در CGRAM صورت می گیرد .(برای زبان فارسی هم این کار باد صورت گیرد)
جدول زیر کد کاراکتر های قرار گرفته در حافظه ی lcd را نمایش می دهد.عدد بالای ستونها ،چهار بیت پر ارزش آدرس کاراکتر در DDRAM و عدد ابتدای سطر ها چهار بیت پایین آدرس را مشخص می کند برای مثال اگر بخواهیم که کاراکتر B را نمایش دهیم از جدول تقاطع سطر و ستون B را نگاه کره ، چهاربیت بالای آن 0100 در مبنای دو و چهار بیت پایین آن 0010 است با قرار دادن این دو در کنار هم 01000010 حاصل می شود که آدرس حرف B است .کار خسته کننده ای است نه؟
کاملا!!!اگر قرار باشد برای نوشتن هر کاراکتر به جدول مراجعه کنیم و آدرس آن را استخراج کنیم که باید عطایش را به لقایش بخشید.(یاد برنامه نویسان ENIAC می افتم که مجبور بودند برنامه را با زبان ماشین بنویسند.)اما صبر کنید ! خوشبختانه کاراکتر های جدول بالا منطبق با استاندارد اسکی هستند و لازم نیست از جدول استفاده کنید مگر برای حروف یونانی و کاراکتر های ویژه.
فرضا عدد قبلی که از استخراج آدرس کاراکتر B به دست آوردیم(01000010)اگر آن را به مبنای دهدی تبدیل کنید معادل 66 خواهد بود که کد اسکی کاراکتر B است .











برای دانلود فایل کلیک کنید





