| 231 | | やっとIOC。 |
| 232 | | |
| | 233 | IOCは、{{{ai,bi,ao,bo,mbbiDirect,mbboDirect}}}をサポートしている。 |
| | 234 | |
| | 235 | まだ実戦投入はしていないが、動作確認済みのものを上げておく。 |
| | 236 | |
| | 237 | [attachment:contecCPI_IOC_1_0.tar.gz] |
| | 238 | |
| | 239 | ちなみに今回は最低限各ポートに読み書きができるようにしてあるだけなので、高速化や割り込みには対応していない。[[br]] |
| | 240 | 改変は自由なので、変更したら公開してもらうとありがたい。[[br]] |
| | 241 | バージョン管理はローカルのgitlabでしか行っていないが、後日公開したいと考えている。 |
| | 242 | |
| | 243 | |
| | 244 | === db ファイル === |
| | 245 | |
| | 246 | * INP,OUT field |
| | 247 | * {{{$(NAME)}}}: {{{config}}}で設定したデバイス名 |
| | 248 | * {{{$(PORT)}}}: ポート番号(bi,bo,mbbiDirect,mbboDirect) |
| | 249 | * {{{$(CH)}}}: チャネル番号(ai,ao,bi,bo) |
| | 250 | |
| | 251 | * ai record |
| | 252 | |
| | 253 | {{{ |
| | 254 | record(ai, "$(USER):ANALOG:CH$(CH):GET") { |
| | 255 | field(DTYP, "devAiCPI") |
| | 256 | field(INP, "@$(NAME) $(CH)") |
| | 257 | field(SCAN, "1 second") |
| | 258 | } |
| | 259 | }}} |
| | 260 | |
| | 261 | * ao record |
| | 262 | |
| | 263 | {{{ |
| | 264 | record(ao, "$(USER):ANALOG:CH$(CH):SET") { |
| | 265 | field(DTYP, "devAoCPI") |
| | 266 | field(OUT, "@$(NAME) $(CH)") |
| | 267 | } |
| | 268 | }}} |
| | 269 | |
| | 270 | * bi record |
| | 271 | |
| | 272 | {{{ |
| | 273 | record(bi, "$(USER):BIT:PORT$(PORT):CH$(CH):GET") { |
| | 274 | field(DTYP, "devBiCPI") |
| | 275 | field(INP, "@$(NAME) $(PORT) $(CH)") |
| | 276 | field(SCAN, "1 second") |
| | 277 | } |
| | 278 | }}} |
| | 279 | |
| | 280 | * bo record |
| | 281 | |
| | 282 | {{{ |
| | 283 | record(bo, "$(USER):BIT:PORT$(PORT):CH$(CH):SET") { |
| | 284 | field(DTYP, "devBoCPI") |
| | 285 | field(OUT, "@$(NAME) $(PORT) $(CH)") |
| | 286 | } |
| | 287 | }}} |
| | 288 | |
| | 289 | * mbbiDirect record |
| | 290 | |
| | 291 | {{{ |
| | 292 | record(mbbiDirect, "$(USER):BYTE:PORT$(PORT):GET") { |
| | 293 | field(DTYP, "devMbbiDirectCPI") |
| | 294 | field(INP, "@$(NAME) $(PORT)") |
| | 295 | field(SCAN, "1 second") |
| | 296 | } |
| | 297 | }}} |
| | 298 | |
| | 299 | * mbboDirect record |
| | 300 | |
| | 301 | {{{ |
| | 302 | record(mbboDirect, "$(USER):BYTE:PORT$(PORT):SET") { |
| | 303 | field(DTYP, "devMbboDirectCPI") |
| | 304 | field(OUT, "@$(NAME) $(PORT)") |
| | 305 | } |
| | 306 | }}} |