コンテンツにスキップ
サンプルプログラム > アナログ入出力 >

GCC

開発環境の設定

  1. 以下のファイルをプロジェクトフォルダにコピーします(GCCサンプルに含まれています)
    YduApi.h
    YduAioApi.h
    YduResult.h

  2. ソースファイルにYduApi.h, YduAioApi.h, YduResult.hをインクルードします(下記プログラム例を参照して下さい)

  3. リンク時はライブラリとリンクするために以下を追加してください(GCCサンプルのmakefileも参考にしてください)

    -L/usr/lib/y2c -lydu
    

プログラム例

#include <iostream>
#include "YduApi.h"
#include "YduAioApi.h"
#include "YduResult.h"

int main()
{
    // IDが0に設定されているAIO-84A-Uをオープンします
    uint16_t unit_id = 0;
    int32_t result = YduOpen(unit_id, "AIO-84A-U");
    if (result != YDU_RESULT_SUCCESS)
    {
        std::cout << "オープンできません" << std::endl;
        return 1;
    }

    // AIN0~7の入力をおこないます
    float input_data[8];
    result = YduAioInputVolt(unit_id, input_data, 0, 8);
    // 入力データの表示
    for (uint32_t i = 0; i < 8; i++)
    {
        std::cout << "AIN" << std::dec << i << ": " << std::fixed << input_data[i] << std::endl;
    }

    // AOUT0~3の出力を5Vにします
    float output_data[4];
    for (uint32_t i = 0; i < 4; i++)
    {
        output_data[i] = 5;
    }
    result = YduAioOutputVolt(unit_id, output_data, 0, 4);

    // ユニットをクローズします
    result = YduClose(unit_id);
    return 0;
}