Projeto teste do Programa de integracao com biblioteca SGAM_MDW !! Aqui visa um usuario que usa o projeto implementado para a placa NUCLEO F429ZI

Dependencies:   sgam_mdw sgam_mdw_NUCLEOF429ZI_impl Cayenne-LPP

main.cpp

Committer:
AndersonIctus
Date:
2019-06-26
Revision:
14:8ec6bdff6f67
Parent:
12:2109a8bc8848
Child:
16:2b3715dd0f13

File content as of revision 14:8ec6bdff6f67:

// #define DEBUG_SGAM

#include "mbed.h"
#include "sgam_mdw.h"

#include "ControlImpl.h"
#include "Gyroscope.h"
#include "LoRAWanComm.h"

ControlImpl ctrl;

#define D_LOG(args...)   printf(args) 

// LORA WAN CONFIGS 
#define TX_INTERVAL             10000
#define MBED_CONF_LORA_APP_PORT 15 //15

static uint8_t LORAWAN_DEV_EUI[] = { 0x00, 0x1C, 0x73, 0x4A, 0x55, 0x89, 0xAE, 0xC6 };
static uint8_t LORAWAN_APP_EUI[] = { 0x70, 0xB3, 0xD5, 0x7E, 0xD0, 0x01, 0xD0, 0x2F };
static uint8_t LORAWAN_APP_KEY[] = { 0x75, 0xC6, 0xF2, 0xFB, 0xEE, 0xA9, 0x82, 0x6C, 0xA0, 0xBD, 0xB9, 0x0F, 0xC9, 0xEC, 0xF7, 0x10 };

static uint32_t DEVADDR_1 = 0x2601177B;
static uint8_t NWKSKEY_1[] = { 0x2A, 0xE9, 0x3F, 0x5E, 0x4C, 0x25, 0xDC, 0x34, 0x16, 0x82, 0x1B, 0xD1, 0x1A, 0x7F, 0xD0, 0xF6 };
static uint8_t APPSKEY_1[] = { 0x78, 0x59, 0x61, 0xBB, 0x6B, 0xB7, 0xDE, 0x57, 0x80, 0x74, 0xAF, 0xED, 0x10, 0xD7, 0x47, 0x18 };

int main() {
    D_LOG("=============== INICIO ===============\r\n");

    Control* control = ctrl.getControler();
    control->initialize();

    Communication<LoraData>* comm = (Communication<LoraData>*)control->getCommunication("LoRAWAN");

    // 1 - configura os callbacks do loran WAN e inicializa !!
    LoraData* data = new LoraData();
    comm->initialize(data);


    // 2 - Tentar conectar !!
    if(comm->connect() != TRUE) {
        D_LOG("Não pode connectar ao lora wan !");
        return -1;
    }



    // int count = 0;

    // Sensor<float>* temp = (Sensor<float>*) control->getSensor("Temperature");
    // // Sensor<GyroscopeData>* gyro = (Sensor<GyroscopeData>*) control->getSensor("Gyroscope");
    
    // while( count++ < 10) {
    //     float* f = temp->getValue();
    //     D_LOG("Temperatura => %f \r\n", *f);
        
    //     wait(1.5);
    // }

    control->finalize();
    D_LOG("=============== FINAL ===============\r\n");
    return 1;
}