LoRa node acquiring random float value and sending to LoRa Server - Working ok

Fork of SX1276GenericLib by Helmut Tschemernjak

Committer:
Helmut Tschemernjak
Date:
Sun Jul 23 16:30:11 2017 +0200
Revision:
72:2a6c776b5e92
Child:
75:7330dd86cdea
Added Timer Test App.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Helmut Tschemernjak 72:2a6c776b5e92 1
Helmut Tschemernjak 72:2a6c776b5e92 2 #include "arduino-mbed.h"
Helmut Tschemernjak 72:2a6c776b5e92 3
Helmut Tschemernjak 72:2a6c776b5e92 4 void TestTimeoutFunc(void);
Helmut Tschemernjak 72:2a6c776b5e92 5 void TestTimeoutFunc55(void);
Helmut Tschemernjak 72:2a6c776b5e92 6 void TestTimeoutFunc10(void);
Helmut Tschemernjak 72:2a6c776b5e92 7 void TestTimeoutFunc1m(void);
Helmut Tschemernjak 72:2a6c776b5e92 8 void SwitchInput(void);
Helmut Tschemernjak 72:2a6c776b5e92 9
Helmut Tschemernjak 72:2a6c776b5e92 10 #define SW0 3 // switch needs pullup
Helmut Tschemernjak 72:2a6c776b5e92 11
Helmut Tschemernjak 72:2a6c776b5e92 12 DigitalOut led(LED_BUILTIN);
Helmut Tschemernjak 72:2a6c776b5e92 13 InterruptIn intr(SW0);
Helmut Tschemernjak 72:2a6c776b5e92 14 Timeout tp;
Helmut Tschemernjak 72:2a6c776b5e92 15 Timeout tp2;
Helmut Tschemernjak 72:2a6c776b5e92 16 Timeout tp3;
Helmut Tschemernjak 72:2a6c776b5e92 17 Timeout tp4;
Helmut Tschemernjak 72:2a6c776b5e92 18
Helmut Tschemernjak 72:2a6c776b5e92 19 void setup() {
Helmut Tschemernjak 72:2a6c776b5e92 20 Serial.begin(230400);
Helmut Tschemernjak 72:2a6c776b5e92 21
Helmut Tschemernjak 72:2a6c776b5e92 22 Serial.println("TimerTest");
Helmut Tschemernjak 72:2a6c776b5e92 23
Helmut Tschemernjak 72:2a6c776b5e92 24 tp.attach(callback(&TestTimeoutFunc), 1000);
Helmut Tschemernjak 72:2a6c776b5e92 25 tp2.attach(callback(&TestTimeoutFunc55), 5500);
Helmut Tschemernjak 72:2a6c776b5e92 26 tp3.attach(callback(&TestTimeoutFunc10), 10000);
Helmut Tschemernjak 72:2a6c776b5e92 27 // tp4.attach(callback(&TestTimeoutFunc1m), 1);
Helmut Tschemernjak 72:2a6c776b5e92 28
Helmut Tschemernjak 72:2a6c776b5e92 29 intr.mode(PullUp);
Helmut Tschemernjak 72:2a6c776b5e92 30 intr.fall(callback(&SwitchInput));
Helmut Tschemernjak 72:2a6c776b5e92 31 }
Helmut Tschemernjak 72:2a6c776b5e92 32
Helmut Tschemernjak 72:2a6c776b5e92 33 void loop() {
Helmut Tschemernjak 72:2a6c776b5e92 34 led = !led;
Helmut Tschemernjak 72:2a6c776b5e92 35
Helmut Tschemernjak 72:2a6c776b5e92 36 sleep(); // or deepsleep()
Helmut Tschemernjak 72:2a6c776b5e92 37 }
Helmut Tschemernjak 72:2a6c776b5e92 38
Helmut Tschemernjak 72:2a6c776b5e92 39
Helmut Tschemernjak 72:2a6c776b5e92 40
Helmut Tschemernjak 72:2a6c776b5e92 41 void TestTimeoutFunc(void) {
Helmut Tschemernjak 72:2a6c776b5e92 42 tp.attach(callback(&TestTimeoutFunc), 1000);
Helmut Tschemernjak 72:2a6c776b5e92 43 led = !led;
Helmut Tschemernjak 72:2a6c776b5e92 44 Serial.print(ms_getTicker(), DEC);
Helmut Tschemernjak 72:2a6c776b5e92 45 Serial.println(" TestTimeoutFunc 1 sec");
Helmut Tschemernjak 72:2a6c776b5e92 46 }
Helmut Tschemernjak 72:2a6c776b5e92 47
Helmut Tschemernjak 72:2a6c776b5e92 48 void TestTimeoutFunc55(void) {
Helmut Tschemernjak 72:2a6c776b5e92 49 tp2.attach(callback(&TestTimeoutFunc55), 5500);
Helmut Tschemernjak 72:2a6c776b5e92 50 Serial.print(ms_getTicker(), DEC);
Helmut Tschemernjak 72:2a6c776b5e92 51 Serial.println(" TestTimeoutFunc 5.5 sec");
Helmut Tschemernjak 72:2a6c776b5e92 52 }
Helmut Tschemernjak 72:2a6c776b5e92 53
Helmut Tschemernjak 72:2a6c776b5e92 54
Helmut Tschemernjak 72:2a6c776b5e92 55 void TestTimeoutFunc10(void) {
Helmut Tschemernjak 72:2a6c776b5e92 56 tp3.attach(callback(&TestTimeoutFunc10), 10000);
Helmut Tschemernjak 72:2a6c776b5e92 57 Serial.print(ms_getTicker(), DEC);
Helmut Tschemernjak 72:2a6c776b5e92 58 Serial.println(" TestTimeoutFunc 10 sec");
Helmut Tschemernjak 72:2a6c776b5e92 59 }
Helmut Tschemernjak 72:2a6c776b5e92 60
Helmut Tschemernjak 72:2a6c776b5e92 61
Helmut Tschemernjak 72:2a6c776b5e92 62 void TestTimeoutFunc1m(void) {
Helmut Tschemernjak 72:2a6c776b5e92 63 tp4.attach(callback(&TestTimeoutFunc1m), 1);
Helmut Tschemernjak 72:2a6c776b5e92 64 }
Helmut Tschemernjak 72:2a6c776b5e92 65
Helmut Tschemernjak 72:2a6c776b5e92 66 void SwitchInput(void) {
Helmut Tschemernjak 72:2a6c776b5e92 67 Serial.print(ms_getTicker(), DEC);
Helmut Tschemernjak 72:2a6c776b5e92 68 Serial.println(" SwitchInput");
Helmut Tschemernjak 72:2a6c776b5e92 69 led = !led;
Helmut Tschemernjak 72:2a6c776b5e92 70 }