Nordic Thingy:52
|
SX1509 GPIO extender API. More...
Data Structures | |
struct | drv_sx1509_cfg_t |
The ccs811 configuration. More... | |
Enumerations | |
enum | { DRV_SX1509_STATUS_CODE_SUCCESS, DRV_SX1509_STATUS_CODE_DISALLOWED, DRV_SX1509_STATUS_CODE_INVALID_PARAM, DRV_SX1509_STATUS_CODE_NOT_SUPPORTED } |
The sx1509 status codes. More... | |
Functions | |
uint32_t | drv_sx1509_clock_get (uint8_t *p_clock) |
Gets the clock configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_clock_modify (uint8_t set_mask, uint8_t clr_mask) |
Modifies the clock configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_close (void) |
Closes the sx1509 driver. More... | |
uint32_t | drv_sx1509_data_get (uint16_t *p_data) |
Gets the data to be output to the output-configured IOs of the sx1509 device. More... | |
uint32_t | drv_sx1509_data_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the data to be output to the output-configured IOs of the sx1509 device. More... | |
uint32_t | drv_sx1509_debounceconfig_get (uint8_t *p_debounceconfig) |
Gets the debounce configruation of the sx1509 device. More... | |
uint32_t | drv_sx1509_debounceconfig_modify (uint8_t set_mask, uint8_t clr_mask) |
Modifies the debounce configruation of the sx1509 device. More... | |
uint32_t | drv_sx1509_debounceenable_get (uint16_t *p_debounceenable) |
Gets the debounce enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_debounceenable_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the debounce enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_dir_get (uint16_t *p_dir) |
Gets the pin direction configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_dir_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the pin direction configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_eventstatus_clr (uint16_t clr_mask) |
Modifies the event status of the sx1509 device. More... | |
uint32_t | drv_sx1509_eventstatus_get (uint16_t *p_eventstatus) |
Gets the event status of the sx1509 device. More... | |
uint32_t | drv_sx1509_highinpmode_get (uint16_t *p_highinpmode) |
Gets the enable configuration for high-voltage input mode of the sx1509 device. More... | |
uint32_t | drv_sx1509_highinpmode_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the enable configuration for high-voltage input mode of the sx1509 device. More... | |
void | drv_sx1509_init (void) |
Initializes the driver. | |
uint32_t | drv_sx1509_inpbufdisable_get (uint16_t *p_inputdisable) |
Gets the input buffer disable register of the sx1509 device. More... | |
uint32_t | drv_sx1509_inpbufdisable_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the input buffer disable register of the sx1509 device. More... | |
uint32_t | drv_sx1509_interruptmask_get (uint16_t *p_interruptmask) |
Gets the interrupt mask of the sx1509 device. More... | |
uint32_t | drv_sx1509_interruptmask_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the interrupt mask of the sx1509 device. More... | |
uint32_t | drv_sx1509_interruptsource_clr (uint16_t clr_mask) |
Clears the interrupt source status of the sx1509 device. More... | |
uint32_t | drv_sx1509_interruptsource_get (uint16_t *p_interruptsource) |
Gets the interrupt source status of the sx1509 device. More... | |
uint32_t | drv_sx1509_keyconfig_get (uint16_t *p_keyconfig) |
Gets the key configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_keyconfig_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the key configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_keydata_get (uint16_t *p_keydata) |
Gets the key data status of the sx1509 device. More... | |
uint32_t | drv_sx1509_leddriverenable_get (uint16_t *p_leddriverenable) |
Gets the LED driver enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_leddriverenable_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the LED driver enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_levelshifter_get (uint16_t *p_levelshifter) |
Gets the level shifter configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_levelshifter_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the level shifter configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_longslewrate_get (uint16_t *p_longslewrate) |
Gets the long slew rate configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_longslewrate_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the long slew rate configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_lowdrive_get (uint16_t *p_lowdrive) |
Gets the low drive configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_lowdrive_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the low drive configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_misc_get (uint8_t *p_misc) |
Gets the miscellaneous configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_misc_modify (uint8_t set_mask, uint8_t clr_mask) |
Modifies the miscellaneous configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_onoffcfgx_get (uint8_t pin_no, uint32_t *p_onoffcfgx) |
Gets the the on/off time and intensity configuration (RegTOn15, RegIOnX & RegOffX registers) of the sx1509 device. More... | |
uint32_t | drv_sx1509_onoffcfgx_modify (uint8_t pin_no, uint32_t set_mask, uint32_t clr_mask) |
Modifies the on/off time and intensity configuration (RegTOn15, RegIOnX & RegOffX registers) of the sx1509 device. More... | |
uint32_t | drv_sx1509_open (drv_sx1509_cfg_t const *const p_drv_sx1509_cfg) |
Opens the sx1509 driver according to the specified configuration. More... | |
uint32_t | drv_sx1509_opendrain_get (uint16_t *p_opendrain) |
Gets the open drain operation enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_opendrain_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the open drain operation enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_polarity_get (uint16_t *p_polarity) |
Gets the polarity inversion enable status of the sx1509 device. More... | |
uint32_t | drv_sx1509_polarity_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the polarity inversion enable status of the sx1509 device. More... | |
uint32_t | drv_sx1509_pulldown_get (uint16_t *p_pulldown) |
Gets the pull-down enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_pulldown_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the pull-down enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_pullup_get (uint16_t *p_pullup) |
Gets the pull-up enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_pullup_modify (uint16_t set_mask, uint16_t clr_mask) |
Modifies the pull-up enable configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_reg_get (uint8_t reg_addr, uint8_t *p_value) |
Get any register from the sx1509. | |
uint32_t | drv_sx1509_reset (void) |
Resets the sx1509 device. More... | |
uint32_t | drv_sx1509_risefallcfgx_get (uint8_t pin_no, uint16_t *p_risefallcfgx) |
Gets the fade in/out configuration (RegTRiseX & RegTFallX registers) of the sx1509 device. More... | |
uint32_t | drv_sx1509_risefallcfgx_modify (uint8_t pin_no, uint16_t set_mask, uint16_t clr_mask) |
Modifies the fade in/out configuration (RegTRiseX & RegTFallX registers) of the sx1509 device. More... | |
uint32_t | drv_sx1509_sense_get (uint32_t *p_sense) |
Gets the edge sensitivity configuration of the sx1509 device. More... | |
uint32_t | drv_sx1509_sense_modify (uint32_t set_mask, uint32_t clr_mask) |
Modifies the edge sensitivity configuration of the sx1509 device. More... | |
SX1509 GPIO extender API.
anonymous enum |
uint32_t drv_sx1509_clock_get | ( | uint8_t * | p_clock | ) |
Gets the clock configuration of the sx1509 device.
[in] | p_clock | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_clock_modify | ( | uint8_t | set_mask, |
uint8_t | clr_mask | ||
) |
Modifies the clock configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_close | ( | void | ) |
Closes the sx1509 driver.
uint32_t drv_sx1509_data_get | ( | uint16_t * | p_data | ) |
Gets the data to be output to the output-configured IOs of the sx1509 device.
[in] | p_data | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_data_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the data to be output to the output-configured IOs of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_debounceconfig_get | ( | uint8_t * | p_debounceconfig | ) |
Gets the debounce configruation of the sx1509 device.
[in] | p_debounceconfig | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_debounceconfig_modify | ( | uint8_t | set_mask, |
uint8_t | clr_mask | ||
) |
Modifies the debounce configruation of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_debounceenable_get | ( | uint16_t * | p_debounceenable | ) |
Gets the debounce enable configuration of the sx1509 device.
[in] | p_debounceenable | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_debounceenable_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the debounce enable configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_dir_get | ( | uint16_t * | p_dir | ) |
Gets the pin direction configuration of the sx1509 device.
[in] | p_dir | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_dir_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the pin direction configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_eventstatus_clr | ( | uint16_t | clr_mask | ) |
Modifies the event status of the sx1509 device.
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_eventstatus_get | ( | uint16_t * | p_eventstatus | ) |
Gets the event status of the sx1509 device.
[in] | p_eventstatus | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_highinpmode_get | ( | uint16_t * | p_highinpmode | ) |
Gets the enable configuration for high-voltage input mode of the sx1509 device.
[in] | p_highinpmode | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_highinpmode_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the enable configuration for high-voltage input mode of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_inpbufdisable_get | ( | uint16_t * | p_inputdisable | ) |
Gets the input buffer disable register of the sx1509 device.
[in] | p_inputdisable | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_inpbufdisable_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the input buffer disable register of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_interruptmask_get | ( | uint16_t * | p_interruptmask | ) |
Gets the interrupt mask of the sx1509 device.
[in] | p_interruptmask | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_interruptmask_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the interrupt mask of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_interruptsource_clr | ( | uint16_t | clr_mask | ) |
Clears the interrupt source status of the sx1509 device.
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_interruptsource_get | ( | uint16_t * | p_interruptsource | ) |
Gets the interrupt source status of the sx1509 device.
[in] | p_interruptsource | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_keyconfig_get | ( | uint16_t * | p_keyconfig | ) |
Gets the key configuration of the sx1509 device.
[in] | p_keyconfig | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_keyconfig_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the key configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_keydata_get | ( | uint16_t * | p_keydata | ) |
Gets the key data status of the sx1509 device.
[in] | p_keydata | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_leddriverenable_get | ( | uint16_t * | p_leddriverenable | ) |
Gets the LED driver enable configuration of the sx1509 device.
[in] | p_leddriverenable | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_leddriverenable_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the LED driver enable configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_levelshifter_get | ( | uint16_t * | p_levelshifter | ) |
Gets the level shifter configuration of the sx1509 device.
[in] | p_levelshifter | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_levelshifter_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the level shifter configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_longslewrate_get | ( | uint16_t * | p_longslewrate | ) |
Gets the long slew rate configuration of the sx1509 device.
[in] | p_longslewrate | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_longslewrate_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the long slew rate configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_lowdrive_get | ( | uint16_t * | p_lowdrive | ) |
Gets the low drive configuration of the sx1509 device.
[in] | p_lowdrive | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_lowdrive_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the low drive configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_misc_get | ( | uint8_t * | p_misc | ) |
Gets the miscellaneous configuration of the sx1509 device.
[in] | p_misc | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_misc_modify | ( | uint8_t | set_mask, |
uint8_t | clr_mask | ||
) |
Modifies the miscellaneous configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_onoffcfgx_get | ( | uint8_t | pin_no, |
uint32_t * | p_onoffcfgx | ||
) |
Gets the the on/off time and intensity configuration (RegTOn15, RegIOnX & RegOffX registers) of the sx1509 device.
[in] | pin_no | The pin number to configure. |
[in] | p_onoffcfgx | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_onoffcfgx_modify | ( | uint8_t | pin_no, |
uint32_t | set_mask, | ||
uint32_t | clr_mask | ||
) |
Modifies the on/off time and intensity configuration (RegTOn15, RegIOnX & RegOffX registers) of the sx1509 device.
[in] | pin_no | The pin number to configure. |
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_open | ( | drv_sx1509_cfg_t const *const | p_drv_sx1509_cfg | ) |
Opens the sx1509 driver according to the specified configuration.
[in] | p_drv_sx1509_cfg | Pointer to the driver configuration for the session to be opened. |
uint32_t drv_sx1509_opendrain_get | ( | uint16_t * | p_opendrain | ) |
Gets the open drain operation enable configuration of the sx1509 device.
[in] | p_opendrain | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_opendrain_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the open drain operation enable configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_polarity_get | ( | uint16_t * | p_polarity | ) |
Gets the polarity inversion enable status of the sx1509 device.
[in] | p_polarity | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_polarity_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the polarity inversion enable status of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_pulldown_get | ( | uint16_t * | p_pulldown | ) |
Gets the pull-down enable configuration of the sx1509 device.
[in] | p_pulldown | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_pulldown_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the pull-down enable configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_pullup_get | ( | uint16_t * | p_pullup | ) |
Gets the pull-up enable configuration of the sx1509 device.
[in] | p_pullup | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_pullup_modify | ( | uint16_t | set_mask, |
uint16_t | clr_mask | ||
) |
Modifies the pull-up enable configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_reset | ( | void | ) |
Resets the sx1509 device.
uint32_t drv_sx1509_risefallcfgx_get | ( | uint8_t | pin_no, |
uint16_t * | p_risefallcfgx | ||
) |
Gets the fade in/out configuration (RegTRiseX & RegTFallX registers) of the sx1509 device.
[in] | pin_no | The pin number to configure. |
[in] | p_risefallcfgx | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_risefallcfgx_modify | ( | uint8_t | pin_no, |
uint16_t | set_mask, | ||
uint16_t | clr_mask | ||
) |
Modifies the fade in/out configuration (RegTRiseX & RegTFallX registers) of the sx1509 device.
[in] | pin_no | The pin number to configure. |
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |
uint32_t drv_sx1509_sense_get | ( | uint32_t * | p_sense | ) |
Gets the edge sensitivity configuration of the sx1509 device.
[in] | p_sense | A pointer to where the value is to be stored. |
uint32_t drv_sx1509_sense_modify | ( | uint32_t | set_mask, |
uint32_t | clr_mask | ||
) |
Modifies the edge sensitivity configuration of the sx1509 device.
[in] | set_mask | A mask specifying what bits to set. |
[in] | clr_mask | A mask specifying what bits to clear. |