Add new SureElec driver by Laurent Latil.
This commit is contained in:
@@ -265,6 +265,9 @@ Christian Leuschen,
|
||||
Jonathan Kyler:
|
||||
- driver for SoundGraph iMON OEM LCD Modules
|
||||
|
||||
Laurent Latil
|
||||
- SureElec driver for devices made by SURE Electronics
|
||||
|
||||
|
||||
Further developers in the sourceforge lcdproc team:
|
||||
Mindaugas Idzelis aim4min
|
||||
|
||||
@@ -14,6 +14,7 @@ v.0.5dev (ongoing development)
|
||||
* Build system: Add a check testing if SA_RESTART flag is available.
|
||||
* picolcd driver: Fix RC-5 for picoLCD 20x2 (A. van Schie)
|
||||
* Introduce shared/defines.h to collect commonly used macros
|
||||
+ new driver: SureElec for devices made by SURE Electronics (Laurent Latil)
|
||||
|
||||
v0.5.3
|
||||
+ lcdexec: notification when called program finishes
|
||||
|
||||
@@ -987,6 +987,29 @@ Speed=9600
|
||||
Port=0x378
|
||||
|
||||
|
||||
[SureElec]
|
||||
|
||||
# Port the device is connected to (by default first USB serial port)
|
||||
Port=/dev/ttyUSB0
|
||||
|
||||
# Edition level of the device (can be 1, 2 or 3) [default: 2]
|
||||
#Edition=1
|
||||
|
||||
# set display size
|
||||
# Note: The size can be obtained directly from device for edition 2 & 3.
|
||||
#Size=16x2
|
||||
|
||||
# Set the initial contrast [default: 480; legal: 0 - 1000]
|
||||
#Contrast=200
|
||||
|
||||
# Set the initial brightness [default: 480; legal: 1 - 1000]
|
||||
#Brightness=480
|
||||
|
||||
# Set the initial off-brightness [default: 100; legal: 1 - 1000]
|
||||
# This value is used when the display is normally
|
||||
# switched off in case LCDd is inactive
|
||||
#OffBrightness=100
|
||||
|
||||
|
||||
## SVGAlib driver ##
|
||||
[svga]
|
||||
|
||||
+6
-2
@@ -13,13 +13,13 @@ AC_ARG_ENABLE(drivers,
|
||||
[ IOWarrior,irman,irtrans,joy,lb216,lcdm001,lcterm,lirc,lis,]
|
||||
[ MD8800,ms6931,mtc_s16209x,MtxOrb,mx5000,NoritakeVFD,picolcd,]
|
||||
[ pyramid,sed1330,sed1520,serialPOS,serialVFD,shuttleVFD,sli,]
|
||||
[ stv5730,svga,t6963,text,tyan,ula200,xosd]
|
||||
[ stv5730,SureElec,svga,t6963,text,tyan,ula200,xosd]
|
||||
[ 'all' compiles all drivers;]
|
||||
[ 'all,!xxx,!yyy' de-selects previously selected drivers],
|
||||
drivers="$enableval",
|
||||
drivers=[bayrad,CFontz,CFontz633,curses,CwLnx,glk,lb216,lcdm001,MtxOrb,pyramid,text])
|
||||
|
||||
allDrivers=[bayrad,CFontz,CFontz633,CFontzPacket,curses,CwLnx,ea65,EyeboxOne,g15,glcdlib,glk,hd44780,i2500vfd,icp_a106,imon,imonlcd,IOWarrior,irman,irtrans,joy,lb216,lcdm001,lcterm,lirc,lis,MD8800,ms6931,mtc_s16209x,MtxOrb,mx5000,NoritakeVFD,picolcd,pyramid,sed1330,sed1520,serialPOS,serialVFD,shuttleVFD,sli,stv5730,svga,t6963,text,tyan,ula200,xosd]
|
||||
allDrivers=[bayrad,CFontz,CFontz633,CFontzPacket,curses,CwLnx,ea65,EyeboxOne,g15,glcdlib,glk,hd44780,i2500vfd,icp_a106,imon,imonlcd,IOWarrior,irman,irtrans,joy,lb216,lcdm001,lcterm,lirc,lis,MD8800,ms6931,mtc_s16209x,MtxOrb,mx5000,NoritakeVFD,picolcd,pyramid,sed1330,sed1520,serialPOS,serialVFD,shuttleVFD,sli,stv5730,SureElec,svga,t6963,text,tyan,ula200,xosd]
|
||||
|
||||
drivers=`echo $drivers | sed -e 's/,/ /g'`
|
||||
|
||||
@@ -406,6 +406,10 @@ dnl else
|
||||
AC_MSG_WARN([The stv5730 driver needs a parallel port.])
|
||||
fi
|
||||
;;
|
||||
SureElec)
|
||||
DRIVERS="$DRIVERS SureElec${SO}"
|
||||
actdrivers=["$actdrivers SureElec"]
|
||||
;;
|
||||
svga)
|
||||
AC_CHECK_HEADERS([vga.h vgagl.h],[
|
||||
AC_CHECK_LIB(vga, main,[
|
||||
|
||||
@@ -262,6 +262,9 @@ Wirz SLI driver (unknown)
|
||||
.B stv5730
|
||||
STV5730A on-screen display chip
|
||||
.TP
|
||||
.B SureElec
|
||||
LCD devices from SURE electronics (http://www.sureelectronics.net)
|
||||
.TP
|
||||
.B svga
|
||||
VGA monitors using svgalib
|
||||
.TP
|
||||
|
||||
@@ -46,6 +46,7 @@ well as the configuration of LCDd.
|
||||
&shuttleVFD;
|
||||
&sli;
|
||||
&stv5730;
|
||||
&SureElec;
|
||||
&svga;
|
||||
&t6963;
|
||||
&text;
|
||||
|
||||
@@ -40,6 +40,7 @@ EXTRA_DIST = bayrad.docbook \
|
||||
shuttleVFD.docbook \
|
||||
sli.docbook \
|
||||
stv5730.docbook \
|
||||
SureElec.docbook \
|
||||
svga.docbook \
|
||||
t6963.docbook \
|
||||
text.docbook \
|
||||
|
||||
@@ -0,0 +1,94 @@
|
||||
<sect1 id="SureElec">
|
||||
<title>The SureElec Driver</title>
|
||||
|
||||
<para>
|
||||
Driver for the LCD modules (actually the controller board) available from
|
||||
the 'SURE electronics' shop (<ulink url="http://www.sureelectronics.net/"></ulink>).
|
||||
</para>
|
||||
<para>
|
||||
These devices are PIC based controlled, using a serial communication
|
||||
protocol with the host. The actual connection to host is done through
|
||||
USB through a serial-to-USB converter (CP2102 USB to UART Bridge)
|
||||
integrated on the board.
|
||||
</para>
|
||||
|
||||
<sect2 id="SureElec-config">
|
||||
<title>Configuration in LCDd.conf</title>
|
||||
|
||||
<sect3 id="SureElec-config-section">
|
||||
<title>[SureElec]</title>
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term>
|
||||
<property>Port</property> =
|
||||
<parameter><replaceable>PORT</replaceable></parameter>
|
||||
</term>
|
||||
<listitem><para>
|
||||
Port the device is connected to. By default first USB serial port
|
||||
<literal>/dev/ttyUSB0</literal> is used.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<property>Edition</property> =
|
||||
<parameter><replaceable>EDITION</replaceable></parameter>
|
||||
</term>
|
||||
<listitem><para>
|
||||
Edition level of the device (can be 1, 2 or 3). The default is <literal>2</literal>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<property>Size</property> = ¶meters.size;
|
||||
</term>
|
||||
<listitem><para>
|
||||
Set the display size in characters. This is required for edition 1 devices.
|
||||
For edition 2 & 3 devices this value, if defined, overrides the size
|
||||
read directly from the device.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<property>Contrast</property> =
|
||||
<parameter><replaceable>CONTRAST</replaceable></parameter>
|
||||
</term>
|
||||
<listitem><para>
|
||||
Select the display's contrast, <literal>480</literal> is the default.
|
||||
Permissible values are in the range of <literal>0</literal>-<literal>1000</literal>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<property>Brightness</property> =
|
||||
<parameter><replaceable>BRIGHTNESS</replaceable></parameter>
|
||||
</term>
|
||||
<listitem><para>
|
||||
Select the display's brightness, <literal>480</literal> is the default.
|
||||
Permissible values are in the range of <literal>0</literal>-<literal>1000</literal>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
<property>OffBrightness</property> =
|
||||
<parameter><replaceable>OFFBRIGHTNESS</replaceable></parameter>
|
||||
</term>
|
||||
<listitem><para>
|
||||
Select the display's when the display is normally switched off in case LCDd
|
||||
is inactive, <literal>100</literal> is the default.
|
||||
Permissible values are in the range of <literal>0</literal>-<literal>1000</literal>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
|
||||
</variablelist>
|
||||
|
||||
</sect3>
|
||||
|
||||
</sect2>
|
||||
|
||||
</sect1>
|
||||
@@ -54,6 +54,7 @@
|
||||
<!ENTITY shuttleVFD SYSTEM "drivers/shuttleVFD.docbook">
|
||||
<!ENTITY sli SYSTEM "drivers/sli.docbook">
|
||||
<!ENTITY stv5730 SYSTEM "drivers/stv5730.docbook">
|
||||
<!ENTITY SureElec SYSTEM "drivers/SureElec.docbook">
|
||||
<!ENTITY svga SYSTEM "drivers/svga.docbook">
|
||||
<!ENTITY t6963 SYSTEM "drivers/t6963.docbook">
|
||||
<!ENTITY text SYSTEM "drivers/text.docbook">
|
||||
|
||||
@@ -21,7 +21,7 @@ AM_LDFLAGS = @LDSHARED@
|
||||
## Keep the lists sorted!
|
||||
|
||||
pkglib_PROGRAMS = @DRIVERS@
|
||||
EXTRA_PROGRAMS = bayrad CFontz CFontz633 CFontzPacket curses CwLnx ea65 EyeboxOne g15 glcdlib glk hd44780 icp_a106 imon imonlcd IOWarrior irman joy lb216 lcdm001 lcterm lirc lis MD8800 ms6931 mtc_s16209x MtxOrb mx5000 NoritakeVFD picolcd pyramid sed1330 sed1520 serialPOS serialVFD shuttleVFD stv5730 svga t6963 text tyan sli ula200 xosd i2500vfd irtrans
|
||||
EXTRA_PROGRAMS = bayrad CFontz CFontz633 CFontzPacket curses CwLnx ea65 EyeboxOne g15 glcdlib glk hd44780 icp_a106 imon imonlcd IOWarrior irman joy lb216 lcdm001 lcterm lirc lis MD8800 ms6931 mtc_s16209x MtxOrb mx5000 NoritakeVFD picolcd pyramid sed1330 sed1520 serialPOS serialVFD shuttleVFD stv5730 SureElec svga t6963 text tyan sli ula200 xosd i2500vfd irtrans
|
||||
noinst_LIBRARIES = libLCD.a libbignum.a
|
||||
|
||||
IOWarrior_CFLAGS = @LIBUSB_CFLAGS@ $(AM_CFLAGS)
|
||||
@@ -60,6 +60,7 @@ pyramid_LDADD = libLCD.a
|
||||
serialPOS_LDADD = libbignum.a
|
||||
serialVFD_LDADD = libLCD.a libbignum.a
|
||||
shuttleVFD_LDADD = @LIBUSB_LIBS@
|
||||
SureElec_LDADD = libLCD.a libbignum.a
|
||||
svga_LDADD = @LIBSVGA@
|
||||
t6963_LDADD = libLCD.a
|
||||
tyan_LDADD = libLCD.a libbignum.a
|
||||
@@ -110,6 +111,7 @@ serialPOS_SOURCES = lcd.h lcd_lib.h serialPOS.c serialPOS.h report.h adv_bignum
|
||||
serialVFD_SOURCES = lcd.h lcd_lib.h serialVFD.c serialVFD.h report.h adv_bignum.h serialVFD_displays.c serialVFD_displays.h serialVFD_io.c serialVFD_io.h
|
||||
shuttleVFD_SOURCES = lcd.h shuttleVFD.c shuttleVFD.h report.h
|
||||
stv5730_SOURCES = lcd.h stv5730.c stv5730.h report.h
|
||||
SureElec_SOURCES = lcd.h lcd_lib.h SureElec.c SureElec.h report.h adv_bignum.h
|
||||
svga_SOURCES = lcd.h svgalib_drv.c svgalib_drv.h report.h
|
||||
t6963_SOURCES = lcd.h lcd_lib.h t6963.c t6963.h t6963_font.h report.h
|
||||
text_SOURCES = lcd.h text.h text.c report.h
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,56 @@
|
||||
/*
|
||||
* SureElec.h
|
||||
*/
|
||||
#ifndef SUREELEC_H
|
||||
#define SUREELEC_H
|
||||
|
||||
#include "lcd.h"
|
||||
|
||||
#define DEFAULT_DEVICE "/dev/ttyUSB0"
|
||||
#define DEFAULT_SPEED 9600
|
||||
#define DEFAULT_LINEWRAP 1
|
||||
#define DEFAULT_AUTOSCROLL 0
|
||||
#define DEFAULT_CURSORBLINK 0
|
||||
#define DEFAULT_SIZE "16x2"
|
||||
#define DEFAULT_CONTRAST 480
|
||||
#define DEFAULT_BRIGHTNESS 480
|
||||
#define DEFAULT_OFFBRIGHTNESS 100
|
||||
|
||||
#define MIN_CONTRAST 0x1
|
||||
#define MAX_CONTRAST 0xFD
|
||||
|
||||
#define MIN_BACKLIGHT 0x1
|
||||
#define MAX_BACKLIGHT 0xFD
|
||||
|
||||
#define CELL_WIDTH 5
|
||||
#define CELL_HEIGHT 8
|
||||
|
||||
#define NUM_CC 8
|
||||
|
||||
|
||||
MODULE_EXPORT int SureElec_init (Driver *drvthis);
|
||||
MODULE_EXPORT void SureElec_close (Driver *drvthis);
|
||||
MODULE_EXPORT int SureElec_width (Driver *drvthis);
|
||||
MODULE_EXPORT int SureElec_height (Driver *drvthis);
|
||||
MODULE_EXPORT int SureElec_cellwidth (Driver *drvthis);
|
||||
MODULE_EXPORT int SureElec_cellheight (Driver *drvthis);
|
||||
MODULE_EXPORT void SureElec_clear (Driver *drvthis);
|
||||
MODULE_EXPORT void SureElec_flush (Driver *drvthis);
|
||||
MODULE_EXPORT void SureElec_string (Driver *drvthis, int x, int y, const char string[]);
|
||||
MODULE_EXPORT void SureElec_chr (Driver *drvthis, int x, int y, char c);
|
||||
|
||||
MODULE_EXPORT void SureElec_vbar (Driver *drvthis, int x, int y, int len, int promille, int options);
|
||||
MODULE_EXPORT void SureElec_hbar (Driver *drvthis, int x, int y, int len, int promille, int options);
|
||||
MODULE_EXPORT int SureElec_icon (Driver *drvthis, int x, int y, int icon);
|
||||
MODULE_EXPORT void SureElec_num (Driver *drvthis, int x, int num);
|
||||
|
||||
MODULE_EXPORT int SureElec_get_free_chars (Driver *drvthis);
|
||||
MODULE_EXPORT void SureElec_set_char (Driver *drvthis, int n, unsigned char *dat);
|
||||
|
||||
MODULE_EXPORT int SureElec_get_contrast (Driver *drvthis);
|
||||
MODULE_EXPORT void SureElec_set_contrast (Driver *drvthis, int promille);
|
||||
MODULE_EXPORT int SureElec_get_brightness(Driver *drvthis, int state);
|
||||
MODULE_EXPORT void SureElec_set_brightness(Driver *drvthis, int state, int promille);
|
||||
MODULE_EXPORT void SureElec_backlight(struct lcd_logical_driver *drvthis, int on);
|
||||
|
||||
#endif // SUREELEC_H
|
||||
Reference in New Issue
Block a user