Hubo Library
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Data Structures | Typedefs | Functions | Variables
HuboLib Namespace Reference

Data Structures

class  I2C_Config
 Use to configure I2C specific parameters. More...
 
class  SPI_Config
 Use to configure SPI specific parameters. More...
 
class  W1_Config
 Use to configure 1wire specific parameters. More...
 

Typedefs

typedef void(* T_pfn_CycleTickCallback) (unsigned long *pADChannelValues, unsigned char *pDigitalInputValues, unsigned char *pDigitalOutputValues)
 Prototype definition of the callback function beeing called an every cycle time tick. More...
 
typedef void(* T_pfn_ChannelDelayCallback) (__int64 cycleCount, __int64 t_Overrun_ms)
 Prototype definition of the callback function beeing called when the cycle time slice has been violated. More...
 
typedef void(* T_pfn_DIChangedCallback) (unsigned char changedDigitalInputValues, unsigned char digitalInputValues)
 Prototype definition of the callback function beeing called whenever a change of any of the digital inputs is detected. More...
 

Functions

bool Initialize ()
 Initializes the library. More...
 
void Uninitialize ()
 Releases any resources bound to the library. More...
 
bool Initialize_MCP23017 ()
 Low level initialization of the MCP23017 IO expander. More...
 
bool Wait_For_MCP23017_Buffered_Values ()
 Waits until input and output buffers of the MCP23017 master are initialized from the hardware. More...
 
bool Initialize_MCP23017_Slaves ()
 Low level initialization of the MCP23017 IO expander slaves. More...
 
bool Wait_For_MCP23017_Slaves_Buffered_Values ()
 Waits until input and output buffers of the MCP23017 slaves are initialized from the hardware. More...
 
bool Initialize_MCP3x08 ()
 Low level initialization of the MCP3x08 analog input chip. More...
 
bool Wait_For_MCP3x08_Buffered_Values ()
 Waits until the input buffer of the MCP3x08 are initialized from the hardware. More...
 
bool Set_Cycle_Time (long cycleTime)
 Sets the backgrounds threads polling interval in ms. More...
 
bool Register_CycleTickCallback (T_pfn_CycleTickCallback pFnCycleTickCallback)
 Registers a callback function called on every cycle tick. More...
 
bool Unregister_CycleTickCallback (T_pfn_CycleTickCallback pFnCycleTickCallback)
 Unregister a callback previouly registered by a call to Register_CycleTickCallback(). More...
 
bool Register_ChannelDelayCallback (T_pfn_ChannelDelayCallback pFnChannelDelayCallback)
 Register a callback to be called whenever the cycle time has been violated by more than one cycle time. More...
 
bool Unregister_ChannelDelayCallback (T_pfn_ChannelDelayCallback pFnChannelDelayCallback)
 Unregister a callback previouly registered by a call to Register_ChannelDelayCallback(). More...
 
bool Set_DO_Channels (unsigned char value)
 Requests the background thread to update all 8 bits of the digital output to the value specified. More...
 
bool Set_Slave_DO_Channels (int slaveNo, unsigned char value)
 Requests the background thread to update all 8 bits of the digital output to the value specified for a given slave. More...
 
bool Set_DO_Channel (int channel, bool bValue)
 Requests the background thread to set one of the digital outputs to the value specified. More...
 
bool Set_Slave_DO_Channel (int slaveNo, int channel, bool bValue)
 Requests the background thread to set one of the digital outputs to the value specified for a given slave. More...
 
bool Get_DO_Channels (unsigned char &value)
 Retrieves the requested digital output value from the output buffer. More...
 
bool Get_Slave_DO_Channels (int slaveNo, unsigned char &value)
 Retrieves the requested digital output value from the output buffer for a given slave. More...
 
bool Readback_DO_Channels (unsigned char &value)
 Reads back the digital output latchs of the IO expander. More...
 
bool Readback_Slave_DO_Channels (int slaveNo, unsigned char &value)
 Reads back the digital output latchs of the IO expander for a given slave. More...
 
bool Get_DI_Channels (unsigned char &value)
 Retrieves the value of all digital inputs. More...
 
bool Get_DI_Channels_Raw (unsigned char &values)
 Retrieves the unbuffered values of all digital inputs (of the Hubo master module). More...
 
bool Get_Slave_DI_Channels (int slaveNo, unsigned char &value)
 Retrieves the value of all digital inputs. More...
 
bool Get_DI_Channel (int channel, bool &bValue)
 Retrieves the value of one digital input. More...
 
bool Get_Slave_DI_Channel (int slaveNo, int channel, bool &bValue)
 Retrieves the value of one digital input for a given slave. More...
 
bool Register_DIChangedCallback (T_pfn_DIChangedCallback pFnDIChangedCallback)
 Register a callback to be called whenever one or more of the digital inputs have changed. More...
 
bool Unregister_DIChangedCallback (T_pfn_DIChangedCallback pFnDIChangedCallback)
 Unregister a callback previouly registered by a call to Register_DIChangedCallback(). More...
 
void Set_VRef (double volt)
 Set the reference voltage value for the ADC. More...
 
double Get_VRef ()
 Retrieves the reference voltage value used for ADC count convertion. More...
 
double Get_VRef_Raw ()
 Retrieves the reference voltage value used for ADC count convertion. More...
 
bool Set_MCP3x08_Oversampling (unsigned short overSampling[MAX_MCP3x08_CHANNELS])
 Specifies the ADC channels to be sampled as well as the number they get oversampled. More...
 
bool Get_AI_Channel (int channel, unsigned long &count, double &volt)
 Get the buffered and oversampled data from the MCP3x08. More...
 
bool Get_AI_Channel_Raw (int channel, unsigned short &value)
 Gets an unbuffered value from the MCP3x08. More...
 
void VersionInfo ()
 Prints version information and other stuff regarding to the library to the console. More...
 
double Get_MCP9701_Temperature (double volt)
 Converts a voltage value of an MCP9701 temperature sensor into the equivalent temperature. More...
 
double Get_MCP9700_Temperature (double volt)
 Converts a voltage value of an MCP9700 temperature sensor into the equivalent temperature. More...
 
bool GetSlaveDeviceList (std::vector< int > &slaveAddressList)
 Returns the list of I2C addresses of the MCP23017 slaves. More...
 
unsigned long long GetTime_MicroSeconds ()
 Returns the number of micro seconds. More...
 
void Delay_MicroSeconds (unsigned long delay_micros)
 delays the execution of the calling thread for the given number of micro seconds. More...
 
bool Get_1w_Devices (std::vector< std::string > &deviceList)
 Returns a list of 1wire devices found on the bus. More...
 
bool Is_DS18x20_Devices (const char *pSensorID)
 Check whether a 1wire device name refers to a DS18S20 or DS18B20 temperature sensor. More...
 
bool Get_DS18x20_Temperature (const char *pSensorID, double &temperature, bool &bCRC, long &t_duration_ms)
 Retrieve temperature, CRC value and the time that was required to read the temperature. More...
 
void Test_AD_Board ()
 

Variables

SPI_Config g_SPIConfig
 
I2C_Config g_I2CConfig
 
W1_Config g_W1Config
 

Function Documentation

void HuboLib::Test_AD_Board ( )

Variable Documentation

I2C_Config HuboLib::g_I2CConfig
SPI_Config HuboLib::g_SPIConfig
W1_Config HuboLib::g_W1Config