This is a driver for the segment LCD found on the Silicon Labs EF32 Giant, Leopard and Wonder Gecko platforms. NOTE: This driver will not work with other platforms, because it contains EFM32-specific code.

Dependents:   EFM32 RDA5807M RDS Radio EMF32-Segment-Touch-Demo EMF32_ShowKey blinky_EFM32_Giant ... more

Embed: (wiki syntax)

« Back to documentation index

segmentlcd.c File Reference

segmentlcd.c File Reference

EFM32 Segment LCD Display driver. More...

Go to the source code of this file.

Functions

void SegmentLCD_AllOff (void)
 Disable all segments.
void SegmentLCD_AllOn (void)
 Enable all segments.
void SegmentLCD_AlphaNumberOff (void)
 Turn all segments on alpha characters in display off.
void SegmentLCD_ARing (int anum, int on)
 Light up or shut off Ring of Indicators.
void SegmentLCD_Battery (int batteryLevel)
 Light up or shut off Battery Indicator.
void SegmentLCD_Disable (void)
 Disables LCD controller.
void SegmentLCD_EnergyMode (int em, int on)
 Light up or shut off Energy Mode indicator.
uint8_t SegmentLCD_GetFrameRateDiv (LCD_Mux_TypeDef muxSetting)
 Get frame rate division value corresponding to mux selection.
void SegmentLCD_Init (bool useBoost)
 Segment LCD Initialization routine for EFM32 STK display.
void SegmentLCD_LowerHex (uint32_t num)
 Write a hexadecimal number on lower alphanumeric part of Segment LCD display.
void SegmentLCD_LowerNumber (int num)
 Write number on lower alphanumeric part of Segment LCD display.
void SegmentLCD_Number (int value)
 Write number on numeric part on Segment LCD display.
void SegmentLCD_NumberOff (void)
 Turn all segments on numeric digits in display off.
void SegmentLCD_Symbol (lcdSymbol s, int on)
 Light up or shut off various symbols on Segment LCD.
void SegmentLCD_UnsignedHex (uint16_t value)
 Write hexadecimal number on numeric part on Segment LCD display.
void SegmentLCD_Write (char *string)
 Write text on LCD display.

Variables

static const MCU_DISPLAY EFM_Display = EFM_DISPLAY_DEF
 Working instance of LCD display.
static const uint16_t EFM_Alphabet []
 Defines higlighted segments for the alphabet, starting from "blank" (SPACE) Uses bit pattern as defined for text segments above.
static const uint16_t EFM_Numbers []
 Defines higlighted segments for the numeric display.

Detailed Description

EFM32 Segment LCD Display driver.

Version:
3.20.9

License

(C) Copyright 2014 Silicon Labs, http://www.silabs.com

This file is licensensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.

Definition in file segmentlcd.c.


Function Documentation

uint8_t SegmentLCD_GetFrameRateDiv ( LCD_Mux_TypeDef  muxSetting )

Get frame rate division value corresponding to mux selection.

Parameters:
muxenum

Static (segments can be multiplexed with LCD_COM[0])

Duplex / 1/2 Duty cycle (segments can be multiplexed with LCD_COM[0:1])

Triplex / 1/3 Duty cycle (segments can be multiplexed with LCD_COM[0:2])

Quadruplex / 1/4 Duty cycle (segments can be multiplexed with LCD_COM[0:3])

Sextaplex / 1/6 Duty cycle (segments can be multiplexed with LCD_COM[0:5])

Octaplex / 1/6 Duty cycle (segments can be multiplexed with LCD_COM[0:5])

Definition at line 382 of file segmentlcd.c.


Variable Documentation

const uint16_t EFM_Alphabet[] [static]

Defines higlighted segments for the alphabet, starting from "blank" (SPACE) Uses bit pattern as defined for text segments above.

E.g. a capital O, would have bits 0 1 2 3 4 5 => 0x003f defined

Definition at line 117 of file segmentlcd.c.

const MCU_DISPLAY EFM_Display = EFM_DISPLAY_DEF [static]

Working instance of LCD display.

Definition at line 108 of file segmentlcd.c.

const uint16_t EFM_Numbers[] [static]
Initial value:
 {
  0x003f, 
  0x0006, 
  0x005b, 
  0x004f, 
  0x0066, 
  0x006d, 
  0x007d, 
  0x0007, 
  0x007f, 
  0x006f, 
  0x0077, 
  0x007c, 
  0x0039, 
  0x005e, 
  0x0079, 
  0x0071, 
  0x0040  
}

Defines higlighted segments for the numeric display.

Definition at line 223 of file segmentlcd.c.