TM1638 LED controller. Max 80 LEDs, Max 24 Key scan. Supports LED&KEY, QYF-TM1638 and JY-LKM1638 module.

Dependents:   mbed_TM1638 Otjimaniya RL0201-V1

Embed: (wiki syntax)

« Back to documentation index

TM1638_LEDKEY8 Class Reference

Constructor for class for driving TM1638 controller as used in LEDKEY8. More...

#include <TM1638.h>

Inherits TM1638.

Public Types

enum  Icon {
  LD1 = (1<<24) | S7_LD1, LD2 = (2<<24) | S7_LD2, LD3 = (3<<24) | S7_LD3, LD4 = (4<<24) | S7_LD4,
  LD5 = (5<<24) | S7_LD5, LD6 = (6<<24) | S7_LD6, LD7 = (7<<24) | S7_LD7, LD8 = (8<<24) | S7_LD8,
  DP1 = (1<<24) | S7_DP1, DP2 = (2<<24) | S7_DP2, DP3 = (3<<24) | S7_DP3, DP4 = (4<<24) | S7_DP4,
  DP5 = (5<<24) | S7_DP5, DP6 = (6<<24) | S7_DP6, DP7 = (7<<24) | S7_DP7, DP8 = (8<<24) | S7_DP8
}
 

Enums for Icons.

More...
typedef char DisplayData_t [TM1638_DISPLAY_MEM]
 Datatype for display data.
typedef char KeyData_t [TM1638_KEY_MEM]
 Datatypes for keymatrix data.

Public Member Functions

 TM1638_LEDKEY8 (PinName mosi, PinName miso, PinName sclk, PinName cs)
 Constructor for class for driving TM1638 LED controller as used in LEDKEY8.
int putc (int c)
 Write a character to the Display.
int printf (const char *format,...)
 Write a formatted string to the Display.
void locate (int column)
 Locate cursor to a screen column.
void cls (bool clrAll=false)
 Clear the screen and locate to 0.
void setIcon (Icon icon)
 Set Icon.
void clrIcon (Icon icon)
 Clr Icon.
void setUDC (unsigned char udc_idx, int udc_data)
 Set User Defined Characters (UDC)
int columns ()
 Number of screen columns.
void writeData (char data, int address)
 Write databyte to TM1638.
void writeData (DisplayData_t data, int length=(LEDKEY8_NR_GRIDS *TM1638_BYTES_PER_GRID), int address=0)
 Write Display datablock to TM1638.
void cls ()
 Clear the screen and locate to 0.
bool getKeys (KeyData_t *keydata)
 Read keydata block from TM1638.
void setBrightness (char brightness=TM1638_BRT_DEF)
 Set Brightness.
void setDisplay (bool on)
 Set the Display mode On/off.

Protected Member Functions

virtual int _putc (int value)
 Write a single character (Stream implementation)

Detailed Description

Constructor for class for driving TM1638 controller as used in LEDKEY8.

Supports 8 Digits of 7 Segments + DP + LED Icons, Also supports a scanned keyboard of 8 keys.

Parameters:
PinNamemosi, miso, sclk, cs SPI bus pins

Definition at line 243 of file TM1638.h.


Member Typedef Documentation

typedef char DisplayData_t[TM1638_DISPLAY_MEM] [inherited]

Datatype for display data.

Definition at line 124 of file TM1638.h.

typedef char KeyData_t[TM1638_KEY_MEM] [inherited]

Datatypes for keymatrix data.

Definition at line 127 of file TM1638.h.


Member Enumeration Documentation

enum Icon

Enums for Icons.

Enumerator:
LD1 

LED1.

LD2 

LED2.

LD3 

LED3.

LD4 

LED4.

LD5 

LED5.

LD6 

LED6.

LD7 

LED7.

LD8 

LED8.

DP1 

Decimal Point 1.

DP2 

Decimal Point 2.

DP3 

Decimal Point 3.

DP4 

Decimal Point 4.

DP5 

Decimal Point 5.

DP6 

Decimal Point 6.

DP7 

Decimal Point 7.

DP8 

Decimal Point 8.

Definition at line 248 of file TM1638.h.


Constructor & Destructor Documentation

TM1638_LEDKEY8 ( PinName  mosi,
PinName  miso,
PinName  sclk,
PinName  cs 
)

Constructor for class for driving TM1638 LED controller as used in LEDKEY8.

Supports 8 Digits of 7 Segments + DP + LED Icons. Also supports a scanned keyboard of 8 keys.

Parameters:
PinNamemosi, miso, sclk, cs SPI bus pins

Supports 8 Digits of 7 Segments + DP + LED Icons. Also supports a scanned keyboard of 8.

Parameters:
PinNamemosi, miso, sclk, cs SPI bus pins

Definition at line 250 of file TM1638.cpp.


Member Function Documentation

int _putc ( int  value ) [protected, virtual]

Write a single character (Stream implementation)

Definition at line 377 of file TM1638.cpp.

void clrIcon ( Icon  icon )

Clr Icon.

Parameters:
Iconicon Enums Icon has Grid position encoded in 8 MSBs, Icon pattern encoded in 16 LSBs
Returns:
none

Definition at line 343 of file TM1638.cpp.

void cls ( bool  clrAll = false )

Clear the screen and locate to 0.

Parameters:
boolclrAll Clear Icons also (default = false)

Definition at line 298 of file TM1638.cpp.

void cls (  ) [inherited]

Clear the screen and locate to 0.

Definition at line 60 of file TM1638.cpp.

int columns (  )

Number of screen columns.

Parameters:
none
Returns:
columns

Definition at line 290 of file TM1638.cpp.

bool getKeys ( KeyData_t keydata ) [inherited]

Read keydata block from TM1638.

Parameters:
*keydataPtr to Array of TM1638_KEY_MEM (=4) bytes for keydata
Returns:
bool keypress True when at least one key was pressed

Note: Due to the hardware configuration the TM1638 key matrix scanner will detect multiple keys pressed at same time, but this may result in some spurious keys also being set in keypress data array. It may be best to ignore all keys in those situations. That option is implemented in this method depending on define setting.

Parameters:
*keydataPtr to Array of TM1638_KEY_MEM (=4) bytes for keydata
Returns:
bool keypress True when at least one key was pressed

Note: Due to the hardware configuration the TM1638 key matrix scanner will detect multiple keys pressed at same time, but this may also result in some spurious keys being set in keypress data array. It may be best to ignore all keys in those situations. That option is implemented in this method depending on define setting.

Definition at line 156 of file TM1638.cpp.

void locate ( int  column )

Locate cursor to a screen column.

Parameters:
columnThe horizontal position from the left, indexed from 0

Definition at line 276 of file TM1638.cpp.

int printf ( const char *  format,
  ... 
)

Write a formatted string to the Display.

Parameters:
formatA printf-style format string, followed by the variables to use in formatting the string.
int putc ( int  c )

Write a character to the Display.

Parameters:
cThe character to write to the display
void setBrightness ( char  brightness = TM1638_BRT_DEF ) [inherited]

Set Brightness.

Parameters:
charbrightness (3 significant bits, valid range 0..7 (1/16 .. 14/16 dutycycle)
Returns:
none
Parameters:
charbrightness (3 significant bits, valid range 0..7 (1/16 .. 14/14 dutycycle)
Returns:
none

Definition at line 79 of file TM1638.cpp.

void setDisplay ( bool  on ) [inherited]

Set the Display mode On/off.

Parameters:
booldisplay mode

Definition at line 90 of file TM1638.cpp.

void setIcon ( Icon  icon )

Set Icon.

Parameters:
Iconicon Enums Icon has Grid position encoded in 8 MSBs, Icon pattern encoded in 16 LSBs
Returns:
none

Definition at line 324 of file TM1638.cpp.

void setUDC ( unsigned char  udc_idx,
int  udc_data 
)

Set User Defined Characters (UDC)

Parameters:
unsignedchar udc_idx The Index of the UDC (0..7)
intudc_data The bitpattern for the UDC (16 bits)
unsignedchar udc_idx The Index of the UDC (0..7)
intudc_data The bitpattern for the UDC (8 bits)

Definition at line 363 of file TM1638.cpp.

void writeData ( DisplayData_t  data,
int  length = (LEDKEY8_NR_GRIDS * TM1638_BYTES_PER_GRID),
int  address = 0 
)

Write Display datablock to TM1638.

Parameters:
DisplayData_tdata Array of TM1638_DISPLAY_MEM (=16) bytes for displaydata
lengthnumber bytes to write (valid range 0..(LEDKEY8_NR_GRIDS * TM1638_BYTES_PER_GRID) (=16), when starting at address 0)
intaddress display memory location to write bytes (default = 0)
Returns:
none

Reimplemented from TM1638.

Definition at line 348 of file TM1638.h.

void writeData ( char  data,
int  address 
)

Write databyte to TM1638.

Parameters:
chardata byte written at given address
intaddress display memory location to write byte
Returns:
none

Reimplemented from TM1638.

Definition at line 338 of file TM1638.h.