Maxim Integrated's IoT development kit.
Dependencies: MAX30101 MAX30003 MAX113XX_Pixi MAX30205 max32630fthr USBDevice
max113xx_pixi_app.cpp@13:fba77a5d0fa0, 2018-06-28 (annotated)
- Committer:
- Mahir Ozturk
- Date:
- Thu Jun 28 15:47:24 2018 +0300
- Revision:
- 13:fba77a5d0fa0
- Child:
- 15:0d47d5879a21
* Move each sensor applications to corresponding *_app.cpp files
* Increase notification period to 12 seconds
* Change platform name to "Maxim HMS"
* Remove unused mem_debug.cpp and mem_debug.h files
* Code cleaning
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Mahir Ozturk |
13:fba77a5d0fa0 | 1 | /* |
Mahir Ozturk |
13:fba77a5d0fa0 | 2 | * max113xx_pixi_app.cpp |
Mahir Ozturk |
13:fba77a5d0fa0 | 3 | * |
Mahir Ozturk |
13:fba77a5d0fa0 | 4 | * Created on: Jun 20, 2018 |
Mahir Ozturk |
13:fba77a5d0fa0 | 5 | * Author: Mahir.Ozturk |
Mahir Ozturk |
13:fba77a5d0fa0 | 6 | */ |
Mahir Ozturk |
13:fba77a5d0fa0 | 7 | #include <mbed.h> |
Mahir Ozturk |
13:fba77a5d0fa0 | 8 | #include "max113xx_pixi_app.h" |
Mahir Ozturk |
13:fba77a5d0fa0 | 9 | #include "MAX113XX_Pixi.h" |
Mahir Ozturk |
13:fba77a5d0fa0 | 10 | #include "MAX11301Hex.h" |
Mahir Ozturk |
13:fba77a5d0fa0 | 11 | #include "ble_comm.h" |
Mahir Ozturk |
13:fba77a5d0fa0 | 12 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 13 | #define MAX113XX_DATA_READ_PERIOD_MSEC 2000 |
Mahir Ozturk |
13:fba77a5d0fa0 | 14 | #define MAX113XX_I2C_ADDRESS 0x38 |
Mahir Ozturk |
13:fba77a5d0fa0 | 15 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 16 | void max11301_reader_task(struct max11301_reader_task_args *args) |
Mahir Ozturk |
13:fba77a5d0fa0 | 17 | { |
Mahir Ozturk |
13:fba77a5d0fa0 | 18 | uint16_t adcData; |
Mahir Ozturk |
13:fba77a5d0fa0 | 19 | float adcVoltage; |
Mahir Ozturk |
13:fba77a5d0fa0 | 20 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 21 | MAX113XX_I2C pixi(args->i2cBus, MAX113XX_I2C::MAX11301, MAX113XX_I2C_ADDRESS, P5_5); |
Mahir Ozturk |
13:fba77a5d0fa0 | 22 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 23 | pixi.dacWrite(MAX113XX_Pixi::PORT0, 0x000); // Pixi PORT0 is -5V |
Mahir Ozturk |
13:fba77a5d0fa0 | 24 | pixi.dacWrite(MAX113XX_Pixi::PORT1, 0xFFF); // Pixi PORT1 is +5V |
Mahir Ozturk |
13:fba77a5d0fa0 | 25 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 26 | printf("Starting MAX11301 PIXI ADC Demo Application...\r\n"); |
Mahir Ozturk |
13:fba77a5d0fa0 | 27 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 28 | while (1) { |
Mahir Ozturk |
13:fba77a5d0fa0 | 29 | pixi.singleEndedADCRead(MAX113XX_Pixi::PORT9, adcData); // Read value from PORT9 |
Mahir Ozturk |
13:fba77a5d0fa0 | 30 | adcVoltage = -5 + 2.442e-3 * adcData; // Convert ADC val. to a voltage |
Mahir Ozturk |
13:fba77a5d0fa0 | 31 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 32 | printf("ADC Read is : %i,\tVoltage is %1.3f V \r\n", adcData, adcVoltage); |
Mahir Ozturk |
13:fba77a5d0fa0 | 33 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 34 | bleGattAttrWrite(args->gatt, (uint8_t *)&adcVoltage, sizeof(adcVoltage)); |
Mahir Ozturk |
13:fba77a5d0fa0 | 35 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 36 | Thread::wait(args->notify_period_sec * 1000); |
Mahir Ozturk |
13:fba77a5d0fa0 | 37 | } |
Mahir Ozturk |
13:fba77a5d0fa0 | 38 | } |
Mahir Ozturk |
13:fba77a5d0fa0 | 39 |