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.
Dependents: test_girouette_library
GirouetteWD1080.cpp
- Committer:
- Station_Meteo_Laos
- Date:
- 2019-05-20
- Revision:
- 2:6d392919b388
- Parent:
- 1:4c8b15e19600
- Child:
- 4:dfa695d9c256
File content as of revision 2:6d392919b388:
#include "GirouetteWD1080.h"
#include "mbed.h"
GirouetteWD1080::GirouetteWD1080(PinName analog_pin):girouette(analog_pin)
{
}
// Lit les différentes valeurs donné par la GirouetteWD1080
//En déduit la direction inidquée par la girouette
// => /!\ Les pôles de réfèrence sont sculptés sur le pied de la girouette /!\
bool GirouetteWD1080::read_string( )
{
uint16_t positions[8] = {770, 200, 53, 30, 13, 105, 350, 550}, girou, i=0;
string directions[9]={"O","S-O","S","S-E","E","N-E","N","N-O", "ERR"};
girou = int(girouette.read()*1000.0f);
for(i=0; i<9;i++){
if( (positions[i]-10)<=girou && (positions[i]+10)>=girou){
direction_string = directions[i];
return true;
}
}
direction_string = directions[8];
return false;
}
bool GirouetteWD1080::read_int( )
{
uint16_t positions[8] = {770, 200, 53, 30, 13, 105, 350, 550}, girou, i=0;
girou = int(girouette.read()*1000.0f);
for(i=0; i<9;i++){
if( (positions[i]-10)<=girou && (positions[i]+10)>=girou){
direction_int = i;
return true;
}
}
direction_int = 255;
return false;
}