| LCDd(8) | LCDproc suite | LCDd(8) |
نام (NAME)
LCDd - دیمن سرور LCDproc
خلاصه دستور (SYNOPSIS)
LCDd [-hf] [-c config] [-d driver] [-i bool] [-a addr] [-p port] [-u user] [-w time] [-r level] [-s bool]
توضیحات (DESCRIPTION)
LCDd بخش سرور از مجموعه LCDproc است؛ دیمنی که به پورت مشخصی (معمولاً ۱۳۶۶۶) گوش میدهد و اطلاعات را روی یک نمایشگر LCD نمایش میدهد. این برنامه با انواع و اندازههای مختلف نمایشگرها کار میکند.
بیشتر تنظیمات LCDd از طریق فایل پیکربندی آن /etc/LCDd.conf انجام میشود، هرچند برخی از آنها را میتوان با استفاده از گزینههای خط فرمان بازنویسی کرد. پیش از اجرای LCDd باید آن فایل را به دقت مطالعه کرده و هر آنچه مطابق با نیازهایتان لازم است ویرایش کنید؛ در غیر این صورت ممکن است LCDd به درستی روی سیستم شما اجرا نشود.
برای بهرهگیری کامل از LCDd، به یک کلاینت مانند lcdproc(1)، lcdexec(1) یا lcdvc نیاز است.
گزینهها (OPTIONS)
گزینههای موجود عبارتند از:
- -h
- نمایش صفحه راهنما
- -c config
- استفاده از فایل پیکربندی دیگری به جای /etc/LCDd.conf
- -d driver
- مشخص کردن درایور مورد استفاده (تنها به اولین درایور خروجی میدهد)، که پارامتر Driver در بخش [Server] فایل پیکربندی را بازنویسی میکند.
- -f
- اجرا در پیشزمینه (foreground)، که پارامتر Foreground در بخش [Server] فایل پیکربندی را بازنویسی میکند. پیشفرض در صورت عدم تعیین در فایل پیکربندی، دیمن کردن LCDd است زیرا برای کارکرد در پسزمینه طراحی شده است.
- -i bool
- تعیین اینکه آیا نمایش صفحه سرور LCDproc در چرخش صفحات فعال (1) باشد یا غیرفعال (0)، که مقدار ServerScreen در بخش [Server] فایل پیکربندی را بازنویسی میکند.
- -w waittime
- مدت زمان توقف در هر صفحه (به ثانیه)، که پارامتر WaitTime در بخش [Server] فایل پیکربندی را بازنویسی میکند.
- -a addr
- اتصال به نشانی شبکه addr، که پارامتر Bind در بخش [Server] فایل پیکربندی را بازنویسی میکند.
- -p port
- گوش دادن به پورت port برای اتصالهای ورودی، که پارامتر Port در بخش [Server] فایل پیکربندی را بازنویسی میکند.
- -u user
- اجرا با هویت کاربر user، که پارامتر User در بخش [Server] فایل پیکربندی را بازنویسی میکند.
- -s bool
- ارسال پیامها به syslog (1) یا به خروجی استاندارد (0)، که پارامتر ReportToSyslog در بخش [Server] فایل پیکربندی را بازنویسی میکند.
- -r level
- تنظیم سطح گزارشدهی به level، که پارامتر ReportLevel در بخش [Server] فایل پیکربندی را بازنویسی میکند.
درایورهای پشتیبانیشده (SUPPORTED DRIVERS)
درایورهای نمایشگر پشتیبانیشده در حال حاضر عبارتند از:
- bayrad
- ماژولهای LCD مدل BayRAD ساخت شرکت EMAC Inc.
- CFontz
- نمایشگرهای سریال LCD مدل CFA-632 و CFA-634 ساخت CrystalFontz
- CFontzPacket
- نمایشگرهای سریال/USB مدل CFA-533، CFA-631، CFA-633 و CFA-635 ساخت CrystalFontz
- curses
- نمایش ویدیویی استاندارد با استفاده از کتابخانه (n)curses
- CwLnx
- نمایشگرهای سریال/USB ساخت Cwlinux (http://www.cwlinux.com)
- ea65
- نمایشگر VFD پنل جلویی روی مدیا بربون Aopen XC Cube EA65
- EyeboxOne
- نمایشگر LCD روی EyeboxOne
- futaba
- نمایشگر VFDisplay مدل Futaba TOSD-5711BB روی رایانههای مدیا سنتر Elonex Artisan/Scaleo
- g15
- نمایشگر LCD روی صفحهکلید Logitech G15
- glcd
- درایور عمومی برای LCDهای گرافیکی با پشتیبانی از رندر FreeType. این درایور از زیردرایورهای زیر (شناختهشده به عنوان connection types) پشتیبانی میکند:
- glcd2usb
- پروژه سختافزار/نرمافزار متنباز GLCD2USB اثر Till Harbaum (http://www.harbaum.org/till/glcd2usb)
- picolcdgfx
- نمایشگر گرافیکی LCD مدل picoLCD 256x64 Sideshow (از Mini-Box.com)
- png
- نوشتن صفحات در قالب تصاویر PNG
- serdisplib
- استفاده از serdisplib (http://serdisplib.sourceforge.net) برای خروجی
- t6963
- نمایشگرهای LCD مبتنی بر توشیبا T6963 (حالت گرافیکی)
- glcdlib
- نمایشگرهای گرافیکی LCD پشتیبانیشده توسط graphlcd-base
- glk
- نمایشگرهای گرافیکی Matrix Orbital GLK
- hd44780
- نمایشگرهای LCD هیتاچی HD44780. این درایور از زیردرایورهای زیر (شناختهشده به عنوان connection types) پشتیبانی میکند:
- 4bit
- حالت ۴ بیتی LCD، متصل به پورت پارالل رایانه
- 8bit
- حالت ۸ بیتی LCD، متصل به پورت پارالل رایانه
- serialLpt
- نمایشگر LCD در حالت ۴ بیتی از طریق یک ثبات تغییر مکان ۴۰۹۴ (shift register)
- winamp
- نمایشگر LCD در حالت ۸ بیتی با سیمبندی WinAmp، متصل به پورت پارالل رایانه
- picanlcd
- نمایشگر LCD هدایتشده توسط چیپ/برد PIC-an-LCD اثر Dale Wheat، متصل به پورت سریال
- lcdserializer
- نمایشگر LCD هدایتشده توسط برد متصلشونده مبتنی بر PIC16C54، متصل به پورت سریال
- los-panel
- نمایشگر LCD هدایتشده توسط برد مبتنی بر Atmel AVR، متصل به پورت سریال
- ezio
- نمایشگر Portwell EZIO-100 و EZIO-300 متصل به پورت سریال (http://drivers.portwell.com/CA_Manual/EZIO)
- vdr-lcd
- نمایشگر متصل به پورت سریال
- vdr-wakeup
- ماژول VDR-Wake اثر Frank Jepsen (http://www.jepsennet.de/vdr)
- pertelian
- ماژول Pertelian X2040 (http://pertelian.com)
- lis2
- مدل LIS2 از شرکت VLSystem (http://www.vlsys.co.kr)، متصل به USB
- mplay
- مدل MPlay Blast از شرکت VLSystem (http://www.vlsys.co.kr)، متصل به USB
- usblcd
- دستگاه LCD از Adams IT Services (http://www.usblcd.de)
- bwctusb
- مبدل USB به HD44780 ساخت BWCT (http://www.bwct.de)
- lcd2usb
- پروژه سختافزار/نرمافزار متنباز LCD2USB اثر Till Harbaum (http://www.harbaum.org/till/lcd2usb)
- usbtiny
- دستگاههای مبتنی بر سفتافزار USBtiny اثر Dick Streefland
- uss720
- پل ارتباطی USS-720 USB-to-IEEE 1284 (آداپتورهای چاپگر پارالل بلکین F5U002 USB)
- usb4all
- پروژه متنباز/سختافزار آزاد USB-4-all اثر Sprut (http://www.sprut.de)
- ftdi
- اتصال USB از طریق تراشه FTDI FT2232D در حالت bitbang
- i2c
- نمایشگر LCD در حالت ۴ بیتی هدایتشده توسط PCF8574(A) / PCA9554(A)، متصل از طریق گذرگاه I2C
- piplate
- برد Adafruit RGB Positive 16x2 LCD+Keypad برای رزبریپای
- spi
- نمایشگر LCD با KS0073 یا معادل آن در حالت سریال، متصل از طریق گذرگاه SPI
- pifacecad
- برد PiFace Control and Display برای رزبریپای (http://www.piface.org.uk)
- ethlcd
- اتصال TCP با استفاده از پروژه متنباز/سختافزار آزاد ethlcd (http://manio.skyboo.net/ethlcd)
- raspberrypi
- نمایشگر LCD هدایتشده توسط پایههای GPIO در رزبریپای
- gpio
- اتصال LCD از طریق پایههای GPIO که توسط رابط sysfs لینوکس کنترل میشوند
- i2500vfd
- نمایشگر ۱۴۰ در ۳۲ پیکسلی VFD در دستگاه Intra2net Intranator 2500
- icp_a106
- برد آلارم/LCD با پروتکل ارتباطی ICP Peripheral مورداستفاده در دستگاههای QNAP و کیسهای رکمونت ۱۹ اینچ ساخت ICP
- imon
- ماژولهای IR/VFD مدل iMON در کیسهای ساخت Soundgraph/Ahanix/Silverstone/Uneed/Accent
- imonlcd
- ماژولهای IR/LCD مدل iMON در کیسهای ساخت Soundgraph/Ahanix/Silverstone/Uneed/Accent/Antec
- irtrans
- ماژولهای IR/VFD مدل IRTrans در کیسهای ساخت Ahanix (مانند MCE303) و احتمالاً موارد دیگر. برای برقراری اتصال ممکن است نیاز به اجرای irserver (http://www.irtrans.de/en/download/linux.php) باشد.
- IOWarrior
- مدل Code Mercenaries IOWarrior
- irman
- فروسرخ IrMan (ورودی)
- joy
- درایور جویاستیک (ورودی)
- lb216
- نمایشگرهای LCD مدل LB216
- lcdm001
- نمایشگرهای سریال LCD مدل 20x4 از kernelconcepts.de
- lcterm
- ترمینال سریال LCD ساخت Helmut Neumark Elektronik (http://www.neumark.de)
- linux_input
- دستگاههای رویداد لینوکس (ورودی)
- lirc
- فروسرخ (ورودی)
- lis
- مدل L.I.S MCE 2005 20x2 VFD (http://vlsys.co.kr)
- MD8800
- نمایشگرهای VFD در رایانههای Medion MD8800
- mdm166a
- نمایشگرهای Futuba MDM166A
- ms6931
- نمایشگرهای MSI-6931 در سرورهای رکمونت 1U ساخت MSI
- mtc_s16209x
- نمایشگرهای LCD مدل MTC_S16209x ساخت Microtips Technology Inc
- MtxOrb
- نمایشگرهای Matrix Orbital (به جز نمایشگرهای Matrix Orbital GLK)
- mx5000
- نمایشگر LCD روی صفحهکلید Logitech MX5000
- NoritakeVFD
- دستگاه Noritake VFD مدل CU20045SCPB-T28A
- Olimex_MOD_LCD1x9
- نمایشگر ۱۴ قسمتی Olimex MOD-LCD1x9
- rawserial
- تخلیه کامل فریمبافر روی پورت سریال با سرعت قابل تنظیم.
- picolcd
- نمایشگر USB LCD از Mini-box.com (مدلهای PicoLCD 20x4 و picoLCD 20x2)
- pyramid
- نمایشگرهای LCD ساخت Pyramid (http://www.pyramid.de)
- sdeclcd
- نمایشگر LCD دستگاه Watchguard Firebox مبتنی بر SDEC LMC-S2D20 (http://www.sdec.com.tw)
- sed1330
- نمایشگرهای گرافیکی مبتنی بر SED1330/SED1335 (یا S1D13300/S1D13305)
- sed1520
- نمایشگرهای گرافیکی ۱۲۲ در ۳۲ پیکسلی مبتنی بر کنترلرهای SED1520
- serialPOS
- درایور دستگاههای پایانه فروش (“POS”) با پروتکلهای مختلف (در حال حاضر فقط AEDEX)
- serialVFD
- نمایشگرهای متنی VFD از سازندگان مختلف؛ برای جزئیات بیشتر به مستندات کاربری LCDproc مراجعه کنید.
- shuttleVFD
- نمایشگر Shuttle VFD (مبتنی بر USB)
- sli
- درایور Wirz SLI
- stv5730
- تراشه نمایش روی صفحه (OSD) مدل STV5730A
- SureElec
- دستگاههای LCD ساخت شرکت SURE electronics (http://www.sureelectronics.net)
- svga
- نمایشگرهای VGA با استفاده از svgalib
- t6963
- نمایشگرهای LCD مبتنی بر توشیبا T6963 (حالت متنی)
- text
- نمایشگر متنی استاندارد
- tyan
- ماژول LCD در سری Barebone GS ساخت Tyan
- ula200
- دستگاه ULA-200 ساخت ELV (http://www.elv.de)
- vlsys_m428
- ترکیب VFD/IR در کیس MonCaso 320 ساخت Moneual
- yard2
- ماژول LCD مدل yard2
- xosd
- نمایش روی صفحه در X11
میتوان از چندین درایور به صورت همزمان استفاده کرد؛ برای نمونه، نمایشگر Matrix Orbital (درایور MtxOrb) را میتوان با درایور فروسرخ (درایور irman) ترکیب کرد.
نحوه فراخوانی (INVOCATION)
مثال فراخوانی بالا، LCDd را با خواندن پیکربندی آن از فایل پیشفرض /etc/LCDd.conf راهاندازی میکند، اما درایورهای مشخصشده در آن را با درایور Matrix Orbital و درایور ورودی Joystick بازنویسی مینماید.
پروتکل کلاینت-سرور LCDPROC (LCDPROC CLIENT-SERVER PROTOCOL)
ترتیب مراحل اولیه به صورت زیر است:
- ۱. باز کردن یک اتصال TCP به پورت سرور LCDd (معمولاً ۱۳۶۶۶).
- ۲. ارسال عبارت "hello"
- ۳. سرور اطلاعاتی درباره نوع نمایشگر در دسترس بازمیگرداند.
- ۴. تعریف (و استفاده از) یک صفحه جدید و ویجتهای آن.
- ۵. بستن سوکت پس از اتمام نمایش دادهها.
دستورات کلاینت (CLIENT COMMANDS)
دستورات متعددی برای ارسال از طرف کلاینت به سرور LCDd وجود دارد:
- hello
- یک نشست کلاینت-سرور با سرور LCDd آغاز میکند؛ سرور یک رشته داده حاوی جزئیات نوع نمایشگر و ابعاد آن را برمیگرداند.
- client_set -name name
- تنظیم نام کلاینت.
- screen_add #id
- افزودن یک صفحه جدید به نمایشگر.
- screen_del #id
- حذف یک صفحه از نمایشگر.
- screen_set #id [-name name ] [-wid width] [-hgt height] [-priority prio] [-duration int] [-timeout int] [-heartbeat mode] [-backlight mode] [-cursor mode] [-cursor_x xpos] [-cursor_y ypos]
- مقداردهی اولیه یک صفحه، یا بازنشانی دادههای آن.
- widget_add #screen #id type [-in #frame]
- افزودن ویجتی از نوع type به صفحه #screen.
- widget_del #screen #id
- حذف ویجت #id از صفحه #screen.
- widget_set #screen #id data
- تنظیم دادههای مورد استفاده برای تعریف یک ویجت خاص #id روی صفحه #screen.
حالتهای ضربان قلب (HEARTBEAT MODES)
مقادیر معتبر حالت ضربان قلب (برای دستور screen_set) عبارتند از:
حالتهای نور پسزمینه (BACKLIGHT MODES)
مقادیر معتبر حالت نور پسزمینه (برای دستور screen_set) عبارتند از:
اولویتها (Priorities)
تنظیمات معتبر اولویت (مورد استفاده در دستور screen_set) به شرح زیر است:
- input
- کلاینت در حال دریافت ورودی تعاملی است.
- alert
- صفحه حاوی پیام مهمی برای کاربر است.
- foreground
- یک کلاینت فعال
- info
- صفحه اطلاعات عادی، اولویت پیشفرض.
- background
- صفحه تنها زمانی قابل مشاهده است که هیچ صفحه اطلاعات عادی وجود نداشته باشد.
- صفحه هرگز قابل مشاهده نخواهد بود.
برای سازگاری با نسخههای قدیمیتر کلاینتها، نگاشت مقادیر عددی اولویت نیز پشتیبانی میشود:
- 1 - 64
- foreground (پیشزمینه)
- 65 - 192
- normal (عادی)
- 193 - (infinity)
- background (پسزمینه)
نمونهای از نحوه استفاده صحیح از اولویتها به شرح زیر است:
تصور کنید در حال ساخت یک پخشکننده صوتی برای lcdproc هستید. هنگامی که آهنگ تغییر میکند، مناسب است نام جدید بلافاصله نمایش داده شود. بنابراین، میتوانید اولویت صفحه خود را روی foreground تنظیم کنید، منتظر بمانید تا سرور صفحه شما را نمایش دهد (یا نادیده بگیرد)، سپس صفحه را دوباره به حالت normal بازگردانید. این کار باعث میشود صفحه پخش بلافاصله پس از اتمام صفحه جاری نشان داده شده و سپس به اولویت عادی بازگردد.
یا فرض کنید کلاینت شما وضعیت بیماران یک بیمارستان را پایش میکند. اگر یکی از بیماران دچار حمله قلبی شود، میتوانید اولویت صفحه را روی alert قرار دهید تا بلافاصله نمایش داده شود و حتی منتظر اتمام صفحه قبلی نیز نماند. همچنین نمایشگر بیشتر اوقات روی صفحه باقی میماند تا کاربر اقدامی در مورد آن انجام دهد.
انواع ویجت (WIDGET TYPES)
ویجتها میتوانند هر یک از موارد زیر باشند:
- string
- یک رشته متنی برای نمایش (همانطور که هست).
- hbar
- یک نمودار میلهای افقی.
- vbar
- یک نمودار میلهای عمودی.
- title
- یک عنوان نمایشدادهشده در بالای صفحه درون یک کادر (banner).
- icon
- یک آیکون گرافیکی.
- scroller
- یک نمایش متنی رونده که به صورت افقی یا عمودی پیمایش میشود.
- frame
- یک ظرف (container) برای در بر گرفتن سایر ویجتها، که امکان ارجاع به آنها را به صورت یک واحد یکپارچه فراهم میکند. یک ویجت با استفاده از پارامتر -in #id درون یک فریم قرار میگیرد که در آن #id به شناسه فریم اشاره دارد.
- num
- یک رقم اعشاری بزرگ را نمایش میدهد.
ویجتها به ترتیبی که ایجاد میشوند روی صفحه رسم میگردند.
تنظیم دادههای ویجت (SETTING WIDGET DATA)
در دستور widget_set، آرگومان data بستگی به این دارد که چه ویجتی در حال تنظیم است. هر ویجت مجموعه خاصی از آرگومانها را دریافت میکند که شکل و رفتار آن را تعریف مینمایند:
- string x y text
- نمایش text در موقعیت (x,y).
- title text
- استفاده از text به عنوان عنوان برای نمایش.
- hbar x y length
- نمایش یک میله افقی با شروع از موقعیت (x,y) و با عرض length پیکسل.
- vbar x y length
- نمایش یک میله عمودی با شروع از موقعیت (x,y) و با ارتفاع length پیکسل.
- icon x y name
- نمایش آیکون name در موقعیت (x,y).
- scroller left top right bottom direction speed text
- متن text در جهت مشخصشده پیمایش خواهد شد. جهتهای معتبر عبارتند از h (افقی)، m (متن متحرک/marquee) و v (عمودی). سرعت تعیین میکند که چه تعداد “حرکت” (یا تغییر) در هر فریم رخ میدهد. عدد مثبت نشاندهنده فریمها بر هر حرکت و عدد منفی نشاندهنده حرکتها در هر فریم است.
- frame left top right bottom wid hgt dir speed
- فریمها یک “جعبه” مرئی روی صفحه از گوشه (left, top) تا گوشه (right, bottom) تعریف میکنند. دادههای واقعی ممکن است بزرگتر باشند که با wid (عرض) در hgt (ارتفاع) تعریف میشوند؛ در این صورت فریم در جهت (dir) و با سرعت (speed) مشخصشده پیمایش خواهد شد.
- num x int
- نمایش رقم اعشاری بزرگ int در موقعیت افقی x، که مختصات معمولی کاراکتر x روی نمایشگر است. مقدار ویژه ۱۰ برای int علامت دو نقطه (colon) را نمایش میدهد.
اشکالات (BUGS)
اگر به نظر میرسد LCDd مطابق انتظار کار نمیکند، سعی کنید آن را در پیشزمینه با بالاترین سطح گزارشدهی و خروجی به stderr اجرا کنید. این کار بدون نیاز به تغییر فایل پیکربندی از طریق خط فرمان زیر امکانپذیر است:
فایلها (FILES)
/etc/LCDd.conf، فایل پیکربندی پیشفرض LCDd
همچنین ببینید (SEE ALSO)
lcdproc-config(5), lcdproc(1), lcdexec(1)
نویسندگان (AUTHORS)
افراد متعددی در پروژه LCDd مشارکت داشتهاند؛ برای جزئیات بیشتر به فایل CREDITS مراجعه کنید.
تمامی پرسشها باید به فهرست پستی lcdproc ارسال شوند. فهرست پستی و جدیدترین نسخه LCDproc از طریق نشانی زیر در دسترس هستند:
مسائل حقوقی (LEGAL STUFF)
بسته نرمافزاری lcdproc تحت عنوان "WorksForMe-Ware" منتشر شده است. به عبارت دیگر، رایگان است، کارآمد است، اما هیچ تضمینی نمیدهیم که روی هر سیستمی به جز ماشینهایی که روی آن توسعه یافته کار خاصی انجام دهد.
از نظر فنی تحت مجوز GNU GPL منتشر شده است (شما باید فایل "COPYING" را همراه با LCDproc دریافت کرده باشید؛ همچنین برای اطلاعات بیشتر به http://www.fsf.org مراجعه کنید)، بنابراین میتوانید آن را آزادانه توزیع کرده و استفاده کنید -- اما باید کد منبع را به صورت رایگان در اختیار هر کسی که آن را میخواهد قرار دهید.
برای هرگونه اطلاعات حقوقی رسمی، متن مجوز GNU GPL (مجوز عمومی همگانی گنو) را مطالعه کنید. ارزش خواندن دارد.
| February 10, 2014 | LCDproc |