Fix ASCII protocol bug when writing to uint8_t
Fix ASCII protocol bug when writing to uint8_t

When writing to uint8_t properties or equivalently
sized enum properties, the ASCII protocol handler would
write beyond the variable itself and overwrite adjacent
memory.

This manifested for instance in the following:

    r axis0.controller.config.input_mode 1
    w axis0.controller.config.control_mode 3
    r axis0.controller.config.input_mode 0

This boils down to what appears to be misbehavior of
`sscanf`.

This fix adds an intermediate union to provide a safe
memory area for the `sscanf` call.

madcowswe/ODrive,madcowswe/ODriveFirmware,madcowswe/ODriveFirmware,madcowswe/ODrive,madcowswe/ODrive,madcowswe/ODrive,madcowswe/ODriveFirmware,madcowswe/ODriveFirmware,madcowswe/ODrive