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.
../_images/793e660be38b86730a33139000eba54e