![]()  | 
  
    Nordic Thingy:52 v2.2.0
    
   | 
 
SX1509 GPIO extender API. More...
Data Structures | |
| struct | drv_sx1509_cfg_t | 
| SX1509 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 } | 
| SX1509 status codes.  More... | |
Functions | |
| uint32_t | drv_sx1509_clock_get (uint8_t *p_clock) | 
| Function for getting the clock configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_clock_modify (uint8_t set_mask, uint8_t clr_mask) | 
| Function for modifying the clock configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_close (void) | 
| Function for closing the SX1509 driver.  More... | |
| uint32_t | drv_sx1509_data_get (uint16_t *p_data) | 
| Function for getting the data seen at the pins of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_data_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the data to be output to the output-configured IOs of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_data_set (uint16_t data) | 
| Function for setting 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) | 
| Function for getting the debounce configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_debounceconfig_modify (uint8_t set_mask, uint8_t clr_mask) | 
| Function for modifying the debounce configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_debounceenable_get (uint16_t *p_debounceenable) | 
| Function for getting the debounce enable configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_debounceenable_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the debounce enable configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_dir_get (uint16_t *p_dir) | 
| Function for getting the pin direction configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_dir_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the pin direction configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_eventstatus_clr (uint16_t clr_mask) | 
| Function for modifying the event status of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_eventstatus_get (uint16_t *p_eventstatus) | 
| Function for getting the event status of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_highinpmode_get (uint16_t *p_highinpmode) | 
| Function for getting 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) | 
| Function for modifying the enable configuration for high-voltage input mode of the SX1509 device.  More... | |
| void | drv_sx1509_init (void) | 
| Function for initializing the driver.  | |
| uint32_t | drv_sx1509_inpbufdisable_get (uint16_t *p_inputdisable) | 
| Function for getting the input buffer disable register of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_inpbufdisable_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the input buffer disable register of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_interruptmask_get (uint16_t *p_interruptmask) | 
| Function for getting the interrupt mask of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_interruptmask_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the interrupt mask of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_interruptsource_clr (uint16_t clr_mask) | 
| Function for clearing the interrupt source status of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_interruptsource_get (uint16_t *p_interruptsource) | 
| Function for getting the interrupt source status of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_keyconfig_get (uint16_t *p_keyconfig) | 
| Function for getting the key configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_keyconfig_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the key configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_keydata_get (uint16_t *p_keydata) | 
| Function for getting the key data status of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_leddriverenable_get (uint16_t *p_leddriverenable) | 
| Function for getting the LED driver enable configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_leddriverenable_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Functiong for modifying the LED driver enable configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_levelshifter_get (uint16_t *p_levelshifter) | 
| Function for getting the level shifter configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_levelshifter_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the level shifter configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_longslewrate_get (uint16_t *p_longslewrate) | 
| Function for getting the long slew rate configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_longslewrate_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the long slew rate configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_lowdrive_get (uint16_t *p_lowdrive) | 
| Function for getting the low drive configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_lowdrive_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the low drive configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_misc_get (uint8_t *p_misc) | 
| Function for getting miscellaneous configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_misc_modify (uint8_t set_mask, uint8_t clr_mask) | 
| Fucntion for modifying miscellaneous configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_onoffcfgx_get (uint8_t pin_no, uint32_t *p_onoffcfgx) | 
| Function for getting 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) | 
| Function for modifying 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) | 
| Function for opening the SX1509 driver according to the specified configuration.  More... | |
| uint32_t | drv_sx1509_opendrain_get (uint16_t *p_opendrain) | 
| Function for getting 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) | 
| Function for modifying the open drain operation enable configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_polarity_get (uint16_t *p_polarity) | 
| Function for getting the polarity inversion enable status of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_polarity_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the polarity inversion enable status of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_pulldown_get (uint16_t *p_pulldown) | 
| Function for getting the pull-down enable configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_pulldown_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the pull-down enable configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_pullup_get (uint16_t *p_pullup) | 
| Function for getting the pull-up enable configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_pullup_modify (uint16_t set_mask, uint16_t clr_mask) | 
| Function for modifying the pull-up enable configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_reg_get (uint8_t reg_addr, uint8_t *p_value) | 
| Function for getting any register from SX1509.  More... | |
| uint32_t | drv_sx1509_reset (void) | 
| Function for resetting the SX1509 device.  More... | |
| uint32_t | drv_sx1509_risefallcfgx_get (uint8_t pin_no, uint16_t *p_risefallcfgx) | 
| Function for getting 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) | 
| Function for modifying the fade in/out configuration (RegTRiseX & RegTFallX registers) of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_sense_get (uint32_t *p_sense) | 
| Function for getting the edge sensitivity configuration of the SX1509 device.  More... | |
| uint32_t | drv_sx1509_sense_modify (uint32_t set_mask, uint32_t clr_mask) | 
| Function for modifying 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 | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the clock configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_close | ( | void | ) | 
Function for closing the SX1509 driver.
| uint32_t drv_sx1509_data_get | ( | uint16_t * | p_data | ) | 
Function for getting the data seen at the pins 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 | ||
| ) | 
Function for modifying the data to be output to the output-configured IOs of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_data_set | ( | uint16_t | data | ) | 
Function for setting the data to be output to the output-configured IOs of the SX1509 device.
| [in] | data | Pin data. | 
| uint32_t drv_sx1509_debounceconfig_get | ( | uint8_t * | p_debounceconfig | ) | 
Function for getting the debounce configuration 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 | ||
| ) | 
Function for modifying the debounce configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_debounceenable_get | ( | uint16_t * | p_debounceenable | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the debounce enable configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_dir_get | ( | uint16_t * | p_dir | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the pin direction configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_eventstatus_clr | ( | uint16_t | clr_mask | ) | 
Function for modifying the event status of the SX1509 device.
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_eventstatus_get | ( | uint16_t * | p_eventstatus | ) | 
Function for getting 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 | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the enable configuration for high-voltage input mode of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_inpbufdisable_get | ( | uint16_t * | p_inputdisable | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the input buffer disable register of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_interruptmask_get | ( | uint16_t * | p_interruptmask | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the interrupt mask of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_interruptsource_clr | ( | uint16_t | clr_mask | ) | 
Function for clearing the interrupt source status of the SX1509 device.
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_interruptsource_get | ( | uint16_t * | p_interruptsource | ) | 
Function for getting 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 | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the key configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_keydata_get | ( | uint16_t * | p_keydata | ) | 
Function for getting 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 | ) | 
Function for getting 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 | ||
| ) | 
Functiong for modifying the LED driver enable configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_levelshifter_get | ( | uint16_t * | p_levelshifter | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the level shifter configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_longslewrate_get | ( | uint16_t * | p_longslewrate | ) | 
Function for getting the long slew rate configuration of the SX1509 device.
| [in] | p_longslewrate | Pointer to where the value is to be stored. | 
| uint32_t drv_sx1509_longslewrate_modify | ( | uint16_t | set_mask, | 
| uint16_t | clr_mask | ||
| ) | 
Function for modifying the long slew rate configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_lowdrive_get | ( | uint16_t * | p_lowdrive | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the low drive configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_misc_get | ( | uint8_t * | p_misc | ) | 
Function for getting 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 | ||
| ) | 
Fucntion for modifying miscellaneous configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_onoffcfgx_get | ( | uint8_t | pin_no, | 
| uint32_t * | p_onoffcfgx | ||
| ) | 
Function for getting 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 | ||
| ) | 
Function for modifying 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 which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_open | ( | drv_sx1509_cfg_t const *const | p_drv_sx1509_cfg | ) | 
Function for opening 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 | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the open drain operation enable configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_polarity_get | ( | uint16_t * | p_polarity | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the polarity inversion enable status of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_pulldown_get | ( | uint16_t * | p_pulldown | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the pull-down enable configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_pullup_get | ( | uint16_t * | p_pullup | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the pull-up enable configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_reg_get | ( | uint8_t | reg_addr, | 
| uint8_t * | p_value | ||
| ) | 
Function for getting any register from SX1509.
| [in] | reg_addr | Register address to read. | 
| [in] | p_value | Pointer to store data. | 
| uint32_t drv_sx1509_reset | ( | void | ) | 
Function for resetting the SX1509 device.
| uint32_t drv_sx1509_risefallcfgx_get | ( | uint8_t | pin_no, | 
| uint16_t * | p_risefallcfgx | ||
| ) | 
Function for getting 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 | ||
| ) | 
Function for modifying 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 which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. | 
| uint32_t drv_sx1509_sense_get | ( | uint32_t * | p_sense | ) | 
Function for getting 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 | ||
| ) | 
Function for modifying the edge sensitivity configuration of the SX1509 device.
| [in] | set_mask | A mask specifying which bits to set. | 
| [in] | clr_mask | A mask specifying which bits to clear. |