...

Xanciaソフトウェア開発手順書(IM34N01N02-01_04)

by user

on
Category: Documents
524

views

Report

Comments

Transcript

Xanciaソフトウェア開発手順書(IM34N01N02-01_04)
User’s
Manual
Network Solution Controller Xancia
N3C4700 シリーズ
R Embedded Compact 7 日本語版搭載)
(Windows○
ソフトウェア開発手順書
IM 34N1N04-01
該当製品
形名
名称
N3C4711-N4W7J
Network Solution Controller Xancia iVe-モデル DIO
N3C4711-F4W7J
Network Solution Controller Xancia iVe-モデル DIO
N3C4721-N4W7J
Network Solution Controller Xancia iVe-モデル AI
N3C4721-F4W7J
Network Solution Controller Xancia iVe-モデル AI
Xancia ホームページ URL:
http://www2.yokogawa-digital.com/product/product_detail/xancia.html
IM 34N1N04-01
第4版
i
注意事項
■ 本書に対する注意
・ 本書は,最終ユーザまでお届けいただきますようお願いいたします。
・ 本製品の操作は,本書をよく読んで内容を理解したのちに行ってください。
・ 本書は,本製品に含まれる機能詳細を説明するものであり,お客様の特定目的に
適合することを保証するものではありません。
・ 本書の一部または全部を,無断で転載,複製することは固くお断りします。
・ 本書の内容については,将来予告なしに変更することがあります。
・ 本書の内容について,もしご不審な点や誤り,記載もれなどお気付きのことがあ
りましたら,当社営業部または,お買い求めの代理店まで,ご連絡ください。
■ 本製品の保護・安全および改造に関する注意
・ 本製品および本書には,安全に関する以下のようなシンボルマークを使用してい
ます。
・ “取扱注意”を示しています。製品においては,人体および機器を保護するた
めに,取扱説明書を参照する必要がある場所に付いています。また,取扱説明書
においては,感電事故など,取扱者の生命や身体に危険が及ぶ恐れがある場合に,
その危険を避けるための注意事項を記述してあります。
・ “保護接地端子”を示しています。機器を操作する前に必ずグランドと接続し
てください。
・ “機能用接地端子”を示しています。機器を操作する前に必ずグランドと接地
してください。
・ “交流”を示しています。
・ “直流”を示しています。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
ii
以下のシンボルマークは,取扱説明書にのみ使用しています。
警 告
・ “警告”を示しています。
・ ソフトウェアやハードウェアを損傷したり,システムトラブルになる恐れがあ
る場合に,注意すべきことがらを記述してあります。
注 意
・ “注意”を示しています。
・ 操作や機能を知る上で,注意すべきことがらを記述してあります。
補足
・ “補足”を示しています。
・ 説明を補足するためのことがらを記述してあります。
参照
・ “参照”を示しています。
・ 参照すべき項目やページなどを記述してあります。
・ 本製品および本製品で制御するシステムの保護・安全のため,本製品を取り扱う
際は,本書の安全に関する指示事項その他の注意事項に従ってください。なお,
これらの指示事項に反する扱いをされた場合には,本製品の保護機能が損なわれ
る等,その機能が十分に発揮されない場合があり,この場合,当社は一切,製品
の品質・性能・機能および安全性を保証いたしません。
・ 本製品および本製品で制御するシステムでの落雷防止装置や機器などの,本製品
や制御システムに対する保護・安全回路の設置,または本製品や制御システムを
使用するプロセス,ラインのフールプルーフ設計やフェールセーフ設計その他の
保護・安全回路の設計および設置の場合は,お客様の判断で,適切に実施され,
また本製品以外の機器で実現するなど別途検討いただき,また用意するようお願
いいたします。
・ 本製品の部品や消耗品を交換する場合は,必ず当社の指定品を使用してください。
・ 本製品は原子力および放射線関連機器,鉄道施設,航空機器,舶用機器,航空施
設,医療機器などの人身に直接かかわるような状況下で使用されることを目的と
して設計,製造されたものではありません。人身に直接かかわる安全性を要求さ
れるシステムに適用する場合には,お客様の責任において,本製品以外の機器・
装置をもって人身に対する安全性を確保するシステムの構築をお願いいたします。
・ 本製品を改造することは固くお断りいたします。
■ 本製品の免責
・ 当社は,保証条項に定める場合を除き,本製品に関していかなる保証も行いませ
ん。
・ 本製品のご使用により,お客様または第三者が損害を被った場合,あるいは当社
の予測できない本製品の欠陥などのため,お客様または第三者が被った損害およ
びいかなる間接的損害に対しても,当社は責任を負いかねますのでご了承くださ
い。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
iii
■ Network Solution Controller Xancia 全般に対する注意
● 設置場所は下記の場所を避けて
・ 直射日光があたる場所,使用周囲温度が-10~60℃の範囲を超える場所
・ 使用相対湿度が 10~90%の範囲を超える場所,温度変化が急激で結露するような
場所
・ 腐食性ガスや可燃性ガスのある場所
・ 振動や衝撃が直接伝わるような場所
・ 極度の放射線被曝の可能性がある場所
● 外部配線には適切な線材を
・ 外部配線には温度定格 75℃以上の銅線を使用してください。
● 取付けねじの締付けは確実に
・ 本製品の取付けねじは,誤動作などの原因にならないように確実に締付けてくだ
さい。
● 接続ケーブルのロックは確実に
・ 各種接続ケーブルのコネクタ部のロックは確実に行い,通電前に十分確認してく
ださい。
● 非常停止回路は外部リレー回路で
・ 本製品を組込んだ装置の非常停止回路は,外部リレー回路で構成し,本製品の運
転・停止状態を必ず組込んでください。
● 接地は低インピーダンスで
・ ノイズ耐量を高めるため,本製品の FG 端子は,低インピーダンスとなるように接
地してください。
● ノイズに配慮した配置・配線を
・ ノイズ源となりやすい部分とノイズの影響を受けやすい部分を分離して配置・配
線してください。分離には距離をとる,フィルタを挿入する,グランド系を分離
するなどの方法があります。
● 保守品のご用意を
・ 本製品の保守品は,あらかじめご用意いただくことをお奨めします。
● 静電気は事前に放電を
・ 乾燥した場所では過大な静電気が発生する恐れがありますので,装置に触れる際
は,あらかじめアースされた金属などに触れて静電気を放電させてください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
iv
● 清掃はシンナーを避けて
・ 本製品表面の汚れは,やわらかい布に水,または中性洗剤を含ませ,固く絞って
から,軽くふいてください。
・ ベンジン,シンナーなどの揮発性のものや,薬品を用いてふいたりしますと変形,
変色,故障の原因となりますので絶対に使用しないでください。
● 保管は高温・多湿を避けて
・ 本製品の保管は高温・多湿の場所を避けてください(保存周囲温度-20~+75℃)。
・ 本製品には,SRAM やリアルタイムクロックをバックアップするためにリチウム
電池が内蔵されています。この電池の容量は,室温における無通電状態で10年以
上となっています。ただし,電池の特性上,設置・保存場所の温度が極端に低い
/高い所では,これよりもバックアップできる期間が短くなる場合が考えられま
す。高温の条件下ではバックアップ電流が増大し,電池を大幅に消費しますので
ご注意ください。本製品は,室温状態に置くことをお勧めします。
● 製品を分解しないで
・ 本製品を分解したり,内部の部品に触れたりしないようにしてください。部品の
損傷,故障の原因になる場合があります。
● コネクタの空き端子は接続しないように
・ 外部接続用のコネクタの空き端子には配線しないでください。配線により本製品
の機能が損なわれる場合があります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
v
はじめに
■ 本書の概要
本書は,Network Solution Controller Xancia N3C4700 シリーズのソフトウェア開発手順説
明書です。Network Solution Controller Xancia を使用してアプリケーションを作成,実行,
デバッグする方法について説明しています。
なお,お問い合わせについては,弊社 Xancia ホームページを参照してください。また,
OS やサービスの仕様やプログラミングに関することは必要に応じて,マイクロソフト
の Web サイトを参照していただくことをお勧めいたします。
■ 本書の構成
本書は,PART-A,PART-B,PART-C,PART-D の 4 つのパートで構成されます。
・PART-A には,Network Solution Controller Xancia の概要が説明されています。
・PART-B には,Xancia N3C4700 シリーズ用 SDK を使用して,Microsoft Visual Studio
2008 でのアプリケーションを作成,デバッグする手順が説明されています。
・PART-C には,制御 I/O アクセスライブラリの概要が説明されています。
・PART-D には,システム固有ライブラリの概要が説明されています。
各項目の内容はそれぞれ独立しており,知りたい機能について参照していただくだけで,
Network Solution Controller Xancia の仕様を理解していただける構成と内容になっていま
す。
Network Solution Controller Xancia の基本操作画面は Windows 画面に準じています。した
がって,画面に関しては,Network Solution Controller Xancia 固有の画面のみ記載します。
■ 文中の表記
● Windows 画面と操作の表記
・ 「 」で囲まれている文字列は,記号,説明,固有名詞などを表記します。
(例)「リモートズームイン」,「XcdApi.h」
・ [ ]で囲まれている文字列は,ダイアログボックス名,メニューバーのメニュー,
コマンド,ボタンなどを表記しています。
(例)メニューバーの[ファイル(F)]-[新規作成(N)]を選択します。
● Network Solution Controller Xancia 関連図,画面の表記について
文中 Xancia との接続画面例は Windows 2000 環境を想定して記載されています。
Windows XP では,アイコン,アプリケーション名称が違う場合があります。
本書に記載の図は,説明の都合上,強調,簡略化,または一部省略されている場合もあ
ります。また,動作マシン環境により,本書に記載の画面イメージと一致しない場合が
あります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
vi
● 操作手順の表記について
操作手順を解説しているページは,ページ左側に操作手順を,ページ右側に操作に対応
する画面を配置しています。
操作手順:ユーザが行う操作はゴシック体で強調して表記しています。
操作結果は⇒マークの後ろに記述しています。
画面
:操作手順に対応する画面は,画面左下の操作 No.をごらんください。
■ 他の取扱説明書
以下の取扱説明書は必ず参照してください。
R Embedded
・ Network Solution Controller Xancia N3C4700 シリーズ(Windows○
Compact 7 日本語版搭載)ハードウェア取扱説明書(IM 34N1C04-01)
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
vii
著作権および商標
■ 著作権
CD-ROM に含まれる,もしくは当社指定 WEB サイトからダウンロードしたプログラム
およびオンラインマニュアルなどの著作権は当社に帰属します。
オンラインマニュアルについては,その内容を改ざんできないように PDF のセキュリ
ティを設定しています。プリンタへの出力は可能です。
オンラインマニュアルをプリンタで出力してご使用になる場合は,本製品を利用するた
めだけにご使用ください。オンラインマニュアルをプリンタで出力したものを使う場合,
最新版との不一致が起こらないようご注意ください。ご使用時には,CD-ROM の最新
版と版数が一致していることをご確認ください。
オンラインマニュアルをコピーしたり,第三者に譲渡,販売,頒布(E-mail やインター
ネットのネットワークを通じて通信により提供することを含みます)することを禁止し
ます。また,無断で記録媒体その他に登録,録画することも禁止します。
■ 商標
Windows は米国 Microsoft Corporation の米国およびその他の国における登録商標または
商標です。
その他,本文中に使われている商品名,会社名などの固有名詞は,各社の商標または登
録商標です。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
目次-1
Network Solution Controller Xancia N3C4700 シリーズ
R Embedded Compact 7 日本語版搭載)
(Windows○
ソフトウェア開発手順書
IM 34N1N04-01 第 4 版
目
次
注意事項 ................................................................................................................. i
はじめに ................................................................................................................ v
著作権および商標 ................................................................................................ vii
PART-A
A1.
概要 ....................................................................................................... A1-1
A1.1
A1.2
A1.3
A2.
機能概要 ........................................................................................................... A1-1
ハードウェア概要 ............................................................................................. A1-2
A1.2.1
形名一覧.................................................................................................... A1-2
A1.2.2
外部インタフェース ................................................................................ A1-3
ソフトウェア概要 ............................................................................................. A1-4
A1.3.1
Windows Embedded Compact 7 ................................................................ A1-4
A1.3.2
開発環境.................................................................................................... A1-6
A1.3.3
Software Development Kit(SDK) ......................................................... A1-6
A1.3.4
使用上の留意点 ........................................................................................ A1-7
機能 ....................................................................................................... A2-1
A2.1
A2.2
A3.
全般
Windows Embedded Compact 7 ...................................................................... A2-1
A2.1.1
スレッドの実行モード ............................................................................ A2-1
A2.1.2
オブジェクトストア ................................................................................ A2-1
A2.1.3
各種デバイス............................................................................................ A2-6
A2.1.4
インターネットサービス ...................................................................... A2-15
A2.1.5
マルチメディア ...................................................................................... A2-22
A2.1.6
アプリケーションモジュール .............................................................. A2-23
A2.1.7
その他システム関連 .............................................................................. A2-24
Xancia 固有の機能 .......................................................................................... A2-26
A2.2.1
Launch プログラム ................................................................................. A2-27
A2.2.2
リモートツール接続 .............................................................................. A2-28
A2.2.3
HMI 代替手段 ......................................................................................... A2-29
A2.2.4
制御 I/O アクセス................................................................................... A2-31
A2.2.5
RAS 機能 ................................................................................................. A2-32
アプリケーション開発手順.................................................................... A3-1
A3.1
A3.2
アプリケーションプログラムの開発 ................................................................ A3-1
アプリケーションプログラムのデバッグ ......................................................... A3-2
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
目次-2
A3.3
A4.
Xancia のシステムパラメータ設定 ........................................................ A4-1
A4.1
A4.2
A4.3
A4.4
PART-B
B1.
B4.2
B4.3
PART-C
プロジェクトの新規作成 .................................................................................. B4-1
B4.1.1
Microsoft Visual Studio 2008 プロジェクトの新規作成 ......................... B4-1
B4.1.2
Microsoft Visual Studio 2008 プロジェクトの設定 ................................. B4-3
開発用 PC と Xancia の接続 ............................................................................. B4-4
B4.2.1
LAN 接続・・・デバイスツール ............................................................ B4-4
B4.2.2
RS-232-C 接続・・・ActiveSync ........................................................... B4-11
プロジェクトのデバッグ ................................................................................ B4-12
B4.3.1
Microsoft Visual Studio 2008 プロジェクトのデバッグ ....................... B4-12
組み込み方法 .................................................................................................... B5-1
自動起動 ........................................................................................................... B5-3
制御 I/O アクセスライブラリ概説
概要 ....................................................................................................... C1-1
C1.1
C1.2
C2.
Microsoft Visual Studio 2008 のインストール .................................................. B3-1
SDK のインストール ........................................................................................ B3-2
B3.2.1
インストール手順 ..................................................................................... B3-3
アプリケーションプログラムの組み込み .............................................. B5-1
B5.1
B5.2
C1.
ハードウェア .................................................................................................... B2-1
ソフトウェア .................................................................................................... B2-2
SDK を使用したアプリケーション開発 ................................................. B4-1
B4.1
B5.
アプリケーション開発手順 .............................................................................. B1-1
SDK 概要 .......................................................................................................... B1-3
開発環境構築手順 .................................................................................. B3-1
B3.1
B3.2
B4.
アプリケーション開発手順概説
使用機器一覧 ......................................................................................... B2-1
B2.1
B2.2
B3.
パラメータ設定メニューの起動方法 ................................................................ A4-1
ネットワークパラメータ設定 ........................................................................... A4-3
システムパラメータ設定 .................................................................................. A4-6
システムバージョン表示 ................................................................................ A4-13
概要 ....................................................................................................... B1-1
B1.1
B1.2
B2.
アプリケーション開発上の留意点.................................................................... A3-3
A3.3.1
スレッドプライオリティ ........................................................................ A3-3
A3.3.2
QUANTUM ............................................................................................... A3-3
A3.3.3
定周期スレッド ........................................................................................ A3-3
A3.3.4
ファイルアクセス .................................................................................... A3-3
機能概要 ........................................................................................................... C1-1
制限事項 ........................................................................................................... C1-1
インタフェース仕様 .............................................................................. C2-1
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
目次-3
C2.1
C2.2
C2.3
C2.4
C3.
概論 ................................................................................................................... C2-1
C2.1.1
API 一覧 ..................................................................................................... C2-1
C2.1.2
ヘッダファイル ......................................................................................... C2-3
C2.1.3
ライブラリファイル ................................................................................. C2-4
制御 I/O デバイスのオープン............................................................................ C2-5
制御 I/O デバイスのクローズ............................................................................ C2-6
制御 I/O アクセス用 API ................................................................................... C2-7
C2.4.1
接点入力フィルタ設定/参照 ................................................................. C2-8
C2.4.2
接点入力割り込み検出エッジ設定/参照 ........................................... C2-10
C2.4.3
接点入力 1 点読み出し ........................................................................... C2-12
C2.4.4
接点入力多点読み出し(ビットパターン表記) ............................... C2-14
C2.4.5
接点入力多点読み出し(配列表記) ................................................... C2-16
C2.4.6
接点入力割り込み動作 ........................................................................... C2-18
C2.4.7
接点出力フェイル時動作モード設定/参照 ....................................... C2-21
C2.4.8
接点出力フェイル時プリセット値設定/参照 ................................... C2-23
C2.4.9
接点出力 1 点読み出し ........................................................................... C2-25
C2.4.10 接点出力多点読み出し(ビットパターン表記) ............................... C2-27
C2.4.11 接点出力多点読み出し(配列表記) ................................................... C2-29
C2.4.12 接点出力 1 点書き込み ........................................................................... C2-31
C2.4.13 接点出力多点書き込み(ビットパターン表記) ............................... C2-33
C2.4.14 接点出力多点書き込み(配列表記) ................................................... C2-35
C2.4.15 アナログ入力レンジ設定/参照 ........................................................... C2-37
C2.4.16 アナログ入力多点読み出し(配列表記) ........................................... C2-39
C2.4.17 タイマ設定............................................................................................... C2-41
C2.4.18 タイマ読み出し ....................................................................................... C2-43
C2.4.19 タイマカウント開始/停止 ................................................................... C2-45
C2.4.20 タイマ割り込み待ち/割り込み待ち解除 ........................................... C2-47
C2.4.21 カウンタ入力フィルタ設定/参照 ....................................................... C2-49
C2.4.22 カウンタ動作指定/参照 ....................................................................... C2-51
C2.4.23 カウンタ 1 点読み出し ........................................................................... C2-53
C2.4.24 カウンタ多点読み出し(配列表記) ................................................... C2-54
C2.4.25 カウンタ 1 点書き込み ........................................................................... C2-56
C2.4.26 カウンタ多点書き込み(配列表記) ................................................... C2-57
C2.4.27 PWM 有効チャネル指定/参照............................................................. C2-59
C2.4.28 PWM 動作指定/参照 ............................................................................ C2-61
C2.4.29 PWM 出力設定/参照 ............................................................................ C2-63
C2.4.30 PWM 出力フェイル時動作モード設定/参照 ..................................... C2-65
C2.4.31 PWM 出力 1 点読み出し......................................................................... C2-67
C2.4.32 PWM 出力多点読み出し(配列表記)................................................. C2-68
C2.4.33 PWM 出力 1 点書き込み......................................................................... C2-70
C2.4.34 PWM 出力多点書き込み(配列表記)................................................. C2-71
エラーコード一覧 .................................................................................. C3-1
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
目次-4
PART-D
D1.
概要 ....................................................................................................... D1-1
D1.1
D1.2
D1.3
D2.
RAS 機能 .......................................................................................................... D1-2
D1.1.1
ウォッチドッグタイマ機能 .................................................................... D1-2
D1.1.2
メンテナンス LED 制御 .......................................................................... D1-4
D1.1.3
フェイル接点出力 .................................................................................... D1-5
D1.1.4
フェイル時の接点出力制御 .................................................................... D1-6
D1.1.5
自己診断.................................................................................................... D1-7
D1.1.6
リブート.................................................................................................... D1-8
システムログ .................................................................................................... D1-9
SRAM アクセス .............................................................................................. D1-11
D1.3.1
SRAM 書き込み...................................................................................... D1-11
D1.3.2
SRAM 読み出し...................................................................................... D1-11
D1.3.3
SRAM クリア.......................................................................................... D1-11
Xancia システム固有ライブラリインタフェース仕様 ........................... D2-1
D2.1
D2.2
D2.3
D2.4
D2.5
D2.6
D2.7
D2.8
D3.
Xancia システム固有ライブラリ概説
概要 ................................................................................................................... D2-1
D2.1.1
Xancia システム固有 API 一覧................................................................ D2-1
D2.1.2
ヘッダファイル ........................................................................................ D2-2
D2.1.3
ライブラリファイル ................................................................................ D2-3
D2.1.4
制限事項.................................................................................................... D2-3
Xancia システム固有デバイスのオープン ........................................................ D2-4
Xancia システム固有デバイスのクローズ ........................................................ D2-5
ウォッチドッグタイマ制御 API ........................................................................ D2-6
D2.4.1
ウォッチドッグタイマカウント開始 .................................................... D2-6
D2.4.2
ウォッチドッグタイマカウント停止 .................................................... D2-8
D2.4.3
ウォッチドッグタイマタイムアウト待ち ............................................ D2-9
D2.4.4
ウォッチドッグタイマタイムアウト待ち解除 .................................. D2-10
D2.4.5
ウォッチドッグタイマクリア ...............................................................D2-11
メンテナンス LED 点灯消灯制御 API ............................................................. D2-12
D2.5.1
メンテナンス LED 点灯 ........................................................................ D2-12
D2.5.2
メンテナンス LED 消灯 ........................................................................ D2-13
ブート関連 API ............................................................................................... D2-14
D2.6.1
ソフトウェアリセット .......................................................................... D2-14
D2.6.2
ブート要因取得 ...................................................................................... D2-15
フェイル接点出力 API .................................................................................... D2-16
D2.7.1
フェイル信号アクティブ ...................................................................... D2-16
D2.7.2
フェイル信号インアクティブ .............................................................. D2-17
D2.7.3
フェイル接点出力状態読み出し .......................................................... D2-18
SRAM アクセス API ....................................................................................... D2-19
D2.8.1
SRAM 領域の読み出し.......................................................................... D2-19
D2.8.2
SRAM 領域への書き込み ...................................................................... D2-20
D2.8.3
SRAM 領域のクリア.............................................................................. D2-21
エラーコード一覧 .................................................................................. D3-1
開発手順書
改訂情報 ............................................................................................ i
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
Network Solution Controller Xancia N3C4700 シリーズ
R Embedded Compact 7 日本語版搭載)
(Windows○
ソフトウェア開発手順書
PART-A 全般
IM 34N1N04-01 第 4 版
Network Solution Controller Xancia N3C4700 シリーズの概要,機能,開発環境につ
いて説明します。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
A1-1
A1.
概要
Network Solution Controller Xancia N3C4700 シリーズ(これ以降,「Xancia」(「ザ
ンシア」と読みます)と表記します)の機能や概要,パラメータの設定方法について説
明します。
A1.1
機能概要
R
Xancia には,マイクロソフト社の組み込み用 Operating System である Windows○
Embedded Compact 7(これ以降,「WEC7」と表記します)を ROM にプログラムし
てあります。
R Visual Studio 2008
Xancia のユーザは,マイクロソフト社の開発環境(Microsoft○
Professional Edition Service Pack 1(これ 以降,「 VS2008」 と表記します))で
C/C++によるアプリケーション開発をすることができます。
アプリケーション開発には Software Development Kit(これ以降,「SDK」と表記しま
す)が必要です。SDK は,弊社提供の Xancia N3C4700 シリーズ用 SDK を開発用 PC
R API のサブセット
にインストールして使用してください。なお,WEC7 では,Win32○
をサポートしています。
また,Xancia には Microsoft .NET Compact Framework 3.5 が組み込まれていますの
で C#,VB.NET によるアプリケーション開発をすることもできます。C#,VB.NET 開
発用には Xancia の固有 API を使用するために,別途アクセスライブラリを Addon する
ことができます。C#,VB.NET 開発をする場合には開発用 PC に下記をインストールし
てください。
Microsoft .NET Framework 3.5
Microsoft .NET Compact Framework 3.5
参照
・ Windows Embedded Compact 7 については,マイクロソフト社が提供するドキュメントをごらんくだ
さい。
・ Xancia の機能について詳しくは,「A2. 機能」をごらんください。
・ N3C4700 シリーズ用 SDK のインストール手順について詳しくは,「B3. 開発環境構築手順」をご
らんください。
補足
・ ROM にプログラムしてある Windows Embedded Compact 7 をアンインストールすることはできませ
ん。
・ 他の組み込み用 Operating System をインストールすることはできません。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A1-2
A1.2
ハードウェア概要
Xancia のハードウェアについて概要を説明します。
参照
Xancia のハードウェアについて詳しくは,「Network Solution Controller Xancia N3C4700 シリーズ
R Embedded Compact 7 日本語版搭載)ハードウェア取扱説明書」(IM 34N1C04-01)をご
(Windows○
らんください。
A1.2.1
形名一覧
Xancia には,実装されている制御 I/O 種別により,表 A1.1 に示すバリエーションがあ
ります。
表 A1.1
形名一覧
モデル名
iVe-モデル DIO
形名
N3C4711
基本仕様
-N4W7J
付加仕様
-
-F4W7J
/L01
/M01
iVe-モデル AI
N3C4721
-N4W7J
-F4W7J
-
/L01
/M01
内容
DI32 点,DO16 点,Windows Embedded Compact 7
RoHS 対応
DI32 点,DO16 点,Windows Embedded Compact 7
25kHz カウンタ機能付き
DI32 点,DO16 点,Windows Embedded Compact 7
PWM 出力機能付き
DI16 点,DO16 点,AI8 点,Windows Embedded
Compact 7
DI16 点,DO16 点,AI8 点,Windows Embedded
Compact 7
25kHz カウンタ機能付き
DI16 点,DO16 点,AI8 点,Windows Embedded
Compact 7
PWM 出力機能付き
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A1-3
A1.2.2
外部インタフェース
次の外部インタフェースを装備しています。
■ 全モデル共通
表 A1.2
全モデル共通外部インタフェース
インタフェース
LAN(10BASE-T/100BASE-TX)
ディスプレイ
シリアル
RS-232-C
RS-422/485
USB (USB2.0)
SD カード
音声入出力
マイク入力
スピーカ出力(ライン出力)
*1:
*2:
*3:
*4:
内容
2 ポート
1
2 ポート COM1/COM2
1 ポート COM5
2 ポート
2 スロット
1 ポート
1 ポート
*1
*2 *3
*4
画面サイズは VGA/SVGA/XGA/SXGA が選択可能です。工場出荷設定は SVGA です。
モデム制御信号付きは COM1 のみです。
RS-232-C ポートのいずれかにタッチパネルを接続可能です。
キーボード,マウス,ストレージデバイス接続用です。
■ N3C4711
表 A1.3
シリアル
接点入出力
*1:
*2:
N3C4711 外部インタフェース
インタフェース
RS-232-C
接点入力
接点出力
内容
2 ポート COM3/COM4
32 チャネル
16 チャネル
*1 *2
RS-232-C ポートのいずれかにタッチパネルを接続可能です。
COM3,COM4 にはモデム制御信号はありません。
補足
・ N3C4711-F4W7J/L01 では,接点入力 4 チャネルをカウンタ入力として使用可能です。カウンタ入力
として使用する場合には,接点入力は 28 チャネルとなります。
・ N3C4711-F4W7J/M01 では,接点出力 4 チャネルを PWM 出力として使用可能です。PWM 出力とし
て使用する場合には,接点出力は 12 チャネルとなります。
■ N3C4721
表 A1.4
接点入出力
アナログ入力
N3C4721 外部インタフェース
インタフェース
接点入力
接点出力
アナログ入力
内容
16 チャネル
16 チャネル
8 チャネル(差動入力)
補足
・ N3C4721-F4W7J/L01 では,接点入力 4 チャネルをカウンタ入力として使用可能です。カウンタ入力
として使用する場合には,接点入力は 12 チャネルとなります。
・ N3C4721-F4W7J/M01 では,接点出力 4 チャネルを PWM 出力として使用可能です。PWM 出力とし
て使用する場合には,接点出力は 12 チャネルとなります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A1-4
A1.3
ソフトウェア概要
Xancia のソフトウェアについて概要を説明します。
A1.3.1
Windows Embedded Compact 7
Xancia にプリインストールされている Windows Embedded Compact 7 について説明しま
す。
■ OS バージョン
組み込み用 Operating System である Windows Embedded Compact 7 です。
参照
OS バージョンに関する情報は,弊社 Xancia ホームページをごらんください。
■ コンポーネント
カーネルに含まれる代表的なコンポーネントは,表 A1.5 のとおりです。
表 A1.5
コンポーネントの一覧
種類
アプリケーション
アプリケーションおよびサー
ビスの開発
インターネットクライアント
マルチメディア
代表的なコンポーネント例
ActiveSync,
MFC, XML,ATL,COM
.NET Compact Framework 3.5
Silverlight for Windows Embedded
Internet Explorer 7,Flash 10.1, JScript 5.6,VBScript 5.6
DirectDraw,DirectShow,Windows Media Player
サーバ
ネットワーク機能
FTP,RAS,SNTP,Telnet,Web
TCP/IP,PPP,IPv6,VoIP
注:
表中の各名称は,次のような略称で表記しています。これ以降も略称で表記します。
R
・ActiveSync
:Microsoft ActiveSync○
・MFC
:Foundation Classes for Windows CE
・XML
:Extensible Markup Language
・ATL
:Active Template Library for Windows CE
・Internet Explorer 7
:Internet Explorer Embedded
R
・JScript
:Microsoft JScript○
R
・DirectDraw
:Microsoft DirectDraw○
R
・DirectShow
:Microsoft DirectShow○
R Player
・Windows Media Player :Microsoft Windows Media○
・RAS
:Remote Access Service
・SNTP
:Simple Network Time Protocol
URL:http://www.xancia.com/
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A1-5
■ ドライバ
含まれるドライバは,次のとおりです。
・ 外部インタフェース :LAN,シリアル,ディスプレイ,USB HID(キーボード,
マウス),USB ストレージ,タッチパネル,SD カード,
音声
・ I/O
:制御 I/O アクセスドライバ
■ ライブラリ
提供する固有ライブラリは,次のとおりです。
・ 制御 I/O 関係
:制御 I/O アクセスライブラリ
・ RAS 関係
:Xancia システム固有ライブラリ
・ SRAM アクセス関係 :Xancia システム固有ライブラリ
■ ストレージ
フラッシュファイルシステムが組み込まれています。アプリケーションの保存用,各種
設定保存用として使用してください。
本ファイルシステムでは, Microsoft Extended FAT File System(これ以降,「exFAT」と
表記します)を採用しています。
フラッシュファイルシステムの容量は,表 A1.6 のとおりです。
表 A1.6
フラッシュファイルシステム容量
モデル名
形名
基本仕様
付加仕様
-
/L01
/M01
-
/L01
/M01
iVe-モデル DIO
N3C4711
-N4W7J
-F4W7J
iVe-モデル AI
N3C4721
-N4W7J
-F4W7J
フラッシュファイル
システム容量
16MB
注 意
・ フラッシュファイルシステムは,頻繁なファイル書き換えを伴う用途には使用し
ないでください。データ保存等には SD カードを使用してください。
・ フラッシュファイルシステムが構築されているフラッシュメモリの書き換え限度
回数は約 10 万回です。
URL:http://www.xancia.com/
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A1-6
A1.3.2
開発環境
Microsoft Visual Studio 2008 Professional Edition(これ以降,「VS2008」と表記します)
を使用してください。VS2008 には Service Pack 1 の適用が必要です。専用の開発ツール
は用意していません。
補足
VS2008 は,MSDN サブスクリプションより入手できます。
VS2008 の Service Pack 1 は,マイクロソフト社の Web サイトからダウンロードすることができます。
参照
開発ツールの入手方法については,「B2.2 ソフトウェア」をごらんください。
A1.3.3
Software Development Kit(SDK)
■ ネイティブコード開発
VS2008 で C/C++等のネイティブコードアプリケーション開発をするために,Xancia
N3C4700 シリーズ用のソフトウェア開発キット(SDK)を提供しています。
■ マネージドコード開発
Xancia N3C4700 シリーズには Microsoft .NET Compact Framework 3.5 がプリインストー
ルされているため,C#,VB.NET のマネージドコードアプリケーション開発をすること
ができます。マネージドコードでの開発をするためには開発用 PC に下記のプログラム
をインストールしてください。
Microsoft .NET Framework 3.5
Microsoft .NET Compact Framework 3.5
Xanicia N3C4700 シリーズ固有の制御 IO アクセスやシステム設定を C#,VB.NET アプ
リ ケ ー シ ョ ン か ら 行 う 場 合 に は 別 途 提 供 す る 「 Xancia 固 有 API .NET Compact
Framework アクセスライブラリ」DLL を使用してください。マネージドコード用 SDK
はありません。
アクセスライブラリ DLL には下記があります。
制御 IO アクセスライブラリ :XanciaIOAccess.dll
システム固有ライブラリ
:XanciaSystemMGT.dll
(IM 記載 API 対応)
XanciaSystemMainte.dll
(拡張 IF API 対応)
補足
Microsoft .NET Framework 3.5 と Microsoft .NET Compact Framework 3.5 は,マイクロソフト社の Web サ
イトからダウンロードすることができます。
参照
「Xancia 固有 API .NET Compact Framework アクセスライブラリ」DLL については,
「TI 34N1S11-01 N3C4700 シリーズ Xancia 固有 API .NET Compact Framework アクセスライブラリ解
説書」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A1-7
A1.3.4
使用上の留意点
Xancia の使用上の留意点について説明します。
■ Windows Embedded Compact 7
Windows Embedded Compact 7 の特徴的な機能のうち,Xancia に含まれていないおもな
モジュールは次のとおりです。
・ ゲーム
・ ファイルビューア
・ リモートデスクトップ接続
・ DCOM コンポーネント
・ 手書き認識
・ IrDA
・ SQL Compact
・ VoIP
・ ファイルサーバ
・ BlueTooth コンポーネント
■ 開発環境
専用の開発ツールは,用意していません。
VS2008 SP1 を使用してください。
Windows XP Service Pack3 以上がインストールされた PC を使用してください。
■ SDK
ネイティブコードアプリケーション開発時には,弊社より提供する Xancia N3C4700 シ
リーズ用 SDK を使用してください。Xancia のシステムバージョンと SDK のバージョン
が合っていないと,アプリケーションや開発環境が正しく動作しないことがあります。
参照
Xancia N3C4700 シリーズ用 SDK のバージョンとシステムバージョンの関係については,「B1.2 SDK
概要」をごらんください。
■ 周辺機器の接続確認
N3C4700 シリーズの周辺機器に関する接続確認情報については現状公開情報がありません。
■ N3C4300 シリーズ,N3C4400 シリーズとの差分情報
R CE 3.0 日本語版搭載),
Network Solution Controller Xancia N3C4300 シリーズ(Windows○
R CE .NET 4.2 日本語版搭載)との差分については
Xancia N3C4400 シリーズ(Windows○
お問い合わせください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
A2-1
A2.
機能
Xancia の ROM にプログラムされている WEC7 のシステム設定や,Xancia の固有の機
能について説明します。
A2.1
Windows Embedded Compact 7
Xancia における WEC7 について説明します。
A2.1.1
スレッドの実行モード
Xancia では,ユーザアプリケーションのスレッドはユーザモードで動作します。
A2.1.2
オブジェクトストア
WEC7 ではファイル,レジストリの格納にオブジェクトストアを使用します。Xancia で
はオブジェクトストアに RAM を使用しています。
参照
オブジェクトストアについては,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)
をごらんください。
■ ファイルシステム
ファイルシステムは Xancia の RAM 上に構築されます。なお,拡張用オブジェクトスト
アは次のとおりです。
● フラッシュファイルシステム
・
・
・
・
フォルダ名
ファイルシステム
記憶メディア
想定用途
:\FlashFile
:exFAT ファイルシステム
:フラッシュメモリ
:アプリケーション保存,各種設定保存用
● SD メモリカード(x 2 スロット)
・
・
・
・
フォルダ名
ファイルシステム
記憶メディア
想定用途
:\SDMemory,\SDMemory2
:FAT ファイルシステム
:SD メモリカード。SD/SDHC サポート。
:データ保存,実行プログラム格納
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-2
補足
(SD スロットのフォルダ名について)
本体の通電中に SD カードを挿入した場合や、SD カードを挿入した状態で本体の電源を ON した場合
に関わらず、SD1 スロットに挿入された SD カードは\SDMemory、SD2 スロットに挿入された SD カー
ドは\SDMemory2 となります。
補足
N3C4700 シリーズ では,WriteProtect された SD カードに対し書き込みを行うとエラーとならない場
合があります。メディアへの書き込みは行われませんが,アプリケーション開発時には注意してくだ
さい。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-3
■ レジストリ
WEC7 のレジストリは,VS2008 のターゲット接続ツールである「リモートレジストリ
エディタ」により参照および設定変更ができます。
Xancia では,レジストリ情報をフラッシュメモリに保存することができます。保存する
ためにはコントロールパネルアプレット「System Control」またはレジストリ保存用の
API を使用してください。
参照
「リモートレジストリエディタ」の接続方法については,「B4.2 開発用 PC と Xancia の接続」をご
らんください。
● コントロールパネルアプレットによるレジストリ保存
デフォルトレジストリから変更した値を保存するためには,コントロールパネルアプ
レット「System Control」の[レジストリ]タブを使用してください。レジストリ保存
実行と,次回起動時に保存したレジストリを適用するための設定ができます。
レジストリ保存には 保存 ボタンをクリックしてください。
図 A2.1
System Control
保存に失敗した場合,下記のメッセージが表示されます。
再度 保存 ボタンをクリックして,レジストリを保存してください。
図 A2.2
エラーのメッセージ
次回起動時に保存したレジストリを適用するためには,レジストリ選択で[保存レジス
トリ]を選択し, OK ボタンをクリックしてください。
図 A2.3
レジストリ保存
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-4
補足
コントロールパネルアプレットで設定変更した場合は,必ず OK ボタンをクリックしてください。
OK ボタンをクリックしないと設定が反映されません。
参照
コントロールパネルアプレット「System Control」の使用方法については,「A4.3
タ設定」をごらんください。
システムパラメー
なお,レジストリ保存/操作は Win32 API を使用したアプリケーションでも実現できま
す。
● レジストリ保存用 API
次の API が使用できます。
LONG RegFlushKey(HKEY hKey);
hKey:保存対象キーのハンドル
HKEY_CLASSES_ROOT,
HKEY_CURRENT_USER,
HKEY_LOCAL_MACHINE,
HKEY_USERS
注 意
保存に失敗し API がエラーを返した場合、レジストリにダミーキーを作成し削除後、
再度 RegFlushKey()を実行してください。
// サンプル
// HKEY_LOCAL_MACHINE の、\\Drivers\\BuiltIn\\Dummyを作成し削除する
//
RegCreateKeyEx( HKEY_LOCAL_MACHINE,
_T(" \\Drivers\\BuiltIn\\Dummy"), 0, NULL, 0, 0, NULL, &hKey, NULL );
RegCloseKey( hKey );
RegCreateKeyEx( HKEY_LOCAL_MACHINE,
_T("\\Drivers\\BuiltIn"), 0, NULL, 0, 0, NULL, &hKey, NULL );
RegDeleteKey( hKey, _T("Dummy") );
RegCloseKey( hKey );
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-5
● レジストリ操作用 API
WEC7 用に用意されている各種 API を使用してください。
代表的な API は次のとおりです。
RegOpenKeyEx(); RegCreateKeyEx(); RegQueryInfoKey();
RegSetValueEx();
参照
API については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)をごらんください。
● デフォルトのレジストリでの起動
レジストリ保存後もデフォルトのレジストリでシステムを起動することができます。コ
ントロールパネルアプレット「System Control」の[レジストリ]タブで[デフォルト
レジストリ]を選択してください。次回電源投入時にデフォルトレジストリが適用され
ます。
補足
コントロールパネルアプレットで設定変更した場合は,必ず OK ボタンをクリックしてください。
OK ボタンをクリックしないと設定が反映されません。
参照
コントロールパネルアプレット「System Control」の使用方法については,「A4.3
タ設定」をごらんください。
図 A2.4
システムパラメー
デフォルトレジストリ設定
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-6
A2.1.3
各種デバイス
次のデバイスへのアクセスに対応しています。
■ LAN
NDIS のミニポートドライバとして動作します。2 ポート利用できます。
● 伝送速度,伝送モード
LAN1,LAN2 ともに伝送速度は 10Mbps,100Mbps の自動認識です。
● TCP/IP 設定
コントロールパネルアプレット「System Control」の[ネットワーク]タブから設定し
てください。設定値は次回起動時から有効となります。
参照
TCP/IP 設定については,「A4.2
ネットワークパラメータ設定」をごらんください。
補足
コントロールパネルアプレット「System Control」で設定された設定値は,WEC7 の[スタート]-
[設定(S)]-[ネットワークとダイヤルアップ接続(N)]を選択して表示される[ネットワーク
とダイヤルアップ接続]で参照できます。
アダプタ名は,LAN1「FEC1」,LAN2「LAN9221」です。
注 意
[ネットワークとダイヤルアップ接続]で設定を変更しても無効です。
● デバイスアクセス
WEC7 では,WinSock2 ライブラリのサブセットを実装しています。また,より上位の
プロトコルとして HTTP 等もサポートしています。
参照
WinSock ライブラリ,HTTP の API 等については,マイクロソフト社が提供するドキュメント(MSDN
ライブラリ等)をごらんください。
● Automatic IP 機能
WEC7 用 TCP/IP(v4)では,Automatic IP 機能をサポートしています。DHCP からのアド
レス取得設定でネットワーク未接続の場合に,Automatic IP 機能による IP アドレスの自
動割り付けを有効とするレジストリキーは,次のとおりです。
[HKEY_LOCAL_MACHINE\Comm\Tcpip\Parms]
"AutoCfg"=dword:1
表 A2.2
Automatic IP
Key
Automatic IP 機能
"AutoCfg"
レジストリ値
0
1
設定値の意味
無効(デフォルトレジストリ)
有効
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-7
■ シリアル
複数のシリアルポートを利用できます。
● デバイスアクセス
デバイス名は,「COM□」です。
表 A2.3
デバイスアクセス
デバイス名
COM1
インタフェース
RS-232-C
伝送速度(bps)
2,400,4,800,9,600,19,200,38,400,57,600
制御線
有
COM2
RS-232-C
2,400,4,800,9,600,19,200,38,400
無
COM3
RS-232-C
無
COM4
RS-232-C
無
N3C4711
COM5
RS-422/485
2,400,4,800,9,600,19,200,38,400,57,600,
115,200
2,400,4,800,9,600,19,200,38,400,57,600,
115,200
2,400,4,800,9,600,19,200,38,400,57,600,
115,200
対応形名
N3C4711
N3C4721
N3C4711
N3C4721
N3C4711
-
N3C4711
N3C4721
WEC7 の API でポート設定,ポートアクセスが可能です。
補足
デバイスアクセスにはデバイス名の後ろに「:」を付けてください。
補足
伝送速度は WEC7 の次の API で設定できます。
BOOL SetCommState(HANDLE hFile, LPDCB lpDCB);
参照
API の詳細については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)をごらん
ください。
● イベント
WaitCommEvent で扱えるイベントにつき,対応状況を次に示します。
表 A2.4
イベントの種類
イベントの種類
ブレーク検出
エラー検知
1 キャラクタ受信
受信フラグ
送信エンプティ
DSR 信号変化
DCD 信号変化
CTS 信号変化
イベント
EV_BREAK
EV_ERR
EV_RXCHAR
EV_RXFLAG
EV_TXEMPTY
EV_DSR
EV_RLSD
EV_CTS
備考
サポート
サポート
サポート
サポート
サポート
COM1 のみ
COM1 のみ
未サポート
補足
受信バッファサイズは 1,024Byte です。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-8
● フロー制御
次のフロー制御が可能です。
・ Xon/Xoff 制御
・ DSR/DTR 制御
・ CTS/RTS 制御
● モデム
COM1 に接続可能です。
対応するモデムはヘイズ互換モデムです。
AT 対応コマンドを使用してください。
参照
N3C4700 シリーズの周辺機器に関する接続確認情報については,現状公開情報がありません。N3C4700
シリーズの周辺機器に関する接続情報を参考にしてください。N3C4700 シリーズの接続情報については弊
社 Xancia ホームページをごらんください。
● RS-422/485
COM5 に接続可能です。通信方式は 2 線式と 4 線式に対応しています。
Xancia を端局として使用する場合には,内蔵の終端抵抗を有効にすることができます。
2 線式/4 線式の切り換え,および終端抵抗の有効設定はコントロールパネルアプレッ
ト「System Control」の[シリアル]タブで行ってください。
図 A2.5
シリアル設定
工場出荷時の設定は,次のとおりです。
・ 通信方式 :2 線式
・ 終端抵抗 :無効
補足
通信方式変更後,次回電源投入時に設定した接続方式が有効となります。
参照
通信方式の変更方法については,「A4.
Xancia のシステムパラメータ設定」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-9
● デバッグメッセージ出力
COM1 または COM2 にデバッグマクロを使用して printf 形式のメッセージを出力するこ
とが可能です。
デバッグマクロのフォーマットは次のとおりです。
RETAILMSG(cond, printf_exp)
・ <cond>
1:メッセージ出力
0:メッセージ非出力
メッセージ出力ポートとして使用する設定をした場合には,当該ポートはシリアル通信
用には使用できません。
メッセージ出力ポート設定は,コントロールパネルアプレット「System Control」の
[シリアル]タブで行ってください。
参照
コントロールパネルアプレット「System Control」の使用方法については,「A4.3
タ設定」をごらんください。
システムパラメー
工場出荷時の設定は次のとおりです。
・ デフォルトメッセージ出力ポート :COM2
・ デバッグメッセージ出力
:無効
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-10
■ タッチパネル
USB ポートを使用して接続できます。
● タッチパネルの補正
接続するタッチパネルの画面サイズによっては,補正が必要です。コントロールパネル
アプレット「スタイラス」の「タッチスクリーンの補正」で,補正を行うことができま
す。
補足
・ タッチパネルのサイズに応じた座標データはレジストリに保存されます。座標データのレジストリ
キーは,次のとおりです。
[HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\TOUCH]
"CalibrationData"="2048,2048 819,819 819,3277 3277,3277 3277,819"
・ 工場出荷時の座標データは 15 インチ用です。
・ タッチパネルサイズを変更した場合には,コントロールパネルアプレット「スタイラス」で「タッ
チスクリーンの補正」を行った後,コントロールパネルアプレット「System Control」を使用して,
レジストリを保存してください。
参照
レジストリ保存方法については,「A4.
Xancia のシステムパラメータ設定」をごらんください。
● タッチパネルのタップ操作
マウスで実現可能な操作のサブセットを,タッチパネルのタップ操作で実現することが
できます。マウス操作に対応するスタイラスの操作は,次のとおりです。
・ マウス左ボタンクリック:
タップ
・ マウス左ボタンダブルクリック: ダブルタップ
・ マウス右ボタンクリック:
タップ継続(1 秒程度)
補足
・ コントロールパネルは,スタイラスによるタップ操作の「マウス右ボタンクリック」操作を模擬で
きません。
・ 「マウス右ボタンクリック」操作は,マウス左ボタンを押し続けていても模擬可能です。ただし,
コントロールパネルではマウス左ボタンを押し続けていると「マウス右ボタンクリック」操作は模
擬できません。
● 対応機器
対応機器に関しては,お問い合わせください。
注 意
タッチパネルの接続は原則,起動前に行ってください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-11
■ ディスプレイ
アナログ RGB ディスプレイに対応しています。
● 解像度・色数
次の解像度が選択可能です。
・ VGA
:640×480
・ SVGA
:800×600
・ XGA
:1,024×768
・ SXGA
:1,280×1,024
次の色数が選択可能です。
・ 256
:8bpp
・ 65,536
:16bpp
・ フルカラー :24bpp
解像度ごとの設定可能な色数は,次のとおりです。
表 A2.6
解像度・色数
色数
解像度
VGA
○
○
△
256
65,536
フルカラー
注:
SVGA
○
○
△
XGA
○
○
△
SXGA
○
△
△
○は表示可能です。この範囲で使用してください。
△は表示可能ですが,描画速度が遅くなります。通常のアプリケーションではお勧めしません。
補足
色数を「フルカラー」に設定してスクロール動作等を行うと,画面が乱れる場合があります。その場
合は画面をリフレッシュしてください。
解像度の設定はコントロールパネルアプレット「System Control」の[画面]タブで
行ってください。
色数の設定はレジストリで行ってください。
工場出荷時の設定は,次のとおりです。
・ 解像度
:SVGA
・ 色数
:65,536
補足
レジストリは「リモートレジストリエディタ」で変更できます。
表示色数指定のレジストリキーは,次のとおりです。
[HKEY_LOCAL_MACHINE\Drivers\Display\DDIPU]
"Bpp"= 16
色数に対応するレジストリ値は,次のとおりです。
256
:"Bpp"= 8
65,536
:"Bpp"= 16
フルカラー
:"Bpp"= 24
値変更後はコントロールパネルアプレット「System Control」の[レジストリ]タブで,レジストリ保
存および保存したレジストリの有効設定を行ってください。次回電源投入時に有効となります。
● リフレッシュレート
60Hz 固定です。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-12
■ USB
WEC7 では USB の HID クラスドライバ,ストレージクラスドライバをサポートしてい
ます。
Xancia は,USB2.0 に対応しています。
● 周辺機器
キーボード,マウス,ストレージカードリーダ/ライタが使用できます。
参照
N3C4700 シリーズの周辺機器に関する接続確認情報については, 弊社 Xancia ホームページをごらんく
ださい。
補足
USB 機器の接続構成には制限があります。
接続可能な機器は,最大 3 台です。
USB 機器を 2 台(たとえば,キーボードとマウス)だけ使用する場合は,それぞれの USB ポートに 1
台ずつ接続してください。
USB 機器を 3 台(キーボード,マウス,ストレージ)使用する場合は,ストレージは USB ポートに直
接接続し,キーボードとマウスは USB ハブを経由して接続してください。USB ハブはこの構成以外で
は使用しないでください。
なお,ポートの位置は意識することなく,どちらのポートに接続してもかまいません。
Xancia
Xancia
USBハブ
USBマウス
USBストレージ
(例:CFカードリーダ)
USBキーボード
USBマウス
USBキーボード
注:USBハブには,キーボード/マウス各1台の計2台のみ接
続可能です。
その他のUSB機器は接続しないでください。
(1) USB機器を2台接続する場合
図 A2.6
(2) USB機器を3台接続する場合
USB 機器接続例
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-13
注 意
・ USB ストレージ機器や USB ハブの場合,USB 機器を取り出して再び挿入する場合
は,5 秒以上間隔を空けてください。USB 機器が認識できない場合があります。万
一,認識できなかった場合は,一度取り出して 5 秒以上間隔を空けた後に,再挿入
してください。USB 機器を挿入してから取り出す場合も同様に,5 秒以上間隔を空
けてください。
・ USB マウスや USB キーボードの場合,USB 機器を取り出して再び挿入する場合は,
2 秒以上間隔を空けてください。USB 機器が認識できない場合があります。万一,
認識できなかった場合は,一度取り出して 2 秒以上間隔を空けた後に,再挿入して
ください。USB 機器を挿入してから取り出す場合も同様に,2 秒以上間隔を空けて
ください。
補足
次の特徴を持つ USB 機器は接続できません。
・ 付加機能のある USB 機器
付加機能の例: USB-Hub 内蔵機器
PS/2 共用型 USB 機器
・ マルチカード対応 USB ストレージ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-14
■ SD カード
メモリカードをサポートしています。2スロット利用できます。
SD カードはラベル面を Xancia の前面に向けて挿入してください。
補足
コマンドプロンプトから COPY コマンドによって,メモリカードに対しコピー先ファイル名を指定し
て大容量ファイルをコピーする場合には,アクセスが遅くなります。
補足
N3C4700 シリーズは,WriteProtect された SD カードに対し書き込みを行うとエラーとならない場合が
あります。メディアへの書き込みは行われませんが,アプリケーション開発時には注意してください。
参照
N3C4700 シリーズの周辺機器に関する接続確認情報については,弊社 Xancia ホームページをごらんく
ださい。
注 意
・ Xancia に挿入されている SD カードを無理に引き抜かないでください。SD カード
はスロット内でロックされているため,過度な力を加えると SD カードスロットを
破壊する恐れがあります。
・ SD カードの取り出しは,アクセス中やファイルオープンの状態で行わないでくだ
さい。SD カードの内容が破壊されることがあります。安全に取り出すためには,
アプリケーションで,SD カードへのアクセスの停止,ファイルクローズなどを
行った上で,アクセス LED が消灯していることを確認して SD カードの取り出し
を行ってください。
・ SD カードの挿抜は、電源 OFF 時に行うことを推奨します。
■ 音声
音声入出力をサポートします。
● サポート機能
音声録音につき開始/停止,音声再生につき開始/停止/一時停止/再開を行うことが
可能です。
音声録音はモノラル,音声再生はステレオになります。
音声の録音と再生は同時に使用することが可能です。
● デバイスアクセス
WEC7 の WAVEFORM API を使用してアクセスします。
参照
N3C4700 シリーズの周辺機器に関する接続確認情報については,弊社 Xancia ホームページをごらんく
ださい。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-15
A2.1.4
インターネットサービス
WEC7 には Internet 機能モジュール群が含まれています。
Xancia のシステムでは次の IE モジュールやコンポーネント等を含んでいます。
■ IPv6
IPv6 の機能を含んでおり,IPv6 Ready Logo Phase-1 を取得しています。
■ IE7 クラスブラウザ
Internet Explorer Embedded(Internet Explorer 7 サブセット)を含んでいます。ブラウザの
ファイル名称は「IESample.exe」です。
Internet Explorer Embedded は,HTML 4.0,DHTML,SSL,Microsoft XML Parser 3.0(こ
R コントロール,Java ア
れ以降,「MSXML 3.0」と表記します),JScript 5.6,ActiveX○
プレット,Flash 10.1 をサポートしています。
補足
「IESample.exe」では,インターネットオプションメニューからプロキシサーバの設定を行うと設定内
容がレジストリに反映されますが保存されません。プロキシサーバ設定を次回起動時に有効にしたい
場合には,コントロールパネルアプレット「System Control」の[レジストリ]タブで,レジストリ保
存および保存したレジストリの有効設定を行ってください。
プロキシサーバ設定が保存されるレジストリキーは次のとおりです。工場出荷時には当該レジストリ
キーはありません。
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\InternetSettings\Con
nections]
"DefaultConnectionSettings"
補足
「IESample.exe」は Internet Explorer Embedded のコンポーネントを使用した WEC7 のサンプルブラウザ
UI です。
参照
IE7(Internet Explorer Embedded)クラスブラウザの詳細については,マイクロソフト社が提供するドキュ
メント(MSDN ライブラリ等)をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-16
■ WinInet コンポーネント
Win32 Internet(WinInet)API が利用できます。
Windows Internet Services functionality for Windows Embedded CE では,HTTP と FTP のイ
ンターネットプロトコルをサポートしています。
注 意
・ Gopher プロトコルはサポートしていません。
・ WEC7 で未サポートの MFC クラスがあります。
参照
WinInet の詳細および未サポート情報については,マイクロソフト社が提供するドキュメント(MSDN
ライブラリ等)をごらんください。
■ XML エンジン
MSXML 3.0 のサブセットです。
● MSXML
N3C4700 シリーズでは WEC7 用 MSXML のうち次の機能を包含しています。
・ XML document object model(DOM)
・ XML クエリ言語(XQL)
N3C4700 シリーズでは WEC7 用 MSXML のうち次の機能を包含していません。
・ XML HTTP
・ Simple API for XML(SAX)
・ Extensible Style Language Transformation(XSLT)
参照
MSXML の詳細については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)をご
らんください。
■ VoIP
N3C4700 シリーズでは VoIP 電話サービスのコンポーネントを包含していません。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-17
■ HTTP サーバ
HTTP サーバモジュールを含んでいます。
● 機能
HTTP1.1 プロトコルのサブセットをサポートします。
また,次の機能が使用できます。
・ Active Server Pages(ASP)
・ Internet Server Application Program Interface(ISAPI)エクステンション
・ ISAPI フィルタ
・ SSL 3.1
・ JScript 5.6,VBScript 5.6
補足
ASP では,IIS ASP 実装でサポートされている機能のサブセットをサポートしています。
使用できるスクリプトは JScript と VBScript です。
● 認証
認証には NTLM 認証を使用してください。
NTLM 認証を行う場合には,デフォルトドメインを下記レジストリで設定してください。
補足
各種サーバ用認証としては NTLM 認証が使用できます。
NTLM 認証は次の手順で実現できます。レジストリでドメインコントローラとユーザ名を指定してく
ださい。NTLM 認証用レジストリは,次のとおりです。
1. 所属するデフォルトドメインの指定(本例では“MyDomain”と記述します)
[HKEY_LOCAL_MACHINE\Comm\Redir]
"DefaultDomain"="MyDomain"
2. ドメインに登録されているユーザ名の指定(本例では“xanciauser”と記述します。複数指定の場
合には,「;」で区切ります)
[HKEY_LOCAL_MACHINE\COMM\TELNETD]
"UserList"="xanciauser1;xanciauser2;xanciauser3"
補足
WEC7 では
SMB 署名を使用した認証はできません。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-18
● 仮想 PATH
仮想 PATH の設定はレジストリで行います。
PATH 設定のレジストリは,次のとおりです。
[HKEY_LOCAL_MACHINE\COMM\HTTPD\VROOTS\/]
@="\\windows\\www\\wwwpub\\"
工場出荷時の HTTP サーバの設定は,次のとおりです。
・ Web ルートフォルダ
:\Windows\www\wwwpub\
・ ポート番号
:80
補足
Xancia を HTTP サーバとして html ファイルを表示させたい場合には,上記 Web ルートフォルダに html
ファイルをコピーしてください。開発用 PC 上のファイルは,VS2008 のターゲットツール「リモート
ファイルビューア」によりコピーすることができます。
電源投入状態で HTTP サーバとして html ファイルを表示させたい場合には,「A2.2.1 Launch プログ
ラム」に記述されている\FlashFile\Start.bat ファイルにコピーコマンドを記述してください。電源投入
時に Web ルートフォルダへの html ファイルコピーが実行され,各種ブラウザから閲覧ができるように
なります。
\FlashFile\Start.bat ファイルの例:
COPY \flashfile\Yokogawa.html \windows\www\wwwpub\yokogawa.html
参照
HTTP サーバの詳細については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)
をごらんください。
注 意
本 HTTP サーバではプロキシサービスを行いません。
注 意
本 HTTP サーバでは CGI は使用できません。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-19
■ Telnet サーバ
WEC7 の,サンプル Telnet サーバコンポーネントを含んでいます。
● 認証
レジストリで認証を行うかどうかを設定することができます。
認証を行うかどうかは,次のようにレジストリで設定してください。
[HKEY_LOCAL_MACHINE\COMM\TELNETD]
"IsEnabled"=dword:00000001
"UseAuthentication"=dword:0
工場出荷時の認証設定は,「ユーザ認証なし」です。
補足
各種サーバ用認証としては NTLM 認証が使用できます。
NTLM 認証は次の手順で実現できます。レジストリでドメインコントローラとユーザ名を指定してく
ださい。NTLM 認証用レジストリは,次のとおりです。
1. 所属するデフォルトドメインの指定(本例では“MyDomain”と記述します)
[HKEY_LOCAL_MACHINE\Comm\Redir]
"DefaultDomain"="MyDomain"
2. ドメインに登録されているユーザ名の指定(本例では“xanciauser”と記述します。複数指定の場
合には,「;」で区切ります)
[HKEY_LOCAL_MACHINE\COMM\TELNETD]
"UserList"="xanciauser1;xanciauser2;xanciauser3"
補足
Xancia のデバイス名が他のネットワーク機器と重複していると,ネットワークサービスが開始できな
いことがあります。Xancia の工場出荷時のデバイス名は「Compact」です。認証を行う前にデバイス名
を適切な名称に変更してください。デバイス名はコントロールパネルの「システム」の[デバイス
名]タブから変更することができ,変更したデバイス名はレジストリに登録されます。
デバイス名のレジストリキーは,次のとおりです。
[HKEY_LOCAL_MACHINE\Ident]
"Name"="Compact"
値変更後は,コントロールパネルアプレット「System Control」の[レジストリ]タブで,レジストリ
保存および保存したレジストリの有効設定を行ってください。次回電源投入時に有効となります。
参照
・ パスワードの設定については,「A2.1.7 その他システム関連」をごらんください。
・ レジストリの保存については,「A4.3 システムパラメータ設定」をごらんください。
・ Telnet サーバの詳細については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ
等)をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-20
■ FTP サーバ
WEC7 の,サンプル FTP サーバコンポーネントを含んでいます。
出荷時は FTP サーバが無効(使用できない状態)になっています。
有効にする場合は,次の手順で設定してください。
・ FTP を有効にする
レ ジ ス ト リ キ ー 「 HKEY_LOCAL_MACHINE\COMM\FTPD 」 の 「 IsEnabled 」 を
「1」にする。デフォルトは「0」。
・ ユーザ名を登録をする
レジストリキー「HKEY_LOCAL_MACHINE\COMM\FTPD」の「UserList」を作成
し,文字列でユーザ名を登録する。ユーザ名を 2 つ以上登録する場合は「;」(セ
ミコロン)で区切る。
例:"xanciauser1 ; xanciauser2"
・ レジストリを保存する
コントロールパネルアプレット「System Control」の[レジストリ]タブで,レジ
ストリの保存をし,保存レジストリを有効にする。
・ 再起動する
レジストリ変更を有効にするために,Xancia を再起動する。
補足
ユーザ名の登録には次の規約があります。
・ ユーザ名の最大文字数は 63 文字
・ ユーザ名に使用できる文字に制限なし。ただし,「;」(セミコロン)は区切り文字のため使用不可
・ ユーザ名の先頭に「@」(アットマーク)がある場合はグループ名を表し,「-」(ハイフン)があ
る場合はアクセス禁止のユーザを表す
・ ユーザ数は制限なし
パスワードには次の注意点があります。
・ FTP サーバでは,コントロールパネルアプレット「パスワード」で設定する WEC7 デバイス用のパ
スワードを使用します。
・ ユーザ単位でのパスワード管理はできません。
参照
・ パスワードの設定については,「A2.1.7 その他システム関連」をごらんください。
・ レジストリの保存については,「A4.3 システムパラメータ設定」をごらんください。
・ FTP サーバの詳細については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)
をごらんください。
■ RAS サーバ
RAS サーバの機能を含んでいます。
参照
RAS サーバの詳細については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)を
ごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-21
■ SNTP サーバ
SNTP サーバの機能を含んでいます。
参照
SNTP サーバの詳細については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)
をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-22
A2.1.5
マルチメディア
Xancia のマルチメディア関連について説明します。
■ DirectX
DirectDraw および DirectShow の機能を含んでいます。
補足
Xancia の DirectX の機能は,色数 256 色ではサポートされていません。色数は 65,536 色以上でご使用
ください。
また,オフスクリーンサーフェース等でビデオメモリを使用するアプリケーションでは,ビデオメモ
リの容量が少なくならないようにご注意ください。
参照
R については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)
Microsoft DirectX○
をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-23
A2.1.6
アプリケーションモジュールと DLL
Xancia に含まれているアプリケーションについて説明します。
■ Windows Media Player
動画やサウンドを再生するためのアプリケーション Windows Media Player を含んでいま
す。
参照
Windows Media Player については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ
等)をごらんください。
■ ライブラリ DLL
下記の DLL が含まれています。
ATL80.dll
MFC80U.dll
MSVCR80.dll
ATL ライブラリ
MFC(Microsoft Foundation Class)ライブラリ
C ランタイムライブラリ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-24
A2.1.7
その他システム関連
Xancia のその他のシステムについて説明します。
■ システムタイマ
Xancia の持つ時刻データフォーマットは,次の表のとおりです。
表 A2.9
システム時刻データフォーマット
時刻データ
年
月
日
曜日
時
分
秒
有効範囲
2000~2099(100 年の範囲)
1~12
1~31
日,月,火,水,木,金,土
0~23
0~59
0~59
補足
・ SYSTEMTIME 構造体の wMillisecond メンバは無効値です。
・ GetSystemTime()API で取得したシステム時間データでは「wMillisecond=0」です。
■ バッチファイル
WEC7 には,Command Processor Shell(Cmd.exe)が含まれており,コマンドラインから
バッチファイルを起動することができます。
Command Processor Shell は Windows の cmd.exe に類似していますが,使用できるコマン
ド数に制限があります。
参照
Command Processor Shell については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ
等)をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-25
■ パスワード
コントロールパネルアプレット「パスワード」でパスワード設定を行うことで,Xancia
へのログイン制御が可能です。
図 A2.7
パスワード設定
補足
・ 設定可能なパスワードには,次の規約があります。
文字数:
最長 40 文字
使用可能な文字:半角英数,記号
・ パスワードに関するオンラインヘルプに,「電源をオンにしたときに常にパスワードの入力ボック
スを表示するには,[起動時にパスワードを入力する]チェックボックスをオンにします」とあり
ますが,本動作はサポートしていません。したがって,システム起動時またはスクリーンセーバー
作動時にパスワードを入力するというチェックボックスは無効です。
補足
パスワードは API でも設定できます。パスワード設定用の API は,次のとおりです。
BOOL SetPassword(LPWSTR lpszOldPassword, LPWSTR lpszNewPassword);
参照
API については,マイクロソフト社が提供するドキュメント(MSDN ライブラリ等)をごらんくださ
い。
注 意
パスワードは電源 OFF 後には情報が残りません。次回電源投入時に再設定してくださ
い。電源投入時に毎回パスワードを設定する必要がある場合は,起動時にパスワード設
定用 API を使用したアプリケーションを実行してください。
なお,安定したパスワード管理を行うためには,Xancia の電源投入間隔を 2 秒以上空け
ることをお勧めします。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-26
A2.2
Xancia 固有の機能
Xancia 固有の機能について説明します。
A2.2.1
Launch プログラム
システム起動時にバッチファイルを実行することができます。システム起動時にバッチ
ファイルを実行したい場合は,「Start.bat」ファイルを作成してください。
■ ファイル名
\FlashFile\Start.bat
■ 記述フォーマット
次の規約にしたがって記述します。
表 A2.10
記述フォーマット
コマンド
START
COPY
MKDIR
機能
プログラムの実行
ファイルのコピー
新規フォルダ作成
■ 記述例
\FlashFile\Start.bat ファイルの記述例は,次のとおりです。
COPY \flashfile\Test.dll \windows\Test.dll
COPY \flashfile\sample.dll \windows\sample.dll
START regsvrce.exe /s atl80.dll
MKDIR \users
MKDIR \users\yokogawa
MKDIR \users\yokogawa\Project
START \flashfile\test1.exe
補足
本例では,デバッグ済みのアプリケーションまたは DLL 等が\flashfile フォルダに格納されていること
を前提としています。本例では,電源投入時に次のとおり実行します。
・ \flashfile フォルダに格納されたデバッグ済み DLL(Test.dll,sample.dll)を\windows フォルダにコ
ピーする。
・ Atl80.dll をレジストリ登録する。
・ 使用するフォルダを作成する。
・ \flashfile フォルダに格納されたデバッグ済みアプリケーション(test1.exe)を起動する。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-27
注 意
Start.bat で自動起動するアプリケーションは\FlashFile フォルダに格納してください。
Start.bat が実行されるタイミングでは SD カードドライバがロードされていない可能性
があります。SD カードに格納したアプリケーションを Start.bat から呼び出す場合は,
必要に応じ,アプリケーションを実行する前に時間待ちしてください。時間待ちアプリ
ケーションは事前に作成して\FlashFile フォルダに格納しておいてください。
[SD カードのアプリケーションを自動起動する Start.bat の例]
cd \FlashFile
Wait5sec.exe
cd \SDMemory
start TestApp.exe
← 時間待ちアプリケーションを実行
← \SDMemory フォルダへ移動
← SD カード上の TestApp.exe を起動
[時間待ちアプリケーションの例-5 秒待ち]
#include "stdafx.h"
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR
lpCmdLine,
int
nCmdShow)
{
Sleep(5000);
return 0;
}
補足
設定ファイルや環境ファイルを読み込みながら起動するアプリケーションでは、Start.bat で自動実行す
る際、アプリケーションが設定ファイルや環境ファイルの保管場所を認識できない場合があります。
アプリケーション起動時に読み込む設定ファイルや環境ファイルは、必要に応じて、アプリケーショ
ンと同じフォルダ、Windows システムフォルダ、FlashFile フォルダなどに事前コピーしてください。
(Start.bat 内に、アプリケーションの実行前に Copy コマンドでファイルコピーするよう記述してくだ
さい。)
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-28
A2.2.2
リモートツール接続
Xancia では,VS2008 の各種リモートツールが利用できます。
■ 利用可能なリモートツール
VS2008 の「ターゲット⇒リモートツール」メニューにあるリモートツールが利用でき
ます。利用可能なリモートツールは,次のとおりです。
・ ファイルビューア
・ ヒープウォーカ
・ プロセスビューア
・ レジストリエディタ
・ パフォーマンスモニタ
・ スパイ
■ 接続用コンポーネント
リモートツール接続用に,次のコンポーネントが含まれています。
● トランスポートコンポーネント
・ WEC7 用 TCP/IP 接続トランスポート
● トランスポートの構成
・ 特定の IP アドレスを使用
補足
接続する Xancia の IP アドレスは VS2008 の「ツール」メニューで設定できます。
ツール ⇒ オプション
デバイスツール デバイス プロパティ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-29
A2.2.3
HMI 代替手段
リモートで接続したときのために,HMI(Human Machine Interface)を模擬することが
できます。
■ リモートズームイン
ディスプレイの代用として VS2008 のツール「リモートズームイン」を使用することが
できます。メニューにはありません。VS2008 インストール場所の TOOL 等にあります。
参照
リモートツールとの接続方法については,「B4.2 開発用 PC と Xancia の接続」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-30
■ keyin コマンド
キーボードの代用として keyin コマンドを使用することができます。
keyin コマンドでは,Windows のキーボードコマンドをパラメータとして指定します。
● keyin コマンド
Windows のキーボードコマンドが使用できます。
telnet で接続して,コマンドプロンプトから使用してください。
● コマンドの使用方法
コマンドの使用方法は,次のとおりです。
>keyin 文字列
>keyin /特殊キー
補足
特殊キーの種類は,次のとおりです。
・ enter
:[Enter]キー
・ space
:スペースキー
・ shift
:[Shift]キー
・ ctrl
:[Ctrl]キー
・ esc
:[Esc]キー
・ alt
:[Alt]キー
・ delete
:[Delete]キー
・ tab
:[Tab]キー
・ right
:[→]キー
・ left
:[←]キー
・ up
:[↑]キー
・ down
:[↓]キー
例: keyin
keyin
keyin
keyin
keyin
keyin
keyin
通常の文字入力
[←]キー
[→]キー
[↑]キー
[↓]キー
[Tab]キー
[Ctrl]キー+[Esc]キー(メニューボタン)
組み合わせで使用する場合は,「+」でつなげてください。
keyin /alt+tab
[Alt]キー+[Tab]キー(アプリケーション切り換え)
keyin /ctrl+alt+delete [Ctrl]キー+[Alt]キー+[Delete]キー
keyin /ctrl+ a
[Ctrl]キー+[a]キー
[Ctrl]キーと英字キーの組み合わせの場合は,英字キーの
前にスペースを入れてください。
keyin /ctrl+ c
[Ctrl]キー+[c]キー
:
:
abcd12345
/left
/right
/up
/down
/tab
/ctrl+esc
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-31
A2.2.4
制御 I/O アクセス
Xancia の制御 I/O について説明します。
■ 制御 I/O 概説
● 接点入力
32 チャネル(N3C4711 の場合),または 16 チャネル(N3C4721 の場合)の接点入力端
子を備えています。割り込み設定が可能なチャネルは 8 チャネルあります。
● 接点出力
16 チャネルの接点出力端子を備えています。各チャネルに対し,フェイル時の動作
モードが設定できます。
● アナログ入力
N3C4721 の場合は,8 チャネルのアナログ入力端子を備えています。
● カウンタ入力
付加仕様コード「/L01」の機種では,接点入力 4 チャネルをカウンタ入力として使用す
ることができます。カウンタは 16 ビットのリングアップカウンタです。最大値までカ
ウントした後は再度 0 からカウントします。
● PWM 出力
付加仕様コード「/M01」の機種では,接点出力 4 チャネルを PWM 出力として使用する
ことができます。
● 制御用タイマ
定周期割り込みを発生させるための 2 個のタイマを使用することができます。
参照
R
制 御 I/O の 詳 細 に つ い て は 「 Network Solution Controller Xancia N3C4700 シ リ ー ズ ( Windows ○
Embedded Compact 7 日本語版搭載)ハードウェア取扱説明書」(IM 34N1C04-01)の「2.11 接点入
力」,「2.12 接点出力」,「2.13 アナログ入力」,「2.15 カウンタ入力」,「2.16 PWM 出力」
をごらんください。
■ デバイスアクセス
制御 I/O は制御 I/O アクセスライブラリ経由でアクセス可能です。
参照
制御 I/O アクセスライブラリの詳細については,「PART-C 制御 I/O アクセスライブラリ概説」をご
らんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A2-32
RAS 機能
A2.2.5
Xancia で は , RAS 機 能 ( 信 頼 性 : Reliability , 可 用 性 : Availability , 保 守 性 :
Serviceability)をシステム固有ライブラリ経由で使用することができます。
■ 機能概要
次の機能がサポートされています。
・ ウォッチドッグタイマ
・ フェイル接点操作
・ メンテナンス LED 消灯点灯操作
・ ウォームアップスタート
・ 過電流検出
・ パワーオン履歴
■ アクセス手段
RAS 機能用 API は Xancia システム固有ライブラリで提供します。
パワーオン履歴や過電流検出はシステムログで参照可能です。
参照
RAS 機能の詳細については,「PART-D
Xancia システム固有ライブラリ概説」をごらんください。
■ その他
● SRAM アクセス
バッテリバックアップされた 128kByte の SRAM のうち,32kByte をユーザ領域として
います。SRAM 中のユーザ領域のアクセスには,Xancia システム固有ライブラリの API
を使用してください。
参照
SRAM アクセス機能の詳細については,「PART-D Xancia システム固有ライブラリ概説」をごらんく
ださい。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A3-1
A3.
アプリケーション開発手順
Xancia におけるアプリケーションの開発手順を示します。
A3.1
アプリケーションプログラムの開発
VS2008 を使用してプログラムを作成します。
注 意
VS2008 の新規プロジェクトを作成するときには,弊社提供の SDK を指定する必要があ
ります。
参照
制御 I/O のアクセスについては,「PART-C 制御 I/O アクセスライブラリ概説」をごらんください。
RAS 機能,SRAM アクセスについては,「PART-D Xancia システム固有ライブラリ概説」をごらんく
ださい。
参照
マイクロソフト社の Web サイトにはアプリケーション開発を行うにあたっての有用な情報が掲載され
ていますので,適宜参照してください。
・ MSDN ライブラリ:
インタフェース仕様,データ構造,未サポート情報 等
・ マイクロソフト サポート技術情報: サポート関連技術情報(既知の問題点 等)
補足
プログラミング方法についてのサポートはお受けできませんのでご了承ください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A3-2
A3.2
アプリケーションプログラムのデバッグ
VS2008 を使用して,アプリケーションプログラムのデバッグを行います。
デバッグを行うために,VS2008 をインストールしてある開発用 PC と Xancia を接続
する必要があります。接続には,LAN 接続をしてください。
■ LAN 接続の場合
Xancia の LAN ポートを使用して開発用 PC と Xancia とを接続することができます。通
信プロトコルとサービスは,次のとおりです。
・ トランスポートプロトコル :TCP/IP
補足
・ LAN ポートはポート番号が異なれば,デバッグ中にも通信サービスが使用できます。
・ VS2008 で接続するとき,アプリケーションで使用中のポート番号は使用しないでください。
接続する Xancia の IP アドレスは VS2008 の「ツール」メニューで設定できます。
ツール ⇒ オプション を選択してください。
開いた Window でデバイスツール デバイス 選択します。
デバイスを表示するプラットフォームとしては「XW7J0000_SDK」を選択してください。
デバイスのプロパティを開き「構成」ボタンをクリックしてください。
構成 Window で
接続先の IP アドレスが指定できます。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A3-3
A3.3
アプリケーション開発上の留意点
VS2008 を使用してネイティブコードアプリケーションを開発する際の,留意点につい
て説明します。
A3.3.1
スレッドプライオリティ
WEC7 のスレッドプライオリティは 0~255 の 256 レベルあります。
アプリケーションのスレッドプライオリティは Win32 API で設定可能です。
マイクロソフト社から推奨されているスレッドプライオリティは,次のとおりです。
システム安定度を保証するために,ユーザアプリケーションは 153 レベル以降で使用し
てください。
表 A3.1
スレッドプライオリティ
用途
High priority Real-Time システムタスク
Default Windows Embedded Compact 7 デバイスドラ
イバ
High priority(Real-Time)ユーザアプリケーション
汎用(non-Real-Time)ユーザアプリケーション
A3.3.2
レベル
0~96
97~152
153~247
248~255
システム組み込みスレッドプライオリティ
システムタスク
I/O ドライバ,通信ドライバ等各種デバイ
スドライバ IST
音声ドライバ(210)
-
QUANTUM
Xancia のスレッドの QUANTUM(タイムスライス)のデフォルト設定は 100ms です。
アプリケーションの QUANTUM 設定は Win32 API で設定可能です。構築するシステム
に応じて最適化してください。
A3.3.3
定周期スレッド
定周期起動のスレッドが必要な場合は,Xancia の制御 I/O アクセスライブラリで提供す
るタイマを使用してください。
参照
制御 I/O のアクセスについては,「PART-C
A3.3.4
制御 I/O アクセスライブラリ概説」をごらんください。
ファイルアクセス
複数のスレッドから同一ファイルにアクセスする場合には,同時に CreateFile を行わな
いでください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
A4-1
A4.
Xancia のシステムパラメータ設定
Xancia の シ ス テ ム パ ラ メ ー タ ( 動 作 状 態 ) は , コ ン ト ロ ー ル パ ネ ル ア プ レ ッ ト
「System Control」で変更できます。
A4.1
パラメータ設定メニューの起動方法
コントロールパネルから弊社提供のアプレット「System Control」をクリックしてくだ
さい。Xancia のシステムパラメータ設定画面([System Control Properties]ダイアロ
グボックス)が開きます。
図 A4.1
コントロールパネルアプレット
図 A4.2
System Control
パラメータ設定入力後,設定を保存する場合は OK ボタンをクリックして「System
Control」を終了し,Xancia を再起動してください。 OK ボタンをクリックすることに
より設定変更が保存され,再起動により設定変更が反映されます。保存が完了するまで
時間がかかりますので,必ず終了のメッセージが表示されるまでお待ちください。
図 A4.3
システムパラメータ保存確認のメッセージ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-2
図 A4.4
保存中のメッセージ
図 A4.5
終了のメッセージ
パラメータ設定入力を無効とする場合は × ボタンをクリックして「System Control」
を終了してください。
保存に失敗した場合,下記のメッセージが表示されます。
図 A4.6
失敗のメッセージ
再度システムパラメータ設定画面を開き,パラメータ設定を入力した後,
OK ボタンをクリックして保存してください。
注 意
・ コントロールパネルアプレット「System Control」によりパラメータ設定を変更す
る場合は,動作中のアプリケーションをすべて終了してから行ってください。
・ パラメータ変更を保存する場合は,ウォッチドッグタイマが停止しますのでご注
意ください。
参照
ウォッチドッグタイマについて詳しくは,「D1.1.1 ウォッチドッグタイマ機能」および「Network
R Embedded Compact 7 日本語版搭載)ハード
Solution Controller Xancia N3C4700 シリーズ(Windows○
ウェア取扱説明書」(IM 34N1C04-01)の「2.18 ウォッチドッグタイマ」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-3
A4.2
ネットワークパラメータ設定
ネットワークの動作環境(IP アドレス,ルーティング等)の設定が可能です。
設定可能なネットワークパラメータと,各パラメータの工場出荷時設定は次のとおりで
す。
表 A4.1
ネットワークパラメータ(LAN1)
ネットワークパラメータ
DHCP の使用フラグ
IP アドレス
サブネットマスク
デフォルトゲートウェイ
プライマリ DNS
セカンダリ DNS
プライマリ WINS
セカンダリ WINS
表 A4.1-2
工場出荷時設定
使用しない
192.168.1.2
255.255.255.0
192.168.1.1
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
ネットワークパラメータ(LAN2)
ネットワークパラメータ
DHCP の使用フラグ
IP アドレス
サブネットマスク
デフォルトゲートウェイ
プライマリ DNS
セカンダリ DNS
プライマリ WINS
セカンダリ WINS
工場出荷時設定
使用しない
192.168.2.2
255.255.255.0
192.168.2.1
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
ネットワークパラメータを変更する場合には,コントロールパネルアプレット
「System Control」の[ネットワーク]タブでパラメータを変更し,最後に OK ボタ
ンをクリックしてください。
図 A4.7
[ネットワーク]タブ
注 意
ネットワークパラメータ変更時のコントロールパネルアプレットの動作は下記の通りです。
・ネットワークパラメータの設定は「シス
テムパラメータ保存」確認ダイアログで
OK を選択すると保存されます。
× を選択すると保存されません。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-4
■ DHCP の使用フラグ
DHCP を使用するかどうかを示します。[IP アドレスを DHCP サーバから取得]オプ
ションボタンのオン/オフで指定します。
・ オフ
:使用しない(工場出荷時設定)
・ オン
:使用する
■ IP アドレス,サブネットマスク,デフォルトゲートウェイ
IP アドレス,サブネットマスク,デフォルトゲートウェイを示します。
10 進数で入力してください。
(IP アドレスの工場出荷時設定:192.168.1.2)
■ プライマリ/セカンダリ DNS,プライマリ/セカンダリ WINS
詳細 ボタンをクリックしてください。DNS,WINS を設定できます。
[IP アドレスを固定]オプションボタンがオンの場合に有効です。
必要であれば 10 進数で入力してください。
(DNS,WINS アドレスの工場出荷時設定:0.0.0.0)
図 A4.8
ネットワーク詳細設定
補足
・ DNS を使用する場合には,プライマリ DNS をまず設定してください。セカンダリ DNS が設定され
ていてもプライマリ DNS が工場出荷時設定のままであると DNS 設定が有効になりません。
・ WINS を使用する場合には,プライマリ WINS をまず設定してください。セカンダリ WINS が設定
されていてもプライマリ WINS が工場出荷時設定のままであると WINS 設定が有効になりません。
・ DNS と WINS の設定情報はレジストリにも記録されます。
DNS と WINS のレジストリキーは,次のとおりです。
[HKEY_LOCAL_MACHINE\Comm\FEC1\Parms\TcpIp]
"DNS"
"WINS"
[HKEY_LOCAL_MACHINE\Comm\LAN9221\Parms\TcpIp]
"DNS"
"WINS"
ただし,工場出荷時設定の場合,各キーには値が設定されていません。
・ [IP アドレスを DHCP サーバから取得]設定の場合の DNS アドレスは,システムパラメータのレ
ジストリ選択設定条件等により DHCP サーバから取得される場合とされない場合があります。
[条件]レジストリ選択内容とレジストリキー値
デフォルトレジストリ
保存レジストリ
DNS レジストリキーに値がない場合
DNS レジストリキーに値がある場合
DNS レジストリキーがない場合
有効となる DNS アドレス
DHCP 取得アドレス
DHCP 取得アドレス
DNS レジストリキーの値
DHCP 取得アドレス
DNS アドレスを DHCP サーバから取得したい場合は,レジストリの DNS キーを削除してレジス
トリを保存し,再起動してください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-5
・ [IP アドレスを DHCP サーバから取得]設定の場合の WINS アドレスは,常に DHCP サーバから取
得したアドレスが有効になります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-6
A4.3
システムパラメータ設定
システムの動作環境パラメータの設定が可能です。
設定可能なシステムパラメータと,各パラメータの工場出荷時設定は,次のとおりです。
表 A4.2
システムパラメータ
「System Control」のタブ
レジストリ
シリアル
画面
その他
システムパラメータ
レジストリ選択
デバッグシリアル
COM5 終端抵抗設定
COM5 通信方式
解像度
アプリケーションからのリブート許可設定
自己診断モード
ウォームアップスタート
ウォッチドッグタイマ動作設定
工場出荷時設定
デフォルトレジストリ
無効
無効
2 線式
800×600
禁止
簡易モード
無効
動作なし
補足
Xancia の基本的な動作状態設定はシステムパラメータで決定されます。
WEC7 のレジストリとシステムパラメータとは異なりますので,ご注意ください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-7
■ レジストリ
コントロールパネルアプレット「System Control」の[レジストリ]タブから次回起動
時に適用するレジストリを選択してください。
フラッシュメモリに現在のレジストリを保存し,次回起動時に適用することができます。
図 A4.9
[レジストリ]タブ
● レジストリ保存
現在のレジストリを保存する場合には 保存 ボタンをクリックしてください。
保存が完了するまで時間がかかりますので,終了のメッセージが表示されるまでお待ち
ください。
図 A4.10
レジストリ保存
図 A4.11
レジストリ保存確認のメッセージ
図 A4.12
保存中のメッセージ
図 A4.13
終了のメッセージ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-8
保存に失敗した場合,下記のメッセージが表示されます。
図 A4.14
エラーのメッセージ
再度 保存 ボタンをクリックして,レジストリを保存してください。
● 保存レジストリの適用
フラッシュメモリに保存したレジストリを次回起動時に適用するかどうかを設定します。
保存したレジストリを適用する場合には[保存レジストリ]オプションボタンをオンに
し, OK ボタンをクリックしてください。
工場出荷時の設定は「デフォルトレジストリ」です。
図 A4.15
保存レジストリの適用
注 意
・ コントロールパネルアプレットで設定変更をした場合は必ず OK ボタンをクリッ
クしてください。 OK ボタンをクリックしないと設定が反映されません。
・ レジストリが保存されていない状態で保存レジストリを適用として起動すると
ALARM LED が点灯します。この場合,保存レジストリには有効なデータがない
ため,工場出荷時のレジストリ値が適用されます。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-9
■ シリアルポート
コントロールパネルアプレット「System Control」の[シリアル]タブから設定してく
ださい。
図 A4.16
[シリアル]タブ
● デバッグシリアル
デバッグメッセージ出力用ポートを使用するかどうかを選択します。使用する場合には
COM1 または COM2 を選択します。デバッグメッセージ出力ポートとして選択した
ポートは,アプリケーションプログラムの通信用ポートとして使用できません。
また,ActiveSync を使用して開発用 PC と接続する場合には,デバッグメッセージ出力
用ポートとして COM1 を選択しないでください。
工場出荷時の設定は「無効」です。
● COM5 設定
RS-422/485 通信の通信方式と終端抵抗の ON/OFF を設定します。
工場出荷時の設定は,次のとおりです。
・ 通信方式 :2 線式
・ 終端抵抗 :無効
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-10
■ ディスプレイ設定
コントロールパネルアプレット「System Control」の[画面]タブからディスプレイの
設定および参照が可能です。
図 A4.17
[画面]タブ
解像度の設定は[画面]タブのオプションボタンで選択します。
色数の設定はレジストリに保持されているため,[画面]タブからは設定できません。
[画面]タブからはレジストリ情報の参照のみ可能です。
● 解像度設定
設定可能な解像度は,次のとおりです。
・ VGA
:640×480
・ SVGA
:800×600
・ XGA
:1,024×768
・ SXGA
:1,280×1,024
設定した解像度は次回電源を投入したときから有効となります。
工場出荷時の設定は「SVGA」です。
注 意
ディスプレイの機種によっては,設定した解像度で表示できない場合があります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-11
● 画面の色数設定
色数の設定変更はレジストリを変更してください。
コントロールパネルアプレット「System Control」では画面の設定色数を表示していま
す。
補足
レジストリは「リモートレジストリエディタ」で変更できます。
表示色数指定のレジストリキーは,次のとおりです。
[HKEY_LOCAL_MACHINE\Drivers\Display\DDIPU]
"Bpp"= 16
色数に対応するレジストリ値は,次のとおりです。
256
:"Bpp"= 8
65,536
:"Bpp"= 16
フルカラー
:"Bpp"= 24
値変更後はコントロールパネルアプレット「System Control」の[レジストリ]タブで,レジストリ保
存および保存したレジストリの有効設定を行ってください。次回電源投入時に有効となります。
参照
・ レジストリ保存方法については,「A4.3 システムパラメータ設定 ■レジストリ」をごらんくだ
さい。
・ 設定可能な解像度と色数の組み合わせについては,「A2.1.3 各種デバイス ■ディスプレイ」を
ごらんください。
補足
解像度と色数の両方を変更して,次回電源投入時に有効とするためには次の手順が必要です。
・ リモートレジストリエディタで色数設定を変更する。
・ コントロールパネルアプレット「System Control」の[レジストリ]タブからレジストリ保存を実行
し,レジストリ選択設定を「保存レジストリ」に変更する。
・ コントロールパネルアプレット「System Control」の[画面]タブから解像度設定を変更する。
・ コントロールパネルアプレット「System Control」の OK ボタンをクリックして「System Cotrol」
を終了する。
● リフレッシュレート
リフレッシュレートは 60Hz 固定です。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-12
■ その他の設定
コントロールパネルアプレット「System Control」の[その他]タブからその他のシス
テムパラメータ設定が可能です。
図 A4.18
[その他]タブ
● アプリケーションからのリブート許可
ソフトウェアリセット API が呼ばれたときの動作を設定します。
禁止設定の時には API が呼ばれてもリブートしません。
工場出荷時の設定は「禁止」です。
参照
ソフトウェアリセット API については,「PART-D Xancia システム固有ライブラリ概説」をごらんく
ださい。
● 自己診断モード
自己診断モードを設定します。
工場出荷時の設定は「簡易モード」です。
● ウォッチドッグタイマ動作設定
ウォッチドッグタイマの動作モードを設定します。
工場出荷時設定は「動作なし」です。
注 意
システム動作パラメータを変更した場合は, OK ボタンで終了してください。
設定は次回起動時に有効となります。
参照
・ ウォッチドッグタイマ機能について詳しくは,「D1.1.1 ウォッチドッグタイマ機能」および
R Embedded Compact 7 日本語版搭
「Network Solution Controller Xancia N3C4700 シリーズ(Windows○
載)ハードウェア取扱説明書」(IM 34N1C04-01)の「2.18 ウォッチドッグタイマ」をごらんく
ださい。
・ ウォッチドッグタイマ関係の API について詳しくは,「D2.4 ウォッチドッグタイマ制御 API」を
ごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
A4-13
システムバージョン表示
A4.4
Xancia の ソ フ ト ウ ェ ア バ ー ジ ョ ン は , コ ン ト ロ ー ル パ ネ ル ア プ レ ッ ト 「 System
Control」の[バージョン]タブから参照可能です。
図 A4.19
バージョン表示
■ 形名
形名を表示します。
参照
形名については,「A1.2.1 形名一覧」をごらんください。
■ Revision
● REV.
Xancia のレビジョンを示します。
● CE70
システムレビジョンを示します。SDK とのバージョンを比較するときにご使用くださ
い。
参照
SDK のバージョンについては,「B1.2 SDK 概要」をごらんください。
● その他
内部情報です。
■ Serial number
Xancia 本体側面の銘板記載の製造シリアル番号を示します。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
Network Solution Controller Xancia N3C4700 シリーズ
R Embedded Compact 7 日本語版)
(Windows○
ソフトウェア開発手順書
PART-B アプリケーション開発手順概説
IM 34N1N04-01 第 4 版
Xancia N3C4700 シリーズ用 SDK を使用して,ネイティブコードのアプリケーショ
ンを作成,デバッグする手順を説明します。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
B1-1
B1.
概要
Xancia N3C4700 シリーズ用の SDK を使用して,アプリケーションを作成,デバッグす
る手順を説明します。
B1.1
アプリケーション開発手順
Xancia で動作するアプリケーションは Microsoft Visual Studio 2008 で開発します。ア
プリケーション開発手順の概要を次に示します。
■ 開発環境構築
開発環境を構築します。
(1)Microsoft Visual Studio 2008 のインストール
参照
詳しい手順については,「B3.1 Microsoft Visual Studio 2008 のインストール」をごらんください。
(2)Xancia N3C4700 シリーズ用 SDK のインストール
参照
詳しい手順については,「B3.2
開発」をごらんください。
SDK のインストール」,「B4.
SDK を使用したアプリケーション
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B1-2
■ アプリケーション開発
Microsoft Visual Studio 2008 でアプリケーションを開発します。
(1)Microsoft Visual Studio 2008 でのプロジェクトの作成
アプリケーション開発用プロジェクトを作成します。
参照
詳しい手順については,「B4.1 プロジェクトの新規作成」をごらんください。
参照
マイクロソフト社の Web サイトにはアプリケーション開発を行うにあたっての有用な情報が掲載され
ていますので,適宜参照してください。
・ MSDN ライブラリ:
インタフェース仕様,データ構造,未サポート情報 等
・ マイクロソフト サポート技術情報: サポート関連技術情報(既知の問題点 等)
(2)Xancia の設定
Microsoft Visual Studio 2008 と接続するために,Xancia のネットワークおよびシステム設
定を行います。
参照
詳しい手順については,「B4.2 開発用 PC と Xancia の接続」をごらんください。
(3)プロジェクトのデバッグ
Xancia と接続してデバッグします。
参照
詳しい手順については,「B4.3 プロジェクトのデバッグ」をごらんください。
■ アプリケーションプログラムの組み込み
開発したアプリケーションは,次の方法で Xancia に組み込むことができます。
・ SD メモリカード,USB メモリカードなどのメモリカード経由
・ Microsoft Visual Studio 2008 のリモートツールによるダウンロード
・ FTP によるファイル転送
補足
インストールしたアプリケーションを電源投入時に起動したい場合には,\FlashFile フォルダにコピー
し,Launch 用バッチファイル「Start.bat」に登録してください。
参照
Launch 用バッチファイル「Start.bat」の使用方法の詳細については,「A2.2.1 Launch プログラム」を
ごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B1-3
B1.2
SDK 概要
Xancia N3C4700 シリーズ用 SDK とは,Microsoft Visual Studio 2008 を使用したアプリ
ケーション開発のための Xancia N3C4700 シリーズ用ソフトウェア開発キットです。
Xancia のアプリケーション開発には,Xancia 固有のライブラリを含んだ Xancia
N3C4700 シリーズ用 SDK を使用してください。
■ SDK 名称
SDK のファイル名は,次のとおりです。
・ XW7J□□△△.msi
補足
SDK ファイル名の□□は,対応する Xancia ソフトウェア(ROM にプログラム済みの WEC7)のレビ
ジョンを表します。Xancia ソフトウェアレビジョンは,コントロールパネルアプレット「System
Control」の[バージョン]タブで確認できます。
SDK ファイル名の△△は,内部管理情報です。
図 B1.1
ソフトウェアのレビジョン
注 意
SDK のレビジョンは,Xancia のソフトウェアレビジョンと合わせてください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B1-4
■ SDK に含まれるコンポーネント
各種ライブラリ,ヘッダファイル,実行 DLL が含まれています。
(1)Win32 API
Win32 API のサブセットを含みます。対応している代表的機能を次に示します。
・ Automation
・ Communication
・ Date
・ FILEIO
・ GDI
・ MSMQ
・ NDIS
・ OLE
・ WinSock
・ WinInet 他
(2)MFC 等のライブラリ
MFC を含みます。
ATL を含みます。
(3)Xancia システム固有ライブラリ
制御 I/O アクセスライブラリ,ヘッダファイルを含みます。
Xancia システム固有ライブラリ,ヘッダファイルを含みます。
システム固有ライブラリには次の機能があります。
・ RAS 機能(信頼性:Reliability,可用性:Availability,保守性:Serviceability)
・ SRAM アクセス機能
参照
・ 制御 I/O アクセスライブラリについて詳しくは,「PART-C 制御 I/O アクセスライブラリ概説」を
ごらんください。
・ Xancia システム固有ライブラリについて詳しくは,「PART-D Xancia システム固有ライブラリ概
説」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B1-5
(4)開発用 PC と Xancia 間の接続用コンポーネント
Microsoft Visual Studio 2008 との接続用プロトコルは次のとおりです。
・ トランスポートコンポーネント
WEC7 用 TCP/IP コンポーネント
Microsoft ActiveSync
・ サーバコンポーネント
マニュアルサーバー(LAN 経由)
Microsoft ActiveSync(RS-232-C 経由)
注 意
SDK をインストールした開発用 PC では Microsoft Visual Studio 2008 のオンラインヘルプ
で Xancia がサポートしている Win32 API 情報を参照できますが,表示されない API も
あります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
B2-1
B2.
使用機器一覧
使用するハードウェアとソフトウェアについて説明します。
B2.1
ハードウェア
必要なハードウェアは,次のとおりです。
■ PC/AT 互換機
Windows XP SP3,WindowsVista,Windows 7 以降がインストールされた PC とします。
■ Xancia
ARM CPU を搭載した Network Solution Controller です。I/O の種類によって形名が異な
ります。
■ COM ポートコネクタ変換ケーブル
COM ポートのコネクタ変換ケーブルを用意してください。Xancia のシリアル通信コネ
クタ(COM)と D-Sub9 ピンコネクタを変換するケーブルです。Xancia のハードウェア
仕様に準拠して変換ケーブルを作成してください。変換ケーブルは PC の COM ポート
に接続された RS-232-C ケーブルと接続してください。
■ 10BASE-T/100BASE-TX 用ケーブル
LAN 通信用ケーブルです。
■ RS-232-C ケーブル
RS-232-C 通信用ケーブルです。D-Sub9 ピンメスのクロスケーブルをご使用ください。
Xancia でモデム制御線を持つ COM ポートは COM1 です。COM1 を使用してモデム接続,
または ActiveSync による接続を行う場合には,CD 信号と RTS,CTS 信号が接続された
タイプのケーブルをご使用ください。
補足
ActiveSync による接続に使用するタイプで動作確認済みのケーブルは,サンワサプライ社製の「KRS403XF1K」です。参考として KRS-403XF1K の結線図を次に示します。
DCD
RxD
TxD
DTR
SG
DSR
RTS
CTS
図 B2.1
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
DCD
RxD
TxD
DTR
SG
DSR
RTS
CTS
KRS-403XF1K の結線図
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B2-2
B2.2
ソフトウェア
必要なソフトウェアは,次のとおりです。
■ Microsoft Visual Studio 2008 Professional Edition
Microsoft Windows 全般向けのアプリケーション統合開発環境です。マイクロソフト社
の MSDN Subscription 会員となることにより入手できます。
次の 2 種類のソフトウェアが必要です。
・ Microsoft Visual Studio 2008 日本語版
MSDN Subscriptions の Web サイトからダウンロードできます。
・ Microsoft Visual Studio 2008 Service Pack 1
Web サイトからダウンロードできます。
Microsoft Visual Studio 2008 日本語版をインストールした後で適用してください。
補足
・ MSDN Subscription 会員に関しては,マイクロソフト社にお問い合わせください。
・ Microsoft Visual Studio 2008 日本語版のオーダ用のマイクロソフト社の Web サイトは,次のとおりで
す。ただし,URL は 2013/10/01 現在のものです。
http://msdn.microsoft.com/ja-jp/subscriptions/default.aspx
・ Microsoft Visual Studio 2008 Service Pack 1 のオーダ用のマイクロソフト社の Web サイトは,次のと
おりです。ただし,URL は 2013/10/01 現在のものです。
http://www.microsoft.com/ja-jp/download/details.aspx?id=10986
補足
Visual Studio 2008 Express,Visual Studio 2008 Standard は使用できません。
■ ActiveSync 日本語版,WindowsMobile デバイスセンター日本語版
Xancia と開発用 PC をシリアル経由で接続する際に使用するツールです。
マイクロソフト社の Web サイトから無償でダウンロードできます。
次のバージョンに対応しています。
・ ActiveSync 4.5
・ Windows Mobile デバイスセンター6.1
補足
LAN 経由で開発用 PC と接続する場合は必要ありません。
参照
・ActiveSync は,WindowsXP SP3 の OS 上で開発する場合に使用します。
・WindowsMobile デバイスセンターは,WindowsVista 以降の OS 上で開発する場合に使用します。
・ActiveSync の Web サイトは,次のとおりです。ただし,URL は 2013/10/01 現在のものです。
http://www.microsoft.com/ja-jp/download/details.aspx?id=15
・WindowsMobile デバイスセンターの Web サイトは,次のとおりです。ただし,URL は 2013/10/01 現
在のものです。
http://www.microsoft.com/ja-jp/download/details.aspx?id=14
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B2-3
■ Xancia N3C4700 シリーズ用 SDK
Xancia N3C4700 シリーズ用の Microsoft Visual Studio 2008 ソフトウェア開発キットです。
Xancia 固有のライブラリ等を含んでいます。開発用 PC にインストールしてください。
参照
・ Xancia N3C4700 シリーズ用 SDK の概要については,「B1.2 SDK 概要」をごらんください。
・ Xancia N3C4700 シリーズ用 SDK は弊社 Xancia ホームページからダウンロードが可能です。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B3-1
B3.
開発環境構築手順
必要なソフトウェア(Microsoft Visual Studio 2008,SDK 等)をインストールし,開発
環境を整えます。
B3.1
Microsoft Visual Studio 2008 のインストール
開発用 PC に Microsoft Visual Studio 2008 とサービスパック SP1 をインストールして
ください。
画面の表示にしたがってインストールを実行してください。
補足
サービスパックは、必ず SP1 へアップデートしてください。
補足
インストール完了後に,Microsoft Visual Studio 2008 およびサービスパックのリリースノート内容を確
認してください。リリースノートにはマイクロソフト社が報じる既知の問題点に関する情報が記載さ
れています。
注 意
Microsoft Visual Studio 2008 の WEC7 用 Win32 API は,Windows の Visual C++用 Win32
API のサブセットのため,Windows の Visual C++用 Win32 API とパラメータ指定が若干
異なるものがあります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B3-2
B3.2
SDK のインストール
提供する SDK の msi ファイルを実行してください。
この msi ファイルは自己展開型のインストーラです。画面の表示にしたがってインス
トールを実行してください。
必要なハードディスクの空き容量は約 60MB です。
補足
ファイル名は「XW7J□□△△.msi」です。
SDK ファイル名の□□は,対応する Xancia ソフトウェア(ROM にプログラムされた WEC7)のレビ
ジョンを表します。Xancia ソフトウェアレビジョンは,コントロールパネルアプレット「System
Control」の[バージョン]タブで確認できます。
SDK ファイル名の△△は内部管理情報です。
図 B3.1
[バージョン]タブ
注 意
RS-232-C 接続が必要な場合は,ActiveSync 或いは Windows Mobile デバイスセンターも
インストールしてください。
参照
・ActiveSync については,マイクロソフト社の Web サイトをごらんください。ActiveSync の Web サイ
トは,次のとおりです。ただし,URL は 2013/10/01 現在のものです。
http://www.microsoft.com/ja-jp/download/details.aspx?id=15
・WindowsMobile デバイスセンターの Web サイトは,次のとおりです。ただし,URL は 2013/10/01 現
在のものです。
http://www.microsoft.com/ja-jp/download/details.aspx?id=14
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B3-3
B3.2.1
インストール手順
SDK のインストール手順は,次のとおりです。
 操作 ◆
① 自己展開型の msi ファイルを実行します。
⇒ Windows インストーラが起動し,セット
ア ッ プ が 開 始 さ れ ま す 。 [ Network
Solution Controller Xancia N3C4700 シリー
ズセットアップ]ダイアログボックスが
表示されます。
② 次へ(N)> ボタンをクリックします。
⇒ 使用許諾契約書が表示されます。
③ 使用許諾契約書を読み,セットアップを
続ける場合は[使用許諾契約書の条項に
同意します(A)]オプションボタンを
オンにして 次へ(N)> ボタンをク
リックします。
補足
マイクロソフト社の使用許諾契約書と弊社の
使用許諾契約書の 2 種類が,1 つのウィンド
ウ内に表示されます。2 種類の使用許諾契約
書に同意する場合のみセットアップを続行し
てください。
⇒ 使用許諾契約書に同意すると,ユーザ情
報の入力画面が表示されます。
操作③
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B3-4
④ ユーザ情報を入力し, 次へ(N)> ボ
タンをクリックします。
⇒ セットアップの種類を選択する画面が表
示されます。
操作④
⑤ [完全(O)]のボタンをクリックしま
す。
⇒ インストール先フォルダを指定する画面
が表示されます。
操作⑤
⑥ インストール先フォルダを指定し,
次へ(N)> ボタンをクリックします。
⇒ インストールの準備完了の画面が表示さ
れます。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B3-5
⑦ インストール(I) ボタンをクリックし
ます。
⇒ インストールが開始されます。
インストールが終了すると,完了の画面
が表示されます。
操作⑦
⑧ 終了(F) ボタンをクリックします。
操作⑧
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
B4-1
B4.
SDK を使用したアプリケーション開発
SDK を使って VC++でのアプリケーションを開発する方法について説明します。
B4.1
プロジェクトの新規作成
アプリケーションを開発するには,プロジェクトを新規作成し,コードを記述してプロ
ジェクトを保存します。
B4.1.1
Microsoft Visual Studio 2008 プロジェクトの新規作成
Microsoft Visual Studio 2008 によるプロジェクトの新規作成の手順は,次のとおりです。
 操作 ◆
① Microsoft Visual Studio 2008 のメニュー
バーの[ファイル(F)]-[新規作成
(N)]-[プロジェクト(P)]を選択
します。
⇒ [新しいプロジェクト]ダイアログボッ
クスが表示されます。
② 左の[プロジェクトの種類(P)]リス
ト の 中 か ら [ Visual C++ ] の 中 の [ ス
マートデバイス]を選択します。
③ 右の[テンプレート(T)]リストの中
から必要なプロジェクトテンプレートを
選択し,[プロジェクト名(N)]テキ
ストボックスにプロジェクト名を入力し
ます。ここでは,仮に[Win32 スマート
デバイス プロジェクト]を選択します。
④ ウィザードが開かれます。ウィザードの
指示にしたがって,作成する Windows
アプリケーションの種類や機能を選択し
ます。
操作④
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-2
⑤ プラットフォーム選択画面で左の[イン
ストール済み SDK(I)]リストの中か
ら [ XW7J □ □ △ △ _SDK ] を 選 択 し
[>]矢印で選択します。 完了 ボタン
をクリックます。
⇒ 新規のプロジェクトとワークスペースが
作成されます。
⑥ ワークスペースウィンドウでファイル名
をクリックするとファイルが開きます。
必要なコードを記述し,ワークスペース
を保存します。
操作⑤,⑥
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-3
B4.1.2
Microsoft Visual Studio 2008 プロジェクトの設定
[プロジェクトの設定]ダイアログボックスでインクルードファイルとリンクライブラ
リの指定が可能です。Xancia 固有機能を使用する場合には Xancia システム固有ライブ
ラリの Lib ファイルを直接指定してください。
[プロジェクトの設定]ダイアログボックスを表示するには,メニューバーの[プロ
ジェクト(P)]-[プロパティ(P)]を選択します。Lib ファイルは[リンカ]で設
定します。
図 B4.1
プロジェクトの設定
補足
Xancia システム固有ライブラリモジュール名は次のとおりです。
・ 制御 I/O アクセスライブラリ
:XcdApi.lib
・ システム固有ライブラリ
:smdapi.lib
参照
・ 制御 I/O アクセスライブラリについて詳しくは,「PART-C 制御 I/O アクセスライブラリ概説」を
ごらんください。
・ Xancia システム固有ライブラリについて詳しくは,「PART-D Xancia システム固有ライブラリ概
説」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-4
B4.2
開発用 PC と Xancia の接続
Microsoft Visual Studio 2008 には,リモートデバッグ機能およびリモートレジストリエ
ディタのような各種リモートツールがあります。これらのリモート機能を使用するため
には Microsoft Visual Studio 2008 の[ツール]-[オプション]の[デバイスツール]
を設定して,開発用 PC と Xancia を接続する必要があります。
Xancia では,マニュアルサーバーによる LAN 接続と,ActiveSync による RS-232-C 接
続の 2 種類をサポートしています。
B4.2.1
LAN 接続・・・デバイスツール
デバイスツールによる LAN 接続は,次の手順で行います。
(1)Microsoft Visual Studio 2008 の[デバイスツール]の設定
(2)Xancia のネットワーク設定
(3)デバイスツールによる接続
■ Microsoft Visual Studio 2008 の[デバイスツール]の設定
Microsoft Visual Studio 2008 の[ツール]-[オプション]の[デバイスツール]ダイア
ログボックスで設定します。
構成を設定する手順は,次のとおりです。
 操作 ◆
① [デバイスツール]ダイアログボックス
を表示します。
補足
[デバイスツール]ダイアログボックスを表
示するには,Microsoft Visual Studio 2008 のメ
ニューバーの[ツール(T)]-[オプショ
ン(O)]の[デバイスツール][デバイ
ス]を選択します。
② プラットフォームに[XW7J□□△△
_SDK]を選択し,デバイスに[XW7J□
□△△_SDK ARMV7 Device]を選択し
ます。既定のデバイスを[XW7J□□△
△_SDK ARMV7 Device]とします。
⇒ プロパティ(P) ボタンをクリックしま
す。
操作①②
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-5
③ [トランスポート(R)]ドロップダウ
ンリストで[TCP 接続トランスポート]
を選択し, 構成(C) ボタンをクリッ
クします。
⇒ [TCP/IP トランスポート構成]ダイアロ
グボックスが表示されます。
④ [ 固 定 ポ ー ト 番 号 を 使 用 す る ( U) ]
チェックボックスをオンにし,デバイス
IP アドレスの[特定の IP アドレスを使
用(S)]に対象 Xancia の IP アドレスを設
定して, OK ボタンをクリックします。
⇒ [デバイスプロパティ]ダイアログボッ
クスに戻ります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-6
■ Xancia のネットワーク設定
Xancia のネットワーク設定を使用環境に合わせます。
コントロールパネルを開き,コントロールパネルアプレット「System Control」を実行
してください。
ネットワーク設定をする手順は,次のとおりです。
 操作 ◆
① コントロールパネルアプレット「System
Control」を実行します。
⇒ [System Control Properties]ダイアログ
ボックスが表示されます。
② [ネットワーク]タブを表示し,ネット
ワーク項目を使用環境に合わせて設定し
ます。
補足
ネットワーク設定の項目は次のとおりです。
・DHCP
・IP アドレス
・サブネットマスク
・既定のゲートウェイ
・DNS
・WINS
MAC アドレスは,参照のみ可能です。
操作②,③
参照
ネットワーク設定については,「A4.2 ネッ
トワークパラメータ設定」をごらんください。
③ DNS,WINS 設定が必要な場合には,
詳細 ボタンをクリックします。
⇒ [ネットワーク詳細設定]ダイアログ
ボックスが表示されます。
④ 必要な項目を設定し, OK ボタンをク
リックします。
⇒ [ネットワーク詳細設定]ダイアログボッ
クスが閉じ,[System Control Properties]
ダイアログボックスに戻ります。
⑤ OK ボタンをクリックします。
⇒ コントロールパネルアプレット「System
Control」が終了します。
⑥ Xancia を再起動します。
操作④
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-7
■ デバイスへの接続
デバイスへの接続により Microsoft Visual Studio 2008 とリモート接続します。
[デバイスへの接続]で接続テストを行います。手順は,次のとおりです。
 操作 ◆
① telnet を IP アドレス指定(またはホスト
名指定)で実行します。
⇒ Xancia にログインします。
補足
IP アドレス指定で起動する場合,ネットワー
ク設定で指定した IP アドレスを指定します。
② デバイスと VS2008 の接続を確立するた
めの接続用コマンドを実行します。
⇒
[start ConmanClient2.exe]
[start CMAccept.exe]
補足
接続用コマンドは,常駐プログラムの為プロ
ンプトへ戻りません。"start" で実行すると毎
回 telnet する必要がありません。
③ VS2008 の メ ニ ュ ー か ら [ ツ ー ル ] -
[デバイスへの接続]を選択します。
プラットフォーム(P):[XW7J0000_SDK]
デバイス(D):[XW7Jxxxx_SDK ARMV7
Device]
⇒接続ボタンを押します。
④ 接続中のダイアログが表示されます。
⇒接続に成功しました。と表示されます。
注 意
②のコマンドを行ってから,接続ボタンを押
すまでの時間は,約 30 秒以内に行ってくださ
い。時間が経過すると自動的に切断されます。
その場合,再度②により接続コマンドを実行
した後実施してください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-8
補足
接続の失敗すると,右のような画面を表示し
ます。失敗した場合には,ネットワークの設
定確認を行うとともに,②を再度実施してく
ださい。
以上の操作で,開発用 PC と Xancia との接続テストが完了します。
注 意
Microsoft Visual Studio 2008 のリモートツール接続,またはプロジェクトのデバッグ用接続も同様の操
作で接続されます。
なお,すでに接続が確立済みの場合であっても,ツール単位で(VS2008,リモートツール)で再度②
の[CMAccept.exe] は,毎回実行する必要があります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-9
■ リモートツール接続
Microsoft Visual Studio 2008 には開発支援用にリモートツールが用意されています。利用
可能なリモートツールは次のとおりです。
表 B4.1
リモートツール一覧
リモートツール名
リモートファイルビューア
リモートヒープウォーカ
リモートプロセスビューア
リモートレジストリエディタ
リモートスパイ
リモートズームイン
概要
Xancia のディレクトリの階層構造を表示します。
Xancia で実行中のヒープ ID やプロセスのフラグに関する詳細情報を表
示します。割り当てられた全メモリをアプリケーションが解放するかど
うかを確認することができます。
Xancia で実行中のプロセスやスレッドの詳細情報を表示できます。実行
中のプロセス,スレッド ID,およびモジュールの一覧を表示します。
Xancia の Windows CE4.2 システムレジストリの編集とレジストリキーの
追加,削除,編集ができます。
Xancia で実行中のアプリケーションウィンドウが受信したメッセージを
表示することができます。
Xancia の画面イメージを開発用 PC で表示できます。
参照
Microsoft Visual Studio 2008 のリモートツールについて詳しくは,Microsoft Visual Studio 2008 のヘルプ
をごらんください。
リモートツールを使用するためには,開発用 PC と Xancia を接続する必要があります。
手順は,次のとおりです。接続テストとほぼ同様の操作です。
 操作 ◆
① ス タ ー ト メ ニ ュ ー の Microsoft Visual
Studio 2008 の [ Visual Studio Remote
Tools]メニューから起動したいリモート
ツールを選択します。
操作①
② 前項のデバイスへの接続[①,②]を実
行します。
⇒ telnet にて Xancia へアクセスした後、
[start ConmanClient2.exe]
[start CMAccept.exe]
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-10
③ リモートツールが起動され,接続する
[デバイスの選択]ダイアログボックス
が表示されます。右図は,「リモート
ズームイン」を起動した場合の例です。
④ [XW4J□□△△ Device]を選択し,
OK(O) ボタンをクリックします。
⇒ デバイスへ接続されます。
操作③④
⑤ 接続中のダイアログが表示されます。
⇒接続に成功すると、各情報が表示されま
す。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-11
B4.2.2
RS-232-C 接続・・・ActiveSync
ActiveSync による RS-232-C 接続は,次の手順で行います。
(1)Microsoft Visual Studio 2008 の[デバイスツール]の設定
(2)Xancia のシステム設定
(3)ActiveSync による接続テスト
RS-232-C 接続での ActiveSync 接続に関しては、別途、お問い合わせください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B4-12
B4.3
プロジェクトのデバッグ
Microsoft Visual Studio 2008 で開発したアプリケーションはデバイスツールによる接続
を使用してデバッグすることができます。
B4.3.1
Microsoft Visual Studio 2008 プロジェクトのデバッグ
作成した Microsoft Visual Studio 2008 のプロジェクトをデバッグする手順は,次のとお
りです。ここでは,デバイスツールによる LAN 接続を例として操作します。
 操作 ◆
① Microsoft Visual Studio 2008 のプロジェ
クトを開きます。
② プロジェクトのターゲットデバイス名を
確認します。
デバイス名:
XW7J□□△△_SDK ARMV7 Device
参照
デバイスツールの構成については,「B4.2
開発用 PC と Xancia の接続」をごらんくださ
い。
③ ブレークポイント設定などのデバッグ環
境を整えます。
④ メニューバーの[デバッグ(D)]-
[デバッグの開始(S)]-[実行
(G)]を選択します。
⇒配置が実行されて、デバッグできる状態
となります。
注 意
VS2008 でのデバッグ実行する前に、以下を実施する必要があります。
telnet にて Xancia へアクセスし、以下を実行します。
[start ConmanClient2.exe]
[start CMAccept.exe]
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B5-1
B5.
アプリケーションプログラムの組み込み
開発完了したアプリケーションを Xancia に組み込む方法について説明します。
B5.1
組み込み方法
アプリケーションを Xancia で実行できるように組み込みます。
■ 組み込み手段
開発したアプリケーションは次の手段で Xancia に組み込むことができます。
● SD カードまたは USB メモリなどのメモリカード経由
リリースビルドした実行ファイルを開発用 PC 上でメモリカードにコピーしてください。
各メモリカードは WEC7 のファイルシステム上のフォルダとして認識されます。フォ
ルダ名は次のとおりです。
・ SD カード
:\SDMemory,\SDMemory2
・ USB メモリ
:\USBStorage
各メモリカード用フォルダからインストール先フォルダにコピーしてください。
● Microsoft Visual Studio 2008 のリモートツールによるダウンロード
リリースビルドした実行ファイルを開発用 PC からリモートファイルビューアを使用し
て,インストール先フォルダにダウンロードしてください。
● FTP によるファイル転送
開発用 PC から Xancia の FTP サーバに接続し,リリースビルドした実行ファイルをイン
ストール先フォルダに転送してください。
補足
FTP サーバには,開発用 PC のコマンドプロンプトから FTP コマンドを使用して接続してください。
なお,FTP サーバを使用する場合は,次の設定が必要です。
・ レジストリで FTP サーバを Enable にし,接続ユーザを登録してください。レジストリは,Microsoft
Visual Studio 2008 のツールである「リモートレジストリエディタ」により参照および設定変更がで
きます。FTP サーバのレジストリキーは,次のとおりです。
[HKEY_LOCAL_MACHINE\Comm\FTPD]
"IsEnabled"=dword:00000001
"AllowAnonymous"=dword:00000000
…匿名を許さない
"NoSystemInfo"=dword:00000001
"UserList"="xanciauser0;xanciauser1"
…任意のユーザー名に変更してください
"DefaultDir"="任意のディレクトリ名"
※パスワードは別途設定
参照
・ パスワードの設定については,「A2.1.7 その他システム関連」をごらんください。
・ FTP サーバについては,「A2.1.4 インターネットサービス ■FTP サーバ」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B5-2
■ 組み込み先
電源投入時に起動するアプリケーションは\FlashFile フォルダに格納してください。
その他のアプリケーションは SD カードまたは USB メモリに格納してください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
B5-3
B5.2
自動起動
電源投入時にアプリケーションを自動起動する場合には,Launch 用のバッチファイル
(Start.bat)に記述してください。
参照
Start.bat の使用方法について詳しくは,「A2.2.1 Launch プログラム」をごらんください。
注 意
Start.bat で自動起動するアプリケーションは\FlashFile フォルダに格納してください。
Start.bat が実行されるタイミングでは SD カードまたは USB メモリ用ドライバがロード
されていない可能性があります。SD カードまたは USB メモリに格納したアプリケー
ションを Start.bat から呼び出す場合は,必要に応じ,アプリケーションを実行する前に
時間待ちしてください。時間待ちアプリケーションは事前に作成して\FlashFile フォル
ダに格納しておいてください。
[SD カードのアプリケーションを自動起動する Start.bat の例]
cd \FlashFile
Wait5sec.exe
cd \SDMemory
Start TestApp.exe
← 時間待ちアプリケーションを実行
← \SDMemory フォルダへ移動
← SD カード上の TestApp.exe を実行
[時間待ちアプリケーションの例-5 秒待ち]
#include "stdafx.h"
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR
lpCmdLine,
int
nCmdShow)
{
Sleep(5000);
return 0;
}
補足
設定ファイルや環境ファイルを読み込みながら起動するアプリケーションでは、Start.bat で自動実行す
る際、アプリケーションが設定ファイルや環境ファイルの保管場所を認識できない場合があります。
アプリケーション起動時に読み込む設定ファイルや環境ファイルは、必要に応じて、アプリケーショ
ンと同じフォルダ、Windows システムフォルダ、FlashFile フォルダなどに事前コピーしてください。
(Start.bat 内に、アプリケーションの実行前に Copy コマンドでファイルコピーするよう記述してくだ
さい。)
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Network Solution Controller Xancia N3C4700 シリーズ
R Embedded Compact 7 日本語版)
(Windows○
ソフトウェア開発手順書
PART-C 制御 I/O アクセスライブラリ概説
IM 34N1N04-01 第 4 版
Xancia の制御 I/O アクセスライブラリについて説明します。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
C1-1
C1.
概要
Xancia の制御 I/O アクセスライブラリ(これ以降,「制御 I/O アクセスライブラリ」と
表記します)について説明します。
C1.1
機能概要
制御 I/O アクセスライブラリはユーザアプリケーションからの I/O 要求に対し,Xancia
の制御 I/O へのアクセスを行うライブラリです。ライブラリでアクセスできる I/O は次
のとおりです。
・ 接点入力
・ 接点出力
・ アナログ入力
・ カウンタ入力
・ PWM 出力
・ 制御用タイマ
参照
・ 制御 I/O アクセスライブラリに関するサンプルプログラムは,弊社 Xancia ホームページをごらんく
ださい。
R
・ 制御 I/O の詳細については「Network Solution Controller Xancia N3C4700 シリーズ(Windows○
Embedded Compact 7 日本語版搭載)ハードウェア取扱説明書」(IM 34N1C04-01)の「2.11 接点
入力」,「2.12 接点出力」,「2.13 アナログ入力」,「2.15 カウンタ入力」,「2.16 PWM
出力」をごらんください。
C1.2
制限事項
制御 I/O アクセスライブラリ使用上の制限は次のとおりです。
・ I/O 各チャネルに対し,マルチプロセス,マルチスレッドでアクセスする場合には,
アプリケーションで排他制御してください。排他制御を行わない場合には,1 チャ
ネルあたり 1 プロセス,1 スレッドでのアクセスとしてください。
・ 割り込み待ちは 1 チャネルにつき 1 スレッドとしてください。
・ Xancia のモデルにより対応している API が一部異なります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
C2-1
C2.
インタフェース仕様
ユーザアプリケーションから I/O へアクセスする,アクセスライブラリインタフェース
仕様について説明します。
C2.1
概論
インタフェースの一覧とヘッダファイルについて説明します。
C2.1.1
API 一覧
API は,次のとおりです。
表 C2.1
全モデル共通 API 一覧
API リスト
制御 I/O デバイス Open/Close
XcdOpen
XcdClose
接点入力(DI0~DI31)
設定
XcdDiSetFilter
アクセス
XcdDiGetFilter
入力フィルタ設定値の参照
XcdDiSetEdge
XcdDiGetEdge
XcdDiInputBit
XcdDiInputBitPtn
割り込み検出エッジの設定
割り込み検出エッジ設定値の参照
指定接点入力の読み出し
複数接点入力の読み出し
ビットパターンで読み出し点指定
複数接点入力の読み出し
ビットパターンで読み出し点指定
指定接点入力の割り込み設定を初期化
指定接点入力からの割り込みを許可
指定接点入力からの割り込みを禁止
指定接点入力からの割り込み待ち
指定接点入力からの割り込み待ち解除
フェイル発生時動作モードの設定
フェイル発生時動作モード設定値の参照
フェイル発生時プリセット値の設定
フェイル発生時プリセット値の参照
指定接点出力の読み出し
複数接点出力の読み出し
ビットパターンで読み出し点指定
複数接点出力の読み出し
ビットパターンで読み出し点指定
指定接点出力への書き込み
複数接点出力への書き込み
ビットパターンで書き込み点指定
複数接点出力への書き込み
ビットパターンで書き込み点指定
4 点単位
4 点単位
1 点単位
1 点単位
1 点単位
16 点一括
ビットパターン表記
16 点一括
DWORD 配列表記
1 点単位
16 点一括
ビットパターン表記
16 点一括
DWORD 配列表記
指定タイマの動作条件設定
指定タイマの現在値読み込み
指定タイマのカウント開始
指定タイマのカウント停止
指定タイマからの割り込み待ち
指定タイマからの割り込み待ち解除
1 点単位
1 点単位
1 点単位
1 点単位
1 点単位
1 点単位
割り込み
制御
XcdDiInitInterrupt
XcdDiEnableInterrupt
XcdDiDisableInterrupt
XcdDiWaitInterrupt
XcdDiCancelInterrupt
接点出力(DO0~DO15)
設定
XcdDoSetFailMode
XcdDoGetFailMode
XcdDoSetPreset
XcdDoGetPreset
アクセス
XcdDoInputBit
XcdDoInputBitPtn
XcdDiInputBitAry
XcdDoOutputBit
XcdDoOutputBitPtn
XcdDoOutputBitAry
表 C2.2
制御 I/O デバイスの Open
制御 I/O デバイスの Close
接点 0-3 :1 点単位
その他 :4 点単位
接点 0-3 :1 点単位
その他 :4 点単位
接点 0-7 :4 点単位
接点 0-7 :4 点単位
1 点単位
32 点一括
ビットパターン表記
32 点一括
DWORD 配列表記
接点 0-7 :1 点単位
接点 0-7 :1 点単位
接点 0-7 :1 点単位
接点 0-7 :1 点単位
接点 0-7 :1 点単位
XcdDiInputBitAry
タイマ
設定
アクセス
動作制御
機能
XcdTmrSetSetting
XcdTmrGetTime
XcdTmrStart
XcdTmrStop
XcdTmrWaitInterrupt
XcdTmrCancelInterrupt
入力フィルタの設定
N3C4721 専用 API 一覧
API リスト
アナログ入力(AI0~AI7)
設定
XcdAiSetRange
XcdAiGetRange
アクセス
XcdAiInputDataAry
機能
アナログ入力レンジの設定
アナログ入力レンジ設定値の参照
アナログ入力 8 チャネル一括読み込み
IM 34N1N04-01
8 チャネル一括
8 チャネル一括
8 チャネル一括
4th Edition : Jun. 19, 2015-00
C2-2
表 C2.3
N3C4711-F4W7J/L01,N3C4721-F4W7J/L01 専用 API 一覧
API リスト
カウンタ入力(オプション:DI0~DI3)
設定
XcdCntSetFilter
XcdCntGetFilter
動作制御
XcdCntSetInputControl
XcdCntGetInputControl
アクセス
XcdCntInputData
XcdCntInputDataAry
XcdCntOutputData
XcdCntOutputDataAry
表 C2.4
入力フィルタの設定。
入力フィルタ設定値の参照。
カウンタ動作の設定(カウント/停止)。
ビットパターンで対象カウンタ指定。
カウンタ動作状態の参照(カウント/停止)。
ビットパターンで対象カウンタ指定。
指定カウンタの読み出し。
複数カウンタの読み出し。
ビットパターンで対象カウンタ指定。
指定カウンタへの書き込み。
複数カウンタへの書き込み。
ビットパターンで対象カウンタ指定。
1 点単位
1 点単位
4 点一括
ビットパターン表記
4 点一括
ビットパターン表記
1 点単位
4 点一括
配列表記
1 点単位
4 点一括
配列表記
N3C4711-F4W7J/M01,N3C4721-F4W7J/M01 専用 API 一覧
API リスト
PWM 出力(オプション:DO0~DO3)
設定
XcdPwmSetOutputConnect
XcdPwmGetOutputConnect
XcdPwmSetOutputControl
XcdPwmGetOutputControl
アクセス
機能
XcdPwmSetSetting
XcdPwmGetSetting
XcdPwmSetFailMode
XcdPwmGetFailMode
XcdPwmInputData
XcdPwmInputDataAry
XcdPwmOutputData
XcdPwmOutputDataAry
機能
PWM 有効/無効設定。
ビットパターンで出力点指定。
PWM 有効/無効設定値参照。
ビットパターンで出力点指定。
PWM 動作設定(PWM 出力/停止)。
ビットパターンで出力点指定。
PWM 動作設定(PWM 出力/停止)値参照。
ビットパターンで出力点指定。
指定チャネルの動作条件設定(周期)。
動作条件設定(周期)値参照。
フェイル発生時動作の設定。
フェイル発生時動作設定値の参照。
指定出力のデューティ比の読み出し。
指定出力のデューティ比の読み出し。
ビットパターンで対象出力点指定。
指定出力のデューティ比の書き込み。
指定出力のデューティ比の書き込み。
ビットパターンで対象出力点指定。
4 点一括
ビットパターン表記
4 点一括
ビットパターン表記
4 点一括
ビットパターン表記
4 点一括
ビットパターン表記
1 点単位
1 点単位
1 点単位
1 点単位
1 点単位
4 点単位
配列表記
1 点単位
4 点単位
配列表記
参照
制御 I/O アクセスライブラリに関するサンプルプログラムは,弊社 Xancia ホームページをごらんくだ
さい。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-3
C2.1.2
ヘッダファイル
■ インクルードファイル
アプリケーションプログラムで次のヘッダファイルをインクルードしてください。
Xancia.h
補足
ヘッダファイル「Xancia.h」にはライブラリの API プロトタイプ宣言が記述してあります。本ヘッダ
ファイルは Xancia N3C4700 シリーズ用 SDK に含まれています。
参照
SDK のインストール方法については,「B3.2 SDK のインストール」をごらんください。
■ 定義ファイル
アプリケーションプログラムでライブラリを使用する場合の各種定義は次のヘッダファ
イルを参照してください。
XCDIoctl.h
補足
ヘッダファイル「XCDIoctl.h」にはエラーコード,インタフェース構造体定義が記述してあります。
本ヘッダファイルは Xancia N3C4700 シリーズ用 SDK に含まれています。
参照
SDK のインストール方法および PATH の設定については,「B3.2 SDK のインストール」をごらんく
ださい。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-4
C2.1.3
ライブラリファイル
アプリケーションプログラムで本ライブラリを使用する場合には VS2008 で,明示的に
次のライブラリをリンクしてください。
XcdApi.lib
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-5
C2.2
制御 I/O デバイスのオープン
制御 I/O デバイスのオープンは XcdOpen 関数を使用します。
■ XcdOpen 関数
● プロトタイプ
XcdOpen 関数のプロトタイプは,次のとおりです。
HANDLE XcdOpen (
void
);
● パラメータ
使用しません。
● 戻り値
処理が成功した場合は,戻り値として制御 I/O デバイスのハンドルを返します。
処理が失敗した場合は,戻り値として「INVALID_HANDLE_VALUE」を返します。
補足
本関数は,CreateFile 関数の wrapper 関数です。デバイス名「"XCD1:"」でデバイスオープンします。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-6
C2.3
制御 I/O デバイスのクローズ
制御 I/O デバイスのクローズは XcdClose 関数を使用します。
■ XcdClose 関数
● プロトタイプ
XcdClose 関数のプロトタイプは,次のとおりです。
BOOL XcdClose( HANDLE hHandle );
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
・ 本関数は CloseHandle 関数の wrapper 関数です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-7
C2.4
制御 I/O アクセス用 API
Xancia の制御 I/O アクセス用 API を示します。
■ I/O アクセス関数概要
● プロトタイプ
I/O 関数のプロトタイプは,次のとおりです。
・ 接点入力関係:
BOOL XcdDiXXXXXX (HANDLE hHandle,
引数構造体);
・ 接点出力関係:
BOOL XcdDoXXXXXX (HANDLE hHandle,
引数構造体);
・ アナログ入力関係:
BOOL XcdAiXXXXXX (HANDLE hHandle,
引数構造体);
・ タイマ関係:
BOOL XcdTmrXXXXXX (HANDLE hHandle,
引数構造体);
・ カウンタ入力関係(オプション):
BOOL XcdCntXXXXXX (HANDLE hHandle,
引数構造体);
・ PWM 出力関係(オプション):
BOOL XcdPwmXXXXXX (HANDLE hHandle,
引数構造体);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ 引数構造体
各 API で指定している構造体を使用してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ オプション機能がない Xancia でカウンタ入力,PWM 出力用 API を使用した場合には「FALSE」リ
ターンします。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-8
C2.4.1
接点入力フィルタ設定/参照
制御 I/O に対し,接点入力の入力フィルタ設定/参照を行います。
チャネル 0 からチャネル 3 は個別設定,チャネル 4 からチャネル 31 は 4 チャネル単位
での設定です。
● プロトタイプ
・ フィルタ設定
XcdDiSetFilter 関数のプロトタイプは,次のとおりです。
BOOL XcdDiSetFilter(
HANDLE hHandle,
DI_FILTER_SETTING *pFilterSet
);
・ フィルタ設定値参照
XcdDiGetFilter 関数のプロトタイプは,次のとおりです。
BOOL XcdDiGetFilter(
HANDLE hHandle,
DI_FILTER_SETTING *pFilterSet
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pFilterSet
次の_DI_FILTER_SETTING 型の構造体で,フィルタ設定情報を格納します。
typedef struct _DI_FILTER_SETTING {
DWORD dwGroup;
// 設定グループ指定
DWORD dwFilter;
// フィルタ設定値
} DI_FILTER_SETTING, *PDI_FILTER_SETTING;
>dwGroup:
入力フィルタ設定対象のチャネル番号グループを指定します。
設定可能な値は,次のとおりです。
表 C2.5
dwGroup 設定値
設定値
DI_FILTER_GRP_00
DI_FILTER_GRP_01
DI_FILTER_GRP_02
DI_FILTER_GRP_03
DI_FILTER_GRP_07_04
DI_FILTER_GRP_11_08
DI_FILTER_GRP_15_12
DI_FILTER_GRP_19_16
DI_FILTER_GRP_23_20
DI_FILTER_GRP_27_24
DI_FILTER_GRP_31_28
設定対象チャネル番号グループ
接点入力のチャネル 0
接点入力のチャネル 1
接点入力のチャネル 2
接点入力のチャネル 3
接点入力のチャネル 4~7
接点入力のチャネル 8~11
接点入力のチャネル 12~15
接点入力のチャネル 16~19
接点入力のチャネル 20~23
接点入力のチャネル 24~27
接点入力のチャネル 28~31
補足
N3C4721 の場合,接点入力のチャネル 0~15 が有効です。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-9
>dwFilter:
入力フィルタ設定値を指定します。入力フィルタは LowPassFilter です。
設定可能な値は,次のとおりです。
表 C2.6
dwFilter 設定値
設定値
DI_FILTER_NONE
DI_FILTER_50us
DI_FILTER_1ms
DI_FILTER_16ms
設定値の意味
フィルタなしです。
入力最小パルス幅は 50μs です。
入力最小パルス幅は 1ms です。
入力最小パルス幅は 16ms です。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DI_FILTER_SETTING SetFlt, GetFlt;
// 接点入力フィルタ設定
// 端子 2 の入力フィルタを「パルス幅 50μs 以上が有効」に設定
SetFlt.dwGroup = DI_FILTER_GRP_02;
// 接点入力チャネル 2
SetFlt.dwFilter = DI_FILTER_50us;
// パルス幅 50μs 以上を有効とする
hXcd = XcdOpen();
ret = XcdDiSetFilter( hXcd, &SetFlt );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiSetFilter FALSE 0x%x\r\n"),dwErr));
}
ret = XcdDiGetFilter( hXcd, &GetFlt );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiGetFilter FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-10
C2.4.2
接点入力割り込み検出エッジ設定/参照
接点入力で割り込みを使用する場合の割り込み検出エッジ設定/参照を行います。
チャネル 0 からチャネル 7 まで 4 チャネル単位での設定です。
● プロトタイプ
・ エッジ設定
XcdDiSetEdge 関数のプロトタイプは,次のとおりです。
BOOL XcdDiSetEdge(
HANDLE hHandle,
DI_EDGE_SETTING *pEdgeSet
);
・ エッジ設定値参照
XcdDiGetEdge 関数のプロトタイプは,次のとおりです。
BOOL XcdDiGetEdge(
HANDLE hHandle,
DI_EDGE_SETTING *pEdgeSet
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pEdgeSet
次の_DI_EDGE_SETTING 型の構造体で,割り込み検出エッジ設定情報を格納しま
す。
typedef struct _DI_EDGE_SETTING {
WORD wGroup;
// 設定グループ
WORD wEdge;
// エッジ検出時動作指定
} DI_EDGE_SETTING, *PDI_EDGE_SETTING;
>wGroup:
入力割り込み設定対象のチャネル番号グループを指定します。
設定可能な値は,次のとおりです。
表 C2.7
wGroup 設定値
設定値
DI_EDGE_GRP_03_00
DI_EDGE_GRP_07_04
設定対象チャネル
接点入力のチャネル 0~チャネル 3
接点入力のチャネル 4~チャネル 7
>wEdge:
割り込み検出エッジを設定します。
設定可能な値は,次のとおりです。
表 C2.8
wEdge 設定値
設定値
DI_DETECT_RISE
DI_DETECT_FALL
DI_DETECT_BOTH
設定値の意味
OFF→ON の変化で割り込み発生します。
ON→OFF の変化で割り込み発生します。
OFF→ON または ON→OFF の変化で割り込み発生
します。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-11
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DI_EDGE_SETTING SetEdge, GetEdge;
// 接点入力割り込み検出エッジ設定
// 端子 0-3 の割り込み検出エッジ設定を「立ち上がりエッジで割り込み検出」に設定
SetEdge.wGroup = DI_EDGE_GRP_03_00;
// 接点入力チャネル 0 から 3
SetEdge.wEdge = DI_DETECT_RISE;
// 立ち上がりエッジで割り込み検出とする
hXcd = XcdOpen();
ret = XcdDiSetEdge ( hXcd, &SetEdge );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiSetEdge FALSE 0x%x\r\n"),dwErr));
}
ret = XcdDiGetEdge( hXcd, &GetEdge );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiGetEdge FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-12
C2.4.3
接点入力 1 点読み出し
「XcdDiInputBit」は,制御 I/O の接点入力を 1 点指定し,状態を読み出します。
● プロトタイプ
XcdDiInputBit 関数のプロトタイプは,次のとおりです。
BOOL XcdDiInputBit(
HANDLE hHandle,
DIO_BIT *pBit
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pBit
次の_DIO_BIT 型の構造体で,I/O 読み出し情報を格納します。
typedef struct _DIO_BIT {
DWORD dwNumber;
// チャネル番号
DWORD dwStatus;
// 接点ステータス
0~31
1:ON
0:OFF
} DIO_BIT, *PDIO_BIT;
>dwNumber:
接点入力のチャネル番号 0~31 を指定します。
「0」が接点入力のチャネル 0,「31」が接点入力のチャネル 31 を示します。
>dwStatus:
読み出した接点入力の状態が格納されます。
・「0」の場合 :接点 OFF
・「1」の場合 :接点 ON
補足
N3C4721 では接点入力点数は 16 点です。この場合,dwNumber はチャネル 0 からチャネル 15 を指定し
てください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-13
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DIO_BIT bit;
// 接点入力
// チャネル 2 を読み出し
bit.dwNumber = 2;
// 接点ビット位置
0~31
bit.dwStatus = 0;
// 接点ステータス
初期化
hXcd = XcdOpen();
ret = XcdDiInputBit( hXcd, &bit );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiInputBit FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-14
C2.4.4
接点入力多点読み出し(ビットパターン表記)
「XcdDiInputBitPtn」は,制御 I/O の接点入力を複数指定し,状態をビットパターン表記
で読み出します。
● プロトタイプ
XcdDiInputBitPtn 関数のプロトタイプは,次のとおりです。
BOOL XcdDiInputBitPtn(
HANDLE hHandle,
DIO_BIT_PTN *pBitPtn
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pBitPtn
次の_DIO_BIT_PTN 型の構造体で,I/O 読み出し情報を格納します。
typedef struct _DIO_BIT_PTN {
DWORD dwMask;
// 有効ビット指定マスク(ex. ビット 2->チャネル 2)
DWORD dwPattern;
// 読み出し接点入力状態のビットパターンデータ
} DIO_BIT_PTN, *PDIO_BIT_PTN;
>dwMask:
読み出しを行う接点入力をビットパターンで指定します。
読み出しを行うチャネルのビットを「1」にしてください。
接点入力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 31 :ビット 31
読み出しを行わない場合には対象ビットを「0」にしてください。
>dwPattern:
読み出した接点入力の状態がビットパターンで格納されます。
・「0」の場合 :接点 OFF
・「1」の場合 :接点 ON
dwMask で読み出し指定をしなかったチャネルに関するビットは無効値です。
補足
N3C4721 では接点入力点数は 16 点です。この場合,dwPattern のビット 16 からビット 31 の値は,無
効値となります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-15
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DIO_BIT_PTN ptn;
// 接点入力
// チャネル 0-15(ビット位置 0-15)のビットパターンを読み出し
ptn.dwMask = 0xffff;
// 読み出し指定ビットパターン
ptn.dwPattern = 0;
// 接点入力読み込みのビットパターン(DWORD)0(OFF),1(ON)
0(無効),1(読み出し)
hXcd = XcdOpen();
ret = XcdDiInputBitPtn( hXcd, &ptn );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiInputBitPtn FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-16
C2.4.5
接点入力多点読み出し(配列表記)
「XcdDiInputBitAry」は,制御 I/O の接点入力を複数指定し,状態を DWORD の転送
バッファに読み出します。
● プロトタイプ
XcdDiInputBitAry 関数のプロトタイプは,次のとおりです。
BOOL XcdDiInputBitAry(
HANDLE hHandle,
DIO_BIT_ARRAY *pBitAry
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pBitAry
次の_DIO_BIT_ARRAY 型の構造体で,I/O 読み出し情報を格納します。
typedef struct _DIO_BIT_ARRAY {
DWORD dwMask;
// 有効ビット指定マスク
DWORD *pdwTopAddress;
// 転送バッファ先頭アドレス
DWORD dwBuffSize;
// 転送バッファサイズ(Byte)
} DIO_BIT_ARRAY, *PDIO_BIT_ARRAY;
>dwMask:
読み出しを行う接点入力をビットパターンで指定します。
読み出しを行うチャネルのビットを「1」にしてください。
接点入力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 31 :ビット 31
読み出しを行わない場合には対象ビットを「0」にしてください。
>pdwTopAddress:
読み出した接点入力の状態を格納する転送バッファの先頭アドレスを指定します。
>dwBuffSize:
転送バッファサイズを Byte で指定します。
補足
・ 転送バッファは各モデルごとに 1 チャネルあたり DWORD でチャネル数分確保してください。
N3C4711 の場合は 32 チャネル分(すなわち 128Byte 以上),N3C4721 の場合は 16 チャネル分(す
なわち 64Byte 以上)を必ず確保してください(なお,本関数でアクセスする領域サイズは固定で
す)。
・ N3C4721 では接点入力点数は 16 点です。この場合,dwMask はビット 0 からビット 15 を指定して
ください。
・ 読み出し値はチャネル 0 から順に格納されます。
・ 読み出し指定されていないチャネルのデータは無効データです。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-17
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DIO_BIT_ARRAY Ary;
DWORD buf[32];
// 接点入力
// 端子 0-31(ビット位置 0-31)のビットパターンを読み出し
Ary.dwMask = 0x0000ffff;
// 読み出し指定ビットパターン
Ary.pdwTopAddress = &buf[0];
// バッファ先頭アドレス
Ary.dwBufSize = sizeof(buf);
// バッファサイズ
0(無効),1(読み出し)
hXcd = XcdOpen();
ret = XcdDiInputBitAry( hXcd, &Ary );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiInputBitAry FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-18
C2.4.6
接点入力割り込み動作
指定した接点入力からの割り込み動作を制御します。割り込み入力可能な接点入力チャ
ネルはチャネル 0 からチャネル 7 までです。指定チャネルごと個別に設定します。
割り込み動作制御用 API を使用する場合には,事前に接点入力割り込み検出エッジの設
定を必ず行ってください。
参照
接点入力割り込み設定については,「C2.4.2 接点入力割り込み検出エッジ設定/参照」をごらんくだ
さい。
● プロトタイプ
・ 割り込み要因のクリア
指定した接点入力からの割り込み要因をクリアします。
XcdDiInitInterrupt 関数のプロトタイプは,次のとおりです。
BOOL XcdDiInitInterrupt(
HANDLE hHandle,
DI_INTER_SETTING *pInterSet
);
・ 割り込み入力イネーブル
指定した接点入力からの割り込みを有効にします。
XcdDiEnableInterrupt 関数のプロトタイプは,次のとおりです。
BOOL XcdDiEnableInterrupt(
HANDLE hHandle,
DI_INTER_SETTING *pInterSet
);
・ 割り込み入力ディセーブル
指定した接点入力からの割り込みを無効にします。
XcdDiDisableInterrupt 関数のプロトタイプは,次のとおりです。
BOOL XcdDiDisableInterrupt(
HANDLE hHandle,
DI_INTER_SETTING *pInterSet
);
・ 割り込み入力待ち
指定した接点入力からの割り込みが発生するまで待機します。
XcdDiWaitInterrupt 関数のプロトタイプは,次のとおりです。
BOOL XcdDiWaitInterrupt(
HANDLE hHandle,
DI_INTER_SETTING *pInterSet
);
・ 割り込み待ち解除
指定した接点入力に対する割り込み発生待ちを解除します。
XcdDiCancelInterrupt 関数のプロトタイプは,次のとおりです。
BOOL XcdDiCancelInterrupt(
HANDLE hHandle,
DI_INTER_SETTING *pInterSet
);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-19
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pInterSet
次の_DI_INTER_SETTING 型の構造体で,割り込み設定情報を格納します。
typedef struct _DI_INTER_SETTING {
DWORD dwRequestNumber;
// 割り込み指定接点番号
DWORD dwTimeOutValue;
// 割り込み監視タイムアウト値
DWORD dwWaitResult;
// 割り込み待ち結果
} DI_INTER_SETTING, *PDI_INTER_SETTING;
>dwRequestNumber:
割り込み待ちするチャネル番号を指定します。
「0」から「7」のいずれかを指定してください。
割り込みチャネルの指定方法は「チャネル番号」です。
「0」が接点入力のチャネル 0,「7」が接点入力のチャネル 7 を示します。
>dwTimeOutValue:
割り込み入力待ち関数(XcdDiWaitInterrupt 関数)使用時,割り込み待ちのタイ
ムアウト値を設定します。設定単位は ms です。
ただし,次の値の場合には特別の意味を持ちます。
・「0」
:シグナル状態参照のみ行って即座に戻る
・「INFINITE」 :無限待ち
割り込み入力待ち関数(XcdDiWaitInterrupt 関数)以外では,使用しません。
>dwWaitResult:
割り込み入力待ち関数(XcdDiWaitInterrupt 関数)使用時,割り込みイベント待
ち結果を格納します。
割り込み入力待ち関数(XcdDiWaitInterrupt 関数)以外では,使用しません。
表 C2.9
dwWaitResult
dwWaitResult
WAIT_OBJECT_0
WAIT_TIMEOUT
WAIT_FAILED
ERR_FLCU_INTER_CANCEL
説明
割り込みが発生。
割り込み待ちタイムアウト。
割り込み待ちに失敗。(システムエラー)
XcdDiCancelInterrupt 関数で割り込み待ち解除。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
・ 割り込みを使用する場合には,最初に割り込み要因をクリアしてから Enable とすることをお勧めします。
・ 割り込み入力待ち関数(XcdDiWaitInterrupt 関数)では,タイムアウトまたは XcdDiCancelInterrupt
関数で割り込み待ち解除された場合でも,戻り値は「TRUE」です。割り込み待ち終了の要因を取
得するためには,パラメータ dwWaitResult を参照してください。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-20
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DI_EDGE_SETTING SetEdge;
DI_INTER_SETTING Int;
// 接点入力割り込み検出エッジ設定
// 端子 0-3 の割り込み検出エッジ設定を「立ち上がりエッジで割り込み検出」に設定
SetEdge.wGroup = DI_EDGE_GRP_03_00;
// 接点入力チャネル 0 から 3
SetEdge.wEdge = DI_DETECT_RISE;
// 立ち上がりエッジで割り込み検出とする
// 接点入力割り込み指定
Int.dwRequestNumber = 2;
Int.dwTimeoutValue = 10000;
// チャネル 2
// 割り込みタイムアウト時間は 10 秒
Int.dwWaitResult = 0;
hXcd = XcdOpen();
ret = XcdDiSetEdge ( hXcd, &SetEdge );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiSetEdge FALSE 0x%x\r\n"),dwErr));
}
ret = XcdDiInitInterrupt( hXcd, &Int );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiInitInterrupt FALSE 0x%x\r\n"),dwErr));
}
ret = XcdDiEnableInterrupt( hXcd, &Int );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DiEnableInterrupt FALSE 0x%x\r\n"),dwErr));
}
ret = XcdDiWaitInterrupt( hXcd, &Int );
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-21
C2.4.7
接点出力フェイル時動作モード設定/参照
接点出力のフェイル発生時の動作モード設定/参照を行います。設定単位はチャネル 0
からチャネル 15 で 4 チャネル単位での設定です。
● プロトタイプ
・ フェイル時動作モード設定
XcdDoSetFailMode 関数のプロトタイプは,次のとおりです。
BOOL XcdDoSetFailMode(
HANDLE hHandle,
DO_FAIL_SETTING *pFailSet
);
・ フェイル時動作モード設定値参照
XcdDoGetFailMode 関数のプロトタイプは,次のとおりです。
BOOL XcdDoGetFailMode(
HANDLE hHandle,
DO_FAIL_SETTING *pFailSet
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pFailSet
次の_DO_FAIL_SETTING 型の構造体で,フェイル時動作モード設定情報を格納し
ます。
typedef struct _DO_FAIL_SETTING {
DWORD dwGroup;
// 設定グループ
DWORD dwMode;
// フェイル時動作指定
} DO_FAIL_SETTING, *PDO_FAIL_SETTING;
>dwGroup:
フェイル時動作モード設定対象のチャネル番号グループを指定します。
設定可能な値は,次のとおりです。
表 C2.10
dwGroup 設定値
設定値
DO_FAIL_GRP_03_00
DO_FAIL_GRP_07_04
DO_FAIL_GRP_11_08
DO_FAIL_GRP_15_12
設定対象チャネル
接点出力のチャネル 0~3
接点出力のチャネル 4~7
接点出力のチャネル 8~11
接点出力のチャネル 12~15
>dwMode:
フェイル時動作モード設定値を指定します。
設定可能な値は,次のとおりです。
表 C2.11
dwMode 設定値
設定値
DO_FAIL_HOLD
DO_FAIL_PRESET
設定値の意味
フェイル発生時の接点出力値を保持。
フェイル発生時にプリセット値を出力。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-22
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-23
C2.4.8
接点出力フェイル時プリセット値設定/参照
接点出力のフェイル発生時の動作モードがプリセットモードである場合のプリセット値
設定/参照を行います。複数の接点出力のプリセット値設定を指定したチャネル番号に
つき行います。
● プロトタイプ
・ プリセット値設定
XcdDoSetPreset 関数のプロトタイプは,次のとおりです。
BOOL XcdDoSetPreset(
HANDLE hHandle,
DO_PRESET_SETTING *pPresetSet
);
・ プリセット値参照
XcdDoGetPreset 関数のプロトタイプは,次のとおりです。
BOOL XcdDoGetPreset(
HANDLE hHandle,
DO_PRESET_SETTING *pPresetSet
);
● パラメータ
・ hHandle
デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pPresetSet
次の_DO_PRESET_SETTING 型の構造体で,I/O 読み出し情報を格納します。
typedef struct _DO_PRESET_SETTING {
DWORD dwMask;
// 有効ビット指定マスク(ex. ビット位置 2->チャネル 3)
DWORD dwPreset;
// プリセット値設定のビットパターンデータ
} DO_PRESET_SETTING, *P DO_PRESET_SETTING;
>dwMask:
プリセット値設定を行う接点出力をビットパターンで指定します。
読み出しを行うチャネルのビットを「1」にしてください。
接点出力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 15 :ビット 15
プリセット値設定を行わない場合には対象ビットを「0」にしてください。
>dwPreset:
プリセット値設定がビットパターンで格納されます。
・「0」の場合 :接点 OFF
・「1」の場合 :接点 ON
dwMask で指定をしなかったチャネルに関するビットは反映されません。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-24
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-25
C2.4.9
接点出力 1 点読み出し
「XcdDoInputBit」は,制御 I/O に対し,接点出力の読み出しを 1 点指定で行います。
● プロトタイプ
XcdDoInputBit 関数のプロトタイプは,次のとおりです。
BOOL XcdDoInputBit(
HANDLE hHandle,
DIO_BIT *pBit
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pBit
次の_DIO_BIT 型の構造体で,I/O 読み出し情報を格納します。
typedef struct _DIO_BIT {
DWORD dwNumber;
// チャネル番号
DWORD dwStatus;
// 接点ステータス
0~15
1:ON
0:OFF
} DIO_BIT, *PDIO_BIT;
>dwNumber:
接点出力のチャネル番号を指定します。
「0」から「15」のいずれかを指定してください。
接点出力チャネルの指定方法は「チャネル番号」です。
「0」が接点出力のチャネル 0,「15」が接点出力のチャネル 15 を示します。
>dwStatus:
読み出した接点出力の状態が格納されます。
・「0」の場合 :接点 OFF
・「1」の場合 :接点 ON
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-26
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DIO_BIT bit;
// 接点出力
//
チャネル 2 を読み出し
bit.dwNumber = 2;
// 接点ビット位置
0~15
bit.dwStatus = 0;
// 接点ステータス
初期化
hXcd = XcdOpen();
ret = XcdDoInputBit( hXcd, &bit );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DoInputBit FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-27
C2.4.10 接点出力多点読み出し(ビットパターン表記)
「XcdDoInputBitPtn」は,制御 I/O に対し,複数の接点出力の読み出しを指定したチャ
ネル番号につき行います。
● プロトタイプ
XcdDoInputBitPtn 関数のプロトタイプは,次のとおりです。
BOOL XcdDoInputBitPtn(
HANDLE hHandle,
DIO_BIT_PTN *pBitPtn
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pBitPtn
次の_DIO_BIT_PTN 型の構造体で,I/O 読み出し情報情報を格納します。
typedef struct _DIO_BIT_PTN {
DWORD dwMask;
// 有効ビット指定マスク(ex. ビット位置 2->チャネル 2)
DWORD dwPattern;
// 読み出し接点出力状態のビットパターンデータ
} DIO_BIT_PTN, *PDIO_BIT_PTN;
>dwMask:
読み出しを行う接点出力をビットパターンで指定します。
読み出しを行うチャネルのビットを「1」にしてください。
接点出力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 15 :ビット 15
読み出しを行わない場合には対象ビットを「0」にしてください。
>dwPattern:
読み出した接点出力の状態がビットパターンで格納されます。
・「0」の場合 :接点 OFF
・「1」の場合 :接点 ON
dwMask で読み出し指定をしなかったチャネルに関するビットは無効値です。
補足
接点出力点数は 16 点です。dwPattern のビット 16 からビット 31 の読み出し値は無効データとなります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-28
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DIO_BIT_PTN ptn;
// 接点出力
//
チャネル 0-15(ビット位置 0-15)のビットパターンを読み出し
ptn.dwMask = 0xffff;
// 読み出し指定ビットパターン
ptn.dwPattern = 0;
// 接点出力読み出しのビットパターン(DWORD)0(OFF),1(ON)
0(無効),1(読み出し)
hXcd = XcdOpen();
ret = XcdDoInputBitPtn( hXcd, &Ptn );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DoInputBitPtn FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-29
C2.4.11 接点出力多点読み出し(配列表記)
「XcdDoInputBitAry」は,制御 I/O に対し,複数の接点出力の読み出しを指定したチャ
ネル番号につき行います。本 API では読み出し結果を DWORD の転送バッファに格納
します。
● プロトタイプ
XcdDoInputBitAry 関数のプロトタイプは,次のとおりです。
BOOL XcdDoInputBitAry(
HANDLE hHandle,
DIO_BIT_ARRAY *pBitAry
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pBitAry
次の_DIO_BIT_ARRAY 型の構造体で,I/O 読み出し情報を格納します。
typedef struct _DIO_BIT_ARRAY {
DWORD dwMask;
// 有効ビット指定マスク(ex. ビット位置 2->チャネル 2)
DWORD *pdwTopAddress;
// 転送バッファ先頭アドレス
DWORD dwBuffSize;
// 転送バッファサイズ(Byte)
} DIO_BIT_ARRAY, *PDIO_BIT_ARRAY;
>dwMask:
読み出しを行う接点出力をビットパターンで指定します。
読み出しを行うチャネルのビットを「1」にしてください。
接点出力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 15 :ビット 15
読み出しを行わない場合には対象ビットを「0」にしてください。
>pdwTopAddress:
読み出した接点出力の状態を格納する転送バッファの先頭アドレスを指定します。
>dwBuffSize:
転送バッファサイズを Byte で指定します。
補足
・ 転送バッファは 1 チャネルあたり DWORD で 16 チャネル分確保してください。すなわち,
dwBuffSize で指定する転送バッファサイズは 64Byte 以上を必ず確保してください(なお,本関数で
アクセスする領域サイズは固定です)。
・ 読み出し値はチャネル 0 から順に格納されます。
・ 読み出し指定されていないチャネルのデータは無効データです。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-30
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-31
C2.4.12 接点出力 1 点書き込み
「XcdDoOutputBit」は,制御 I/O に対し,接点出力の書き込みを 1 点指定で行います。
● プロトタイプ
XcdDoOutputBit 関数のプロトタイプは,次のとおりです。
BOOL XcdDoOutputBit(
HANDLE hHandle,
DIO_BIT *pBit
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pBit
次の_DIO_BIT 型の構造体で,I/O 書き込み情報を格納します。
typedef struct _DIO_BIT {
DWORD dwNumber;
// チャネル番号
DWORD dwStatus;
// 接点ステータス
0~15
1:ON
0:OFF
} DIO_BIT, *PDIO_BIT;
>dwNumber:
接点出力のチャネル番号 0~15 を指定します。
「0」が接点出力のチャネル 0,「15」が接点出力のチャネル 15 を示します。
>dwStatus:
接点出力に書き込む状態が格納されます。
・「0」の場合 :接点 OFF
・「1」の場合 :接点 ON
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-32
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DIO_BIT bit;
// 接点出力
//
チャネル 2 を書き込み
bit.dwNumber = 2;
// 接点ビット位置
0~15
bit.dwStatus = 0;
// 接点ステータス
初期化
hXcd = XcdOpen();
ret = XcdDoOutputBit( hXcd, &bit );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DoOutputBit FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-33
C2.4.13 接点出力多点書き込み(ビットパターン表記)
「XcdDoOutputBitPtn」は,制御 I/O に対し,複数の接点出力の書き込みを指定したチャ
ネルにつき行います。
● プロトタイプ
XcdDoOutputBitPtn 関数のプロトタイプは,次のとおりです。
BOOL XcdDoOutputBitPtn(
HANDLE hHandle,
DIO_BIT_PTN *pBitPtn
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pBitPtn
次の_DIO_BIT_PTN 型の構造体で,I/O 書き込み情報情報を格納します。
typedef struct _DIO_BIT_PTN {
DWORD dwMask;
// 有効ビット指定マスク(ex. ビット位置 2->チャネル 2)
DWORD dwPattern;
// 書き込み接点出力状態のビットパターンデータ
} DIO_BIT_PTN, *PDIO_BIT_PTN;
>dwMask:
書き込みを行う接点出力をビットパターンで指定します。
書き込みを行うチャネルのビットを「1」にしてください。
接点出力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 15 :ビット 15
書き込みを行わない場合には対象ビットを「0」にしてください。
>dwPattern:
接点出力への書き込み値がビットパターンで格納されます。
・「0」の場合 :接点 OFF
・「1」の場合 :接点 ON
dwMask で書き込み指定をしなかったチャネルに関するビットは無効値です。
補足
接点出力点数は 16 点です。dwPattern のビット 16 からビット 31 の書き込み値は無効データとなります。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-34
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
● プログラミング例
BOOL ret;
DWORD dwErr;
HANDLE hXcd;
DIO_BIT_PTN ptn;
// 接点出力
// チャネル 0-15(ビット位置 0-15)のビットパターンを書き込み
ptn.dwMask = 0xffff;
// 書き込み指定ビットパターン
0(無効),1(書き込み)
ptn.dwPattern = 0x00005555;
// 接点出力書き込みのビットパターン(DWORD)0(OFF),1(ON)
ret = XcdDoOutputBitPtn( hXcd, &ptn );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("DoOutputBitPtn FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-35
C2.4.14 接点出力多点書き込み(配列表記)
「XcdDoOutputBitAry」は,制御 I/O に対し,複数の接点出力の書き込みを指定した
チャネルにつき行います。本 API では書き込み結果を DWORD の転送バッファに格納
します。
● プロトタイプ
XcdDoOutputBitAry 関数のプロトタイプは,次のとおりです。
BOOL XcdDoOutputBitAry(
HANDLE hHandle,
DIO_BIT_ARRAY *pBitAry
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pBitAry
次の_DIO_BIT_ARRAY 型の構造体で,I/O 書き込み情報を格納します。
typedef struct _DIO_BIT_ARRAY {
DWORD dwMask;
// 有効ビット指定マスク(ex. ビット位置 2->チャネル 2)
DWORD *pdwTopAddress;
// 転送バッファ先頭アドレス
DWORD dwBuffSize;
// 転送バッファサイズ(Byte)
} DIO_BIT_ARRAY, *PDIO_BIT_ARRAY;
>dwMask:
書き込みを行う接点出力をビットパターンで指定します。
書き込みを行うチャネルのビットを「1」にしてください。
接点出力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 15 :ビット 15
書き込みを行わない場合には対象ビットを「0」にしてください。
>pdwTopAddress:
接点出力への書き込み値を格納する転送バッファの先頭アドレスを指定します。
>dwBuffSize:
転送バッファサイズを Byte で指定します。
補足
・ 転送バッファは 1 チャネルあたり DWORD で 16 チャネル分確保してください。すなわち,
dwBuffSize で指定する転送バッファサイズは 64Byte 以上を必ず確保してください(なお,本関数で
アクセスする領域サイズは固定です)。
・ 書き込み値はチャネル 0 から順に格納してください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-36
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-37
C2.4.15 アナログ入力レンジ設定/参照
アナログ入力のレンジ設定/参照を行います。設定単位はチャネル 0 からチャネル 7 ま
での一括設定です。
● プロトタイプ
・ 入力レンジ設定
XcdAiSetRange 関数のプロトタイプは,次のとおりです。
BOOL XcdAiSetRange(
HANDLE hHandle,
AI_SETTING *pSetting
);
・ 入力レンジ設定値参照
XcdAiGetRange 関数のプロトタイプは,次のとおりです。
BOOL XcdAiGetRange(
HANDLE hHandle,
AI_SETTING *pSetting
);
補足
本 API は N3C4721 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pSetting
次の_AI_SETTING 型の構造体で,アナログ入力レンジ設定情報を格納します。
typedef struct _AI_SETTING {
DWORD dwRange;
// レンジ
} AI_SETTING, *PAI_SETTING;
>dwRange:
アナログ入力レンジ設定情報を指定します。
設定可能な値は,次のとおりです。
表 C2.12
dwRange 設定値
設定値
RANGE_0_5V
RANGE_M10_10V
設定値の意味
アナログ入力レンジ 0V~5V
アナログ入力レンジ -10V~10V
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-38
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-39
C2.4.16 アナログ入力多点読み出し(配列表記)
アナログ入力値の読み出しを行います。読み出し単位はチャネル 0 からチャネル 7 まで
の一括読み出しです。
● プロトタイプ
XcdAiInputDataAry 関数のプロトタイプは,次のとおりです。
BOOL XcdAiInputDataAry(
HANDLE hHandle,
AIO_DATA_ARRAY *pDataAry
);
補足
本 API は N3C4721 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pDataAry
次の_AIO_DATA_ARRAY 型の構造体で,アナログ入力読み出し情報を格納します。
typedef struct _AIO_DATA_ARRAY {
DWORD dwMask;
// チャネル指定ビットパターン(ex. ビット位置 2->チャネル 2)
double*pdblTopAddress; // 転送バッファ先頭アドレス
DWORD dwBuffSize;
// 転送バッファサイズ(Byte)
} AIO_DATA_ARRAY, *PAIO_DATA_ARRAY;
>dwMask:
読み出しを行うアナログ入力をビットパターンで指定します。
読み出しを行うチャネルのビットを「1」にしてください。
接点入力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 7
:ビット 7
読み出しを行わない場合には対象ビットを「0」にしてください。
ビット 8-ビット 31 の値は無効です。
>pdblTopAddress:
読み出したアナログ入力値を格納する転送バッファの先頭アドレスを指定します。
読み出し値は倍精度の浮動小数点データとして保存されます。
>dwBuffSize:
転送バッファサイズを Byte で指定します。
補足
・ 転送バッファは 1 チャネルあたり倍精度浮動小数点型で 8 チャネル分確保してください。すなわち,
dwBuffSize で指定する転送バッファサイズは 64Byte 以上を必ず確保してください(なお,本関数で
アクセスする領域サイズは固定です)。
・ 読み出し値はチャネル 0 から順に格納されます。
・ 読み出し指定されていないチャネルのデータは無効データです。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-40
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-41
C2.4.17 タイマ設定
タイムアップ時に割り込み発生可能なユーザタイマの設定を行います。タイマ 0 とタイ
マ 1 を個別に設定します。タイマ周期は 1μs から 286s の範囲で 1μs 単位,または 1ms
から 1,145s の範囲で 1ms 単位の指定可能です。
● プロトタイプ
XcdTmrSetSetting 関数のプロトタイプは,次のとおりです。
BOOL XcdTmrSetSetting(
HANDLE hHandle,
TIMER_SETTING *pSetting
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pSetting
次の_TIMER_SETTING 型の構造体で,タイマ設定情報を格納します。
typedef struct _TIMER_SETTING {
DWORD dwTimerNum;
BOOL
bInterrupt;
// タイマ番号
0,1
// 割り込み設定 TRUE:有 FALSE:無
DWORD dwTimerUnit;
// タイマ分解能
DWORD dwTimerInterval;
// タイマ設定値
} TIMER_SETTING, *PTIMER_SETTING;
>dwTimerNum:
設定を行うタイマ番号を指定します。
次のように指定してください。
・タイマ 0
:「0」
・タイマ 1
:「1」
>bInterrupt:
タイムアップ時,割り込みを発生するかどうかを指定します。
設定可能な値は,次のとおりです。
表 C2.13
bInterrupt 設定値
設定値
TRUE
FALSE
設定値の意味
タイムアップ時に割り込みを発生。
タイムアップ時に割り込みを発生しない。
>dwTimerUnit:
タイマの分解能を指定します。
設定可能な値は,次のとおりです。
表 C2.14
dwTimerUnit 設定値
設定値
Unit1us
Unit1ms
設定値の意味
タイマ分解能 1μs
タイマ分解能 1ms
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-42
>dwTimerInterval:
タイマの周期を指定します。
dwTimerUnit で指定した分解能でカウントする場合のカウント値を設定してくだ
さい。設定可能なタイマ周期は,次のとおりです。
表 C2.15
dwTimerInterval 設定値
分解能設定値
1μs
1ms
タイマ周期
1μs~286s
1ms~1,145s
タイマ周期設定値
1~286,000,000
1~1,145,000
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-43
C2.4.18 タイマ読み出し
指定したユーザタイマのカウント値を読み出します。
● プロトタイプ
XcdTmrGetTime 関数のプロトタイプは,次のとおりです。
BOOL XcdTmrGetTime(
HANDLE hHandle,
TIMER_CONTROL *pControl
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pControl
次の_TIMER_CONTROL 型の構造体で,タイマ設定情報を格納します。
typedef struct _TIMER_CONTROL {
DWORD dwTimerNum;
// タイマ番号
DWORD dwTimeCount;
// タイマカウント値
doubledblTimeCount;
// タイマカウント値(経過時間)
0,1
DWORD dwTCNTReg;
// タイマカウント値(レジスタ値)
DWORD dwTCORReg;
// タイマ周期(レジスタ値)
WORD
// タイマコントロールレジスタ
wTCRReg;
} TIMER_CONTROL, *PTIMER_CONTROL;
>dwTimerNum:
読み出しを行うタイマ番号を指定します。
次のように指定してください。
・タイマ 0
:「0」
・タイマ 1
:「1」
>dwTimeCount:
タイマ設定で指定した分解能でのカウント値を格納します。
>dblTimeCount:
タイマ開始からの経過時間を格納します。単位はタイマ設定で指定した分解能で
す。ただし,読み出された数値はタイマ周期範囲内です。
>dwTCNTReg:
システム予約情報です。参照しないでください。
>dwTCORReg:
システム予約情報です。参照しないでください。
>wTCRReg:
システム予約情報です。参照しないでください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-44
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-45
C2.4.19 タイマカウント開始/停止
指定したユーザタイマのカウントを開始/停止します。
● プロトタイプ
・ タイマカウント開始
XcdTmrStart 関数のプロトタイプは,次のとおりです。
BOOL XcdTmrStart(
HANDLE hHandle,
TIMER_CONTROL *pControl
);
・ タイマカウント停止
XcdTmrStop 関数のプロトタイプは,次のとおりです。
BOOL XcdTmrStop(
HANDLE hHandle,
TIMER_CONTROL *pControl
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pControl
次の_TIMER_CONTROL 型の構造体で,タイマ設定情報を格納します。
typedef struct _TIMER_CONTROL {
DWORD dwTimerNum;
// タイマ番号
DWORD dwTimeCount;
// タイマカウント値
double
// タイマカウント値(経過時間)
dblTimeCount;
0,1
DWORD dwTCNTReg;
// タイマカウント値(レジスタ値)
DWORD dwTCORReg;
// タイマ周期(レジスタ値)
WORD
// タイマコントロールレジスタ
wTCRReg;
} TIMER_CONTROL, *PTIMER_CONTROL;
>dwTimerNum:
カウント開始または停止を行うタイマ番号を指定します。
次のように指定してください。
・タイマ 0
:「0」
・タイマ 1
:「1」
>dwTimeCount:
使用しません。
>dblTimeCount:
使用しません。
>dwTCNTReg:
使用しません。
>dwTCORReg:
使用しません。
>wTCRReg:
使用しません。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-46
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-47
C2.4.20 タイマ割り込み待ち/割り込み待ち解除
指定したユーザタイマからの割り込み待ち/割り込み待ち解除を行います。
● プロトタイプ
・ タイマ割り込み待ち
XcdTmrWaitInterrupt 関数のプロトタイプは,次のとおりです。
BOOL XcdTmrWaitInterrupt(
HANDLE hHandle,
TIMER_INTER_SETTING *pInterSet
);
・ タイマ割り込み待ち解除
XcdTmrCancelInterrupt 関数のプロトタイプは,次のとおりです。
BOOL XcdTmrCancelInterrupt(
HANDLE hHandle,
TIMER_INTER_SETTING *pInterSet
);
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pInterSet
次の_TIMER_INTER_SETTING 型の構造体で,タイマ設定情報を格納します。
typedef struct _TIMER_INTER_SETTING {
DWORD dwTimerNum;
// タイマ番号
DWORD dwTimeOutValue;
// 割り込み監視タイムアウト値
DWORD dwWaitResult;
// 割り込み結果
0,1
} TIMER_INTER_SETTING, *PTIMER_INTER_SETTING;
>dwTimerNum:
割り込み待ちまたは割り込み待ち解除を行うタイマ番号を指定します。次のよう
に指定してください。
・タイマ 0
:「0」
・タイマ 1
:「1」
>dwTimeOutValue:
割り込み入力待ち関数(XcdTmrWaitInterrupt 関数)使用時,割り込み待ちのタイ
ムアウト値を設定します。設定単位は ms です。
ただし,次の値の場合には特別の意味を持ちます。
・「0」
:シグナル状態参照のみ行って即座に戻る
・「INFINITE」 :無限待ち
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-48
>dwWaitResult:
割り込み入力待ち関数(XcdTmrWaitInterrupt 関数)使用時,割り込みイベント待
ち結果を格納します。
表 C2.16
dwWaitResult
dwWaitResult
WAIT_OBJECT_0
WAIT_TIMEOUT
WAIT_FAILED
ERR_FLCU_INTER_CANCEL
説明
割り込みが発生。
割り込み待ちタイムアウト。
割り込み待ちに失敗。(システムエラー)
XcdTmrCancelInterrupt 関数で割り込み待ち解除。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
注 意
タ イ マ 割 り 込 み 待 ち 解 除 ( XcdTmrCancelInterrupt 関 数 ) は タ イ マ 割 り 込 み 待 ち
(XcdTmrWaitInterrupt 関数)を開始した後で使用してください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-49
C2.4.21 カウンタ入力フィルタ設定/参照
カウンタ入力の入力フィルタ設定を行います。設定単位はチャネル 0 からチャネル 3 ま
でチャネルごとの個別設定です。
● プロトタイプ
・ フィルタ設定
XcdCntSetFilter 関数のプロトタイプは,次のとおりです。
BOOL XcdCntSetFilter(
HANDLE hHandle,
COUNTER_FILTER_SETTING *pFilterSet
);
・ フィルタ設定値参照
XcdCntGetFilter 関数のプロトタイプは,次のとおりです。
BOOL XcdCntGetFilter(
HANDLE hHandle,
COUNTER_FILTER_SETTING *pFilterSet
);
補足
本 API は N3C4711-F4W7J/L01,N3C4721-F4W7J/L01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pFilterSet
次の_COUNTER_FILTER_SETTING 型の構造体で,フィルタ設定情報を格納します。
typedef struct _COUNTER_FILTER_SETTING {
DWORD dwGroup;
// 設定グループ指定
DWORD dwFilter;
// フィルタ設定値
} COUNTER_FILTER_SETTING, *PCOUNTER_FILTER_SETTING;
>dwGroup:
入力フィルタ設定対象のチャネル番号グループを指定します。
設定可能な値は,次のとおりです。
表 C2.17
dwGroup 設定値
設定値
CNT_FILTER_GRP_00
CNT_FILTER_GRP_01
CNT_FILTER_GRP_02
CNT_FILTER_GRP_03
設定対象チャネル
カウンタ入力のチャネル 0
カウンタ入力のチャネル 1
カウンタ入力のチャネル 2
カウンタ入力のチャネル 3
>dwFilter:
入力フィルタ設定値を指定します。入力フィルタは LowPassFilter です。
設定可能な値は,次のとおりです。
表 C2.18
dwFilter 設定値
設定値
CNT_FILTER_NONE
CNT_FILTER_50us
CNT_FILTER_1ms
CNT_FILTER_16ms
設定値の意味
フィルタなしです。
入力最小パルス幅は 50μs です。
入力最小パルス幅は 1ms です。
入力最小パルス幅は 16ms です。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-50
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-51
C2.4.22 カウンタ動作指定/参照
カウンタ入力の動作指定/参照を行います。設定単位はチャネル 0 からチャネル 3 まで
の一括設定です。
● プロトタイプ
・ 動作設定
XcdCntSetInputControl 関数のプロトタイプは,次のとおりです。
BOOL XcdCntSetInputControl(
HANDLE hHandle,
COUNTER_INPUT_CONTROL *pControl
);
・ 動作設定値参照
XcdCntGetInputControl 関数のプロトタイプは,次のとおりです。
BOOL XcdCntGetInputControl(
HANDLE hHandle,
COUNTER_INPUT_CONTROL *pControl
);
補足
本 API は N3C4711-F4W7J/L01,N3C4721-F4W7J/L01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pControl
次の_COUNTER_INPUT_CONTROL 型の構造体で,カウンタ動作指定情報を格納
します。
typedef struct _COUNTER_INPUT_CONTROL {
DWORD dwMask;
// チャネル指定ビットパターン(ex. ビット位置 2->チャネル 2)
DWORD dwEnable;
// 動作指定(1:カウント,0:停止)
} COUNTER_INPUT_CONTROL, *PCOUNTER_INPUT_CONTROL;
>dwMask:
動作指定を行うカウンタチャネルをビットパターンで指定します。
指定を行うカウンタチャネルのビットを「1」にしてください。
カウンタチャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
動作指定を行わない場合には対象ビットを「0」にしてください。
補足
カウンタ動作指定したチャネルは接点入力として使用できません。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-52
>dwEnable:
カウンタチャネルの動作指定設定値がビットパターンで格納されます。
・「0」の場合 :カウント停止
・「1」の場合 :カウント開始
カウンタチャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
dwMask で指定をしなかったチャネルに関するビットは無効値です。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
● プログラミング例
BOOL ret;
COUNTER_INPUT_CONTROL ctrl;
// カウンタ動作の開始/停止を指定する
// チャネル 0-3,カウント開始
ctrl.dwMask = 0x0f;
// 動作指定するチャネル 0-3(ビット位置 0-3)を
//
ctrl.dwEnable = 0x0f;
ビットパターンで指定
// カウント開始(1),カウント停止(0)をビットパターンで指定
hXcd = XcdOpen();
ret = XcdCntSetInputControl( hXcd, &ctrl );
if(ret == FALSE){
dwErr = GetLastError();
RETAILMSG(1,(TEXT("CntSetInputControl FALSE 0x%x\r\n"),dwErr));
}
ret = XcdClose(hXcd);
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-53
C2.4.23 カウンタ 1 点読み出し
制御 I/O に対し,カウンタ値の読み出しを 1 チャネル指定で行います。
● プロトタイプ
XcdCntInputData 関数のプロトタイプは,次のとおりです。
BOOL XcdCntInputData(
HANDLE hHandle,
COUNTER_DATA *pData
);
補足
本 API は N3C4711-F4W7J/L01,N3C4721-F4W7J/L01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pData
次の_ COUNTER_DATA 型のバッファで,I/O を読み出す情報を格納します。
typedef struct _COUNTER_DATA {
DWORD dwChannel;
// チャネル番号
DWORD dwCount;
// カウント値
0~3
} COUNTER_DATA, *PCOUNTER_DATA;
>dwChannel:
カウンタのチャネルを指定します。
「0」から「3」のいずれかを指定してください。
カウンタチャネルの指定方法は「チャネル番号」です。
「0」がカウンタのチャネル 0,「3」がカウンタのチャネル 3 を示します。
>dwCount:
指定したカウンタチャネルのカウント読み出し値が格納されます。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-54
C2.4.24 カウンタ多点読み出し(配列表記)
カウンタ入力値の読み出しを行います。読み出し単位はチャネル 0 からチャネル 3 まで
の一括読み出しです。
● プロトタイプ
XcdCntInputDataAry 関数のプロトタイプは,次のとおりです。
BOOL XcdCntInputDataAry(
HANDLE hHandle,
COUNTER_DATA_ARRAY *pDataAry
);
補足
本 API は N3C4711-F4W7J/L01,N3C4721-F4W7J/L01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pDataAry
次の_COUNTER_DATA_ARRAY 型の構造体で,カウンタ入力読み出し情報を格納
します。
typedef struct _COUNTER_DATA_ARRAY {
DWORD dwMask;
// チャネル指定ビットパターン(ex. ビット位置 2->チャネル 2)
DWORD *pdwTopAddress;
// 転送バッファ先頭アドレス
DWORD dwBuffSize;
// 転送バッファサイズ(Byte)
} COUNTER_DATA_ARRAY, *PCOUNTER_DATA_ARRAY;
>dwMask:
読み出しを行うカウンタチャネルをビットパターンで指定します。
読み出しを行うチャネルのビットを「1」にしてください。
カウンタ入力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
読み出しを行わない場合には対象ビットを「0」にしてください。
ビット 4-ビット 31 の値は無効です。
>pdwTopAddress:
読み出したカウンタ入力の状態を格納する転送バッファの先頭アドレスを指定し
ます。
>dwBuffSize:
転送バッファサイズを Byte で指定します。
補足
・ 転送バッファは 1 チャネルあたり DWORD で 4 チャネル分確保してください。すなわち dwBuffSize
で指定する転送バッファサイズは 16Byte 以上を必ず確保してください(なお,本関数でアクセスす
る領域サイズは固定です)。
・ 読み出し値はチャネル 0 から順に格納されます。
・ 読み出し指定されていないチャネルのデータは無効データです。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-55
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-56
C2.4.25 カウンタ 1 点書き込み
制御 I/O に対し,カウンタの現在値書き込みを 1 チャネル指定で行います。
● プロトタイプ
XcdCntOutputData 関数のプロトタイプは,次のとおりです。
BOOL XcdCntOutputData(
HANDLE hHandle,
COUNTER_DATA *pData
);
補足
本 API は N3C4711-F4W7J/L01,N3C4721-F4W7J/L01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pData
次の_COUNTER_DATA 型のバッファで,I/O を書き込む情報を格納します。
typedef struct _COUNTER_DATA {
DWORD dwChannel;
// チャネル番号
DWORD dwCount;
// カウント値
0~3
} COUNTER_DATA, *PCOUNTER_DATA;
>dwChannel:
カウンタのチャネルを指定します。
「0」から「3」のいずれかを指定してください。
カウンタチャネルの指定方法は「チャネル番号」です。
「0」がカウンタのチャネル 0,「3」がカウンタのチャネル 3 を示します。
>dwCount:
指定したカウンタチャネルの書き込み値が格納されます。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-57
C2.4.26 カウンタ多点書き込み(配列表記)
カウンタの現在値書き込みを行います。書き込み単位はチャネル 0 からチャネル 3 まで
の一括書き込みです。
● プロトタイプ
XcdCntOutputDataAry 関数のプロトタイプは,次のとおりです。
BOOL XcdCntOutputDataAry(
HANDLE hHandle,
COUNTER_DATA_ARRAY *pDataAry
);
補足
本 API は N3C4711-F4W7J/L01,N3C4721-F4W7J/L01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pDataAry
次の_COUNTER_DATA_ARRAY 型の構造体で,カウンタ書き込み情報を格納しま
す。
typedef struct _COUNTER_DATA_ARRAY {
DWORD dwMask;
// チャネル指定ビットパターン(ex. ビット位置 2->チャネル 2)
DWORD *pdwTopAddress;
// 転送バッファ先頭アドレス
DWORD dwBuffSize;
// 転送バッファサイズ(Byte)
} COUNTER_DATA_ARRAY, *PCOUNTER_DATA_ARRAY;
>dwMask:
書き込みを行うカウンタチャネルをビットパターンで指定します。
書き込みを行うチャネルのビットを「1」にしてください。
カウンタ入力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
書き込みを行わない場合には対象ビットを「0」にしてください。
ビット 4-ビット 31 の値は無効です。
>pdwTopAddress:
カウンタ書き込み値を格納する転送バッファの先頭アドレスを指定します。
>dwBuffSize:
転送バッファサイズを Byte で指定します。
補足
・ 転送バッファは 1 チャネルあたり DWORD で 4 チャネル分確保してください。すなわち,
dwBuffSize で指定する転送バッファサイズは 16Byte 以上を必ず確保してください(なお,本関数で
アクセスする領域サイズは固定です)。
・ 書き込み値はチャネル 0 から順に格納されます。
・ 書き込み指定されていないチャネルのデータは無効データです。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-58
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-59
C2.4.27 PWM 有効チャネル指定/参照
PWM 出力を行うチャネルの指定/状態参照を行います。設定単位はチャネル 0 から
チャネル 3 までの一括設定です。
● プロトタイプ
・ チャネル有効指定
XcdPwmSetOutputConnect 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmSetOutputConnect(
HANDLE hHandle,
PWM_OUTPUT_CONNECT *pConnect
);
・ 有効指定値参照
XcdPwmGetOutputConnect 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmGetOutputConnect(
HANDLE hHandle,
PWM_OUTPUT_CONNECT *pConnect
);
補足
本 API は N3C4711-F4W7J/M01,N3C4721-F4W7J/M01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pConnect
次の_PWM_OUTPUT_CONNECT 型の構造体で,PWM チャネル有効指定情報を格
納します。
typedef struct _PWM_OUTPUT_CONNECT {
DWORD dwMask;
// チャネル指定ビットパターン(ex. ビット位置 2->チャネル 2)
DWORD dwConnect;
// 有効チャネル指定(1:接続,0:切断))
} PWM_OUTPUT_CONNECT, *PPWM_OUTPUT_CONNECT;
>dwMask:
PWM 有効指定を行うチャネルをビットパターンで指定します。
指定を行うチャネルのビットを「1」にしてください。
PWM チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
動作指定を行わない場合には対象ビットを「0」にしてください。
補足
PWM 有効を指定したチャネルは接点出力として使用できません。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-60
>dwConnect:
チャネルの PWM 有効指定設定値がビットパターンで格納されます。
・「0」の場合 :PWM として使用しない
・「1」の場合 :PWM として使用する
チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
dwMask で指定をしなかったチャネルに関するビットは無効値です。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-61
C2.4.28 PWM 動作指定/参照
PWM 出力チャネルの PWM 出力動作指定/参照を行います。設定単位はチャネル 0 か
らチャネル 3 までの一括設定です。
● プロトタイプ
・ 動作指定
XcdPwmSetOutputControl 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmSetOutputControl(
HANDLE hHandle,
PWM_OUTPUT_CONTROL *pControl
);
・ 動作指定参照
XcdPwmGetOutputControl 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmGetOutputControl(
HANDLE hHandle,
PWM_OUTPUT_CONTROL *pControl
);
補足
本 API は N3C4711-F4W7J/M01,N3C4721-F4W7J/M01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pControl
次の_PWM_OUTPUT_CONTROL 型の構造体で,PWM 出力動作指定情報を格納し
ます。
typedef struct _PWM_OUTPUT_CONTROL {
DWORD dwMask;
// チャネル指定ビットパターン(ex. ビット位置 2->チャネル 2)
DWORD dwEnable;
// 動作指定(1:出力,0:停止)
} PWM_OUTPUT_CONTROL, *PPWM_OUTPUT_CONTROL;
>dwMask:
PWM 出力動作指定を行うチャネルをビットパターンで指定します。
指定を行うチャネルのビットを「1」にしてください。
PWM チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
動作指定を行わない場合には対象ビットを「0」にしてください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-62
>dwEnable:
チャネルの PWM 出力動作指定値がビットパターンで格納されます。
・「0」の場合 :PWM を停止
・「1」の場合 :PWM を出力
チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
dwMask で指定をしなかったチャネルに関するビットは無効値です。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-63
C2.4.29 PWM 出力設定/参照
PWM 出力チャネルの PWM 周期設定/参照を行います。設定単位は 1 チャネル単位の
個別設定です。チャネル 0 からチャネル 3 まで設定可能です。
● プロトタイプ
・ 動作指定
XcdPwmSetSetting 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmSetSetting(
HANDLE hHandle,
PWM_SETTING *pSetting
);
・ 動作指定参照
XcdPwmGetSetting 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmGetSetting(
HANDLE hHandle,
PWM_SETTING *pSetting
);
補足
・ 本 API は N3C4711-F4W7J/M01,N3C4721-F4W7J/M01 でのみ有効です。
・ PWM 動作指定(XcdPwmSetSetting 関数)は,設定するチャネルの PWM 出力動作指定値が「停
止」の状態で使用してください。PWM 出力動作指定値が「出力」の場合には,API の戻り値がエ
ラーとなります。
参照
PWM 出力動作の指定方法については,「C2.4.28 PWM 動作指定/参照」をごらんください。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pSetting
次の_PWM_SETTING 型の構造体で,PWM 出力動作指定情報を格納します。
typedef struct _PWM_SETTING {
DWORD dwChannel;
// チャネル番号
DWORD dwRange;
// 設定周期範囲指定
DWORD dwCycle;
// 周期(1~100)
0~3
} PWM_SETTING, *PPWM_SETTING;
>dwChannel:
PWM のチャネルを指定します。
「0」から「3」のいずれかを指定してください。
チャネルの指定方法は「チャネル番号」です。
「0」がチャネル 0,「3」がチャネル 3 を示します。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-64
>dwRange:
指定した PWM チャネルの周期範囲設定値が格納されます。
設定可能な周期範囲は,次のとおりです。
表 C2.19
dwRange 周期範囲
設定値
CYC100us10msUnit100us100Dv
CYC1ms100msUnit1ms100Dv
CYC10ms1sUnit10ms100Dv
CYC100ms10sUnit100ms100Dv
CYC1ms100msUnit1ms1000Dv
CYC10ms1sUnit10ms1000Dv
CYC100ms10sUnit100ms1000Dv
CYC1s100sUnit1s1000Dv
周期設定可能
範囲
100μs~10ms
1ms~100ms
10ms~1s
100ms~10s
1ms~100ms
10ms~1s
100ms~10s
1s~100s
周期設定
基本単位
100μs
1ms
10ms
100ms
1ms
10ms
100ms
1s
設定される周期
dwCycle*100us
dwCycle*1ms
dwCycle*10ms
dwCycle*100ms
dwCycle*1ms
dwCycle*10ms
dwCycle*100ms
dwCycle*1s
デューティ比設定
可能範囲
0~100
0~100
0~100
0~100
0~1000
0~1000
0~1000
0~1000
>dwCycle:
指定した PWM チャネルの周期設定値が格納されます。
設定可能な値は「1~100」です。
実際の PWM 周期は dwRange で示す周期設定可能範囲から特定される基本単位
に対し,dwCycle の設定値を乗算した値になります。
補足
参照時には「0」が格納されます。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
・ PWM 出力動作指定値が「出力」の場合には,API の戻り値がエラーとなります。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-65
C2.4.30 PWM 出力フェイル時動作モード設定/参照
PWM 出力のフェイル発生時の動作モード設定/参照を行います。設定単位はチャネル
0 からチャネル 3 まで 1 チャネル単位での設定です。
● プロトタイプ
・ フェイル時動作モード設定
XcdPwmSetFailMode 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmSetFailMode(
HANDLE hHandle,
PWM_FAIL_SETTING *pFailSet
);
・ フェイル時動作モード設定値参照
XcdPwmGetFailMode 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmGetFailMode(
HANDLE hHandle,
PWM_FAIL_SETTING *pFailSet
);
補足
・ 本 API は N3C4711-F4W7J/M01,N3C4721-F4W7J/M01 でのみ有効です。
・ フェイル時動作モード設定(XcdPwmSetFailMode 関数)は,設定するチャネルの PWM 出力動作指
定値が「停止」の状態で使用してください。PWM 出力動作指定値が「出力」の場合には,API の戻
り値がエラーとなります。
参照
PWM 出力動作の指定方法については,「C2.4.28 PWM 動作指定/参照」をごらんください。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pFailSet
次の_PWM_FAIL_SETTING 型の構造体で,フェイル時動作モード設定情報を格納
します。
typedef struct _PWM_FAIL_SETTING {
DWORD dwChannel;
// チャネル番号
DWORD dwMode;
// HOLD | PRESET
DWORD dwPreset;
// PRESET VALUE
0~3
} PWM_FAIL_SETTING, *PPWM_FAIL_SETTING;
>dwChannel:
PWM 出力のチャネル番号を指定します。
「0」から「3」のいずれかを指定してください。
PWM 出力チャネルの指定方法は「チャネル番号」です。
「0」がチャネル 0,「3」がチャネル 3 を示します。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-66
>dwMode:
フェイル時動作モード設定値を指定します。設定可能な値は,次のとおりです。
表 C2.20
dwMode 設定値
設定値
PWM_FAIL_HOLD
PWM_FAIL_PRESET
設定値の意味
フェイル発生時の PWM 出力状態を保持。
フェイル発生時にプリセット値を出力。
>dwPreset:
デューティ比のプリセット設定値が格納されます。
・PWM 出力設定でデューティ比設定の分解能が 100 の場合 :0~100
・PWM 出力設定でデューティ比設定の分解能が 1000 の場合 :0~1000
参照
PWM 出力設定については,「C2.4.29 PWM 出力設定/参照」をごらんください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
・ PWM 出力動作指定値が「出力」の場合には,API の戻り値がエラーとなります。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-67
C2.4.31 PWM 出力 1 点読み出し
PWM 出力のデューティ比を 1 チャネル指定で読み出します。
● プロトタイプ
XcdPwmInputData 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmInputData(
HANDLE hHandle,
PWM_DATA *pData
);
補足
本 API は N3C4711-F4W7J/M01,N3C4721-F4W7J/M01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pData
次の_PWM_DATA 型の構造体で,PWM 出力デューティ比情報を格納します。
typedef struct _PWM_DATA {
DWORD dwChannel;
// チャネル番号
DWORD dwDuty;
// デューティ比(0~100,0~1000)
0~3
} PWM_DATA, *PPWM_DATA;
>dwChannel:
PWM 出力のチャネル番号を指定します。
「0」から「3」のいずれかを指定してください。
チャネルの指定方法は「チャネル番号」です。
「0」がチャネル 0,「3」がチャネル 3 を示します。
>dwDuty:
読み出した PWM 出力のデューティ比が格納されます。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-68
C2.4.32 PWM 出力多点読み出し(配列表記)
PWM 出力のデューティ比の読み出しを行います。チャネル 0 からチャネル 3 まで一括
で読み出します。
● プロトタイプ
XcdPwmInputDataAry 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmInputDataAry(
HANDLE hHandle,
PWM_DATA_ARRAY *pDataAry
);
補足
本 API は N3C4711-F4W7J/M01,N3C4721-F4W7J/M01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pDataAry
次の_PWM_DATA_ARRAY 型の構造体で,PWM 出力デューティ比情報を格納しま
す。
typedef struct _PWM_DATA_ARRAY {
DWORD dwMask;
// チャネル指定ビットパターン(ex. ビット位置 2->チャネル 2)
DWORD *pdwTopAddress;
// 転送バッファ先頭アドレス
DWORD dwBuffSize;
// 転送バッファサイズ(Byte)
} PWM_DATA_ARRAY, *PPWM_DATA_ARRAY;
>dwMask:
読み出しを行う PWM チャネルをビットパターンで指定します。
読み出しを行うチャネルのビットを「1」にしてください。
接点入力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
読み出しを行わない場合には対象ビットを「0」にしてください。
ビット 4-ビット 31 の値は無効です。
>pdwTopAddress:
PWM 出力のデューティ比読み出し値を格納する転送バッファの先頭アドレスを
指定します。
>dwBuffSize:
転送バッファサイズを Byte で指定します。
補足
・ 転送バッファは 1 チャネルあたり DWORD 型で 4 チャネル分確保してください。すなわち,
dwBuffSize で指定する転送バッファサイズは 16Byte 以上を必ず確保してください(なお,本関数で
アクセスする領域サイズは固定です)。
・ 読み出し値はチャネル 0 から順に格納されます。
・ 読み出し指定されていないチャネルのデータは無効データです。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-69
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-70
C2.4.33 PWM 出力 1 点書き込み
PWM 出力のデューティ比を 1 チャネル指定で書き込みます。
● プロトタイプ
XcdPwmOutputData 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmOutputData(
HANDLE hHandle,
PWM_DATA *pData
);
補足
本 API は N3C4711-F4W7J/M01,N3C4721-F4W7J/M01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pData
次の_PWM_DATA 型の構造体で,PWM デューティ比書き込み情報を格納します。
typedef struct _PWM_DATA {
DWORD dwChannel;
// チャネル番号
DWORD dwDuty;
// デューティ比(0~100,0~1000)
0~3
} PWM_DATA, *PPWM_DATA;
>dwChannel:
PWM 出力のチャネル番号を指定します。
「0」から「3」のいずれかを指定してください。
チャネルの指定方法は「チャネル番号」です。
「0」がチャネル 0,「3」がチャネル 3 を示します。
>dwDuty:
PWM 出力のデューティ比書き込み値が格納されます。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-71
C2.4.34 PWM 出力多点書き込み(配列表記)
PWM 出力のデューティ比の書き込みを行います。チャネル 0 からチャネル 3 まで一括
で書き込みます。
● プロトタイプ
XcdPwmOutputDataAry 関数のプロトタイプは,次のとおりです。
BOOL XcdPwmOutputDataAry(
HANDLE hHandle,
PWM_DATA_ARRAY *pDataAry
);
補足
本 API は N3C4711-F4W7J/M01,N3C4721-F4W7J/M01 でのみ有効です。
● パラメータ
・ hHandle
制御 I/O デバイスハンドルを指定します。
XcdOpen 関数の戻り値を指定してください。
・ pDataAry
次の_PWM_DATA_ARRAY 型の構造体で,PWM デューティ比書き込み情報を格納
します。
typedef struct _PWM_DATA_ARRAY {
DWORD dwMask;
// チャネル指定ビットパターン(ex. ビット位置 2->チャネル 2)
DWORD *pdwTopAddress;
// 転送バッファ先頭アドレス
DWORD dwBuffSize;
// 転送バッファサイズ(Byte)
} PWM_DATA_ARRAY, *PPWM_DATA_ARRAY;
>dwMask:
書き込みを行う PWM チャネルをビットパターンで指定します。
書き込みを行うチャネルのビットを「1」にしてください。
接点入力チャネルとビットパターンの関係は,次のとおりです。
・チャネル 0
:ビット 0
・チャネル 3
:ビット 3
書き込みを行わない場合には対象ビットを「0」にしてください。
ビット 4-ビット 31 の値は無効です。
>pdwTopAddress:
PWM 出力のデューティ比書き込み値を格納する転送バッファの先頭アドレスを
指定します。
>dwBuffSize:
転送バッファサイズを Byte で指定します。
補足
・ 転送バッファは 1 チャネルあたり DWORD 型で 4 チャネル分確保してください。すなわち,
dwBuffSize で指定する転送バッファサイズは 16Byte 以上を必ず確保してください(なお,本関数で
アクセスする領域サイズは固定です)。
・ 書き込み値はチャネル 0 から順に格納されます。
・ 書き込み指定されていないチャネルのデータは無効データです。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C2-72
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
制御 I/O アクセスライブラリのエラーコード詳細については,「C3.
ださい。
エラーコード一覧」をごらんく
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
C3-1
C3.
エラーコード一覧
制御 I/O アクセスで発生するエラー情報は,次のとおりです。
表 C3.1
制御 I/O アクセスライブラリエラーコード一覧
エラーコード
ERR_FLCU_NOSUPPORT_FMODULE
バイナリ
0x0E0002001
ERR_FLCU_INTER_CANCEL
0x0E0002201
ERR_FLCU_DO_OVC_DETECTED
0x0E0002301
ERR_FLCU_AI_CORRECT_VAL_SUM
0x0E0002401
ERR_FLCU_PWM_NO_SETTING
0x0E0002501
ERR_FLCU_PWM_RUNNING
0x0E0002502
意味
API がサポートされて
いません。
割り込み待ちはキャン
セルされました。
過電流が検出されたた
め停止しています。
アナログ入力が異常で
す。
PWM 出力設定が未了
です。
PWM が動作中です。
対処方法
N3C47□1-F4W7J を使用し
てください。
必要に応じ,割り込み待
ちを再開してください。
電源を OFF にし,過電流
となる要因を取り除いて
電源を再投入してくださ
い。
Xancia が 故 障 し て い ま
す。ご連絡ください。
PWM 出力設定を行ってく
ださい。
PWM を 停 止 し て く だ さ
い。
補足
・ 引数異常はシステムエラーとなります。
ERROR_INVALID_PARAMENTER(システムエラーコード 87)
・ N3C47□1-F4W7J 専用の API を N3C47□1-N4W7J で使用した場合にはエラーとなります。
ERR_FLCU_NOSUPPORT_FMODULE
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
Network Solution Controller Xancia N3C4700 シリーズ
R Embedded Compact 7 日本語版)
(Windows○
ソフトウェア開発手順書
PART-D Xancia システム固有ライブラリ概説
IM 34N1N04-01 第 4 版
Xancia のシステム固有機能と,システム固有ライブラリについて説明します。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
D1-1
D1.
概要
Xancia システム固有機能について説明します。Xancia のシステム固有機能は,次の 2
種類があります。
・ RAS 機能(信頼性:Reliability,可用性:Availability,保守性:Serviceability)
・ SRAM アクセス機能(バッテリバックアップ SRAM アクセス)
各固有機能は Xancia システム固有ライブラリの API コールで実現できるものと,コン
トロールパネルアプレット「System Control」の[システムログ]タブで参照できるも
のがあります。
Xancia システム固有機能の詳細を次に示します。
表 D1.1
R
A
S
機
能
Xancia システム固有機能
項目
ウォッチドッグタイマ
メンテナンス LED 点灯,
消灯
ソフトウェアリセット
フェイル接点出力
制御 I/O のフェイル時制御
自己診断
パワーオン履歴
シ
ス
テ
ム
システム異常検出
ロ
グ
バックアップ SRAM アクセス
実現手段
Xancia システム固有 API
Xancia システム固有 API
補足(用途等)
アプリケーション監視 等
アプリケーション動作モニタ 等
Xancia システム固有 API
Xancia システム固有 API
制御 I/O アクセス API
起動時実行
コントロールパネルアプレッ
ト参照
コントロールパネルアプレッ
ト参照
障害復帰
フェイル信号出力
制御出力のフェイル時動作設定
システムメモリのチェック
電源投入,電源断,ウォッチドッグ
タイマタイムアウト発生,ソフト
ウェアリセット発生
バッテリ異常,各種デバイスか電流
検出,アナログ入力補正値異常
Xancia システム固有 API
データ保存,クリア
補足
RAS 機能の一部にはコントロールパネルアプレット「System Control」の[その他]タブで,動作設定
が必要となるものがあります。
参照
「System Control」の使用方法の詳細については,「A4.
んください。
Xancia のシステムパラメータ設定」をごら
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-2
D1.1
RAS 機能
Xancia では,次の RAS 機能を提供します。
D1.1.1
ウォッチドッグタイマ機能
アプリケーションの監視やシステム異常検知の手段を提供します。
■ 動作モード
ウォッチドッグタイマがタイムアウトしたときの動作モードが設定できます。設定可能
な動作モードは次のとおりです。
表 D1.2
動作モード
動作モード
リセット
リセットホールド
割り込み発生
動作なし
実動作
ウォッチドッグタイマがタイムアウトすると,リセットが発生し,Xancia は再起動
されます。アプリケーションプログラムは再起動後,ウォッチドッグタイマによる
リセットが発生したことを検知することができます。フェイル接点出力はウォッチ
ドッグタイマがタイムアウトするとフェイル(開放)となり,再起動後正常復帰し
ます。接点出力はリセット時の動作ではなく,フェイル時の動作(プリセット値ま
たはホールド)となります。
ウォッチドッグタイマがタイムアウトすると,リセットが発生し,リセット状態を
保持します。復帰させるためには,電源の OFF/ON を行ってください。このとき,
フェイル接点出力はフェイル(開放)となり,接点出力はリセットではなく,フェ
イル時の動作(プリセット値またはホールド)となります。
ウォッチドッグタイマがタイムアウトすると,CPU に対して割り込みが発生し,ア
プリケーションプログラムにもその事象が通知されます。タイムアウト後の動作や
フェイル接点出力動作は,アプリケーションプログラムに依存します。
何もしません。
補足
・ ウォッチドッグタイマ動作モードが「割り込み発生」の場合には,アプリケーションで割り込み処
理を記述してください。
・ ウォッチドッグタイマの動作モードはコントロールパネルアプレット「System Control」で設定して
ください。工場出荷時設定値は「動作なし」です。
参照
・ 「System Control」の使用方法の詳細については,「A4. Xancia のシステムパラメータ設定」をご
らんください。
・ 使用方法については,「D2.4 ウォッチドッグタイマ制御 API」をごらんください。
・ ウ ォ ッ チ ド ッ グ タ イ マ に つ い て は , 「 Network Solution Controller Xancia N3C4700 シ リ ー ズ
R Embedded Compact 7 日本語版搭載)ハードウェア取扱説明書」(IM 34N1C04-01)の
(Windows○
「2.18 ウォッチドッグタイマ」をごらんください。
■ タイムアウト時間
タイムアウト時間はウォッチドッグタイマカウント開始時に指定できます。指定可能な
範囲は,次のとおりです。
・ 指定可能時間
:100ms~25.5s
・ 指定分解能
:100ms
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-3
■ クリア処理
クリア処理は次の 2 種類提供します。ウォッチドッグタイマカウント開始時に指定でき
ます。
・ システムによる自動クリア(タイムアウト指定時間の 1/2 でクリア)
・ アプリケーションによる手動クリア
■ 使用方法
次の Xancia システム固有 API が使用できます。
・ ウォッチドッグタイマ開始
・ 停止
・ タイムアウト待ち
・ 手動クリア
・ タイムアウト待ち解除
補足
ウォッチドッグタイマ動作中にコントロールパネルアプレット「System Control」で設定保存を行うと
ウォッチドッグタイマは停止します。「System Control」で設定保存後にウォッチドッグタイマを再開
する必要がある場合には,Xancia システム固有 API を使用して明示的にウォッチドッグタイマを開始
してください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-4
D1.1.2
メンテナンス LED 制御
アプリケーションからメンテナンス LED(POWER,READY を除く)を点灯または消
灯できます。アプリケーションの状態モニタ用に利用できます。
■ LED 種類
次のメンテナンス LED が使用できます。
・ RUN
・ ALARM
・ ERROR
■ 使用方法
Xancia システム固有 API で実現できます。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-5
D1.1.3
フェイル接点出力
システムフェイル時にアプリケーションからフェイル信号接点出力を操作できます。
■ フェイル接点状態
フェイル接点の状態は次のとおりです。
表 D1.3
フェイル接点状態
FAIL0-FAIL1 間
通常運転時
システムフェイル時,停電時
短絡
開放
補足
システムフェイル状態は,次の場合です。
・ ウォッチドッグタイマタイムアウト発生時
・ アプリケーションによる明示的なフェイル状態への移行
■ 使用方法
Xancia システム固有 API で実現できます。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-6
D1.1.4
フェイル時の接点出力制御
アプリケーションからフェイル発生時の制御用接点出力動作を指定できます。
■ フェイル時接点出力モード
接点グループごとにホールドモードとプリセットモードが選択できます。
プリセットモードが指定された場合にはプリセット値が設定できます。
■ 使用方法
制御 I/O アクセスライブラリの API で実現できます。
参照
・ 制御 I/O アクセスライブラリの API については,「PART-C 制御 I/O アクセスライブラリ概説」を
ごらんください。
・ フ ェ イル 接点出 力 につ いて 詳 し く は , 「Network Solution Controller Xancia N3C4700 シ リー ズ
R Embedded Compact 7 日本語版搭載)ハードウェア取扱説明書」(IM 34N1C04-01)の
(Windows○
「2.14 フェイル接点出力」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-7
D1.1.5
自己診断
起動時に Xancia システムメモリのチェックを行います。
メモリエラーが発生すると,ERROR LED が点灯または点滅します。
■ モード設定方法
コントロールパネルアプレット「System Control」の[その他]タブから診断レベルが
設定できます。
診断レベルは次のとおり設定できます。
・ 簡易診断 :コアシステムのメモリチェックを行います。
・ 詳細診断 :全メモリチェックを行います。
補足
・ 詳細診断モード選択時には起動時間が長くかかります。
・ 自己診断レベルはコントロールパネルアプレットで設定してください。
参照
・ 「System Control」の使用方法の詳細については,「A4. Xancia のシステムパラメータ設定」をご
らんください。
・ 自己診断で異常が発生したかどうかの判定について詳しくは,「Network Solution Controller Xancia
R Embedded Compact 7 日本語版搭載)ハードウェア取扱説明書」
N3C4700 シリーズ(Windows○
(IM 34N1C04-01)の「4.2 異常発生時の対応」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-8
D1.1.6
リブート
Xancia をリブートします。
ソフトウェアによる障害復旧の手段を提供します。
■ ソフトウェアリセット
アプリケーションからシステムをリブートすることができます。障害復旧の手段として
利用できます。リブート後の I/O の状態はリセット実行前状態を保持します。
補足
接点出力はリセット時の動作ではなく,フェイル時の動作(プリセット値またはホールド)となりま
す。
補足
アプリケーションからのリブートを許可するかどうかは,コントロールパネルアプレット「System
Control」で設定してください。工場出荷時の設定は「禁止」です。
参照
「System Control」の使用方法の詳細については,「A4.
んください。
Xancia のシステムパラメータ設定」をごら
■ ウォッチドッグタイマによるリセット
ウォッチドッグタイマタイムアウト時にシステムをリブートすることができます。
リブート後の制御 I/O の状態はウォッチドッグタイマタイムアウト前状態を保持します。
補足
接点出力はリセット時の動作ではなく,フェイル時の動作(プリセット値またはホールド)となりま
す。
■ ブート要因取得
アプリケーションからシステムブート時の要因を取得することができます。
次の要因が取得できます。
・ パワーオン
・ ウォッチドッグタイマタイムアウトによるリセット
・ ソフトウェアリセット
■ 使用方法
Xancia システム固有 API で実現できます。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-9
D1.2
システムログ
パワーオン履歴とシステム異常をロギングします。
ログ表示はコントロールパネルアプレット「System Control」の[システムログ]タブ
から参照します。
■ ロギング項目
システムログには次の項目の発生時刻がロギングされます。
パワーオン履歴
・ 電源投入,電源断
・ ウォッチドッグタイマタイムアウト発生
・ ソフトウェアリセット発生によるシステムのリブート
システム異常
・ バックアップバッテリ異常(異常検出時,ALARM LED が点灯します)
・ 各種デバイス過電流検出
・ アナログ入力補正値異常
図 D1.1
システムログ
■ ロギングメッセージ
ロギング項目に対するメッセージを次に示します。
表 D1.4
ロギングメッセージ
ロギング項目
電源投入
電源断
ソフトウェアリセット発生によるシステムのリブート
ウォッチドッグタイマタイムアウト発生
バックアップバッテリ異常
過電流検出(接点出力)
過電流検出(SD カード)
過電流検出(USB)
アナログ入力異常
ログメッセージ
START_UP
POWER_OFF
REBOOT
WDT_TIMEOUT
BATTERY_ALARM
DO_OVER_CURRENT_DETECTED
SD_OVER_CURRENT_DETECTED
USB_OVER_CURRENT_DETECTED
AI_CORRECT_VALUE_SUM_ERROR
参照
接点出力に関する過電流対策の詳細については,「Network Solution Controller Xancia N3C4700 シリー
R Embedded Compact 7 日本語版搭載)ハードウェア取扱説明書」(IM 34N1C04-01)の
ズ(Windows○
「2.12 接点出力」をごらんください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-10
■ ログファイル出力
ログは Xancia のファイルシステム上に保存することができます。
[システムログ]タブの ファイル出力 ボタンをクリックすると,CSV ファイル形式
で保存できます。
図 D1.2
ログファイルの出力
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D1-11
D1.3
SRAM アクセス
Xancia のバッテリバックアップ SRAM へのアクセス機能を提供します。ユーザ領域と
して使用可能な容量は 32kByte です。
D1.3.1
SRAM 書き込み
バッテリバックアップ SRAM に RAM 上のバッファからデータコピーすることができま
す。
■ 使用方法
Xancia システム固有 API で書き込みます。
D1.3.2
SRAM 読み出し
バッテリバックアップ SRAM から RAM 上のバッファへデータコピーすることができま
す。
■ 使用方法
Xancia システム固有 API で読み出します。
D1.3.3
SRAM クリア
SRAM をゼロクリアします。
■ 使用方法
Xancia システム固有 API で実現できます。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-1
D2.
Xancia システム固有ライブラリイン
タフェース仕様
Xancia システム固有ライブラリインタフェース仕様について説明します。
D2.1
概要
API と各 API の詳細について説明します。
D2.1.1
Xancia システム固有 API 一覧
Xancia システム固有 API は,次のとおりです。
表 D2.1
Xancia システム固有 API 一覧
API リスト
Xancia システム固有デバイス Open/Close
XsmOpenSystemMGT
XsmCloseSystemMGT
RAS 機能
ウォッチドッグタイマ
動作制御
XsmStartWdt
XsmStopWdt
アクセス
XsmWaitWdt
XsmCancelWdt
XsmClearWdt
メンテナンス LED 制御(POWER,READY を除く)
点灯
XsmLedOn
消灯
XsmLedOff
ブート関連
XsmSystemReboot
XsmGetBootStatus
フェイル接点出力
設定
XsmSysFailActive
XsmSysFailInActive
XsmSysFailRead
SRAM アクセス
アクセス
XsmReadUserSRAM
XsmWriteUserSRAM
クリア
XsmClearUserSRAM
機能
Xancia システム固有デバイスを Open
Xancia システム固有デバイスを Close
ウォッチドッグタイマカウント開始
ウォッチドッグタイマカウント停止
ウォッチドッグタイマタイムアウト待ち
ウォッチドッグタイマタイムアウト待ち解除
ウォッチドッグタイマクリア
指定 LED 点灯
指定 LED 消灯
ソフトウェアリセット
ブート要因取得
フェイル信号アクティブ
フェイル信号インアクティブ
フェイル信号状態参照
SRAM 読み出し
SRAM 書き込み
SRAM クリア
参照
Xancia システム固有ライブラリに関するサンプルプログラムは,弊社 Xancia ホームページをごらんく
ださい。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-2
D2.1.2
ヘッダファイル
■ インクルードファイル
アプリケーションプログラムで次のヘッダファイルをインクルードしてください。
Xancia.h
補足
ヘッダファイル「Xancia.h」にはライブラリの API プロトタイプ宣言が記述してあります。本ヘッダ
ファイルは Xancia N3C4700 シリーズ用 SDK に含まれています。
参照
SDK のインストール方法については,「B3.2 SDK のインストール」をごらんください。
■ 定義ファイル
アプリケーションプログラムでライブラリを使用する場合の各種定義は次のヘッダファ
イルを参照してください。
AukletAPI.h
補足
ヘッダファイル「AukletAPI.h」にはインタフェース構造体定義が記述してあります。エラーコードは
「AukletAPI.h」内部で include されている「smderr.h」に記述されています。
参照
SDK のインストール方法および PATH の設定については,「B3.2 SDK のインストール」をごらんく
ださい。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-3
D2.1.3
ライブラリファイル
アプリケーションプログラムで本ライブラリを使用する場合には,VS2008 で,明示的
に次のライブラリをリンクしてください。
smdapi.lib
D2.1.4
制限事項
Xancia システム固有ライブラリ使用上の制限は,次のとおりです。
・ マルチプロセス,マルチスレッドでのアクセスはできません。
・ ウォッチドッグタイマタイムアウト待ちは 1 スレッドとしてください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-4
D2.2
Xancia システム固有デバイスのオープン
Xancia システム固有デバイスのオープンは XsmOpenSystemMGT 関数を使用します。
■ XsmOpenSystemMGT 関数
● プロトタイプ
XsmOpenSystemMGT 関数のプロトタイプは,次のとおりです。
HANDLE XsmOpenSystemMGT (
void
);
● パラメータ
使用しません。
● 戻り値
処理が成功した場合は,戻り値として Xancia システム固有デバイスハンドルを返しま
す。
処理が失敗した場合は,戻り値として「INVALID_HANDLE_VALUE」を返します。
補足
本関数は CreateFile 関数の wrapper 関数です。デバイス名「"SMD1:"」でデバイスオープンします。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-5
D2.3
Xancia システム固有デバイスのクローズ
Xancia システム固有デバイスのクローズは XsmCloseSystemMGT 関数を使用します。
■ XsmCloseSystemMGT 関数
● プロトタイプ
XsmCloseSystemMGT 関数のプロトタイプは,次のとおりです。
BOOL XsmCloseSystemMGT ( HANDLE hHandle );
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
・ 本関数は CloseHandle 関数の wrapper 関数です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-6
D2.4
ウォッチドッグタイマ制御 API
Xancia のウォッチドッグタイマ制御 API について説明します。
D2.4.1
ウォッチドッグタイマカウント開始
ウォッチドッグタイマのカウントを開始します。
● プロトタイプ
XsmStartWdt 関数のプロトタイプは,次のとおりです。
BOOL XsmStartWdt(
HANDLE hHandle,
WDT_SETTING *pSetting
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
・ pSetting
次の_WDT_SETTING 型の構造体で,ウォッチドッグタイマ設定情報を格納します。
typedef struct _WDT_SETTING {
BOOL bType;
// ウォッチドッグタイマクリア方法
DWORD dwTimeout;
// タイムアウト時間
} WDT_SETTING, *PWDT_SETTING;
>bType:
ウォッチドッグタイマのクリア方法を指定します。設定可能な値は,次のとおり
です。
表 D2.2
bType 設定値
設定値
TRUE
FALSE
ウォッチドッグタイマクリア方法
システムによる自動クリア
アプリケーションによる手動クリア
補足
システムによる自動クリアを選択した場合,設定したタイムアウト時間の約 1/2 でクリア処理が実行
されます。
>dwTimeout:
タイムアウト時間を指定します。タイムアウト時間指定の分解能は 100ms です。
パラメータに設定可能な値は 1~255 です。
・「1」を設定した場合 :100ms でタイムアウト
・「255」を設定した場合 :25.5s でタイムアウト
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-7
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-8
D2.4.2
ウォッチドッグタイマカウント停止
ウォッチドッグタイマのカウントを停止します。
● プロトタイプ
XsmStopWdt 関数のプロトタイプは,次のとおりです。
BOOL XsmStopWdt(
HANDLE hHandle,
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-9
D2.4.3
ウォッチドッグタイマタイムアウト待ち
ウォッチドッグタイマのタイムアウトの発生を待ちます。
タイムアウト待ちはキャンセルイベントにより解除されます。
● プロトタイプ
XsmWaitWdt 関数のプロトタイプは,次のとおりです。
BOOL XsmWaitWdt(
HANDLE hHandle,
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-10
D2.4.4
ウォッチドッグタイマタイムアウト待ち解除
ウォッチドッグタイマのタイムアウト待ちを解除します。
本関数によりキャンセルイベントが発生し,タイムアウト待ちが解除されます。
● プロトタイプ
XsmCancelWdt 関数のプロトタイプは,次のとおりです。
BOOL XsmCancelWdt(
HANDLE hHandle,
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
注 意
本関数(XsmCancelWdt 関数)はウォッチドッグタイマタイムアウト待ち(XsmWaitWdt
関数)を開始した後で使用してください。
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-11
D2.4.5
ウォッチドッグタイマクリア
ウォッチドッグタイマのクリアを行います。
● プロトタイプ
XsmClearWdt 関数のプロトタイプは,次のとおりです。
BOOL XsmClearWdt(
HANDLE hHandle,
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-12
D2.5
メンテナンス LED 点灯消灯制御 API
Xancia のメンテナンス LED 制御 API について説明します。
D2.5.1
メンテナンス LED 点灯
指定したメンテナンス LED を点灯します。
● プロトタイプ
XsmLedOn 関数のプロトタイプは,次のとおりです。
BOOL XsmLedOn(
HANDLE hHandle,
BYTE bColor
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
・ bColor
BYTE 型の変数で,メンテナンス LED(POWER,READY を除く)を指定します。
設定可能な値は,次のとおりです。
表 D2.3
bColor 設定値
設定値
SYS_LED_RUN_CTL
SYS_LED_ALM_CTL
SYS_LED_ERR_CTL
LED 種類
RUN LED
ALARM LED
ERROR LED
補足
同時に複数点灯する場合には設定値を対象となる LED の設定値の論理和を設定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-13
D2.5.2
メンテナンス LED 消灯
指定したメンテナンス LED を消灯します。
● プロトタイプ
XsmLedOff 関数のプロトタイプは,次のとおりです。
BOOL XsmLedOff(
HANDLE hHandle,
BYTE bColor
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
・ bColor
BYTE 型の変数で,メンテナンス LED(POWER,READY を除く)を指定します。
設定可能な値は,次のとおりです。
表 D2.4
bColor 設定値
設定値
SYS_LED_RUN_CTL
SYS_LED_ALM_CTL
SYS_LED_ERR_CTL
LED 種類
RUN LED
ALARM LED
ERROR LED
補足
同時に複数点灯する場合には設定値を対象となる LED の設定値の論理和を設定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-14
D2.6
ブート関連 API
Xancia のブート関連 API につき記述します。
D2.6.1
ソフトウェアリセット
Xancia をアプリケーションからリブートします。
● プロトタイプ
XsmSystemReboot 関数のプロトタイプは,次のとおりです。
BOOL XsmSystemReboot(
HANDLE hHandle
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
コントロールパネルアプレット「System Control」の[その他]タブで「アプリケーションからのリ
ブート許可」が「禁止」となっている場合には Xancia はリブートされません。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-15
D2.6.2
ブート要因取得
Xancia のブート要因情報を取得します。
● プロトタイプ
XsmGetBootStatus 関数のプロトタイプは,次のとおりです。
BOOL XsmGetBootStatus(
HANDLE hHandle,
DWORD *pdwStatus
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
・ pdwStatus
ブート要因を格納する変数のアドレスを指定します。
表 D2.5
ブート要因
ブート要因
SYS_BOOT_POWERON
SYS_BOOT_WDTTIMEOUT
SYS_BOOT_REBOOT
意味
パワーオン
ウォッチドッグタイマタイムアウトに起因するリブート
ソフトウェアリセット
補足
システム起動後に本関数をコールすることによりブート要因が特定できます。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-16
D2.7
フェイル接点出力 API
Xancia のフェイル接点出力 API について説明します。
D2.7.1
フェイル信号アクティブ
フェイル信号をアクティブにします。フェイル接点出力状態は開放です。
制御 I/O 接点出力はフェイル時動作モード設定に基づき,フェイル状態に移行します。
● プロトタイプ
XsmSysFailActive 関数のプロトタイプは,次のとおりです。
BOOL XsmSysFailActive(
HANDLE hHandle
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-17
D2.7.2
フェイル信号インアクティブ
フェイル信号をインアクティブにします。フェイル接点出力状態は短絡です。
制御 I/O 接点出力は,通常運転状態に移行します。
● プロトタイプ
XsmSysFailInActive 関数のプロトタイプは,次のとおりです。
BOOL XsmSysFailInActive(
HANDLE hHandle
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-18
D2.7.3
フェイル接点出力状態読み出し
Xancia のフェイル接点出力状態を読み出します。
● プロトタイプ
XsmSysFailRead 関数のプロトタイプは,次のとおりです。
BOOL XsmSysFailRead(
HANDLE hHandle,
BOOL *pbParam
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
・ pbParam
フェイル接点出力状態読み出し値を格納する変数ポインタを指定します。
・「TRUE」
:フェイル接点状態 開放
・「FALSE」
:フェイル接点状態 短絡
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-19
D2.8
SRAM アクセス API
Xancia のバッテリバックアップ SRAM アクセス API について説明します。
D2.8.1
SRAM 領域の読み出し
SRAM 領域の読み出しを行います。
RAM 上の指定バッファへ SRAM 指定アドレスから,指定サイズ分データコピーします。
● プロトタイプ
XsmReadUserSRAM 関数のプロトタイプは,次のとおりです。
BOOL XsmReadUserSRAM(
HANDLE hHandle,
DWORD dwSramOffsetAdr,
PBYTE pbRamAddress,
DWORD dwSize
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
・ dwSramOffsetAdr
読み出し開始アドレスを格納します。読み出し開始アドレスは SRAM 先頭からの
オフセット値です。
・ pbRamAddress
読み出しデータを格納するバッファアドレスを格納します。
補足
バッファは読み出しデータサイズ以上を確保してください。
・ dwSize
読み出しデータサイズを格納します。
単位は Byte です。最大データサイズは 32kByte です。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-20
D2.8.2
SRAM 領域への書き込み
SRAM 領域における書き込みを行います。
RAM 上の指定バッファから SRAM 指定アドレスに対し,指定サイズ分データコピーし
ます。
● プロトタイプ
XsmWriteUserSRAM 関数のプロトタイプは,次のとおりです。
BOOL XsmWriteUserSRAM(
HANDLE hHandle,
DWORD dwSramOffsetAdr,
PBYTE pbRamAddress,
DWORD dwSize
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
・ dwSramOffsetAdr
書き込み開始アドレスを格納します。書き込み開始アドレスは SRAM 先頭からの
オフセット値です。
・ pbRamAddress
書き込み対象データが格納されているバッファアドレスを格納します。
補足
バッファは書き込みデータサイズ以上確保してください。
・ dwSize
書き込みデータサイズを格納します。
単位は Byte です。最大データサイズは 32kByte です。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
D2-21
D2.8.3
SRAM 領域のクリア
SRAM 領域のゼロクリアを行います。
● プロトタイプ
XsmClearUserSRAM 関数のプロトタイプは,次のとおりです。
BOOL XsmClearUserSRAM(
HANDLE hHandle,
);
● パラメータ
・ hHandle
Xancia システム固有デバイスハンドルを指定します。
XsmOpenSystemMGT 関数の戻り値を指定してください。
● 戻り値
処理が成功した場合は,戻り値として「TRUE」を返します。
処理が失敗した場合は,戻り値として「FALSE」を返します。
補足
・ 処理が失敗した場合の詳細エラー情報を得るには,GetLastError をコールしてください。
・ 「TRUE」値は「1」,「FALSE」値は「0」です。
参照
システム固有ライブラリのエラーコードの詳細については,「D3.
さい。
エラーコード一覧」をごらんくだ
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
D3-1
D3.
エラーコード一覧
Xancia システム固有ライブラリで発生するエラー情報は,次のとおりです。
表 D3.1
Xancia システム固有ライブラリエラーコード一覧
エラーコード
SMD_ERROR_ILEGAL_PARAM
バイナリ
0x0E1000002
意味
パラメータ異常。
SMD_ERROR_SRAM_WRITE
0x0E100001F
SMD_ERROR_PROHIBITTED_ACT
ION
SMD_ERROR_DATA_INVALID
0x0E1000029
Xancia 内部エラー。
SRAM 書き込みに失敗し
ました。
システムパラメータ設定
で禁止された動作です。
パラメータ異常。
SMD_ERROR_WDT_WAIT_CANCEL
0x0E100002B
ウォッチドッグタイマの
タイムアウト待ちがキャ
ンセルされました。
SMD_ERROR_MEM_ALLOC
0x0E1000034
SMD_ERROR_THREAD
0x0E1000035
SMD_ERROR_EVENT
0x0E1000036
Xancia 内部エラー。
メモリアロケーションに
失敗しました。
Xancia 内部エラー。
スレッド生成に失敗しま
した。
Xancia 内部エラー。
Event 生成に失敗しました。
0x0E100002A
対処方法
API のパラメータを確認
してください。
再書き込みを行ってくだ
さい。
システムパラメータ設定
を確認してください。
API のパラメータを確認
してください。
ウォッチドッグタイマタ
イムアウト待ち解除関数
の使用方法が正しいか確
認してください。
メモリ残量を確認してく
ださい。
メモリ残量を確認してく
ださい。
メモリ残量を確認してく
ださい。
補足
引数異常はシステムエラーとなります。
ERROR_INVALID_PARAMENTER(システムエラーコード 87)
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
i
開発手順書
資料名称
資料番号
改訂情報
: Network Solution Controller Xancia N3C4700 シリーズ
R Embedded Compact 7 日本語版搭載)ソフトウェア開発手順書
(Windows○
: IM 34N1N04-01
2013 年 10 月/初版
新規発行
2014 年 10 月/2 版
誤記修正、URL や住所を改訂
2014 年 12 月/3 版
A2.1.2 オブジェクトストア
A4.1 パラメータ設定メニューの起動方法
A4.3 システムパラメータ設定
レジストリ保存に失敗した場合の対応を記載
システムパラメータ保存に失敗した場合の対応を記載
レジストリ保存に失敗した場合の対応を記載
2015 年 6 月/4 版
A2.1.2 オブジェクトストア
著作者
補足(SD スロットのフォルダ名について)を変更
横河ディジタルコンピュータ株式会社
インフラシステム事業部
発行者
横河ディジタルコンピュータ株式会社
〒151-0053 東京都渋谷区代々木 4-30-3 新宿 MIDWEST ビル
URL
http://www2.yokogawa-digital.com/product/product_detail/xancia.html
IM 34N1N04-01
4th Edition : Jun. 19, 2015-00
Blank Page
Fly UP