/* * 设置PIN脚为1或0电位(电压) * */ #include #include #include #include //#include #include static int is_num(char *str) { int i, len; for (i = 0, len = strlen(str); i < len; i++) { if (isdigit(str[i]) == 0) { printf("不是数字\n"); return 1; } } return 0; } int main(int argc, char *argv[]) { if (argc != 3) { printf("Parameter error.\n"); exit(1); } if (is_num(argv[1]) == 1) { printf("Parameter error, parameter 1 is PIN pin value\n"); exit(1); } if (is_num(argv[2]) == 1) { printf("Parameter error, parameter 2 is true or false\n"); exit(1); } int pin = atol(argv[1]); wiringPiSetup(); pinMode(pin, OUTPUT); if (atol(argv[2]) == 1) { digitalWrite(pin, HIGH); } if (atol(argv[2]) == 0) { digitalWrite(pin, LOW); } return atol(argv[2]); }