update serialVFD driver (Stefan Herdler)

This commit is contained in:
marschap
2006-05-20 14:38:18 +00:00
parent c6a1f841a7
commit 8ba4e54a3b
6 changed files with 511 additions and 665 deletions
+38 -1
View File
@@ -6,7 +6,7 @@
driver.
It may contain parts of other drivers of this package too.
2006-02-13 Version 0.2: everything should work (not all hardware tested!)
2006-05-16 Version 0.3: everything should work (not all hardware tested!)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -26,6 +26,8 @@
#define SERIALVFD_H
#include "lcd.h"
#include "adv_bignum.h"
#include "serialVFD_displays.h"
#include "serialVFD_io.h"
#define CCMODE_STANDARD 0 /* only char 0 is used for heartbeat */
#define CCMODE_VBAR 1
@@ -63,8 +65,43 @@ MODULE_EXPORT void serialVFD_set_char (Driver *drvthis, int n, unsigned char *da
MODULE_EXPORT int serialVFD_get_brightness (Driver *drvthis, int state);
MODULE_EXPORT void serialVFD_set_brightness (Driver *drvthis, int state, int promille);
MODULE_EXPORT void serialVFD_backlight (Driver *drvthis, int on);
MODULE_EXPORT void serialVFD_output (Driver *drvthis, int state);
MODULE_EXPORT void serialVFD_num (Driver * drvthis, int x, int num);
MODULE_EXPORT int serialVFD_get_free_chars (Driver *drvthis);
MODULE_EXPORT const char * serialVFD_get_info( Driver *drvthis );
typedef struct driver_private_data {
int use_parallel; // use parallel?
unsigned int port; // Port in parallel mode
char device[200]; // Device in serial mode
int fd;
int speed; // Speed in serial mode
/* dimensions */
int width, height;
int cellwidth, cellheight;
/* framebuffer and buffer for old LCD contents */
unsigned char *framebuf;
unsigned char *backingstore;
/* defineable characters */
int ccmode;
int on_brightness;
int off_brightness;
int hw_brightness;
int customchars;
int ISO_8859_1;
unsigned int refresh_timer;
unsigned char charmap[128];
int display_type; // display type
int last_custom; // last custom character written
char custom_char[31][7]; // stored custom characters
char custom_char_store[31][7]; // custom characters backingstore
char hw_cmd[10][4]; // hardwarespecific commands
int usr_chr_dot_assignment[57]; // how to setup usercharacters
unsigned int usr_chr_mapping[31];// where to place the usercharacters (0..30) in the asciicode
int hbar_cc_offset; // character offset of the bars
int vbar_cc_offset; // character offset of the bars
char info[255];
} PrivateData;
#endif