rtos_k230 test_gpio.c 测试程序会导致tf卡工作异常,rt-smart系统必崩溃

Viewed 5

问题描述


测试4修改了GPIO30 (TFCARD_D2)的功能,导致系统崩溃。

// 测试4:获取引脚ID
static int test_get_pin_id(void)
{
TEST_START("Get Pin ID");

drv_gpio_inst_t* gpio = NULL;
int ret, pin_id;

// 测试不同的引脚
for (int pin = 0; pin <= TEST_GPIO_PIN_MAX; pin += 10) {
    ret = drv_fpioa_set_pin_func(pin, GPIO0 + pin);
    if (ret != 0) continue;

    ret = drv_gpio_inst_create(pin, &gpio);
    if (ret != 0) continue;

    pin_id = drv_gpio_get_pin_id(gpio);
    TEST_ASSERT(pin_id == pin, "Get correct pin ID");

    drv_gpio_inst_destroy(&gpio);
}

// 测试NULL指针
pin_id = drv_gpio_get_pin_id(NULL);
TEST_ASSERT(pin_id == -1, "Get pin ID with NULL returns -1");

return 0;

}

复现步骤


  1. 注释掉test_get_pin_id函数即可。

硬件板卡


庐山派K230D

软件版本


RTSmart

0 Answers