Program Listing for File IO_BANK0_GPIO12_CTRL_FUNCSEL.h#
↰ Return to documentation for file (src/generated/enums/IO_BANK0_GPIO12_CTRL_FUNCSEL.h
)
#pragma once
#include <cstdint>
#include <cstring>
namespace RP2040
{
enum class IO_BANK0_GPIO12_CTRL_FUNCSEL : uint8_t
{
spi1_rx = 1,
uart0_tx = 2,
i2c0_sda = 3,
pwm_a_6 = 4,
sio_12 = 5,
pio0_12 = 6,
pio1_12 = 7,
usb_muxing_extphy_speed = 8,
usb_muxing_overcurr_detect = 9,
null = 31
};
static_assert(sizeof(IO_BANK0_GPIO12_CTRL_FUNCSEL) == 1);
inline const char *to_string(IO_BANK0_GPIO12_CTRL_FUNCSEL instance)
{
const char *result = "UNKNOWN IO_BANK0_GPIO12_CTRL_FUNCSEL";
switch (instance)
{
case IO_BANK0_GPIO12_CTRL_FUNCSEL::spi1_rx:
result = "spi1_rx";
break;
case IO_BANK0_GPIO12_CTRL_FUNCSEL::uart0_tx:
result = "uart0_tx";
break;
case IO_BANK0_GPIO12_CTRL_FUNCSEL::i2c0_sda:
result = "i2c0_sda";
break;
case IO_BANK0_GPIO12_CTRL_FUNCSEL::pwm_a_6:
result = "pwm_a_6";
break;
case IO_BANK0_GPIO12_CTRL_FUNCSEL::sio_12:
result = "sio_12";
break;
case IO_BANK0_GPIO12_CTRL_FUNCSEL::pio0_12:
result = "pio0_12";
break;
case IO_BANK0_GPIO12_CTRL_FUNCSEL::pio1_12:
result = "pio1_12";
break;
case IO_BANK0_GPIO12_CTRL_FUNCSEL::usb_muxing_extphy_speed:
result = "usb_muxing_extphy_speed";
break;
case IO_BANK0_GPIO12_CTRL_FUNCSEL::usb_muxing_overcurr_detect:
result = "usb_muxing_overcurr_detect";
break;
case IO_BANK0_GPIO12_CTRL_FUNCSEL::null:
result = "null";
break;
}
return result;
}
inline bool from_string(const char *data, IO_BANK0_GPIO12_CTRL_FUNCSEL &output)
{
bool result = false;
if ((result = !strncmp(data, "spi1_rx", 7)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::spi1_rx;
}
else if ((result = !strncmp(data, "uart0_tx", 8)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::uart0_tx;
}
else if ((result = !strncmp(data, "i2c0_sda", 8)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::i2c0_sda;
}
else if ((result = !strncmp(data, "pwm_a_6", 7)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::pwm_a_6;
}
else if ((result = !strncmp(data, "sio_12", 6)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::sio_12;
}
else if ((result = !strncmp(data, "pio0_12", 7)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::pio0_12;
}
else if ((result = !strncmp(data, "pio1_12", 7)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::pio1_12;
}
else if ((result = !strncmp(data, "usb_muxing_extphy_speed", 23)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::usb_muxing_extphy_speed;
}
else if ((result = !strncmp(data, "usb_muxing_overcurr_detect", 26)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::usb_muxing_overcurr_detect;
}
else if ((result = !strncmp(data, "null", 4)))
{
output = IO_BANK0_GPIO12_CTRL_FUNCSEL::null;
}
return result;
}
}; // namespace RP2040