Registers are an instrument of influencing internal algorithms of peripherals and also a way to control the peripherals state. Values of registers are not stored in the controller, but in regional or peripheral devices. In most cases registers pertain to ports.
Examples of use of registers might be:
- parameters fed in to configuration algorithm measuring voltage in electricity networks - for DC or AC;
- setting of parameters for a device conducting automatic control of ventilation flaps: the held difference of pressures between the premise and the outside, time delays before switching the direction of rotation of the rotor actuators.
Registers are sent by external peripherals to the controller over a digital bus on request from the controller when it detects the type of managed profile for each port being "announced" by a device. It follows that the device registers associated with ports.
Registers can be of the following types:
- Read only - used mainly for the provision of certain internal device values (eg, results of ADC measurements in the microcontroller units or the value of internal device time counter);
- Write only - that do not have and do not reflect the current values, they represent a way of passing data to a device (for example, an initial starting point for a utility meter);
- Read/write - that reflect the current value and that are recordable for new values.
If any port has registers, they appear on the port configuration panel of the controller.
Depending on the line of controllers of the series "Impulse 112", the behaviour of how the controller handles registers varies:
- A device based on "Impulse 112.4" requests all the registers for the connected peripherals when they are added, records them to internal memory storage and afterward uses the recorded values;
- "Impulse 112.3" controllers request the registers during start-up and keep the list in the RAM, so they are re-requested at each restart of the controller.