- Main
- Tutorials
- Library
- Samples

Modules | Functions
DO
Library

## Modules
| DO_MODE

## Functions
IOTHINX_ERR | ioThinx_DO_GetValues (uint32_t slot, uint32_t *p_values)
IOTHINX_ERR | ioThinx_DO_SetValues (uint32_t slot, uint32_t values)
IOTHINX_ERR | ioThinx_DO_GetPwmCounts (uint32_t slot, uint8_t start, uint8_t count, uint32_t buf[])
IOTHINX_ERR | ioThinx_DO_SetPwmCounts (uint32_t slot, uint8_t start, uint8_t count, uint32_t buf[])
IOTHINX_ERR | ioThinx_DO_GetPwmStarts (uint32_t slot, uint32_t *p_starts)
IOTHINX_ERR | ioThinx_DO_SetPwmStarts (uint32_t slot, uint32_t starts)
IOTHINX_ERR | ioThinx_DO_SetPwmStops (uint32_t slot, uint32_t stops)
IOTHINX_ERR | ioThinx_DO_GetPwmConfigures (uint32_t slot, uint8_t start, uint8_t count, uint16_t frequencies[], uint16_t duty_cycles[])
IOTHINX_ERR | ioThinx_DO_SetPwmConfigures (uint32_t slot, uint8_t start, uint8_t count, uint16_t frequencies[], uint16_t duty_cycles[])
IOTHINX_ERR | ioThinx_DO_Config_GetModes (uint32_t slot, uint8_t start, uint8_t count, uint8_t buf[])
IOTHINX_ERR | ioThinx_DO_Config_SetModes (uint32_t slot, uint8_t start, uint8_t count, uint8_t buf[])
IOTHINX_ERR | ioThinx_DO_Config_GetPwmCounts (uint32_t slot, uint8_t start, uint8_t count, uint32_t buf[])
IOTHINX_ERR | ioThinx_DO_Config_SetPwmCounts (uint32_t slot, uint8_t start, uint8_t count, uint32_t buf[])
IOTHINX_ERR | ioThinx_DO_Config_GetPwmConfigures (uint32_t slot, uint8_t start, uint8_t count, uint16_t frequencies[], uint16_t duty_cycles[])
IOTHINX_ERR | ioThinx_DO_Config_SetPwmConfigures (uint32_t slot, uint8_t start, uint8_t count, uint16_t frequencies[], uint16_t duty_cycles[])

## Detailed Description

Sample Code:
do.c
pwm.c

## Function Documentation

IOTHINX_ERR ioThinx_DO_GetValues | ( | uint32_t | slot,
|  | uint32_t * | p_values
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [out] | p_values | A pointer that stores DO values of the contiguous channels; each bit holds one channel's value. The bit 0 represents digital output status of the channel 0 and so on.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_SetValues | ( | uint32_t | slot,
|  | uint32_t | values
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | values | DO values of the contiguous channels; each bit holds one channel's value. The bit 0 represents digital output status of the channel 0 and so on.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_GetPwmCounts | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint32_t | buf[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be get.
  [out] | buf | An array that stores the PWM counter values for the contiguous channels. buf[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_SetPwmCounts | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint32_t | buf[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be set.
  [in] | buf | An array that stores the PWM counter values for the contiguous channels. buf[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_GetPwmStarts | ( | uint32_t | slot,
|  | uint32_t * | p_starts
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [out] | p_starts | A pointer that stores PWM start flags of the contiguous channels (0: stop, 1: start); each bit holds one channel's flag. The bit 0 represents value of the channel 0 and so on.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_SetPwmStarts | ( | uint32_t | slot,
|  | uint32_t | starts
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | starts | Stores PWM start flags of the contiguous channels (0: ignore, 1: start); each bit holds one channel's flag. The bit 0 represents value of the channel 0 and so on.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_SetPwmStops | ( | uint32_t | slot,
|  | uint32_t | stops
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | stops | Stores PWM stop flags of the contiguous channels (0: ignore, 1: start); each bit holds one channel's flag. The bit 0 represents value of the channel 0 and so on.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_GetPwmConfigures | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint16_t | frequencies[],
|  | uint16_t | duty_cycles[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be set.
  [out] | frequencies | An array that stores the PWM frequency (Hz) for the corresponding channels. Range = 1Hz ~ MAX supported freqency. frequencies[0] represents the value of the start channel.
  [out] | duty_cycles | An array that stores the PWM ON duty cycle (%) for the corresponding channels. Range = 0, 1, ..., 100 (%). duty_cycles[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_SetPwmConfigures | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint16_t | frequencies[],
|  | uint16_t | duty_cycles[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be set.
  [in] | frequencies | An array that stores the PWM frequency (Hz) for the corresponding channels. Range = 1Hz ~ MAX supported freqency. frequencies[0] represents the value of the start channel.
  [in] | duty_cycles | An array that stores the PWM ON duty cycle (%) for the corresponding channels. Range = 0, 1, ..., 100 (%). duty_cycles[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_Config_GetModes | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint8_t | buf[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be get.
  [out] | buf | An array that stores DO modes of the contiguous channels. buf[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_Config_SetModes | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint8_t | buf[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be get.
  [in] | buf | An array that stores DO modes of the contiguous channels. buf[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_Config_GetPwmCounts | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint32_t | buf[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be get.
  [out] | buf | An array that stores the PWM counter values for the contiguous channels. buf[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_Config_SetPwmCounts | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint32_t | buf[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be set.
  [in] | buf | An array that stores the counter values for the contiguous channels. buf[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_Config_GetPwmConfigures | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint16_t | frequencies[],
|  | uint16_t | duty_cycles[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be set.
  [out] | frequencies | An array that stores the PWM frequency (Hz) for the corresponding channels. Range = 1Hz ~ MAX supported freqency. frequencies[0] represents the value of the start channel.
  [out] | duty_cycles | An array that stores the PWM ON duty cycle (%) for the corresponding channels. Range = 0, 1, ..., 100 (%). duty_cycles[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.

IOTHINX_ERR ioThinx_DO_Config_SetPwmConfigures | ( | uint32_t | slot,
|  | uint8_t | start,
|  | uint8_t | count,
|  | uint16_t | frequencies[],
|  | uint16_t | duty_cycles[]
| ) |  |

Parameters

  [in] | slot | Slot number of the I/O module.
  [in] | start | Specifies the start channel.
  [in] | count | The number of channels to be set.
  [in] | frequencies | An array that stores the PWM frequency (Hz) for the corresponding channels. Range = 1Hz ~ MAX supported freqency. frequencies[0] represents the value of the start channel.
  [in] | duty_cycles | An array that stores the PWM ON duty cycle (%) for the corresponding channels. Range = 0, 1, ..., 100 (%). duty_cycles[0] represents the value of the start channel.

Returns
  IOTHINX_ERR_OK if everything is ok. Otherwise, refer to the IOTHINX_ERR.