Skip to content
This repository has been archived by the owner on Mar 22, 2021. It is now read-only.

Commit

Permalink
feat: Added support for flip-flop outputs.
Browse files Browse the repository at this point in the history
  • Loading branch information
javicereijo authored and jerzyjamroz committed Apr 14, 2020
1 parent d34686e commit ec6c139
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 17 deletions.
50 changes: 33 additions & 17 deletions evrMrmApp/Db/mrmevrout.db
Original file line number Diff line number Diff line change
Expand Up @@ -118,23 +118,31 @@ record(mbbo, "$(ONSRC)Scale-SP") {
field( ZRST, "Prescaler 0")
field( ONST, "Prescaler 1")
field( TWST, "Prescaler 2")
field( THST, "Force Low")
field( FRST, "Force High")
field( FVST, "Tri-state")
field( THST, "Flip-flop 0")
field( FRST, "Flip-flop 1")
field( FVST, "Flip-flop 2")
field( SXST, "Flip-flop 3")
field( SVST, "Flip-flop 4")
field( EIST, "Flip-flop 5")
field( NIST, "Flip-flop 6")
field( TEST, "Flip-flop 7")
field( ELST, "Tri-state")
field( TVST, "Force High")
field( TTST, "Force Low")
field( ZRVL, "40")
field( ONVL, "41")
field( TWVL, "42")
field( THVL, "63")
field( FRVL, "62")
field( FVVL, "61")
field( SXSV, "INVALID")
field( SVSV, "INVALID")
field( EISV, "INVALID")
field( NISV, "INVALID")
field( TESV, "INVALID")
field( ELSV, "INVALID")
field( TVSV, "INVALID")
field( TTSV, "INVALID")
field( THVL, "48")
field( FRVL, "49")
field( FVVL, "50")
field( SXVL, "51")
field( SVVL, "52")
field( EIVL, "53")
field( NIVL, "54")
field( TEVL, "55")
field( ELVL, "61")
field( TVVL, "62")
field( TTVL, "63")
field( FTSV, "INVALID")
field( FFSV, "INVALID")
field( UNSV, "INVALID")
Expand Down Expand Up @@ -182,9 +190,17 @@ record(stringin, "$(ON)Src-RB")
info(lutO , " 40 = Prescaler 0")
info(lutP , " 41 = Prescaler 1")
info(lutQ , " 42 = Prescaler 2")
info(lutR , " 61 = Tri-state")
info(lutS , " 62 = Force high")
info(lutT , " 63 = Force low")
info(lutR , " 48 = Flip-flop 0")
info(lutS , " 49 = Flip-flop 1")
info(lutT , " 50 = Flip-flop 2")
info(lutU , " 51 = Flip-flop 3")
info(lutV , " 52 = Flip-flop 4")
info(lutW , " 53 = Flip-flop 5")
info(lutX , " 54 = Flip-flop 6")
info(lutY , " 55 = Flip-flop 7")
info(lutZ , " 61 = Tri-state")
info(lutAA, " 62 = Force high")
info(lutAB, " 63 = Force low")
}

record(longin, "$(ON)Src2-RB") {
Expand Down
2 changes: 2 additions & 0 deletions evrMrmApp/src/drvemOutput.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ void
MRMOutput::setSource(epicsUInt32 v)
{
if( ! ( (v<=63 && v>=61) ||
(v<=55 && v>=48) ||
(v<=42 && v>=32) ||
(v<=15) )
)
Expand All @@ -66,6 +67,7 @@ void
MRMOutput::setSource2(epicsUInt32 v)
{
if( ! ( (v<=63 && v>=61) ||
(v<=55 && v>=48) ||
(v<=42 && v>=32) ||
(v<=15) )
)
Expand Down

0 comments on commit ec6c139

Please sign in to comment.