Windows PC で動作する CODESYS Development SW バージョン「3.5 SP15 patch 1」と、デモ モードの Ubuntu 16.04.6 LTS で動作する「CODESYS Control for Linux SL」Soft PLC バージョン 3.5.15.10 があります。私の学習タスクでは、現在の RTC 時間をナノ秒単位で取得する必要があります。これは、「timestamp_now」の次の C コードで得られるものと同様です。
struct timespec time_now;
clock_gettime(CLOCK_REALTIME, &time_now);
const uint64_t timestamp_now = UINT64_C(1e9) * time_now.tv_sec + time_now.tv_nsec;
CODESYS に含まれる標準ライブラリを確認しましたが、必要なものが見つかりませんでした。1) SysTimeRtcHighResGet: ミリ秒単位の現在の RTC 時間。私のタスクには解像度が不十分です。2) SysTimeGetNs: ナノ秒の分解能でアップタイムのように見えます。この値を自分のタスクに使用することはできません。
私のSoft PLCでナノ秒の分解能で現在のRTCを取得するために、無料の(おそらくデモモードで)ライブラリを使用できるかどうか、考えはありますか?