例如:先在 Sys_config.fex文件中 [1302_para]
1302_used = 1
1302_clk = port:PD05<1><default><default><0>
1302_dat = port:PD06<1><default><default><0>
1302_rst = port:PD07<1><default><default><0>
volume_set = port:PH06<1><default><default><0> 添加一个口,再在 (lichee\linux-3.4\drivers\video\sun7i\disp)目录下的 Dev_disp.c中
script_item_value_type_e type = 0;
type = script_get_item("1302_para", "volume_set", &Volume_OnorOff);
if(type == SCIRPT_ITEM_VALUE_TYPE_PIO) {
u32 ret = gpio_request(Volume_OnorOff.gpio.gpio, NULL);
if(ret != 0){
__wrn("Albert the ERR: volume_set gpio_request failed\n");
unTimeSupportFlag = 0;
return;
} else {
gpio_direction_output(Volume_OnorOff.gpio.gpio, 1);
sw_gpio_setpull(Volume_OnorOff.gpio.gpio, 1);
}
} else {
__wrn("Albert not volume_set gpio\n");
unTimeSupportFlag = 0;
return;
1302_used = 1
1302_clk = port:PD05<1><default><default><0>
1302_dat = port:PD06<1><default><default><0>
1302_rst = port:PD07<1><default><default><0>
volume_set = port:PH06<1><default><default><0> 添加一个口,再在 (lichee\linux-3.4\drivers\video\sun7i\disp)目录下的 Dev_disp.c中
void Ds1302ModuleInit()
{script_item_value_type_e type = 0;
type = script_get_item("1302_para", "volume_set", &Volume_OnorOff);
if(type == SCIRPT_ITEM_VALUE_TYPE_PIO) {
u32 ret = gpio_request(Volume_OnorOff.gpio.gpio, NULL);
if(ret != 0){
__wrn("Albert the ERR: volume_set gpio_request failed\n");
unTimeSupportFlag = 0;
return;
} else {
gpio_direction_output(Volume_OnorOff.gpio.gpio, 1);
sw_gpio_setpull(Volume_OnorOff.gpio.gpio, 1);
}
} else {
__wrn("Albert not volume_set gpio\n");
unTimeSupportFlag = 0;
return;
}
}
还要声明内核里的一个变量 script_item_u Volume_OnorOff; 它就是我们要加的volume_set的别名, __gpio_set_value(Volume_OnorOff.gpio.gpio, 0);这个函数要把 口拉低 __gpio_set_value(Volume_OnorOff.gpio.gpio, 1);这个是把口拉高