CD522ΒΆ
The CD522 module only reports analogue IOs even though it has also binary inputs / outputs.
It uses the following IO data structure:
Inputs
- State S0/S1 % pulse (2 bytes)
- State byte / inputs counter 0 (2 bytes)
- TOUCH counter 0 value high word (2 bytes)
- TOUCH counter 0 value low word (2 bytes)
- 32 bit counter 0 high word (2 bytes)
- 32 bit counter 0 low word (2 bytes)
- 32 bit counter 1 high word (2 bytes)
- 32 bit counter 1 low word (2 bytes)
- Reserved (2 bytes)
- State byte / inputs counter 1 (2 bytes)
- TOUCH counter 1 value high word (2 bytes)
- TOUCH counter 1 value low word (2 bytes)
Outputs
- PWM frequency 0 high-word (2 bytes)
- PWM duty/cycle/pulse 0 low word (2 bytes)
- PWM control byte C0 / reserved (2 bytes)
- Reserved (2 bytes)
- PWM frequency 1 high-word (2 bytes)
- PWM duty/cycle/pulse 1 low word (2 bytes)
- PWM control byte C1 / outputs (2 bytes)
- Reserved (2 bytes)
- Counter 0 settings high word (2 bytes)
- Counter 0 settings low word (2 bytes)
- Counter 0 control byte / counter (2 bytes)
- Reserved (2 bytes)
- Counter 1 settings high word (2 bytes)
- Counter 1 settings low word (2 bytes)
- Counter 1 control byte / counter (2 bytes)
- Reserved (2 bytes)
The IO data of the CD522 have to be mapped continuously in ascending order (without gaps or other IO data inbetween) beginning with a new PDO.
For an example see the following picture:
- AnalogueInput16Bit_5 to AnalogueInput16Bit_16 are the inputs of the CD522.
- AnalogueOutput16Bit_3 to AnalogueOutput16Bit_18 are the outputs of the CD522.