/*============================================================================= | |
** FileName: gpio_test.cpp | |
** Desc: about function test | |
** Author: zhou | |
** Version: V1.0 | |
** LastChange: 2021-03-04 | |
** History: | |
=============================================================================*/ | |
#include "function_common.h" | |
#include <log/log.h> | |
#include "gpio_test.h" | |
#include <stdio.h> | |
#include <string.h> | |
#include <stdlib.h> | |
#ifdef __cplusplus | |
extern "C" { | |
#endif | |
#include "liblynq-driver/libdriver.h" | |
#ifdef __cplusplus | |
} | |
#endif | |
int check_mode(const char *mode) | |
{ | |
if(!strcmp(mode, GPIO_DIR)) | |
{ | |
return 1; | |
} | |
if(!strcmp(mode, GPIO_OUT)) | |
{ | |
return 1; | |
} | |
if(!strcmp(mode, GPIO_MODE)) | |
{ | |
return 1; | |
} | |
return -1; | |
} | |
int check_status(int statu) | |
{ | |
if (statu == 0) | |
return 1; | |
if (statu ==1) | |
return 1; | |
return -1; | |
} | |
int gpio_test(char *api,char *string) { | |
char *argv[100] = {0}; | |
parseParameters(string,argv); | |
if(!strcmp(api, "get")){ | |
char output1[1024] = {0}; | |
int value = atoi(argv[0]); | |
lynq_get_gpio (value,output1); | |
// printf("Factory_result get %d gpio:%s \n",value,output1) | |
LYVERBLOG("+[gpio][get]: data = %s\n",output1); | |
} | |
else if(!strcmp(api, "set")){ | |
int gpio_numb = atoi(argv[1]); | |
int gpio_statu = atoi(argv[2]); | |
int check_prame; | |
check_prame = check_mode(argv[0]); | |
if(check_prame == -1) | |
{ | |
LYVERBLOG("+[gpio][set]: error num = %d \n",GPIO_PRAME_ERROR); | |
return 0; | |
} | |
check_prame = check_status(gpio_statu); | |
if(check_prame == -1) | |
{ | |
LYVERBLOG("+[gpio][set]: error num = %d \n",GPIO_PRAME_ERROR); | |
return 0; | |
} | |
int result = lynq_set_gpio(argv[0], gpio_numb,gpio_statu); | |
if(result == -1) | |
{ | |
LYVERBLOG("+[gpio][set]: error num = %d \n",GPIO_SET_ERROR); | |
return 0; | |
} | |
else | |
{ | |
LYVERBLOG("+[gpio][set]: ok!!\n",result); | |
return 1; | |
} | |
// printf("Factory_result gpio %d set state :%d\n",gpio_numb,result); | |
} | |
else { | |
LYVERBLOG("+[gpio][lynq_set_gpio]: error num =%d\n",GPIO_PRAME_ERROR); | |
} | |
return 0; | |
} |