summaryrefslogtreecommitdiff
path: root/glcddrivers/gu140x32f.h
diff options
context:
space:
mode:
authorandreas 'randy' weinberger <vdr@smue.org>2010-02-21 19:58:27 +0100
committerandreas 'randy' weinberger <vdr@smue.org>2010-02-21 19:58:27 +0100
commit10ab31fa86dbf9875b5f6baa6ac59fefaaf86be3 (patch)
tree60ad7c856565f03e145b2996d1bb5f9cd64c0532 /glcddrivers/gu140x32f.h
downloadgraphlcd-base-10ab31fa86dbf9875b5f6baa6ac59fefaaf86be3.tar.gz
graphlcd-base-10ab31fa86dbf9875b5f6baa6ac59fefaaf86be3.tar.bz2
initial git upload, based on graphlcd-base-0.1.5
Diffstat (limited to 'glcddrivers/gu140x32f.h')
-rw-r--r--glcddrivers/gu140x32f.h73
1 files changed, 73 insertions, 0 deletions
diff --git a/glcddrivers/gu140x32f.h b/glcddrivers/gu140x32f.h
new file mode 100644
index 0000000..c0b87f2
--- /dev/null
+++ b/glcddrivers/gu140x32f.h
@@ -0,0 +1,73 @@
+/*
+ * GraphLCD driver library
+ *
+ * gu140x32f.h - 8-bit driver module for Noritake GU140x32-F7806 VFD
+ * displays. The VFD is operating in its 8 bit-mode
+ * connected to a single PC parallel port.
+ *
+ * based on:
+ * HD61830 device
+ * (c) 2001-2003 by Carsten Siebholz <c.siebholz AT t-online.de>
+ * lcdproc 0.4 driver hd44780-ext8bit
+ * (c) 1999, 1995 Benjamin Tse <blt AT Comports com>
+ *
+ * This file is released under the GNU General Public License. Refer
+ * to the COPYING file distributed with this package.
+ *
+ * (c) 2003 Andreas Brachold <vdr04 AT deltab.de>
+ */
+
+#ifndef _GLCDDRIVERS_GU140X32F_H_
+#define _GLCDDRIVERS_GU140X32F_H_
+
+#include "driver.h"
+
+
+namespace GLCD
+{
+
+class cDriverConfig;
+class cParallelPort;
+
+
+class cDriverGU140X32F : public cDriver
+{
+ unsigned char m_WiringRS;
+ unsigned char m_WiringEN1;
+
+ cParallelPort * port;
+
+ cDriverConfig * config;
+ cDriverConfig * oldConfig;
+
+ int m_iSizeYb;
+ int m_nRefreshCounter;
+ unsigned char *m_pDrawMem; // the draw "memory"
+ unsigned char *m_pVFDMem; // the double buffed display "memory"
+ long m_nTimingAdjustCmd;
+ bool m_bSleepIsInit;
+
+ int CheckSetup();
+
+protected:
+ void ClearVFDMem();
+ void SetPixel(int x, int y);
+ void Write(unsigned char nFlags, unsigned char bData, unsigned int nMicroSecBusyTime);
+
+public:
+ cDriverGU140X32F(cDriverConfig * config);
+ virtual ~cDriverGU140X32F();
+
+ virtual int Init();
+ virtual int DeInit();
+
+ virtual void Clear();
+ virtual void Set8Pixels(int x, int y, unsigned char data);
+ virtual void Refresh(bool refreshAll = false);
+
+ virtual void SetBrightness(unsigned int percent);
+};
+
+} // end of namespace
+
+#endif