98 lines
3.1 KiB
Plaintext
98 lines
3.1 KiB
Plaintext
#######################################################
|
|
# ### ### #
|
|
# ### EPICS Database for ### #
|
|
# ### I2C PCF8574 board ### #
|
|
# ### ### #
|
|
# ### author: B. Carvalho IPFN ### #
|
|
# ### ### #
|
|
# ### Ref 2.0; 2018-01-14 ### #
|
|
# ### ### #
|
|
# ### macros: ID I2C address of ADC ### #
|
|
# ### Description: ### #
|
|
# ### This is an example DB file using ### #
|
|
# ### stream(asynI2C) and to read/write ### #
|
|
# ### an PCF8574 ### #
|
|
#######################################################
|
|
|
|
#####################################################
|
|
# ### Read/Write pcf8574 address 0x38=56 register ### #
|
|
###################################################
|
|
record( mbboDirect, "$(P)$(R)PCF8574:56:REGISTER") {
|
|
field( DTYP, "stream")
|
|
field( OUT, "@pcf8574.proto wReg(56) I2C")
|
|
field( SHFT, "0")
|
|
field( NOBT, "8")
|
|
# Has @init on protocol
|
|
# field(VAL, 255)
|
|
# field(PINI,"YES")
|
|
}
|
|
|
|
record( mbbiDirect, "$(P)$(R)PCF8574:56:REGISTER:READ" ) {
|
|
field( DTYP, "stream")
|
|
field( INP, "@pcf8574.proto rReg(56) I2C")
|
|
field(NOBT, "8")
|
|
field(SCAN, "1 second")
|
|
field(FLNK, "$(P)$(R)PCF8574:56:REGISTER:READ:FNOUT")
|
|
# field(PINI,"YES")
|
|
}
|
|
|
|
#####################################################
|
|
# ### Read/Write pcf8574 address 0x39=57 register ### #
|
|
###################################################
|
|
record( mbboDirect, "$(P)$(R)PCF8574:57:REGISTER") {
|
|
field( DTYP, "stream")
|
|
field( OUT, "@pcf8574.proto wReg(57) I2C")
|
|
field( SHFT, "0")
|
|
field( NOBT, "8")
|
|
field(VAL, 255)
|
|
field(PINI,"YES")
|
|
}
|
|
|
|
record( mbbiDirect, "$(P)$(R)PCF8574:57:REGISTER:READ" ) {
|
|
field( DTYP, "stream")
|
|
field( INP, "@pcf8574.proto rReg(57) I2C")
|
|
field(NOBT, "8")
|
|
field(SCAN, "1 second")
|
|
field(PINI,"YES")
|
|
}
|
|
|
|
#####################################################
|
|
# ### Read/Write pcf8574 address 0x3c=60 register ### #
|
|
###################################################
|
|
record( mbboDirect, "$(P)$(R)PCF8574:60:REGISTER") {
|
|
field( DTYP, "stream")
|
|
field( OUT, "@pcf8574.proto wReg(60) I2C")
|
|
field( SHFT, "0")
|
|
field( NOBT, "8")
|
|
field(VAL, 255)
|
|
field(PINI,"YES")
|
|
}
|
|
|
|
record( mbbiDirect, "$(P)$(R)PCF8574:60:REGISTER:READ" ) {
|
|
field( DTYP, "stream")
|
|
field( INP, "@pcf8574.proto rReg(60) I2C")
|
|
field(NOBT, "8")
|
|
field(SCAN, "1 second")
|
|
field(PINI,"YES")
|
|
}
|
|
|
|
#####################################################
|
|
# ### Read/Write pcf8574 address 0x3d=61 register ### #
|
|
###################################################
|
|
record( mbboDirect, "$(P)$(R)PCF8574:61:REGISTER") {
|
|
field( DTYP, "stream")
|
|
field( OUT, "@pcf8574.proto wReg(61) I2C")
|
|
field( SHFT, "0")
|
|
field( NOBT, "8")
|
|
field(VAL, 255)
|
|
field(PINI,"YES")
|
|
}
|
|
|
|
record( mbbiDirect, "$(P)$(R)PCF8574:61:REGISTER:READ" ) {
|
|
field( DTYP, "stream")
|
|
field( INP, "@pcf8574.proto rReg(61) I2C")
|
|
field(NOBT, "8")
|
|
field(SCAN, "1 second")
|
|
field(PINI,"YES")
|
|
}
|