Changeset 887
- Timestamp:
- Jun 7, 2012 3:40:24 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
softGlue_examples/source/gated_scaler/index.rst
r883 r887 7 7 8 8 This circuit shows one way to build a four channel :index:`!gated scaler`. 9 10 Circuit and documentation: Tim Mooney 9 11 10 12 Circuit … … 64 66 ``0`` to ``$(P)$(H)busy1``. 65 67 68 .. note:: A better way to abort would be to write ``0`` to the input of 69 ``BUF-1``. This is better because it results in the counters 70 being read before the busy record is cleared. 71 66 72 5) Read the accumulated counts from ``UpCntr-<n>_COUNTS``, where ``<n>`` is in 67 73 [1-4]. … … 82 88 ------------------- 83 89 84 Execution begins when the userwrites ``1`` to ``$(P)$(H)busy1``. This record declares90 Execution begins when a client writes ``1`` to ``$(P)$(H)busy1``. This record declares 85 91 itself to be busy (for the purpose of ``ca_put_callback()``), and starts the counter 86 92 circuit by writing the value ``1`` to the input of ``BUF-1``. ``BUF-1`` fans the signal … … 99 105 at ``1`` until it's time for the counters to stop counting. 100 106 101 ``counting`` is sent to field output bit 17, which must actually be configured as102 a n output, and which will generate an interrupt on the falling edge of107 ``counting`` is sent to field output bit 17, which must actually be configured 108 as an output, and which will generate an interrupt on the falling edge of 103 109 ``counting`` (when pulse counting has finished). The interrupt configuration 104 (which is not shown in the figure) is set so that the falling edge of ``counting`` 105 causes the record ``$(P)$(H)sseq1`` to process, which causes EPICS records for all 106 four counters to process, reading their values so that a client can acquire 107 them. 110 (which is not shown in the figure) is set so that the falling edge of 111 ``counting`` causes the record ``$(P)$(H)sseq1`` to process, which causes EPICS 112 records for all four counters to process, reading their values so that a client 113 can acquire them, and then clears the busy record ``$(P)$(H)busy1``. If the 114 client that started the scaler did so with a ``ca_put_callback()``, clearing the 115 busy record results in a "done" callback to that client. 108 116 109 117 * You can, of course, use any field output bit for this purpose, as long as
Note: See TracChangeset
for help on using the changeset viewer.