点击(此处)折叠或打开
-
#define AW9106_POWER_GPIO 10 //设置引脚编号
1、GPIO_CFG(AW9106_POWER_GPIO, 0, GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA);
AW9106_POWER_GPIO : 引脚编号
0:GPIO模式 (0---GPIO模式,1---串口模式)
GPIO_CFG_OUTPUT:输入输出模式
GPIO_CFG_NO_PULL:默认上拉还是下拉
GPIO_CFG_2MA:默认驱动电流
参考:
http://blog.csdn.net/dwyane_zhang/article/details/6739155
2、gpio_direction_output(AW9106_POWER_GPIO, i_is_on);
表示在
AW9106_POWER_GPIO这个引脚上写入i_is_on这个值,并且将这个端口设置为输出模式
3、gpio_set_value(AW9106_POWER_GPIO,i_is_on);
表示在AW9106_POWER_GPIO这个引脚上写入i_is_on这个值。
4、gpio_direction_output和gpio_set_value
gpio_set_value(port_num,0/1) 一般只是在这个GPIO口的寄存器上写上某个值,至于这个端口是否设置为输出,它就管不了!
而gpio_direction_output (port_num,0/1),在某个GPIO口写上某个值之后,还会把这个端口设置为输出模式。
因此,有人也许就会建议,把gpio_set_value这个函数直接去掉不用,是否可以,显然是可以的。
系统开发人员在要结合这两者来使用,以便提高效率。
一般某个端口设置好了输入与输出模式后,最好不要经常变动。
首先要调用gpio_direction_output(),以后要设置高低电平时,直接使用gpio_set_value()就可以了,这样可以省却再次调用设置输出模式的操作,从而提高运行效率!
5、gpio_tlmm_config(cfg,GPIO_CFG_EEPR_ENABLE); //将相应的GPIO端口输出使能
6、要使用GPIO,系统首先要分配一个GPIO,使用gpio_request() 为系统分配一个GPIO。
7、request_irq: 注册中断服务函数
阅读(2383) | 评论(0) | 转发(0) |