6: 2010-01-20 (水) 19:28:29 sho |
現: 2011-02-02 (水) 19:29:57 eid7gud |
| + | TITLE:FDIII-HC Starter Kit Guide Chapter2.5 |
| + | *まとめ [#d91355d1] |
| + | FREEDOMライブラリを読み込むために最初に必ず |
| + | #include <fd.h> |
| + | を書きます。 |
| + | |
| + | 実際の処理はmain関数の{}の中に書きます。 |
| + | |
| + | main関数内で必ず最初に |
| + | fd_Init (0, BT_CONSOLE, 0, 7.4); |
| + | で初期化します。下の[[補足>#vb6f386d]]も確認しましょう。 |
| + | |
| + | ここまではどのプログラムでも殆んど同じですので、新しいプログラムを作るときにはコピー&ペーストします。 |
| + | |
| + | Dynamixelから1バイトのデータを取り出すには |
| + | fd_DXReadByteData (ID, アドレス, &変数名); |
| + | を使います。値を入れる変数名の前に&を付けるのを忘れないよう注意しましょう。変数名の前に&を付けると変数のアドレスを表します。 |
| + | |
| + | Dynamixelに1バイトのデータを書き込むには |
| + | fd_DXWriteByteData (ID, アドレス, 書き込む値); |
| + | を使います。 |
| + | |
| + | 取り込んだ値を表示したりするにはfd_printfを使います。 |
| + | |
| *課題 [#zaff6826] | | *課題 [#zaff6826] |
| #ref(Warning_k1.png,100%) | | #ref(Warning_k1.png,100%) |
| #define KEY_QUIT { if(fd_rx_buff()) fd_SoftReset();} | | #define KEY_QUIT { if(fd_rx_buff()) fd_SoftReset();} |
| と入力して下さい。~ | | と入力して下さい。~ |
- | KEY_QUIT と書くことで if(fd_rx_buff()) fd_SoftReset(); と書いたことと同じ意味ですと宣言しています。 if(fd_rx_buff()) fd_SoftReset(); は、パソコンから入力があったらブートローダへ入るという意味です。 | + | KEY_QUIT と書くことで if(fd_rx_buff()) fd_SoftReset(); と書いたことと同じ意味ですと宣言しています。 if(fd_rx_buff()) fd_SoftReset(); は、パソコンから入力があったらブートローダのコマンドモードへ入るという意味です。 |
| | | |
| 最初からif(fd_rx_buff()) fd_SoftReset();と書けば良いのではと思うかもしれませんが、長いので、短くて覚えやすいKEY_QUITにしました。勿論そのまま if(fd_rx_buff()) fd_SoftReset(); と書いても構いません。 | | 最初からif(fd_rx_buff()) fd_SoftReset();と書けば良いのではと思うかもしれませんが、長いので、短くて覚えやすいKEY_QUITにしました。勿論そのまま if(fd_rx_buff()) fd_SoftReset(); と書いても構いません。 |
| KEY_QUIT; | | KEY_QUIT; |
| と入力して下さい。 | | と入力して下さい。 |
- | whileで繰り返し処理をしている間にSIMPLE TERM上でキーボードからどのキーでも良いので入力すると、ブートローダモードに入ってプログラムが書き込めるようになります。~ | + | whileで繰り返し処理をしている間にSIMPLE TERM上でキーボードからどのキーでも良いので入力すると、ブートローダのコマンドモードに入ってプログラムが書き込めるようになります。~ |
| | | |
| これによりプログラムを書き込むたびにFDIII-HCの電源をON,OFFしたり、USBケーブルを抜き差しする手間が省けます。~ | | これによりプログラムを書き込むたびにFDIII-HCの電源をON,OFFしたり、USBケーブルを抜き差しする手間が省けます。~ |