SAADC differential input setup. With EPD display.
Dependencies: GDEP015OC1 acn_nrf52_saadc adc52832_common
main.cpp@3:884740fe7de4, 2017-09-29 (annotated)
- Committer:
- jurica238814
- Date:
- Fri Sep 29 09:02:34 2017 +0000
- Revision:
- 3:884740fe7de4
- Parent:
- 2:49dab8d9637a
- Child:
- 4:7dd2d8cc90ed
Small fix.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jurica238814 | 0:04520242cfef | 1 | /* |
jurica238814 | 0:04520242cfef | 2 | * Example to demonstrate usage of the nrf52's SAADC in differential working\ |
jurica238814 | 0:04520242cfef | 3 | * mode. |
jurica238814 | 0:04520242cfef | 4 | * |
jurica238814 | 0:04520242cfef | 5 | * Made by Jurica Resetar @ aconno |
jurica238814 | 0:04520242cfef | 6 | * jurica_resetar@yahoo.com |
jurica238814 | 0:04520242cfef | 7 | * More info @ aconno.de |
jurica238814 | 0:04520242cfef | 8 | * |
jurica238814 | 0:04520242cfef | 9 | * All rights reserved |
jurica238814 | 0:04520242cfef | 10 | * |
jurica238814 | 0:04520242cfef | 11 | */ |
jurica238814 | 0:04520242cfef | 12 | |
jurica238814 | 0:04520242cfef | 13 | |
jurica238814 | 0:04520242cfef | 14 | |
jurica238814 | 0:04520242cfef | 15 | #include "mbed.h" |
jurica238814 | 0:04520242cfef | 16 | #include "acd_nrf52_saadc.h" |
jurica238814 | 2:49dab8d9637a | 17 | #include "GDEP015OC1.h" |
jurica238814 | 1:41e296b93414 | 18 | |
jurica238814 | 3:884740fe7de4 | 19 | #define ANALOG_PIN_P (4) |
jurica238814 | 3:884740fe7de4 | 20 | #define ANALOG_PIN_N (5) |
jurica238814 | 0:04520242cfef | 21 | #define PRINT (1) |
jurica238814 | 0:04520242cfef | 22 | |
jurica238814 | 0:04520242cfef | 23 | #if PRINT |
jurica238814 | 0:04520242cfef | 24 | #include "nrf52_uart.h" |
jurica238814 | 0:04520242cfef | 25 | NRF52_UART uart(p25, p26, Baud9600); |
jurica238814 | 0:04520242cfef | 26 | char buffer[255]; |
jurica238814 | 0:04520242cfef | 27 | #define SEND(...) {uint8_t len = sprintf(buffer, __VA_ARGS__); uart.send(buffer, len);} |
jurica238814 | 0:04520242cfef | 28 | #else |
jurica238814 | 0:04520242cfef | 29 | #define SEND(...) |
jurica238814 | 0:04520242cfef | 30 | #endif |
jurica238814 | 0:04520242cfef | 31 | |
jurica238814 | 2:49dab8d9637a | 32 | SPI spi(p3, NC, p4); |
jurica238814 | 2:49dab8d9637a | 33 | GDEP015OC1 epd = GDEP015OC1(spi, p5, p6, p7, p8); |
jurica238814 | 0:04520242cfef | 34 | |
jurica238814 | 0:04520242cfef | 35 | int main(void){ |
jurica238814 | 3:884740fe7de4 | 36 | NRF52_SAADC pot(ANALOG_PIN_P+1, ANALOG_PIN_N+1); |
jurica238814 | 2:49dab8d9637a | 37 | |
jurica238814 | 0:04520242cfef | 38 | int16_t rawData; |
jurica238814 | 1:41e296b93414 | 39 | float voltage; |
jurica238814 | 2:49dab8d9637a | 40 | char buffer[256]; |
jurica238814 | 1:41e296b93414 | 41 | |
jurica238814 | 2:49dab8d9637a | 42 | sprintf(buffer, "Differential ADC inputs:"); |
jurica238814 | 2:49dab8d9637a | 43 | epd.writeString(buffer, 30, 30, 0); |
jurica238814 | 2:49dab8d9637a | 44 | sprintf(buffer, "AIN%d and AIN%d.", ANALOG_PIN_P, ANALOG_PIN_N); |
jurica238814 | 2:49dab8d9637a | 45 | epd.writeString(buffer, 30, 50, 0); |
jurica238814 | 2:49dab8d9637a | 46 | epd.writeFull(); |
jurica238814 | 2:49dab8d9637a | 47 | |
jurica238814 | 0:04520242cfef | 48 | |
jurica238814 | 0:04520242cfef | 49 | while(1){ |
jurica238814 | 1:41e296b93414 | 50 | rawData = pot.read(); |
jurica238814 | 1:41e296b93414 | 51 | voltage = rawData*(3.6/512); |
jurica238814 | 2:49dab8d9637a | 52 | sprintf(buffer, "ADC voltage is: %f", voltage); |
jurica238814 | 2:49dab8d9637a | 53 | epd.writeString(buffer, 30, 70, 0); |
jurica238814 | 2:49dab8d9637a | 54 | epd.write(); |
jurica238814 | 2:49dab8d9637a | 55 | sprintf(buffer, "ADC voltage is: %f", voltage); |
jurica238814 | 2:49dab8d9637a | 56 | epd.writeString(buffer, 30, 70, 1); |
jurica238814 | 2:49dab8d9637a | 57 | epd.write(); |
jurica238814 | 0:04520242cfef | 58 | } |
jurica238814 | 0:04520242cfef | 59 | } |