Changes between Version 4 and Version 5 of epics/contec_cpi


Ignore:
Timestamp:
09/05/23 13:45:50 (19 months ago)
Author:
Tetsuya Michikawa
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • epics/contec_cpi

    v4 v5  
    227227ちなみにこのスクリプトを実行するためには、実行に必要なファイルを適当なディレクトリにコピーすることが求められているが、今回は展開先で直接実行するようにしておいた。
    228228
     229後日、ボードを追加したり、ボードID(ロータリースイッチ)を変更した場合には、再度{{{config}}}をし直す必要があるので注意する。
     230
    229231== IOC ==
    230232
    231 やっとIOC。
    232 
     233IOCは、{{{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{{{
     254record(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{{{
     264record(ao, "$(USER):ANALOG:CH$(CH):SET") {
     265    field(DTYP, "devAoCPI")
     266    field(OUT,  "@$(NAME) $(CH)")
     267}
     268}}}
     269
     270* bi record
     271
     272{{{
     273record(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{{{
     283record(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{{{
     292record(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{{{
     302record(mbboDirect, "$(USER):BYTE:PORT$(PORT):SET") {
     303    field(DTYP, "devMbboDirectCPI")
     304    field(OUT,  "@$(NAME) $(PORT)")
     305}
     306}}}