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.
Revision 4:06944df56a2d, committed 2017-02-06
- Comitter:
- wallsow
- Date:
- Mon Feb 06 10:18:50 2017 +0000
- Parent:
- 3:d2c57ab99c8e
- Commit message:
- instrctable fin
Changed in this revision
| gps.h | Show annotated file Show diff for this revision Revisions of this file |
| main.cpp | Show annotated file Show diff for this revision Revisions of this file |
--- a/gps.h Mon Feb 06 08:25:12 2017 +0000
+++ b/gps.h Mon Feb 06 10:18:50 2017 +0000
@@ -100,7 +100,6 @@
case 3 : // N: Nord, S : Sud
if (mode == 2) {
GPGGA.lat.azimute = gga2[0];
- //strcpy(GPGGA.lat.azimute,gga2);
pc.printf("%s\n\r",gga2);
wait(0.25);
}
@@ -110,14 +109,11 @@
strcpy(tmp,convert( gga2,&(GPGGA.lat) ));
sprintf(longi,"\r%s",tmp);
pc.printf("\r%s",longi);
- // longi=tmp;
- // Ilongi=atoi(longi);
}
break;
case 5 : // E: Est, W: Ouest
if (mode == 2) {
GPGGA.lat.azimute = gga2[0];
- //strcpy(GPGGA.lon.azimute,gga2);
pc.printf("%s\n\r-----Donnees GPS-----\r\n",gga2);
wait(0.25);
@@ -192,22 +188,19 @@
uint8_t getGPSstring() { // str used to choose between GPS trame type, here we have only GPGGA wich is available
uint8_t str=1;
if (pc.scanf("%s", &gpsString) ==1) {
- //pc.printf("Tentive");
if(str==1) {
if (sscanf(gpsString, "$GPGGA,%s",gga1) >=1)
{
- sep = 1;
- //pc.printf("recharge gga");
+ sep = 1;
parseGGA();
- //pc.printf("recharge gga fin");
}
return *gga2;
}
}
else
{
- pc.printf("NO GPGGA DATA RECEIVED\n\r");
- return 0;
+ pc.printf("NO GPGGA DATA RECEIVED\n\r");
}
+ return 0;
}
--- a/main.cpp Mon Feb 06 08:25:12 2017 +0000
+++ b/main.cpp Mon Feb 06 10:18:50 2017 +0000
@@ -3,12 +3,12 @@
#include "HMC5883L.h"
#include "gps.h"
- #define PRINT_CALCULATED
- #define PRINT_SPEED 500 // 500 ms between prints
+#define PRINT_CALCULATED
+#define PRINT_SPEED 500 // 500 ms between prints
//-------Pin Connection----///
-DHT11 sensor(D4);//D4=jeremy
+DHT11 sensor(D4);//D4= dht11 data
HMC5883L bouss(PB_9, PB_8); // HMC5883L(PinName sda, PinName scl) PB_8 + PB_9
Serial rfid(PA_9, PA_10); // pa9=d8 pa10=d2
Serial serial(PA_0,PA_1); /*PA_0=A0=TX PA_1=A0=RX*/
@@ -21,25 +21,19 @@
int H, T, s;
float Boussole;
int Head;
-char buff[55];
+char buff[55];
int RFIDA;
int DHT_Start_Temper()
{
- s = sensor.readData();
- T=sensor.readTemperature();/*
- if (s != DHT11::OK) {
- serial.printf("Error!\r\n");
- }
- else {
- serial.printf("AT$SS=%x%x\r\n", T,H);
- }*/
- return T;
+ s = sensor.readData();
+ T=sensor.readTemperature();
+ return T;
}
int DHT_Start_Humid()
{
- s = sensor.readData();
+ s = sensor.readData();
H=sensor.readHumidity();
return H;
}
@@ -47,11 +41,12 @@
int Boussole_Start()
{
+ //Head is divided by 2 because of sending data to actoboard the value is limit to 255
bouss.init();
- Boussole= bouss.getHeadingXYDeg();
+ Boussole= bouss.getHeadingXYDeg();
Head=((int)Boussole)/2;
serial.printf("\r\n-----Boussole-----\r\n%2f\r\n-----Boussole-----\r\n",Boussole);
- return Head;
+ return Head;
}
int Accelerometre_Start_x()
@@ -79,15 +74,14 @@
void RFID_Start()
{
- int i;
- int tag[15];
- //char buff[55];
+ int i;
+ int tag[15];
- for(i=0;i<5;i++)
- tag[i]=rfid.getc();
+ for(i=0; i<5; i++)
+ tag[i]=rfid.getc();
- sprintf(buff,"%d%d%d%d%d",tag[0],tag[1],tag[2],tag[3],tag[4]);
- serial.printf("\r\n-----Tag RFID-----\r\n%s \r\n-----Tag RFID-----\r\n",buff);
+ sprintf(buff,"%d%d%d%d%d",tag[0],tag[1],tag[2],tag[3],tag[4]);
+ serial.printf("\r\n-----Tag RFID-----\r\n%s \r\n-----Tag RFID-----\r\n",buff);
}
//---------------
@@ -97,86 +91,66 @@
//serial config
serial.baud(9600);
serial.format(8,SerialBase::None,1);
-
+
serial.printf("\r\n Bracelet Orientation\r\n****************\r\n");
-
+
char *p1lat, *p2lat, *p3lat;
int intp1lat, intp2lat, intp3lat;
char *p1long, *p2long, *p3long;
int intp1long, intp2long, intp3long;
- while(1){
+ while(1) {
T=DHT_Start_Temper();
H=DHT_Start_Humid();
Head=Boussole_Start();
- /*x=Accelerometre_Start_x();
+ x=Accelerometre_Start_x();
y=Accelerometre_Start_y();
- z=Accelerometre_Start_z();*/
- //pc.printf("\rgga:%s",gga2);
- parseGGA();
- getGPSstring();
+ z=Accelerometre_Start_z();
+ getGPSstring();
-
+
RFID_Start();
RFIDA=atoi(buff);
- //serial.printf("\r\n%d\r\n",RFIDA);
RFIDA=RFIDA/10000000;
- //serial.printf("\r\n%d\r\n",RFIDA);
- //---printf actoboard
- serial.printf("\r\n Actooard \r\n********************************************************************\r\n");
- serial.printf("latitude : %s\r\n",lati);
- serial.printf("Longitutde : %s\r\n",longi);
-
-
- //traitement Latitude
+
+ //traitement Latitude
p1lat = strtok(lati,"'");
p2lat= strtok(NULL, "'");//the second
- p3lat= strtok(NULL, ".");//the third
- // serial.printf("\r%s\r\n",p1lat);
- // serial.printf("\r%s\r\n",p2lat);
- // serial.printf("\r%s\r\n",p3lat); //serial.printf("%s\r\n",longi);
-
- //conversion latitude
+ p3lat= strtok(NULL, ".");//the third
+
+ //conversion latitude
intp1lat=atoi(p1lat);
intp2lat=atoi(p2lat);
intp3lat=atoi(p3lat);
- //concatcénation lati
+ //concatcénation lati
int latitude_complet_int;
char latitude_complet[6];
strcat(latitude_complet,p1lat);
strcat(latitude_complet,p2lat);
strcat(latitude_complet,p3lat);
latitude_complet_int=atoi(latitude_complet);
- //serial.printf("\r\n int:%d \r\n",latitude_complet_int);
-
-
-
- //traitement longitude
+
+
+
+ //traitement longitude
p1long = strtok(longi,"'");
p2long= strtok(NULL, "'");//the second
p3long= strtok(NULL, ".");//the third
intp1long=atoi(p1long);
intp2long=atoi(p2long);
intp3long=atoi(p3long);
-
- // serial.printf("\r%s\r\n",p1long);
- // serial.printf("\r%s\r\n",p2long);
- // serial.printf("\r%s\r\n",p3long);
-
- //concatcénation longitude
+
+ //concatcénation longitude
int longitude_complet_int;
char longitude_complet[6];
strcat(longitude_complet,p1long);
strcat(longitude_complet,p2long);
strcat(longitude_complet,p3long);
longitude_complet_int=atoi(longitude_complet);
- // serial.printf("\r\n int:%d \r\n",longitude_complet_int);
-
- serial.printf("AT$SS=%x%x%x%x%x0%x%x%x%x%x\r\n",T,H,intp1lat,intp2lat,intp3lat,intp1long,intp2long,intp3long,RFIDA,Head);//Head
- //serial.printf("AT$SS=%x\r\n",Head);
-
- wait(5);
+ serial.printf("AT$SS=%x%x%x%x%x0%x%x%x%x%x\r\n",T,H,intp1lat,intp2lat,intp3lat,intp1long,intp2long,intp3long,RFIDA,Head);
+
+ wait(5);
}
}