#include <modm/driver/usb/stusb4500.hpp>
|  | 
| enum | Register : uint8_t { RdoRegStatus = 0x91, 
DpmPdoNumb = 0x70, 
DpmSnkPdo1 = 0x85, 
DpmSnkPdo2 = 0x89,
 DpmSnkPdo3 = 0x8D
 }
 | 
|  | 
|  | 
|  | Stusb4500 (uint8_t address=0x28) | 
|  | 
| bool | configurePdo (uint8_t pdoNumber, uint32_t voltage, uint32_t current) | 
|  | 
| bool | setValidPdo (uint8_t pdoNumber) | 
|  | 
| RdoRegStatusData | getRdoRegStatus () | 
|  | 
| bool | readRegister (Register reg, uint8_t *output, size_t length) | 
|  | 
| bool | updateRegister (Register reg, const uint8_t *data, size_t length) | 
|  | 
| void | attachConfigurationHandler (I2c::ConfigurationHandler handler) | 
|  | 
| bool | ping () | 
|  | 
| bool | read (uint8_t *buffer, std::size_t size) | 
|  | Starts a write transaction and waits until finished. 
 | 
|  | 
| void | setAddress (uint8_t address) | 
|  | 
| bool | write (const uint8_t *buffer, std::size_t size) | 
|  | Starts a write transaction and waits until finished. 
 | 
|  | 
| bool | writeRead (const uint8_t *writeBuffer, std::size_t writeSize, uint8_t *readBuffer, std::size_t readSize) | 
|  | Starts a write-read transaction and waits until finished. 
 | 
|  | 
template<class I2cMaster>
class modm::stusb4500< I2cMaster >
- Author
- Henrik Hose, Raphael Lehmann 
Attaches a configuration handler, which is called before a transaction, whenever the configuration has to be changed. 
 
 
template<class I2cMaster > 
  
  | 
        
          | bool modm::stusb4500< I2cMaster >::configurePdo | ( | uint8_t | pdoNumber, |  
          |  |  | uint32_t | voltage, |  
          |  |  | uint32_t | current |  
          |  | ) |  |  |  | inline | 
 
Configures a PDO.
Note: According to the USB standard the first PDO (1) always has to set voltage to 5000 [mV].
- Parameters
- 
  
    | pdoNumber | Which PDO to configure, range 1 to 3. |  | voltage | in mV |  | current | in mA |  
 
 
 
template<class I2cMaster > 
 
Retrieve RDO status from STUSB4500 chip.
- Returns
- RdoRegStatusData object. Typically only RdoRegStatusData::MaxCurrent [mA] is of interest. 
 
 
- Returns
- truewhen transaction is busy.
 
 
- Return Values
- 
  
    | true | device responds to address |  | false | no device with address found |  
 
 
 
Sets a new address of the slave device. 
- Parameters
- 
  
    | address | the slave address not yet shifted left (address < 128). |  
 
 
 
template<class I2cMaster > 
  
  | 
        
          | bool modm::stusb4500< I2cMaster >::setValidPdo | ( | uint8_t | pdoNumber | ) |  |  | inline | 
 
Sets the valid PDO.
- Parameters
- 
  
    | pdoNumber | Which PDO to set valid, range 1 to 3. |  
 
 
 
- Returns
- truewhen transaction did not return an error.
 
 
The documentation for this class was generated from the following file: