Maxim Integrated's IoT development kit.
Dependencies: MAX30101 MAX30003 MAX113XX_Pixi MAX30205 max32630fthr USBDevice
max113xx_pixi_app.cpp@16:503f8308e2db, 2018-07-19 (annotated)
- Committer:
- Mahir Ozturk
- Date:
- Thu Jul 19 18:27:45 2018 +0300
- Revision:
- 16:503f8308e2db
- Parent:
- 15:0d47d5879a21
Update mbed-os to fix the bug: Symbol __user_perthread_libspace multiply defined
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 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 12 | #define MAX113XX_DATA_READ_PERIOD_MSEC 2000 |
Mahir Ozturk |
13:fba77a5d0fa0 | 13 | #define MAX113XX_I2C_ADDRESS 0x38 |
Mahir Ozturk |
13:fba77a5d0fa0 | 14 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 15 | void max11301_reader_task(struct max11301_reader_task_args *args) |
Mahir Ozturk |
13:fba77a5d0fa0 | 16 | { |
Mahir Ozturk |
13:fba77a5d0fa0 | 17 | uint16_t adcData; |
Mahir Ozturk |
13:fba77a5d0fa0 | 18 | float adcVoltage; |
Mahir Ozturk |
13:fba77a5d0fa0 | 19 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 20 | MAX113XX_I2C pixi(args->i2cBus, MAX113XX_I2C::MAX11301, MAX113XX_I2C_ADDRESS, P5_5); |
Mahir Ozturk |
13:fba77a5d0fa0 | 21 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 22 | pixi.dacWrite(MAX113XX_Pixi::PORT0, 0x000); // Pixi PORT0 is -5V |
Mahir Ozturk |
13:fba77a5d0fa0 | 23 | pixi.dacWrite(MAX113XX_Pixi::PORT1, 0xFFF); // Pixi PORT1 is +5V |
Mahir Ozturk |
13:fba77a5d0fa0 | 24 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 25 | printf("Starting MAX11301 PIXI ADC Demo Application...\r\n"); |
Mahir Ozturk |
13:fba77a5d0fa0 | 26 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 27 | while (1) { |
Mahir Ozturk |
13:fba77a5d0fa0 | 28 | pixi.singleEndedADCRead(MAX113XX_Pixi::PORT9, adcData); // Read value from PORT9 |
Mahir Ozturk |
13:fba77a5d0fa0 | 29 | adcVoltage = -5 + 2.442e-3 * adcData; // Convert ADC val. to a voltage |
Mahir Ozturk |
13:fba77a5d0fa0 | 30 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 31 | printf("ADC Read is : %i,\tVoltage is %1.3f V \r\n", adcData, adcVoltage); |
Mahir Ozturk |
13:fba77a5d0fa0 | 32 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 33 | bleGattAttrWrite(args->gatt, (uint8_t *)&adcVoltage, sizeof(adcVoltage)); |
Mahir Ozturk |
13:fba77a5d0fa0 | 34 | |
Mahir Ozturk |
13:fba77a5d0fa0 | 35 | Thread::wait(args->notify_period_sec * 1000); |
Mahir Ozturk |
13:fba77a5d0fa0 | 36 | } |
Mahir Ozturk |
13:fba77a5d0fa0 | 37 | } |
Mahir Ozturk |
13:fba77a5d0fa0 | 38 |