Pin state is a pin voltage level, not a logic (active-high/low) level
This commit is contained in:
parent
6c8b3a7193
commit
06e7a73661
|
@ -51,6 +51,11 @@ void pinioInit(const pinioConfig_t *pinioConfig)
|
||||||
|
|
||||||
switch (pinioConfig->config[i] & PINIO_CONFIG_MODE_MASK) {
|
switch (pinioConfig->config[i] & PINIO_CONFIG_MODE_MASK) {
|
||||||
case PINIO_CONFIG_MODE_OUT_PP:
|
case PINIO_CONFIG_MODE_OUT_PP:
|
||||||
|
// Initial state after reset is input, pull-up.
|
||||||
|
// Avoid momentary off by presetting the output to hi.
|
||||||
|
if (pinioConfig->config[i] & PINIO_CONFIG_OUT_INVERTED) {
|
||||||
|
IOHi(io);
|
||||||
|
}
|
||||||
IOConfigGPIO(io, IOCFG_OUT_PP);
|
IOConfigGPIO(io, IOCFG_OUT_PP);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -59,12 +64,13 @@ void pinioInit(const pinioConfig_t *pinioConfig)
|
||||||
{
|
{
|
||||||
pinioRuntime[i].inverted = true;
|
pinioRuntime[i].inverted = true;
|
||||||
IOHi(io);
|
IOHi(io);
|
||||||
|
pinioRuntime[i].state = true;
|
||||||
} else {
|
} else {
|
||||||
pinioRuntime[i].inverted = false;
|
pinioRuntime[i].inverted = false;
|
||||||
IOLo(io);
|
IOLo(io);
|
||||||
|
pinioRuntime[i].state = false;
|
||||||
}
|
}
|
||||||
pinioRuntime[i].io = io;
|
pinioRuntime[i].io = io;
|
||||||
pinioRuntime[i].state = false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue