Maxim Integrated's IoT development kit
Dependencies: MAX30101 MAX30003 MAX113XX_Pixi MAX30205 max32630fthr USBDevice
Diff: max113xx_pixi_app.cpp
- Revision:
- 13:fba77a5d0fa0
- Child:
- 15:0d47d5879a21
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/max113xx_pixi_app.cpp Thu Jun 28 15:47:24 2018 +0300
@@ -0,0 +1,39 @@
+/*
+ * max113xx_pixi_app.cpp
+ *
+ * Created on: Jun 20, 2018
+ * Author: Mahir.Ozturk
+ */
+#include <mbed.h>
+#include "max113xx_pixi_app.h"
+#include "MAX113XX_Pixi.h"
+#include "MAX11301Hex.h"
+#include "ble_comm.h"
+
+#define MAX113XX_DATA_READ_PERIOD_MSEC 2000
+#define MAX113XX_I2C_ADDRESS 0x38
+
+void max11301_reader_task(struct max11301_reader_task_args *args)
+{
+ uint16_t adcData;
+ float adcVoltage;
+
+ MAX113XX_I2C pixi(args->i2cBus, MAX113XX_I2C::MAX11301, MAX113XX_I2C_ADDRESS, P5_5);
+
+ pixi.dacWrite(MAX113XX_Pixi::PORT0, 0x000); // Pixi PORT0 is -5V
+ pixi.dacWrite(MAX113XX_Pixi::PORT1, 0xFFF); // Pixi PORT1 is +5V
+
+ printf("Starting MAX11301 PIXI ADC Demo Application...\r\n");
+
+ while (1) {
+ pixi.singleEndedADCRead(MAX113XX_Pixi::PORT9, adcData); // Read value from PORT9
+ adcVoltage = -5 + 2.442e-3 * adcData; // Convert ADC val. to a voltage
+
+ printf("ADC Read is : %i,\tVoltage is %1.3f V \r\n", adcData, adcVoltage);
+
+ bleGattAttrWrite(args->gatt, (uint8_t *)&adcVoltage, sizeof(adcVoltage));
+
+ Thread::wait(args->notify_period_sec * 1000);
+ }
+}
+