Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed libTCS34725 lib_LoRaWAN
Diff: main.cpp
- Revision:
- 7:d74e195dfa93
- Parent:
- 6:6ae3c5bca801
diff -r 6ae3c5bca801 -r d74e195dfa93 main.cpp
--- a/main.cpp Fri Jan 25 16:40:59 2019 +0000
+++ b/main.cpp Tue Jan 28 09:55:58 2020 +0000
@@ -1,6 +1,6 @@
#include "mbed.h"
-#include "Sht31.h"
#include "TCS34725.h"
+#include "LoRaWAN.h"
InterruptIn button1(PG_0);
InterruptIn button2(PG_1);
@@ -8,15 +8,17 @@
DigitalOut ledRED(PD_14);
DigitalOut ledGreen(PB_0);
DigitalOut ledBlue(PD_15);
-//Sht31 Sht31(PB_9,PB_8);
-TCS34725 colorSens(PB_9,PB_8);
-float relHumidity, temperature;
+TCS34725 colorSens(PB_9,PB_8);
+LoRaWAN OCTA_LoRa(PC_12, PD_2);
+
double delay = 0.5; // 500 ms
+uint16_t r,g,b,c;
void BTN1pressed()
{
delay = 0.1; // 100 ms
+
}
void BTN1released()
@@ -27,18 +29,28 @@
void BTN2pressed()
{
//Andere code nodig
- delay = 0.1; // 100 ms
+
}
void BTN2released()
{
- //andere code nodig
- delay = 0.5; // 500 ms
+ char data[50];
+ char msg[25]= "AT+SENDB=";
+ sprintf(msg+9, "%04X", r);
+ sprintf(msg+13, "%04X", g);
+ sprintf(msg+17, "%04X", b);
+ sprintf(msg+21, "%04X", c);
+ bool ok = OCTA_LoRa.sendMessage(msg);
+ OCTA_LoRa.recieveData(data, 19); // Read data
+ wait(0.2);
+ pc.printf("Received:%s \r\n", data);
+
}
int main()
{
- uint16_t r,g,b,c;
+
+ //char data[202];
// Assign functions to button1
button1.fall(&BTN1pressed);
@@ -53,20 +65,24 @@
ledGreen = 1;
ledBlue = 1;
-
//serial communication
pc.baud(115200);
- pc.printf("Welcome at University of Antwerp #STEM2019 \r\n");
+ pc.printf("Welcome at University of Antwerp #STEM2020 \r\n");
+ //initialization of the color sensor
if(!colorSens.init(0xD5, 0x03)){
- pc.printf("ERROR\n"); //check to see if i2c is responding
+ pc.printf("ERROR: SENSOR\r\n"); //check to see if i2c is responding
}
+ //initialization of the LoRaWAN module
+ if(!OCTA_LoRa.init()){
+ pc.printf("ERROR: LoRaWAN module\r\n");
+ }
+
while (1) {
- //pc.printf("temp: %f \r\n", Sht31.readTemperature());
colorSens.getColor(r,g,b,c); //pass variables by reference...
- pc.printf("DATA: Red: %d Green: %d Blue: %d Clear: %d \r\n", r, g, b, c);
- ledRED = !ledRED;
+ pc.printf("DATA: Red: %d Green: %d Blue: %d Clear: %d \r\n", r, g, b, c); // Send sensor data on USB cable to PC
+ ledRED = !ledRED; //Toggle LED
wait(delay);
}
}