/******************************************************************************* * @fn sensorHdc1000Start * * @brief Start measurement * * @return none */ void sensorHdc1000Start(void) { if (success) { if (!SENSOR_SELECT()) return; success = bspI2cWriteSingle(HDC1000_REG_TEMP); SENSOR_DESELECT(); } }
/********************************************************************* * @fn sensor_writeRegister * * @brief Write registers from the data stored in 'registerData' * * @return none */ static void sensor_writeRegister(void) { uint8_t deviceAddress, interface, len; interface = registerDeviceID[0]; deviceAddress = registerDeviceID[1]; len = registerAddress[0]; switch (interface) { // I2C interfaces case REGISTER_INTERFACE_I2C0: case REGISTER_INTERFACE_I2C1: { uint8_t regaddr; regaddr = registerAddress[1]; bspI2cSelect(interface, deviceAddress); if (len>0) { sensorWriteReg(regaddr,registerData,len); } else { bspI2cWriteSingle(regaddr); } bspI2cDeselect(); } break; case REGISTER_INTERFACE_MCU: { uint32_t addr; addr= *(uint32*)(®isterAddress[1]); memcpy((uint8_t*)addr,registerData,len); } default: break; } }
/************************************************************************************************** * @fn halHumiWriteCmd * * @brief Write a command to the humidity sensor * * @param cmd - command to write * * @return TRUE if the command has been transmitted successfully **************************************************************************************************/ static bool sensorSht21WriteCmd(uint8_t cmd) { /* Send command */ return bspI2cWriteSingle(cmd); }