test
as1115.h
- Committer:
- williamweatherholtz
- Date:
- 2018-04-16
- Revision:
- 1:b686a4955357
- Parent:
- 0:ef4b1297d850
- Child:
- 2:3261da935b2e
File content as of revision 1:b686a4955357:
#ifndef AS1115_H #define AS1115_H #include "mbed.h" typedef struct { uint8_t device_number; uint8_t decode_mode; uint8_t intensity; uint8_t scan_limit; }max7219_configuration_t; class AS1115 { public: typedef enum { // DIGIT REGISTERS AS1115_D0 = 0x01, AS1115_D1, AS1115_D2, AS1115_D3, AS1115_D4, AS1115_D5, AS1115_D6, AS1115_D7, // CONTROL REGISTERS AS1115_DECODE_MODE, AS1115_GLOBAL_INTENSITY, AS1115_SCAN_LIMIT, AS1115_SHUTDOWN, AS1115_SELF_ADDRESSING, AS1115_FEATURE, AS1115_DISPLAY_TEST_MODE, AS1115_DIG0_DIG1_INTENSITY, AS1115_DIG2_DIG3_INTENSITY, AS1115_DIG4_DIG5_INTENSITY, AS1115_DIG6_DIG7_INTENSITY, // DIAGNOSTIC REGISTERS AS1115_DIAGNOSTIC_DIGIT_0, AS1115_DIAGNOSTIC_DIGIT_1, AS1115_DIAGNOSTIC_DIGIT_2, AS1115_DIAGNOSTIC_DIGIT_3, AS1115_DIAGNOSTIC_DIGIT_4, AS1115_DIAGNOSTIC_DIGIT_5, AS1115_DIAGNOSTIC_DIGIT_6, AS1115_DIAGNOSTIC_DIGIT_7, AS1115_KEYA, AS1115_KEYB=0x1D }registers; AS1115(I2C &display, const uint8_t address); AS1115(PinName sda, PinName sck, const uint8_t address); void begin(); // shutdown mode options void enable(bool hard_reset=false); void disable(bool hard_reset=false); // decode mode options void enable_decode(); void disable_decode(); // intensity void set_global_intensity(uint8_t level); // scan limit void set_num_digits(uint8_t num_digits); // display test mode void start_display_test(); void stop_display_test(); void write(uint8_t reg, uint8_t data); //read(uint8_t reg, uint8_t data); void write_digit(uint8_t digit_num, uint8_t val); private: I2C &_display; uint8_t _address; }; #endif /* AS1115_H*/