parent
347f9d3a85
commit
cceb9de300
3 changed files with 9 additions and 9 deletions
|
@ -30,13 +30,13 @@ static xQueueHandle mainqueue;
|
||||||
static xTimerHandle timerHandle;
|
static xTimerHandle timerHandle;
|
||||||
|
|
||||||
// Own BMP180 User Inform Implementation
|
// Own BMP180 User Inform Implementation
|
||||||
bool bmp180_i2c_informUser(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperatue, bmp180_press_t pressure)
|
bool bmp180_i2c_informUser(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperature, bmp180_press_t pressure)
|
||||||
{
|
{
|
||||||
my_event_t ev;
|
my_event_t ev;
|
||||||
|
|
||||||
ev.event_type = MY_EVT_BMP180;
|
ev.event_type = MY_EVT_BMP180;
|
||||||
ev.bmp180_data.cmd = cmd;
|
ev.bmp180_data.cmd = cmd;
|
||||||
ev.bmp180_data.temperatue = temperatue;
|
ev.bmp180_data.temperature = temperature;
|
||||||
ev.bmp180_data.pressure = pressure;
|
ev.bmp180_data.pressure = pressure;
|
||||||
|
|
||||||
return (xQueueSend(*resultQueue, &ev, 0) == pdTRUE);
|
return (xQueueSend(*resultQueue, &ev, 0) == pdTRUE);
|
||||||
|
@ -74,7 +74,7 @@ void bmp180_task(void *pvParameters)
|
||||||
break;
|
break;
|
||||||
case MY_EVT_BMP180:
|
case MY_EVT_BMP180:
|
||||||
printf("%s: Received BMP180 Event temp:=%d.%d°C press=%d.%02dhPa\n", __FUNCTION__, \
|
printf("%s: Received BMP180 Event temp:=%d.%d°C press=%d.%02dhPa\n", __FUNCTION__, \
|
||||||
(int32_t)ev.bmp180_data.temperatue, abs((int32_t)(ev.bmp180_data.temperatue*10)%10), \
|
(int32_t)ev.bmp180_data.temperature, abs((int32_t)(ev.bmp180_data.temperature*10)%10), \
|
||||||
ev.bmp180_data.pressure/100, ev.bmp180_data.pressure%100 );
|
ev.bmp180_data.pressure/100, ev.bmp180_data.pressure%100 );
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -75,10 +75,10 @@ static int16_t MD;
|
||||||
// Forward declarations
|
// Forward declarations
|
||||||
//
|
//
|
||||||
static void bmp180_meassure(const bmp180_command_t* command);
|
static void bmp180_meassure(const bmp180_command_t* command);
|
||||||
static bool bmp180_informUser_Impl(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperatue, bmp180_press_t pressure);
|
static bool bmp180_informUser_Impl(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperature, bmp180_press_t pressure);
|
||||||
|
|
||||||
// Set default implementation .. User gets result as bmp180_result_t event
|
// Set default implementation .. User gets result as bmp180_result_t event
|
||||||
bool (*bmp180_informUser)(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperatue, bmp180_press_t pressure) = bmp180_informUser_Impl;
|
bool (*bmp180_informUser)(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperature, bmp180_press_t pressure) = bmp180_informUser_Impl;
|
||||||
|
|
||||||
// I2C Driver Task
|
// I2C Driver Task
|
||||||
static void bmp180_driver_task(void *pvParameters)
|
static void bmp180_driver_task(void *pvParameters)
|
||||||
|
@ -279,12 +279,12 @@ static void bmp180_meassure(const bmp180_command_t* command)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Default user inform implementation
|
// Default user inform implementation
|
||||||
static bool bmp180_informUser_Impl(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperatue, bmp180_press_t pressure)
|
static bool bmp180_informUser_Impl(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperature, bmp180_press_t pressure)
|
||||||
{
|
{
|
||||||
bmp180_result_t result;
|
bmp180_result_t result;
|
||||||
|
|
||||||
result.cmd = cmd;
|
result.cmd = cmd;
|
||||||
result.temperatue = temperatue;
|
result.temperature = temperature;
|
||||||
result.pressure = pressure;
|
result.pressure = pressure;
|
||||||
|
|
||||||
return (xQueueSend(*resultQueue, &result, 0) == pdTRUE);
|
return (xQueueSend(*resultQueue, &result, 0) == pdTRUE);
|
||||||
|
|
|
@ -33,7 +33,7 @@ typedef uint32_t bmp180_press_t;
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
uint8_t cmd;
|
uint8_t cmd;
|
||||||
bmp180_temp_t temperatue;
|
bmp180_temp_t temperature;
|
||||||
bmp180_press_t pressure;
|
bmp180_press_t pressure;
|
||||||
} bmp180_result_t;
|
} bmp180_result_t;
|
||||||
|
|
||||||
|
@ -50,6 +50,6 @@ void bmp180_trigger_temperature_measurement(const xQueueHandle* resultQueue);
|
||||||
void bmp180_trigger_pressure_measurement(const xQueueHandle* resultQueue);
|
void bmp180_trigger_pressure_measurement(const xQueueHandle* resultQueue);
|
||||||
|
|
||||||
// Give the user the chance to create it's own handler
|
// Give the user the chance to create it's own handler
|
||||||
extern bool (*bmp180_informUser)(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperatue, bmp180_press_t pressure);
|
extern bool (*bmp180_informUser)(const xQueueHandle* resultQueue, uint8_t cmd, bmp180_temp_t temperature, bmp180_press_t pressure);
|
||||||
|
|
||||||
#endif /* DRIVER_BMP180_H_ */
|
#endif /* DRIVER_BMP180_H_ */
|
||||||
|
|
Loading…
Reference in a new issue