test.c
来自「采用gpio口来控制串口扩展芯片的驱动和测试程序」· C语言 代码 · 共 69 行
C
69 行
#include <fcntl.h>#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <termios.h>#include <unistd.h>#include <stdlib.h>#define IOCTL_GPIO_INIT 1#define IOCTL_GPIO_WRITE 2#define IOCTL_GPIO_READ 3int main(int argc, char *argv[]){ int fd; printf("Test gpio port\n"); // fd = open("/dev/gpio", O_RDWR|O_NOCTTY); fd = open("/dev/gpio", O_RDWR|O_NOCTTY); printf("the file value of gpio is %d \n",fd);/* if ((fd = open("/dev/gpio", O_RDWR)) < 0) { printf("Device gpio open error !\n"); exit(-1); } */ printf("The Command1 is: %d\n",argc); printf("The Command2 is: %c\n",*argv[2]); char tmp=*argv[2]; printf("tmp=%c\n",tmp);// printf("*argv[2] is: %c\n",*argv[2]);switch(tmp){ case 'a': printf("case0\n"); ioctl(fd, IOCTL_GPIO_INIT, 0); printf("end of case0\n"); break; case 'b': printf("case1\n"); int arg_w=(int)(*argv[3])-48; ioctl(fd, IOCTL_GPIO_WRITE, arg_w); printf("arg_w= %d \n",arg_w);// printf("res= %d \n",res); printf("end of case1\n"); break; case 'c': printf("case2\n"); int res=ioctl(fd, IOCTL_GPIO_READ, 4); printf("res= %d \n",res); printf("end of case2\n"); break; default: break;}// IOCTL_GPIO_INIT // IOCTL_GPIO_WRITE //IOCTL_GPIO_READ close(fd); }
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?