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.
Dependencies: mbed
Fork of lib_capteur by
Diff: lib_cap.cpp
- Revision:
- 1:21a24cb4d75a
- Parent:
- 0:5e7710677334
diff -r 5e7710677334 -r 21a24cb4d75a lib_cap.cpp
--- a/lib_cap.cpp Tue Mar 07 14:44:53 2017 +0000
+++ b/lib_cap.cpp Fri Mar 31 15:51:58 2017 +0000
@@ -21,6 +21,45 @@
return distance(); // renvoi '0' - '3000'
}
}
+/**************************************************
+Exemple:
+#include "mbed.h"
+#include "lib_cap.h"
+
+CAP col(PA_1,COULEUR);
+CAP obj(PA_7,OBJET);
+CAP dis(PA_4,DISTANCE);
+Serial pc(SERIAL_TX, SERIAL_RX);
+DigitalOut myled(LED1);
+
+
+int main(){
+ while(1){
+ if (col.valeur() != 1){
+ myled = 1;
+ pc.printf("detecter\n");
+ }
+ else{
+ myled = 0;
+ pc.printf("non detecteur\n");
+ }
+ if (obj.valeur() != 1){
+ pc.printf("hi\n");
+ }
+ else{
+ pc.printf("au revoir\n");
+ }
+ pc.printf("distance: %d \n", dis.valeur());
+ }
+}
+**************************************************/
+
+
+
+
+
+
+
//**********************************************
// donnée retournée de cap_couleur
@@ -31,7 +70,7 @@
unsigned short in_valeur = _cap.read_u16();
int cap_color;
if (cap_color != 1){
- if ( in_valeur > 0xe8b9 ) cap_color = 1;
+ if ( in_valeur > 0xc9b1 ) cap_color = 1;
}
else{
if ( in_valeur < 0x41f0 ) cap_color = 0;
@@ -39,6 +78,12 @@
return cap_color;
}
+
+
+
+
+
+
//**********************************************
// donnée retournée de cap_objet
// '1' Non détecter
@@ -48,7 +93,7 @@
unsigned short in_valeur = _cap.read_u16();
int cap_objet;
if (cap_objet != 1){
- if ( in_valeur > 0xe8b9 ) cap_objet = 1;
+ if ( in_valeur > 0xc9b1 ) cap_objet = 1;
}
else{
if ( in_valeur < 0x41f0 ) cap_objet = 0;
@@ -57,6 +102,11 @@
}
+
+
+
+
+
//***********************************************
// donnée retournée de cap_distance
// definie par 'mm'
@@ -65,8 +115,8 @@
int CAP::distance(){
unsigned short in_valeur = _cap.read_u16();
double cap_distance;
- unsigned int l_min = 0x2ded;
- // quand la distance est 0, le valeur de la sortie 0x2ded (11757)
+ unsigned int l_min = 0x26c9;
+ // quand la distance est 0, le valeur de la sortie 0x26c9 (9929)
// quand la distance est 3000mm, le valeur de la sortie 0xffff (65535)
double d = 0.0558;
// d répresente la distance de 0x0001
