next up previous
Next: 7.5.3 リアルタイムモジュール rt_ctlmodule Up: 7.5 HOAP-1のロボット制御プログラム Previous: 7.5.1 共有メモリのデータ構造

7.5.2 コマンド送信プログラム sendseq.c


/*共有メモリ用*/
#include <mbuff.h>
#define NAME_OF_MEMORY "DataSharedMemory"
SM* pSM

int main(int argc, char *argv[])
{
  DUNIT* unit;
  //共有メモリのアロケーション
  pSM = (SM*) mbuff_alloc(NAME_OF_MEMORY, 
                          sizeof(SM));
  for(;;) {
    /*標準入力からのコマンド入力を待つ*/
    fgets(buf, COMMANDLEN, stdin))

    /*共有メモリのシーケンスモードデータ用バッファに書き込む*/
    unit = (DUNIT*)&(pSM->Data.SeqDat[count]);
    ret = send_sm(buf, unit);
    count++;
    if(count >= nSeqDat) break;
  } 
  /*シーケンスデータの実行を指示 */
  /*シーケンスモードスタートを指示する*/
  pSM->VarIF.Mode = SEQUENTIAL;
  /*メモリ開放*/
  mbuff_free(NAME_OF_MEMORY, (void*)pSM);
}


generated through LaTeX2HTML. M.Inaba 平成18年5月6日