GCC¶
開発環境の設定¶
-
以下のファイルをプロジェクトフォルダにコピーします(GCCサンプルに含まれています)
YduApi.h
YduDioApi.h
YduResult.h -
ソースファイルにYduApi.h, YduDioApi.h, YduResult.hをインクルードします(下記プログラム例を参照して下さい)
-
リンク時はライブラリとリンクするために以下を追加してください(GCCサンプルのmakefileも参考にしてください)
-L/usr/lib/y2c -lydu
プログラム例¶
#include <iostream>
#include "YduApi.h"
#include "YduDioApi.h"
#include "YduResult.h"
int main()
{
// IDが0に設定されているAIO-84/16/32A-Uをオープンします
uint16_t unit_id = 0;
int32_t result = YduOpen(unit_id, "AIO-84/16/32A-U");
if (result != YDU_RESULT_SUCCESS)
{
std::cout << "オープンできません" << std::endl;
return 1;
}
// IN0~15の入力をおこないます
uint8_t input_data[16];
result = YduDioInput(unit_id, input_data, 0, 16);
// 入力データの表示
for (uint32_t i = 0; i < 16; i++)
{
std::cout << "IN" << std::dec << i << ": " << (uint16_t)input_data[i] << std::endl;
}
// OUT0~31の出力をONします
uint8_t output_data[32];
for (uint32_t i = 0; i < 32; i++)
{
output_data[i] = 1;
}
result = YduDioOutput(unit_id, output_data, 0, 32);
// ユニットをクローズします
result = YduClose(unit_id);
return 0;
}