[[ANT]]

Microchip Technology社の 16bit マイコン PIC24FJシリーズ用ライブラリのサンプルコードです。 ソースコードは PIC24FJ64GA002で
コンパイル、実行させています。~
このページにあるライブラリは α版です。このコードは無保証です。また、バグが残っている可能性があります。

このサンプルでは、使用するCPUに応じて、インクルードするヘッダファイルを変更してください。~
サンプルは 下記の4つのファイルで構成されています。
- ant.h &ref(ant.h);
-- ANTチップに対する API関数等を定義したヘッダファイルです
- ant.c &ref(ant.c);
-- ANTチップに対する API関数の実行コード部です。実行には、uart.c で定義されている UART1 に対する関数が必要です
- uart.h &ref(uart.h);
-- UARTに対する API等を定義したヘッダファイルです
- uart.c &ref(uart.c);
-- UARTに対する API関数の実行コード部です

ant.c では ANTチップへ UARTを通じてコマンドやリザルトを送受信するために uart.c に書かれた uart1に対する関数を呼び出しています。
そのため、このサンプルでは、uart.c および uart.h も必要になります。~
uart.c では、送信はポーリングでアクセスしていますが、 受信では 割込み駆動にて受信していますので、割り込みを使用します。




使用例;

  #include <ant.h>
  #include <uart.h>
 
  #define   DEVICE_NUMBER   31
  #define   MAX_BUFSIZE     32
 
  #define   ANT_CH          0
 
  unsigned  char buffer[MAX_BUFSIZE];
 
  void OpenANT() {
  //  0ch に通信パラメータを設定して、チャンネルをオープンする関数 
 
	ANT_ResetSystem();                                         // ANT デバイスをリセットする
 
	ANT_AssignChannel( ANT_CH, ANT_Bidirectional_Slave, 0) ;   // 受信用チャンネルとしてアサインする
	ANT_SetChannelId( ANT_CH,  DEVICE_NUMBER, 1, 1 );          // デバイス番号等のIDをセットする
 
	ANT_SetChannelPeriod_Hz( ANT_CH, 4 );                      // チャンネルピリオド 4Hzに設定 (デフォルトと同じなので省略可能)
	ANT_SetChannelRFFreq( ANT_CH, 4 );                         // 送受信する周波数を 2404MHz に設定する
 
 	ANT_OpenChannel( ANT_CH );                                 // チャンネルを開いて通信を開始する
 
        return;
  }
  
  void main () {
 
     int s;
     OpenANT();
 
     while(1) {
         if ( s = BC_ANT_RecvPacket( buffer, MAX_BUFSIZE )) {
             // ANTチップからのデータ受信時の処理...
             // パケットを受信したときや ANTチップからのイベントの処理を記述します
         }
     }
 
  }


BC::labsへの質問は、bc9-dev @ googlegroups.com までお願い致します。
トップ   新規 一覧 単語検索 最終更新   最終更新のRSS