cphidgettextlcd.h
Go to the documentation of this file.
00001 #ifndef __CPHIDGETTEXTLCD
00002 #define __CPHIDGETTEXTLCD
00003 #include "cphidget.h"
00004 
00011 DPHANDLE(TextLCD)
00012 CHDRSTANDARD(TextLCD)
00013 
00019 CHDRGET(TextLCD,RowCount,int *count)
00025 CHDRGET(TextLCD,ColumnCount,int *count)
00026 
00032 CHDRGET(TextLCD,Backlight,int *backlightState)
00038 CHDRSET(TextLCD,Backlight,int backlightState)
00044 CHDRGET(TextLCD,Brightness,int *brightness)
00050 CHDRSET(TextLCD,Brightness,int brightness)
00056 CHDRGET(TextLCD,Contrast,int *contrast)
00062 CHDRSET(TextLCD,Contrast,int contrast)
00068 CHDRGET(TextLCD,CursorOn,int *cursorState)
00074 CHDRSET(TextLCD,CursorOn,int cursorState)
00080 CHDRGET(TextLCD,CursorBlink,int *cursorBlinkState)
00086 CHDRSET(TextLCD,CursorBlink,int cursorBlinkState)
00094 CHDRSETINDEX(TextLCD,CustomCharacter,int var1,int var2)
00102 CHDRSETINDEX(TextLCD,DisplayCharacter,int column,unsigned char character)
00109 CHDRSETINDEX(TextLCD,DisplayString,char *displayString)
00110 
00114 typedef enum {
00115         PHIDGET_TEXTLCD_SCREEN_NONE = 1,
00116         PHIDGET_TEXTLCD_SCREEN_1x8,             
00117         PHIDGET_TEXTLCD_SCREEN_2x8,             
00118         PHIDGET_TEXTLCD_SCREEN_1x16,    
00119         PHIDGET_TEXTLCD_SCREEN_2x16,    
00120         PHIDGET_TEXTLCD_SCREEN_4x16,    
00121         PHIDGET_TEXTLCD_SCREEN_2x20,    
00122         PHIDGET_TEXTLCD_SCREEN_4x20,    
00123         PHIDGET_TEXTLCD_SCREEN_2x24,    
00124         PHIDGET_TEXTLCD_SCREEN_1x40,    
00125         PHIDGET_TEXTLCD_SCREEN_2x40,    
00126         PHIDGET_TEXTLCD_SCREEN_4x40,    
00127         PHIDGET_TEXTLCD_SCREEN_UNKNOWN
00128 }  CPhidgetTextLCD_ScreenSize;
00129 
00135 CHDRGET(TextLCD,ScreenCount,int *count)
00141 CHDRGET(TextLCD,Screen,int *screenIndex)
00147 CHDRSET(TextLCD,Screen,int screenIndex)
00153 CHDRGET(TextLCD,ScreenSize,CPhidgetTextLCD_ScreenSize *screenSize)
00159 CHDRSET(TextLCD,ScreenSize,CPhidgetTextLCD_ScreenSize screenSize)
00166 PHIDGET21_API int CCONV CPhidgetTextLCD_initialize(CPhidgetTextLCDHandle phid); 
00167 
00168 #ifndef REMOVE_DEPRECATED
00169 DEP_CHDRGET("Deprecated - use CPhidgetTextLCD_getRowCount",TextLCD,NumRows,int *)
00170 DEP_CHDRGET("Deprecated - use CPhidgetTextLCD_getColumnCount",TextLCD,NumColumns,int *)
00171 #endif
00172 
00173 #ifndef EXTERNALPROTO
00174 #define TEXTLCD_MAXROWS 2
00175 #define TEXTLCD_MAXCOLS 40
00176 #define TEXTLCD_MAXSCREENS 2
00177 
00178 #define TEXTLCD_CURSOR_PACKET           0x00
00179 #define TEXTLCD_BACKLIGHT_PACKET        0x11
00180 #define TEXTLCD_CONTRAST_PACKET         0x12
00181 #define TEXTLCD_INIT_PACKET                     0x13
00182 
00183 #define TEXTLCD_SCREEN(x)                       (x << 5)
00184 #define TEXTLCD_CGRAM_ADDR(x)           (x << 3)        //each custom character takes 8 bytes of CGRAM storage
00185 
00186 #define TEXTLCD_ESCAPE_CHAR                     0x00
00187 #define TEXTLCD_COMMAND_MODE            0x01
00188 #define TEXTLCD_DATA_MODE                       0x02
00189 
00190 //HD44780 commands
00191 #define HD44780_CLEAR_DISPLAY   0x01
00192 #define HD44780_CURSOR_HOME             0x02
00193 
00194 //These are ORed together
00195 #define HD44780_DISPLAY_CNTRL   0x08
00196 #define HD44780_DISPLAY_ON              0x04
00197 #define HD44780_CURSOR_ON               0x02
00198 #define HD44780_CURSOR_BLINK_ON 0x01
00199 
00200 #define HD44780_SET_CGRAM_ADDR  0x40
00201 #define HD44780_SET_DDRAM_ADDR  0x80
00202 
00203 struct _CPhidgetTextLCD {
00204         CPhidget phid;
00205 
00206         int currentScreen;
00207         int lastScreen;
00208 
00209         unsigned char cursorOn[TEXTLCD_MAXSCREENS], cursorBlink[TEXTLCD_MAXSCREENS], backlight[TEXTLCD_MAXSCREENS];
00210         int contrast[TEXTLCD_MAXSCREENS], brightness[TEXTLCD_MAXSCREENS];
00211         
00212         int cursorLocation[TEXTLCD_MAXSCREENS], cursorColumn[TEXTLCD_MAXSCREENS];
00213 
00214         unsigned char backlightEcho[TEXTLCD_MAXSCREENS];
00215         int contrastEcho[TEXTLCD_MAXSCREENS], brightnessEcho[TEXTLCD_MAXSCREENS];
00216 
00217         unsigned char fullStateEcho;
00218 
00219         //used for network sets
00220         char *customs[TEXTLCD_MAXSCREENS][16];
00221         char chars[TEXTLCD_MAXSCREENS][TEXTLCD_MAXROWS * TEXTLCD_MAXCOLS];
00222         char *strings[TEXTLCD_MAXSCREENS][TEXTLCD_MAXROWS];
00223 
00224         //For TextLCD Adapter
00225         int rowCount[TEXTLCD_MAXSCREENS], columnCount[TEXTLCD_MAXSCREENS];
00226         CPhidgetTextLCD_ScreenSize screenSize[TEXTLCD_MAXSCREENS];
00227 
00228         unsigned char init[TEXTLCD_MAXSCREENS];
00229 
00230         unsigned char outputPacket[MAX_OUT_PACKET_SIZE];
00231         unsigned int outputPacketLen;
00232 } typedef CPhidgetTextLCDInfo;
00233 #endif
00234 
00237 #endif


pedal_monitor
Author(s): Pedro Mendes
autogenerated on Fri Jun 6 2014 18:37:21