GPIO相关

GPIO配置脚本的使用:
Port:端口+组内序号<功能分配><内部电阻状态><驱动能力><输出电平状态>
1.函数原型: int Script_parser_fetch(char *main_name, char *sub_name, int value[], int count);
                       主键名称,    子键名称    存放用户获取的数据   传进的数据空间的最大word个数
成功返回0,失败返回-1
这个函数可以获取配置里面的一个值或者一组GPIO或者一组字符窜的配置。
获取一个值:
如有配置
[fm_para]
fm_pattern = 0
则:
    {
        int  fm_pattern;
        int  ret;

        ret = script_parser_fetch(“fm_para”, “fm_pattern”, &fm_pattern, 1);
    if(ret >= 0)
        return fm_pattern;
    else
        return ret;
    }
获取一组GPIO配置:
如有配置
[twi_para]
twi_scl   = port:PH12<1><default><default><default>
则:
    {
        user_gpio_set_t  gpio_info[1];
        int  ret;

        ret = script_parser_fetch(“twi_para”, “twi_scl”, gpio_info, sizeof(user_gpio_set_t)/sizeof(int));
        if(ret < 0)
        printf(“fetch script gpio infomation fail\n”);
    else
        printf(“fetch script gpio infomation ok \n”);

    return ret;
    }
获取字符串:
如有配置
[string_test]
string_demo = string:abcdefghijklmn
则:
    {
        char  string_info[128];
        int  ret;

        memset(string_info, 0, 128);
        ret = script_parser_fetch(“string_test”, “string_demo”, string_info, 128/sizeof(int));
        if(ret < 0)
        printf(“fetch script string infomation fail\n”);
    else
        printf(“fetch script string infomation ok \n”);

    return ret;
    }

2.更改某个GPIO的输出电平:
如有配置
[audio_para]
audio_earphone_ctrl   = port:PH12<1><default><default><default>
则:
int gpio_earphone_switch = gpio_request_ex("audio_para", "audio_earphone_ctrl"); //用这一句可以直接取得控制句柄
gpio_write_one_pin_value(gpio_earphone_switch, 0, "audio_earphone_ctrl");//设置输出低电平

3.读取某个GPIO的输入电平:
int gpio_earphone_switch = gpio_request_ex("audio_para", "audio_earphone_ctrl"); //取得控制句柄
Int Gpio_read_one_pin_value (__hdle devpin, const char *gpio_name);
返回值:  高电平返回1
          低电平返回0
      非输入状态返回-1

4.设置句柄下单个GPIO配置:


函数原型:__hdle  Gpio_request (user_gpio_set_t *gpio_list,      
unsigned group_count_max);
参数:gpio_list          数据地址,保存GPIO属性,来自于配置脚本或者是用户自定义
      group_count_max   用户保存GPIO数据的结构体的最大个数
      返回值:   成功返回非空指针
                 失败返回空指针

转载于:https://my.oschina.net/arthurdu/blog/124494

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值