大家好,我用GPIO_162做为主板工作指示灯,同时测试了gpio_63,64,在linux下board_am3517evm.c中增加了以下代码
static struct omap_board_mux board_gpio_led_mux[] = {
OMAP3_MUX(MCBSP1_CLKX,OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT), //DS2
OMAP3_MUX(GPMC_WAIT1, OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT),
OMAP3_MUX(GPMC_WAIT2, OMAP_MUX_MODE4 | OMAP_PIN_OUTPUT),
{ .reg_offset = OMAP_MUX_TERMINATOR },
}
static int gpio_leds_init(void)
{
int ret = 0;
omap3_mux_init(board_gpio_led_mux, OMAP_PACKAGE_CBB);
ret = gpio_request(162, "DS2");
if (ret)
{
printk(KERN_ERR "failed to get DS2\n");
return 1;
}
gpio_direction_output(162, 1);
gpio_direction_output(63, 0);
gpio_direction_output(64, 0);
// gpio_set_value(162,1);
printk(KERN_INFO"Led initialized successfully\n");
return ret;
}
发现无论gpio_direction_output设置成1,还是0,io口的电平没有任何变化。我还有哪有需要配置吗?期待大家的帮助。