Electronic Load  1.0
Programmable Constant Current Sink
Macros | Functions | Variables
lcd.h File Reference
Include dependency graph for lcd.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define LCD_LINE1   0
 
#define LCD_LINE2   64
 
#define LCD_LINE3   20
 
#define LCD_LINE4   84
 
#define LCD_LINES   4
 Number of lines. More...
 
#define LCD_WIDTH   20
 Number of characters. More...
 

Functions

void LCDActivateBacklight (void)
 
bool LCDBuildVBarChar (uint8_t nBars)
 Builds a Character for vertical Bar Graph. More...
 
bool LCDBuildVBarChars (uint8_t nBars)
 Builds the Character Array for vertical Bar Graphs. More...
 
void LCDClear (void)
 Clears the LCD and sets Cursor to Home Postion. More...
 
void LCDCursorOff (void)
 
void LCDCursorOn (void)
 
static uint8_t LCDGetBrightness (void)
 Gets the current Brightness of the LCD Backlight. More...
 
static uint8_t LCDGetContrast (void)
 Gets the current Contrast of the LCD. More...
 
void LCDGoTo (uint8_t pos)
 Sets the Cursor Position. More...
 
uint8_t LCDGoToXY (uint8_t x, uint8_t y)
 Sets the Cursor Position. More...
 
int8_t LCDHBarGraph (uint8_t line, uint8_t val)
 Prints a Line of Bar Graph. The rest of the line is cleared. More...
 
void LCDInitCGRAM ()
 Initializes the Character Generator RAM. More...
 
void LCDPrintLine_P (uint8_t line, const char *fmt,...)
 Printf for one complete Line of the Display. More...
 
void LCDSecondlyCallback (void)
 Has to be called once per Second by the surrounding program. More...
 
static void LCDSetBrightness (uint8_t val)
 Sets the Brightness of the LCD Backlight. More...
 
static void LCDSetContrast (uint8_t val)
 Sets the Contrast of the LCD. More...
 
void LCDWriteData (char c)
 Writes a Data-Byte to the Display. More...
 
void LCDWriteString (const char *s)
 Displays a String. More...
 
void LCDWriteString_P (const char *s)
 Displays a String in Flash Memory. More...
 
void LDCInit (void)
 Initializes the LC-Display. More...
 

Variables

FILE lcd
 
const uint8_t LCDStartLine []
 
uint8_t lcdVbarChar [LCD_LINES]
 Holds the characters for Vertical Bar Graph from Line 3 to 0. More...
 

Macro Definition Documentation

◆ LCD_WIDTH

#define LCD_WIDTH   20

Number of characters.

◆ LCD_LINES

#define LCD_LINES   4

Number of lines.

◆ LCD_LINE1

#define LCD_LINE1   0

◆ LCD_LINE2

#define LCD_LINE2   64

◆ LCD_LINE3

#define LCD_LINE3   20

◆ LCD_LINE4

#define LCD_LINE4   84

Function Documentation

◆ LCDInitCGRAM()

void LCDInitCGRAM ( )

Initializes the Character Generator RAM.

This routine basically defines the antenna-character (DCF77-symbol), the micro and the Omega. Since a character 0 cannot be used for printf, we use character 1 for it.
The symbols for bargraph display use character codes 2 to 6. Character code 7 is unused until now.

Here is the call graph for this function:

◆ LDCInit()

void LDCInit ( void  )

Initializes the LC-Display.

Here is the call graph for this function:

◆ LCDCursorOn()

void LCDCursorOn ( void  )
Here is the call graph for this function:

◆ LCDCursorOff()

void LCDCursorOff ( void  )
Here is the call graph for this function:

◆ LCDClear()

void LCDClear ( void  )

Clears the LCD and sets Cursor to Home Postion.

Here is the call graph for this function:

◆ LCDGoTo()

void LCDGoTo ( uint8_t  pos)

Sets the Cursor Position.

    Lines start at 0 and 64 for the 2x16 and
    0,64,20 and 84 for the 4x20-Display
Parameters
posThe Position
Here is the call graph for this function:

◆ LCDGoToXY()

uint8_t LCDGoToXY ( uint8_t  x,
uint8_t  y 
)

Sets the Cursor Position.

Parameters
xThe Row Number
yThe Line Number
Returns
The Position as raw Display Value
Here is the call graph for this function:

◆ LCDWriteData()

void LCDWriteData ( char  c)

Writes a Data-Byte to the Display.

Parameters
cThe Byte
Here is the call graph for this function:

◆ LCDPrintLine_P()

void LCDPrintLine_P ( uint8_t  line,
const char *  fmt,
  ... 
)

Printf for one complete Line of the Display.

This is a handy printf-like function for outputting display content. It ensures that no more characters are written than one line can hold and automatically deletes all characters beyond the content so that no fragments of the previous content remain visible.

Parameters
lineThe line to print on (0-based)
fmtA printf-like format string
...Optional further parameters
Returns
Here is the call graph for this function:

◆ LCDWriteString()

void LCDWriteString ( const char *  s)

Displays a String.

Parameters
sThe String
Here is the call graph for this function:

◆ LCDWriteString_P()

void LCDWriteString_P ( const char *  s)

Displays a String in Flash Memory.

Parameters
sThe String
Here is the call graph for this function:

◆ LCDHBarGraph()

int8_t LCDHBarGraph ( uint8_t  line,
uint8_t  val 
)

Prints a Line of Bar Graph. The rest of the line is cleared.

Parameters
lineThe 0-based Line Number
valThe number of black Lines to draw. This is not a percent value! Maximum is five times the width of the display (i.e. 100 for 4x20 and 80 for 2x16).
Returns
-1 on Error, 0 if OK
Here is the call graph for this function:

◆ LCDBuildVBarChars()

bool LCDBuildVBarChars ( uint8_t  nBars)

Builds the Character Array for vertical Bar Graphs.

Parameters
nBarsThe number of black Bars
Returns
True if OK, false if not
Here is the call graph for this function:

◆ LCDSecondlyCallback()

void LCDSecondlyCallback ( void  )

Has to be called once per Second by the surrounding program.

Timing of functions like LCD-Backlight determine on this timing. If you call this function at other intervals, times will change accordingly.

Here is the call graph for this function:

◆ LCDActivateBacklight()

void LCDActivateBacklight ( void  )
Here is the call graph for this function:

◆ LCDSetBrightness()

static void LCDSetBrightness ( uint8_t  val)
inlinestatic

Sets the Brightness of the LCD Backlight.

Note
This is a temporary value and is not stored in the configuration memory.
Parameters
valThe Brightness
Here is the caller graph for this function:

◆ LCDGetBrightness()

static uint8_t LCDGetBrightness ( void  )
inlinestatic

Gets the current Brightness of the LCD Backlight.

Returns
The Brightness (0=0%, 255=100%)
Here is the caller graph for this function:

◆ LCDSetContrast()

static void LCDSetContrast ( uint8_t  val)
inlinestatic

Sets the Contrast of the LCD.

Note
This is a temporary value and is not stored in the configuration memory.
Parameters
valThe Contrast
Here is the caller graph for this function:

◆ LCDGetContrast()

static uint8_t LCDGetContrast ( void  )
inlinestatic

Gets the current Contrast of the LCD.

Returns
The Contrast
Here is the caller graph for this function:

◆ LCDBuildVBarChar()

bool LCDBuildVBarChar ( uint8_t  nBars)

Builds a Character for vertical Bar Graph.

The vertical bar graph character can be printed as character code 3

Parameters
nBarsThe number of black Lines (0..8)
Returns
True if OK, false if not
Here is the call graph for this function:

Variable Documentation

◆ lcdVbarChar

uint8_t lcdVbarChar[LCD_LINES]

Holds the characters for Vertical Bar Graph from Line 3 to 0.

◆ LCDStartLine

const uint8_t LCDStartLine[]

◆ lcd

FILE lcd