HiPi
view release on metacpan or search on metacpan
do_gpio_write( gpio, level );
RETVAL = (int)level;
}
OUTPUT: RETVAL
int
xs_gpio_read( gpio )
unsigned gpio
CODE:
if (gpio > PI_MAX_GPIO) {
send_module_error("bad gpio number specified");
RETVAL = PI_PIN_ERROR;
} else {
RETVAL = do_gpio_read(gpio);
}
OUTPUT: RETVAL
int
xs_gpio_set_mode( gpio, mode )
unsigned gpio
unsigned mode
CODE:
if (gpio > PI_MAX_GPIO) {
send_module_error("bad gpio number specified");
RETVAL = PI_PIN_ERROR;
} else if( mode > PI_MAX_MODE ){
send_module_error("bad mode specified");
RETVAL = PI_PIN_ERROR;
} else {
do_gpio_set_mode( gpio, map_fsel_hipi_to_rp1( mode ));
RETVAL = (int)mode;
}
OUTPUT: RETVAL
int
xs_gpio_get_mode( gpio )
unsigned gpio
CODE:
if (gpio > PI_MAX_GPIO) {
send_module_error("bad gpio number specified");
RETVAL = PI_PIN_ERROR;
} else {
RETVAL = map_fsel_rp1_to_hipi(do_gpio_get_mode( gpio ));
}
OUTPUT: RETVAL
void
xs_gpio_get_mode_name( gpio, mode )
unsigned gpio
int mode
PPCODE:
XPUSHs(sv_2mortal(newSVpv(rp1_gpio_get_fsel_name( gpio, map_fsel_hipi_to_rp1( mode ) ), 0)));
void
xs_gpio_get_current_mode_name( gpio )
unsigned gpio
PPCODE:
XPUSHs(sv_2mortal(newSVpv(rp1_gpio_get_fsel_name( gpio, do_gpio_get_mode( gpio ) ), 0)));
int
xs_gpio_set_pud( gpio, pud )
unsigned gpio
unsigned pud
CODE:
if (gpio > PI_MAX_GPIO) {
send_module_error("bad gpio number specified");
RETVAL = PI_PIN_ERROR;
} else if( pud > PI_PUD_UP ){
send_module_error("bad pud action specified");
RETVAL = PI_PIN_ERROR;
} else {
// set the pud
do_gpio_set_pud( gpio, pud);
RETVAL = (int)pud;
}
OUTPUT: RETVAL
int
xs_gpio_get_pud( gpio )
unsigned gpio
CODE:
if (gpio > PI_MAX_GPIO) {
send_module_error("bad gpio number specified");
RETVAL = PI_PIN_ERROR;
} else {
// get the pud
RETVAL = do_gpio_get_pud( gpio );
}
OUTPUT: RETVAL
int
xs_gpio_set_schmitt( gpio, schmitt )
unsigned gpio
unsigned schmitt
CODE:
if (gpio > PI_MAX_GPIO) {
send_module_error("bad gpio number specified");
RETVAL = PI_PIN_ERROR;
} else if( schmitt >= SCHMITT_MAX ){
send_module_error("bad schmitt value specified");
RETVAL = PI_PIN_ERROR;
} else {
do_gpio_set_schmitt( gpio, schmitt);
RETVAL = (int)schmitt;
}
OUTPUT: RETVAL
int
( run in 0.985 second using v1.01-cache-2.11-cpan-5511b514fd6 )