[FL-1288] Additional gpio_set pins for testing (#508)
* uart rx, speaker and ir rx/tx pins added to cli_command_gpio_set * gpio_set: Warning for PA0, cli: added motd by @maratsafi
This commit is contained in:
@@ -181,7 +181,22 @@ void cli_command_led(Cli* cli, string_t args, void* context) {
|
||||
}
|
||||
|
||||
void cli_command_gpio_set(Cli* cli, string_t args, void* context) {
|
||||
char pin_names[][4] = {"PC0", "PC1", "PC3", "PB2", "PB3", "PA4", "PA6", "PA7"};
|
||||
char pin_names[][4] = {
|
||||
"PC0",
|
||||
"PC1",
|
||||
"PC3",
|
||||
"PB2",
|
||||
"PB3",
|
||||
"PA4",
|
||||
"PA6",
|
||||
"PA7",
|
||||
#ifdef DEBUG
|
||||
"PA0",
|
||||
"PB7",
|
||||
"PB8",
|
||||
"PB9"
|
||||
#endif
|
||||
};
|
||||
GpioPin gpio[] = {
|
||||
{.port = GPIOC, .pin = LL_GPIO_PIN_0},
|
||||
{.port = GPIOC, .pin = LL_GPIO_PIN_1},
|
||||
@@ -190,7 +205,14 @@ void cli_command_gpio_set(Cli* cli, string_t args, void* context) {
|
||||
{.port = GPIOB, .pin = LL_GPIO_PIN_3},
|
||||
{.port = GPIOA, .pin = LL_GPIO_PIN_4},
|
||||
{.port = GPIOA, .pin = LL_GPIO_PIN_6},
|
||||
{.port = GPIOA, .pin = LL_GPIO_PIN_7}};
|
||||
{.port = GPIOA, .pin = LL_GPIO_PIN_7},
|
||||
#ifdef DEBUG
|
||||
{.port = GPIOA, .pin = LL_GPIO_PIN_0}, // IR_RX (PA0)
|
||||
{.port = GPIOB, .pin = LL_GPIO_PIN_7}, // UART RX (PB7)
|
||||
{.port = GPIOB, .pin = LL_GPIO_PIN_8}, // SPEAKER (PB8)
|
||||
{.port = GPIOB, .pin = LL_GPIO_PIN_9}, // IR_TX (PB9)
|
||||
#endif
|
||||
};
|
||||
uint8_t num = 0;
|
||||
bool pin_found = false;
|
||||
|
||||
@@ -229,6 +251,18 @@ void cli_command_gpio_set(Cli* cli, string_t args, void* context) {
|
||||
LL_GPIO_SetPinOutputType(gpio[num].port, gpio[num].pin, LL_GPIO_OUTPUT_PUSHPULL);
|
||||
LL_GPIO_ResetOutputPin(gpio[num].port, gpio[num].pin);
|
||||
} else if(!string_cmp(args, "1")) {
|
||||
#ifdef DEBUG
|
||||
if(num == 8) { // PA0
|
||||
printf(
|
||||
"Setting PA0 pin HIGH with TSOP connected can damage IR receiver. Are you sure you want to continue? (y/n)?\r\n");
|
||||
char c = cli_getc(cli);
|
||||
if(c != 'y' || c != 'Y') {
|
||||
printf("Cancelled.\r\n");
|
||||
return;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
LL_GPIO_SetPinMode(gpio[num].port, gpio[num].pin, LL_GPIO_MODE_OUTPUT);
|
||||
LL_GPIO_SetPinOutputType(gpio[num].port, gpio[num].pin, LL_GPIO_OUTPUT_PUSHPULL);
|
||||
LL_GPIO_SetOutputPin(gpio[num].port, gpio[num].pin);
|
||||
|
Reference in New Issue
Block a user