close
تبلیغات در اینترنت
خرید دامنه
پیکره بندی LCD کاراکتری در بسکام




ورود کاربران

ورود به سایت

نام کاربری:
رمز عبور :
رمز عبور را فراموش کردم ؟


آرشیو مطالب


آمار سایت
افراد آنلاین : 1 نفر
بازدیدهای امروز : 5 نفر
بازدیدهای دیروز : 7 نفر
كل بازدیدها : 38,447 نفر
بازدید این ماه : 24 نفر
بازدید ماه قبل : 89 نفر
نظرات : 22
كل مطالب : 22 عدد
تعداد اعضا : 217 نفر
امروز : چهارشنبه 27 تیر 1397
به وبسایت شرکت فورس الکترونیک خوش آمدید





Google
ForceDesigner.ir


آخرین ارسال های انجمن



در این پست برای اونهایی که تازه اومدن میکرو رو یاد بگیرن میخوام طریقه  کار با LCD کاراکتری را آموزش بدم در پست بعدی هم طریقه ارتباط با LCD گرافیکی را کار خواهیم کرد.

مقدمه

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

LCD & GLCD

در تصویر بالا دو تا از این LCD ها رو میبینید که کوچیکه رو LCD دو در شانزده میگن یعنی 2 تا سطر و 16 تا ستون داره اون یکی هم که اندازه اش چند برابر اونه یه GLCD یا همون LCD  گرافیکی هست اندازه اون هم 240 در 128 هست LCD های معمولی (کاراکتری) فقط متن رو نشون میدن اما نوع گرافیکی اونها میتونن عکس رو هم نشون بدن به صورت زیر (متنی که روی GLCD میبینین در واقع یه عکس هست که روی اون نشون داده شده ):

GLCD

این ال سی دی ها تک رنگ هستن در دو رنگ سبز و آبی موجود اند در تصویر بالا  LCD از نوع سبز رنگ و GLCD از نوع آبی رنگ هست (آبی نسبت به سبز کمی گرونتر هست ولی زیباتر هم هستند) نوع رنگی اونها هم هستن که تو موبایلها میبینید که ان شاء الله در پستهای بعدی به اونها هم خواهیم رسید.

 

اندازه های LCD

LCD ها در چند سایز مختلف وجود دارند 2*16 , 4*20 , 4*16 , 2*2016*1a(نوع خاصی از LCD هست که به صورت 2*8 استفاده میشه) وجود داره

پیکره بندی LCD

دیگه بهتره توضیحات رو تموم کنم و بیریم نحوه پیکره بندی LCD کاراکتری 2*16 رو توی نرم افزار بسکام رو ببینیم :

ConfigLcd = 16 * 2

ConfigLcdpin = Pin , Db4 = Porta.7 , Db5 = Porta.4 , Db6 = _

Porta.6 , Db7 = Porta.5 , E = Porta.3 , Rs = Portb.3

 

ترتیب پایه ها

اگه یه LCD  دو در شانزده بخری میبینین که 16 تا  پایه دارن چیدمانپایه ها به صورت زیر هست:

1- GND

2- VCC

3- Vo

4- Rs

5- RW

6- E

7- D0

8- D1

9- D2

10- D3

11- D4

12- D5

13- D6

14- D7

15- ANODE

16- KATOD

Gnd ,Vcc باید به تغذیه 5 ولت نصب بشن Vo پایه تنظیم کنتراست هست که باید به سر وسط پتانسیومتر وصل بشه سر های کناری اون هم به مثبت و منفی تغذیه وصل میشن تا با تغییر پتانسیومتر ولتاژ پایه Vo تغییر کنه و میزان نور صفحه رو کنترل کنیم معمولا در LCD های سبزمیتونید به جای پتانسیومتر با یه مقاومتی در حدود 2.2 کیلواهمی به زمین وصل کنین که کنتراست در حد مناسب باشه و لازم به تنظیم اون نباشین. مقدار مقاومت در LCD آبی هم معمولا 470 کیلو هستش البته این مقدار معمولا در هر LCD فرق میکنه

پایه های بعدی هم به میکرو وصل میشن میتونید پایه RW رو هم به زمین وصل کنید . پایه های D0  تا D7 هم که پایه های دیتا هستن ارتباط میتونه به صورت چهاربیتی و یا هشت بیتی

انجام بشه در حالت چهار بیتی (که معمولا از این حالت استفاده میشه) پایه های D0  تا D3 آزاد میمونن و بقیه رو به میکرو وصل میکنیم پایه های 15 و 16 هم برای تغذیه نور Backlight صفحه هست در دستورات بالا میبینید که LCD رو معرفی کردیم نوع اونو 2*16 انتخاب کردیم (LCD ها در چندین اندازه وجود دارند) و پایه هایی از LCD و که به میکرو وصل کردیم رو تو برنامه نوشتیم که کدوم پایه از LCD به کجا وصل شده میتونید کلمه پورت رو هم ننویسید مثلا Porta.5 رو بنویسید a.5 در حالت پیش فرض ارتباط به صورت چهار بیتی انجام میشه میتونید با دستور ConfigLcdbus = 8 دیتا هاتون رو 8بیتی ارسال کنید (که در این حالت سرعت ارسال اطلاعات بالا میره ولی در عوض باید 10 پین میکرو رو برای کنترل LCD استفاده کنید) در حالت ارسال اطلاعات به صورت 8 بیتی میتونید پیکره بندی رو به صورت زیر هم بنویسید:

CONFIG LCDPIN = PIN , PORT=PORTx, E=PN, RS=PN

 

پس از معرفی LCD به میکرو باید از دستورات مربوط به ال سی دی برای نمایش اطلاعاتتون استفاده کنید .

دستورات مربوط به LCD

دستور CLS کل صفحه نمایش را پاک میکنه دستور Locate برای قرار دادن کرسر (مکان نما) در نقطه دلخواه هست مثلاLocate 1,1کرسر را به سطر و ستون اول میبره با دستور LCD "Adelavr"کلمه Adelavr از محلی که کرسر رو قرار دادیم برروی ال سی دی نمایش داده میشه با دستور Home U (یاHome و یا Home Upper) میتونید معادل دستور Locate1,1 رو انجام بدین HomeL(یاHome Lower )هم کرسر رو به سطر دوم و ردیف اول میبره در صورتی که از LCD های 4 خط مانند 4*20 استفاده کنید  میتونید دستور های Home Third و Home Fourth(یاHome T و Home F)هم مکان نما رو به سطر سوم و چهارم میبره

 از دستورات LowerLine و  UpperLineوThirdLine و  FourthLine هم استفاده کنین میتونید از دستور Cursor هم برای نمایش  یا عدم نمایش و همچنین  نمایش به صورت چشمک زن کرسر استفاده کنین یعنی بعد از دستور کرسر بنویسین On Off Blink NoBlink مثلا Cursor Offکه روی LCD دیگه کرسر رو نمیبینید!

دستورات دیگه ای هم هستند ShiftCursor LeftRight و ShiftLCD LeftRight به ترتیب میتونید مکان نما و یا کل صفحه نمایش رو به چپ یا راست انتقال بدین در نهایت دستور Display  هم صفحه نمایش رو روشن و خاموش میکنه.

تابع DefLCDChar

تابعی به نام DefLCDChar هست که با اون میتونید بعضی از کاراکتر های خاص که با صفحه کلید نمیتونید تایپ کنید رو نمایش بدین مثلا یه دماسنج ساختین و میخواین پس از نمایش دما یه علامت درجه و بعد حرف C رو به معنی "درجه سانتی گراد" نمایش بده حرف C که کاری نداره ولی درجه رو نمیتونید وارد کنید برای نمایش اون باید از این تابع کمک بگیریم تو LCD نمیتونید حروف فارسی رو بنویسید ولی با کمک این تابع این کار تا حدودی امکان پذیره محدودیتی که دارین اینکه بیش از 8 تا کاراکتر خاص رو نمیتونین تعریف کنین

روش کار به صورت هست که اول باید کاراکترتون رو تعریف کنید برای اینکار در نرم افزار بسکام روی منوی Tools روی گزینه Lcd Designer کلیک کنید کلید معادل اون هم Ctrl+L هست حالا تو پنجره ای که به شکل زیر باز میشه کاراکترتون رو بکشید و OK رو بزنید .

LCD Designer

 با زدن OK پنجره بسته میشه و توی برنامه دستوری به صورت زیر قرار میگیره:

Deflcdchar ?,8,8,11,10,31,16,31,32   ' replace ? with number (0-7(

حالا به جای علامت سوال یه عدد از 0 تا 7 قرار بدین مثلا اگه 3 بذارین تو برنامه به صورت زیر اون کاراکتر رو نمایش بدین:

Deflcdchar3 , 8 , 8 , 11 , 10 , 31 , 16 , 31 , 32

Cls

LcdChr(3)

حالا یه کاراکتر دیگه (کاراکتر درجه) رو  طراحی میکنیم و به اون شماره صفر رو میدم برای اینکه 27 درجه سانتی گراد رو نمایش بدم باید :

Lcd "27" ;LcdChr(0) ; "C"  

همونطور که میبینید برای اینکه توابع یا متغیر ها و ثوابت رو هم بنویسیم باید اونها رو با ; از هم جدا کنیم

پس میبینید که بعضی از توابع رو هم میتونیم مستقیما با LCDنمایش بدیم مثلا اگه بخواید فاصله بذارید میتونید به دو روش زیر این کار رو بکنید:

Lcd  "      "

Lcd Space(6)

دو دستور بالا هردو 6 کاراکتر فاصله ایجاد میکنند.

به همین راحتی ! خیلی که سخت نبود؟

برای دریافت یه مثال میتونید اینجا کلیک کنید که در این پروژه از LCDدو در شانزده استفاده شده فایل شبیه سازی در پرتیوس هم وجود داره .

ان شاء الله در پست بعدی با ال سی دی گرافیکی کار میکنیم و عکسهایی رو در Paint ویندوز میکشیم و اونها رو روی LCD نمایش میدیم . چطوری؟ پست بعدی رو دنبال کنید! ...

 

 

لطفا سوالات خود را در انجمن سايت مطرح كنيد تا بهتر بتوان به آن رسيدگي كرد

لطفا در قسمت نظرات ، نظر خود را در مورد اين پست بنويسيد تا سطح مقالات سايت بهتر شود

 

به دليل اينكه اين مقالات ، اطلاعات تجربي من است لذا اگر قصد داريد اين مطالب را در سايت و يا وبلاگ خود قرار دهيد منبع آنرا هم درج كنيد.

 

 

 

 لینک منبع اصلی : مرجع تخصصی الکترونیک و برنامه نویسی www.pcenter.ir

 

 

برای دانلود تمامی مطالب و فایلهای پروژه اینجا کلیک کنید.

 

 

 سایت اختصاصی پروژه های الکترونیکی و برنامه نویسی کامپیوتری www.pcenter.ir

 

 

توجه کنید که سایت www.forcedesigner.ir از این به بعد به آدرس www.pcenter.ir  تغییر یافت 

 




درباره : نرم افزار ,برنامه نویسی بسکام ,برنامه نویسی ,الکترونیک ,میکروکنترلر ,AVR ,

امتیاز : | نظر شما :

مطالب مرتبط
دانلود نرم افزار کار با پورت سریال کامپیوتر Terminal_C
دانلود نرم افزار تبدیل کاراکتر به کد هگز
پروگرمر USB برای میکروکنترلر AVR به نام USBasp
راهنماي نصب و استفاده از پروتيوس و بسكام
برچسب ها : LCD كاراكتري , پيكره بندي LCD در AVR , اتصال LCD به AVR , دستورات مربوط به LCD در AVR , ال سي دي كاراكتري , LCD 2*16 , LCD دو در شانزده , LCD گرافيكي , GLCD , اتصال GLCD به AVR , پيكره بندي GLCD در AVR , ال سي دي گرافيكي 128*64 , 128x64 , www.forcedesigner.ir , شرکت فورس الکترونیک , پروژه ,


نوشته شده در دوشنبه 09 بهمن 1391 توسط Adelavr| بازدید : 1455 |

نام ارسال کننده : salar
در مورد ال سی دی گرافیکی مطلب نیز بزارین مرسی
3 دی 1392 | 19:11
نظر شما :
نام شما :
آدرس وب سایت :
پست الکترونیک :
ایمیل * (برای عموم نمایش داده نخواهد شد)
پیام شما :
شکلک ها :
:) :( ;) :D ;)) :X :? :P :* =(( :O @};- :B /:) :S
:
نظر خصوصی
کد امنیتی :
:

عناوين آخرين مطالب ارسالي

.: Themes By Music-Day.Info :.

عضویت در خبرنامه

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


عضویت سریع


قوانین سایت

کد امنیتی :




جدید ترین موزیک های روز



طراح قالب

موزیک روز

جدیدترین مطالب روز دنیا