[[2006b/A1/課題3左]]

*センサー2個のプログラム [#l43e1c04]

 #define TURN_TIME 400
 #define left OnRev(OUT_A);OnFwd(OUT_C);
 #define go OnFwd(OUT_A+OUT_C);
 #define offAC Off(OUT_A+OUT_C);
 #define TURN_LIGHT 10
 #define turn_go 5
 task main()
 {
 
 int light_max=0,time_max=0;
 SetSensor(SENSOR_1,SENSOR_LIGHT);
 SetSensor(SENSOR_2,SENSOR_LIGHT);
 
 start play_music;
 
 ClearTimer(0);OnFwd(OUT_A);OnRev(OUT_C);//タイマーをリセッ  ト、回転をする 
                           
 while(FastTimer(0)<TURN_TIME){
       
       if(SENSOR_1>light_max)   //最も強い光を探す
       {
       light_max=SENSOR_1;
       time_max=FastTimer(0);
       }
       }
       OnRev(OUT_A);OnFwd(OUT_C);4秒回った後最も強い光の場所まで逆回転する
       Wait(TURN_TIME-time_max);
        Off(OUT_A+OUT_C);
        
 stop play_music;    
       
         
 while(true){
      if(SENSOR_1>SENSOR_2)//センサー1よりセンサー2の方が強い光を感知すると
      {
      OnFwd(OUT_C);
      OnRev(OUT_A);       // 右を向く
      Wait(TURN_LIGHT);
      OnFwd(OUT_A+OUT_C);Wait(turn_go); //少し進む
      }
      if(SENSOR_1<SENSOR_2)//センサ−2よりセンサー1の方が強い光を感知したとき
      {
      OnFwd(OUT_A);
      OnRev(OUT_C);    //左を向く
      Wait(TURN_LIGHT);
      OnFwd(OUT_A+OUT_C);Wait(turn_go); //少し進む
      }
     
       
            }
            }

   
  //曲 カノン              
 #define Do 523
 #define HDo 1047
 #define Re 587
 #define HRe 1175
 #define Mi 659
 #define HMi 1319
 #define Fa 698
 #define So 784
 #define Ra 880
 #define LRa 440
 #define Si 988
 #define ma1 25
 #define ma2 23
 #define ma3 30
 #define ma4 45
 #define ma5 20
 #define ma6 15
 #define ma7 25
 
 
 task play_music()
 {
 while(true)
 {
 
 PlayTone(HMi,ma1);Wait(ma3);
 PlayTone(HRe,ma2);Wait(ma3);
 PlayTone(HDo,ma2);Wait(ma3);
 PlayTone(HDo,ma2);Wait(ma4);
 
 PlayTone(Ra,ma1);Wait(ma3);
 PlayTone(So,ma2);Wait(ma3);
 PlayTone(Ra,ma2);Wait(ma3);
 PlayTone(Si,ma2);Wait(ma4);
 
 PlayTone(HDo,ma1);Wait(ma3);
 PlayTone(Si,ma2);Wait(ma3);
 PlayTone(Ra,ma2);Wait(ma3);
 PlayTone(So,ma2);Wait(ma4);
 
 
 PlayTone(Fa,ma1);Wait(ma3);
 PlayTone(Mi,ma2);Wait(ma3);
 PlayTone(Fa,ma2);Wait(ma3);
 PlayTone(Re,ma2);Wait(ma4);
 
 PlayTone(Do,ma5);Wait(ma6);
 PlayTone(Mi,ma5);Wait(ma6);
 PlayTone(So,ma5);Wait(ma6);
 PlayTone(Fa,ma5);Wait(ma6);
 PlayTone(Mi,ma7);Wait(ma6);
 PlayTone(Do,ma7);Wait(ma6);
 PlayTone(Mi,ma7);Wait(ma6);
 PlayTone(Re,ma7);Wait(ma6);
 
 PlayTone(Do,ma5);Wait(ma6);
 PlayTone(LRa,ma5);Wait(ma6);
 PlayTone(Do,ma5);Wait(ma6);
 PlayTone(So,ma5);Wait(ma6);
 PlayTone(Fa,ma7);Wait(ma6);
 PlayTone(Ra,ma7);Wait(ma6);
 PlayTone(So,ma7);Wait(ma6);
 PlayTone(Fa,ma7);Wait(ma6);
 
 
 }
 }

#comment


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS