LCD4Linux

حتما شده که تا حالا بخواید یکسری اطلاعات خاص از کامپیوترتون روی یه LCD مثلا کارکتری نشون داده بشه
برنامهً LCD4Linux اینکارو به سادگی و زیبایی میتونه برای شما انجام بده
این برنامه روی کامپیوتر هدف اجرا میشه و میتونه از طریق پورتهای LPT , Serial , USB با انواع بسیار متونعی از LCD های کارکتری و گرافیکی ارتباط برقرار کنه
تقریبا هر چیزی رو میشه توسط LCD4Linux روی LCD مانیتور کرد
از نوع سیستمآعامل گرفته تا میزان مصرف شبکه و حافظه و پردازنده
و حتی موسیقی در حال پخش در کامپیوتر شما !
اجازه بدید اول چند تا عکس نمونه از کارای جالبی که میتونید با LCD4Linux انجام بدید ببینیم :






خوشتون اومد نه ؟
پس قبل از ادامه اینجا رو خوب ببینید
همونطور که گفتم این برنامه یک لیست بلند بالا ! از LCD هایی داره که پشتیبانی میآکنه.
اگه باورتون نمیشه . خودتون ببینید. ایناهاش
خب ، اگر تا الان قانع شدید که LCD4Linux چیز بدرد بخوریه بریم برای ادامه
وگرنه همینجا توصیه میآکنم این تب مرورگرتونو ببندید و برید سراغ کارای مهم دیگتون ( البته اگر مرورگرتون از تب پشتیبانی میآکنه! )
برای من از بین اون لیست LCD ها راحتتآترین و وسوسه انگیزترینش LCD2USB بود. حتما میپرسید چرا ؟
باشه قبول. اینا دلایل من هست :
* استفاده از همین LCD کارکتریهای موجود در کف بازار ! ( مبتنی بر HD44780 )
* اتصال به پورت USB
* بیآنیاز به منبع تغذیهً مستقل. ( از همون پورت USB آب و دون بهش میرسه! )
پس حق داشتم مشتاق بشم ؟
هممم. پس حالا بزارید کمی در مورد LCD2USB براتون بگم.
LCD2USB

این موجود دوست داشتنی ( LCD2USB رو میگم ) پروژهآای هست که هدفش اتصال LCD های کارکتری مبتنی بر HD44780 به پورت USB هست.
و نکتهً هیجان انگیزش اینه که در اصل برای برنامهً LCD4Linux طراحی شده ( در و تخته با هم جورن )
مدار LCD2USB بسیار ساده هست. در وبآسابت اصلی این پروژه یک PCB کشیده شده ولی دو لایه هست
برای همین خودم آستیانرو زدم بالا و یه PCB واسش کشیدم !


نحوه استفاده
خب حالا ما برد LCD2USB رو داریم و برنامهً LCD4Linux هم روی کامپیوتر نصب کردیم.چطوری روشنش کنیم ؟!
اگر با برنامهآهای لینوکسی آشنا باشید حتما میدونید که معمولا نرمآافزارها توی دایرکتوری etc یکسری فایل پیکرهآبندی برای خودشون دارن. ( تکست خالص )
این LCD4Linux هم از همین قاعده پیروی کرده. برای کار با LCD4Linux فقط کافیه توی این فایل پیکرهآبندی بگید چخ چیزایی میخواین روی LCD نشون داده بشه! همین
توی این فایل نوع LCD ( های ) مورد استفاده ، نحوهً اتصالشون به کامپیوتر ، اینکه روی مکانهای مختلف LCD چه چیزی نشون داده بشه و کلی چیز دیگه رو میشه تعریف کرد.
وقتی LCD4Linux اجرا میشه فایل پیکرهآبندی خودشو میخونه و وظیفشو انجام میده !
توضیح تک تک این چیزا از حوصلهً من خارجه ( خیلی زیادن آخه ) برای همین به توضیح کاری که خودم انجام دادم بسنده میکنم
( نکته : برای کار با LCD4Linux باید کاربر با ریشه باشید )
۱ - یک فایل پیکرهآبندی در مسیر etc و با نام lcd4linux.conf ساختم ( مثلا با ادیتور مورد علاقهً من یعنی Gedit )
کد:
# gedit /etc/lcd4linux.conf
۲ - توی این فایل پیکرده بندی نوع سختآافزارم که LCD2USB هست رو معرفی کردم :
کد:
Display LCD2USB { Driver 'LCD2USB' Contrast 210 Brightness 150 Size '20x4' Icons 1 } Display 'LCD2USB'
نکتهً جالب اینجاست که برد LCD2USB میتونه مقدار Contrast و آBrightness الآسیآدی رو تنظیم بکنه. ( موج PWM تولید میکنه )
که عددی بین 0-255 به هر کدومشون میتونیم تخصیص بدیم.
۳ - Widget های مورد نظر خودم ساختم
کد:
Widget Busy { class 'Text' expression proc_stat::cpu('busy', 500) prefix 'Busy' postfix '%' width 10 precision 1 align 'R' update tick } Widget BusyBar { class 'Bar' expression proc_stat::cpu('busy', 500) expression2 proc_stat::cpu('system', 500) length 10 direction 'E' update tack } Widget Load { class 'Text' expression loadavg(1) prefix 'Load' postfix loadavg(1)>1.0?'!':' ' width 10 precision 1 align 'R' update tick } Widget LoadBar { class 'Bar' expression loadavg(1) max 2.0 length 10 direction 'E' update tack } Widget Eth0 { class 'Text' expression (netdev('eth0', 'Rx_bytes', 500)+netdev('eth0', 'Tx_bytes', 500))/1024 prefix 'Eth0' postfix ' ' width 10 precision 0 align 'R' update tick } Widget Eth0Bar { class 'Bar' expression netdev('eth0', 'Rx_bytes', 500) expression2 netdev('eth0', 'Tx_bytes', 500) length 14 direction 'E' update tack } Widget Uptime { class 'Text' expression uptime('%d days %H:%M:%S') width 20 align 'R' prefix 'Up ' update 1000 }
۴ - یک Layouy تعریف کردم :
کد:
Layout Default { Row1 { Col1 'Busy' Col11 'BusyBar' } Row2 { Col1 'Load' Col11 'LoadBar' } Row3 { Col1 'Uptime' } Row4 { Col1 'Eth0' Col11 'Eth0Bar' } }
۵ - Layout مورد نظرمونو انتخاب کردم
کد:
Layout 'Default'
۶ - متغیرهای استفاده شده در Widget ها رو تعریف کردم :
کد:
Variables { tick 500 tack 100 }
۷ - فایل پیکرهآبندی رو ذخیره کردم و مجوز دسترسی به این فایل رو به اینصورت تغییر دادم ( دلیلشو خودتون برید اینجا بخونید! )
کد:
chmod 600 /etc/lcd4linux.conf chown root.root /etc/lcd4linux.conf
۸ - برنامهً LCD4Linux رو اجرا کردم ( برای نرفتن این برنامه به پشت صحنه و دیدن جزییات از سوییچهای Fvv استفاده کردم )
کد:
# lcd4linux -Fvv
۹ - خب حالا باید روی ماهتونو از روی مانیتور برگردونید به سمت برد LCD2USB و از دیدن چیزی که میبینید تعجب کنید !
هنوز چند تا چیز مونده. مثل چطوری خوندن کلیدهای روی برد !
ادامهً قصه بمونه برای پست بعد
دانلود
پشت فیبر مدارlcd2usb-2007-10-13.zip
( آخرین نسخهً Firmware برای LCD2USB را از اینجا دریافت کنید )
این پست بیشتر جنبهً معرفی داشت ، جزئیات بیشتر کار با LCD4Linux در پستهای بعدی گفته خواهد شد
بزودی مطالب برای ماندگاری بیشتر در ویکیآسایت هم نوشته خواهد شد
دیدگاه