===== digital_output group =====
This group contains all digital output signals.
Each signal is a sub group with the signal name as the group name.
"digital_output": {
"green_led": {
"type": "push pull",
"pad": "PA3",
"on_boot": "enabled"
}
}
==== type ====
defines what type of output mode should be used. Type can be:
* push pull
* open drain
**type**: enum
**default**: push pull
==== pad ====
defines the chip pad that the signal should be output on.
**type**: string
**default**: no default possible
==== invert ====
If this setting is set to "enabled" then turning this output "on" will generate a Low (Gnd) signal. Turning it "off" will generate a High (Vcc) level.
If this setting is set to "disabed" (=default) then turning this output "on" will generate a High (Vcc) signal. Turning it "off" will generate a Low (Gnd) level.
**type**: bool
**default**: "disabled"
==== pull_up ====
enables the pull up resistor.
**type**: bool
**default**: disabled
==== pull_down ====
enables the pull down resistor.
**type**: bool
**default**: disabled
==== on_boot ====
defines the logic level to be set on initialization. Setting this to "enabled" will set the pin High (Vcc) if inverted is disabled.
**type**: bool
**default**: disabled
==== drive_strength ====
defines the amount of current that can be driven from the pin. Possible values are:
* 2mA
* 4mA
* 8mA
* 12mA
**type**: enum
**default**: 2mA
==== slew_rate ====
defines the rise and fall times. Possible values are:
* slow
* fast
**type**: enum
**default**: "slow"
===== API =====
The part "signal_name" in the described functions will be replaced by the name of the signal. E.g. if your signal is called "debug_led" then the API function "signal_name_on" will become "debug_led_on".
void signal_name_on(void)
Will set the output pin to output a high Signal. The pin will be at Vcc.
If the signal has the "invert" property "on" then the Output will be Low (Gnd).
void signal_name_off(void)
Will set the output pin to output a low Signal. The pin will be at Gnd.
If the signal has the "invert" property "on" then the Output will be High (Vcc).