Changes between Initial Version and Version 1 of epics/epics/pcie5565/db/intrx


Ignore:
Timestamp:
11/11/22 14:32:07 (3 years ago)
Author:
Iituka
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • epics/epics/pcie5565/db/intrx

    v1 v1  
     1== リフレクティブメモリネットワーク割り込みの受信 ==
     2intrx レコードタイプと組み合わせて、 ネットワーク割り込みの受信を行う。 [[br]]
     3Device Type 名は "'''intrx5565'''"
     4
     5'''Synpsis'''
     6{{{
     7record(intrx, "pv-name") {
     8    field(DTYP, "intrx5565")
     9    field(SCAN, "I/O Intr")
     10    field(INP,  "#C<card_number> S<int_type> @")
     11    field(SNAM, "<subroutine_name>")
     12}
     13}}}
     14* card_number[[br]]The card number designated in argument card in RM5565Configure
     15* int_type[[br]]Network-Interrupt type[[br]]1 ... Type 1 Network-Interrupt[[br]]2 ... Type 2 Network-Interrupt[[br]]3 ... Type 3 Network-Interrupt[[br]]4 ... Type 4 Network-Interrupt
     16* subroutine_name[[br]]Network-Interrupt 発生時に呼び出す関数名
     17
     18'''Usage'''
     19{{{
     20record(intrx, "RM5565:DEV0:INT1:RX") {
     21    field(DTYP, "intrx5565")
     22    field(SCAN, "I/O Intr")
     23    field(INP,  "#C0 S1 @")
     24    field(SNAM, "int1func")
     25        ・
     26        ・
     27        ・
     28}
     29}}}
     30INP フィールドでカード番号/Network-Interrupt Type を指定する。 [[br]]
     31"C" に続く数字 (例では '0') でカード番号を、 "S" に続く数字 (例では '1') で Network-Interrupt Type を指定しておく。 [[br]]
     32他ノードから自ノードに対して指定した Network-Interrupt が送信されるとレコードがプロセスされる。 [[br]]
     33その際、下記フィールドには以下の値がセットされる。 [[br]]
     34||Field||セットされる値                        ||
     35||NID  ||Network-Interrupt を送信したノードのID||
     36||VAL  ||Network-Interrupt Data                ||
     37
     38また、フィールド SNAM で指定されたサブルーチン(例では int1func)がコールされる。 [[br]]
     39関数側の記述例は下記の通り。
     40{{{
     41void int1func(struct intrxRecord *prec)
     42{
     43        ・
     44        ・
     45        ・
     46}
     47epicsRegisterFunction(int1func);
     48}}}