541 smart traffic controller

Dependencies:   MQTT

Committer:
micallef25
Date:
Thu Dec 12 17:25:27 2019 +0000
Revision:
7:fd8e0604faaa
Parent:
5:e0d8e5e922f1
stable, passed 1000 simulation regression

Who changed what in which revision?

UserRevisionLine numberNew contents of line
micallef25 2:f10d6fecb345 1 #include "mqtt.h"
micallef25 5:e0d8e5e922f1 2 #include "simulator.h"
micallef25 2:f10d6fecb345 3 #include <assert.h>
carptj 0:f945f1ae269b 4 #include "mbed.h"
carptj 0:f945f1ae269b 5
micallef25 2:f10d6fecb345 6 // mqtt singleton instance
micallef25 2:f10d6fecb345 7 mqtt* mqtt::mqtt_singleton = NULL;
micallef25 5:e0d8e5e922f1 8 #define REGRESSIONS 100
carptj 0:f945f1ae269b 9
micallef25 2:f10d6fecb345 10 int main()
micallef25 2:f10d6fecb345 11 {
micallef25 5:e0d8e5e922f1 12 // prepare screen for input
micallef25 5:e0d8e5e922f1 13 printf("\033[2J");
micallef25 5:e0d8e5e922f1 14 printf("\r\n");
micallef25 5:e0d8e5e922f1 15
micallef25 2:f10d6fecb345 16 // setup callbacks and mqtt and wifi connection
micallef25 2:f10d6fecb345 17 mqtt::instance()->setup_network();
micallef25 7:fd8e0604faaa 18
micallef25 7:fd8e0604faaa 19 // wait for partner
micallef25 7:fd8e0604faaa 20 ThisThread::sleep_for(2000);
micallef25 7:fd8e0604faaa 21
micallef25 7:fd8e0604faaa 22
micallef25 5:e0d8e5e922f1 23 for(int i = 0; i < REGRESSIONS; i++)
micallef25 5:e0d8e5e922f1 24 {
micallef25 5:e0d8e5e922f1 25 printf("starting simulation... %d\r\n",i);
micallef25 5:e0d8e5e922f1 26 // start our simulation. will return once siimulation completes
micallef25 2:f10d6fecb345 27 start_simulation( mqtt::instance() );
micallef25 5:e0d8e5e922f1 28 ThisThread::sleep_for(1000);
micallef25 5:e0d8e5e922f1 29 }
micallef25 2:f10d6fecb345 30 // shutdown
micallef25 2:f10d6fecb345 31 mqtt::instance()->shutdown_network();
micallef25 2:f10d6fecb345 32 }