[[2004/C7/その他(自由)]]


担当:のぐち
 
  //*ぐるぐる回るプログラム*//
 #define TURN_TIME 110
 int MOVE_TIME;
 task main()
 {
   OnFwd(OUT_A+OUT_C);
   MOVE_TIME=200;
   Wait(MOVE_TIME);
   OnFwd(OUT_A);
   OnRev(OUT_C);
   Wait(TURN_TIME);
 repeat(6){
   OnFwd(OUT_A+OUT_C);
   Wait(MOVE_TIME);
   OnFwd(OUT_A);
   OnRev(OUT_C);
   Wait(TURN_TIME);
   MOVE_TIME-=25;
   }
   Off(OUT_A+OUT_C);
 }

関数は嫌いだぁ〜





 担当 フジタ  

/*    送られたメッセージに従って左右に回転するロボットのプログラム*/

 /*    送られたメッセージに従って左右に回転するロボットのプログラム*/
 
#define turn_left OnRev(OUT_A);
#define go_straight OnFwd(OUT_A);
task main()
{  Wait(500);
   ClearTimer(0);while ( Timer(0) <= 10 ) { SendMessage(1); }  // 最初の 5秒間 1 を送信する
    while (true)
    {
        ClearMessage();           // Message() を 0 に設定
        until (Message() != 0);   // Message() に 0 以外の値が入るまで待つ
        if ( Message() == 1 ) {turn_left;
        Wait(500);    // 1 を受信したときには左回転
        Off(OUT_A);SendMessage(1);}

        if ( Message() == 2) {go_straight;
        Wait(1500);Off(OUT_A);//2を受信したときには前進
        SendMessage(2);}
}
}

 #define turn_left OnRev(OUT_A);
 #define go_straight OnFwd(OUT_A);
 task main()
 {  Wait(500);
   ClearTimer(0);while ( Timer(0) <= 10 ) { SendMessage(1); }  // 最初の 5秒間    1 を送信する
     while (true)
     {
         ClearMessage();           // Message() を 0 に設定
         until (Message() != 0);   // Message() に 0 以外の値が入るまで待つ
         if ( Message() == 1 ) {turn_left;
         Wait(500);    // 1 を受信したときには左回転
         Off(OUT_A);SendMessage(1);}
 
         if ( Message() == 2) {go_straight;
         Wait(1500);Off(OUT_A);//2を受信したときには前進
         SendMessage(2);}
  } 
 } 


トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS