projet capteur connecté ST/SE

Dependencies:   HP206C mbed HMC5883L DHT DS1820

Committer:
MathieuM
Date:
Mon Dec 10 11:26:41 2018 +0000
Revision:
82:6f5913a97489
Parent:
77:67faccef7f14
Various updates

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MathieuM 21:472dda13db73 1 #include "mbed.h"
MathieuM 18:c2627f062107 2 #include "communication.h"
MathieuM 18:c2627f062107 3
MathieuM 68:26938422fa0c 4 char *genMessage(float h_sol, float h_air, float t_sol, float t_air, long pression, int16_t *chMag) {
MathieuM 68:26938422fa0c 5 char *m;
MathieuM 68:26938422fa0c 6 m = (char*)malloc(12*sizeof(char));
MathieuM 68:26938422fa0c 7 m[0] = ((char)h_sol) << 1; // b0 --- b6
MathieuM 68:26938422fa0c 8 m[0] = m[0] + (((char)h_air) >> 6); // b7
MathieuM 68:26938422fa0c 9 m[1] = ((char)h_air) << 2; // b8 --- b13
MathieuM 77:67faccef7f14 10 m[1] = m[1] + (((int)(t_sol * 10) + 200) >> 8); // b14 --- b15
MathieuM 68:26938422fa0c 11 m[2] = ((int)(t_sol * 10) + 200) & 0x0ff; // b16 --- b23
MathieuM 77:67faccef7f14 12 m[3] = (((int)(t_air * 10) + 200) >> 2) & 0xff; // b24 --- b31
MathieuM 77:67faccef7f14 13 m[4] = (((int)(t_air * 10) + 200) & 0x03) << 10; // b32 --- b33
MathieuM 68:26938422fa0c 14 m[4] = m[4] + ((chMag[0] & 0x3ff) >> 4); // b34 --- b39
MathieuM 68:26938422fa0c 15 m[5] = chMag[0] & 0xf; // b40 --- b43
MathieuM 68:26938422fa0c 16 m[5] = m[5] + ((chMag[1] & 0x3ff) >> 6); // b44 --- b47
MathieuM 68:26938422fa0c 17 m[6] = (chMag[1] & 0x3f) << 2; // b48 --- b53
MathieuM 68:26938422fa0c 18 m[6] = m[6] + (chMag[2] & 0x3ff) >> 8; // b54 --- b55
MathieuM 68:26938422fa0c 19 m[7] = chMag[2] & 0xff; // b56 --- b63
MathieuM 68:26938422fa0c 20 m[8] = (char)((pression & 0xff0000) >> 16); // b64 --- b71
MathieuM 68:26938422fa0c 21 m[9] = (char)((pression & 0x00ff00) >> 8); // b72 --- b79
MathieuM 68:26938422fa0c 22 m[10] = (char)(pression & 0x0000ff); // b80 --- b87
MathieuM 76:04941d128fff 23 //m[11] = '\0';
MathieuM 27:d9dec879b7a6 24 return m;
MathieuM 27:d9dec879b7a6 25 }