sensor

Dependencies:   HMC6352 mbed

Fork of program_SensorBlock by Fumiya Fujisawa

Revision:
3:7de2c50339bd
Parent:
2:f7da3aa0520a
Child:
4:1d54610dba80
--- a/main.cpp	Mon Feb 24 05:23:18 2014 +0000
+++ b/main.cpp	Mon Feb 24 07:05:48 2014 +0000
@@ -22,6 +22,7 @@
 Serial sensor(p13,p14);
 Serial pc(USBTX,USBRX);
 HMC6352 compass(p9, p10);
+
 Timer time_ping;
 Timer time_ir; 
 
@@ -35,7 +36,8 @@
 volatile unsigned int value_ir_min = 0;
 volatile unsigned int ir_min_num = 0;
 volatile unsigned int value_line[ALL_LINE] = {0};
-volatile unsigned int value_compass = 0;
+volatile unsigned int value_compass0 = 0;
+volatile unsigned int value_compass[2] = {0};
 
 
 /*unsigned int*/void moving_ave(enum sensors kind,int num, unsigned int data){
@@ -169,7 +171,7 @@
 }
 int main() {
     //enum sensors kinds;
-    uint8_t compassdef = 0;
+    int compassdef = 0;
     int num[ALL_KIND] = {0};
     //送信開始
     sensor.putc(1);
@@ -179,10 +181,16 @@
     compassdef = (compass.sample() / 10);
     
     while(1) {
-        value_compass = ((compass.sample() / 10) + 540 - compassdef) % 360;
+        value_compass0 = ((compass.sample() / 10) + 540 - compassdef) % 360;
+        if(value_compass0 >=255 ){
+            value_compass[0] = 255;
+            value_compass[1] = value_compass0 - 255 ;
+        }else{
+            value_compass[0] = value_compass0;
+            value_compass[1] = 0;
+        }
         moving_ave(Ping,num[Ping],ping_function(num[Ping]));
-        
-        pc.printf("value_compass=%d\n",value_compass);
+        pc.printf("compass0=%d compass[0]= %d  compass[1]= %d\n",value_compass0,value_compass[0],value_compass[1]);
         //ir_min_fun();
         //num[Ping]++;
         //num[Ir]++;