工程筆記本 / NXC/RobotC/C++ for Lego robot

NXC/RobotC/C++ for Lego robot

[RobotC] 藍牙傳輸馬達編碼器值

CAVEDU 阿吉 - 雜工📅 2014-05-23👁 17
咱們對於 RobotC 的教學文章比較少,但淡江電機大一的基礎電機實驗下學期就是使用 RobotC 帶領學生進入 C語言與機器人控制的領域(上學期使用 NXTG圖形化軟體) 本範例是將一台 NXT 的兩個馬達(作為手把,所以不會轉動)的編碼器值透過藍牙送給另一個NXT。接收之後顯示在螢幕上。 事實上可以顯示在螢幕上,下一步就可以用這兩筆數值來控制馬達電力,遙控機器人就完成啦。請期待我們下一個範例喔! 2014-05-26 10.21.28 [youtube=http://www.youtube.com/watch?v=73oSUdFpTTY] 發送端 [pastacode lang="c" message="發送端 - 將兩筆馬達編碼器值送出" highlight="11" provider="manual"]
task main()
{
   nMotorEncoder[motorA] = 0;
   nMotorEncoder[motorB] = 0;
   while(true){ 
      wait1Msec(300);
      int my_number,my_number1; 
      my_number=nMotorEncoder[motorA];
      my_number1=nMotorEncoder[motorB];
      sendMessageWithParm(my_number,my_number1);  //將兩筆資料一起送出
}
}
[/pastacode]   接收端 [pastacode lang="c" message="接收端 - 接收藍牙訊息之後顯示於螢幕" highlight="8,9" provider="manual"]
task main()
{
   int message_first;
   int message_second;
   while(true)
   {
      message_first = messageParm[0]; //取出第一筆資料
      message_second = messageParm[1];  //取出第二筆資料
      if(message_first != 0 || message_second != 0)  //如果兩者任一不為零
      {
         nxtDisplayBigTextLine(2,"1: %d",message_first);
         nxtDisplayBigTextLine(4,"2: %d",message_second);
         ClearMessage();  //清除藍牙暫存區
      }
      wait1Msec(300);
   }
}
[/pastacode]

相關文章 📎

留言 💬 (0)

還沒有留言,來當第一個。