/* * 人体红外线传感器 * */ #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 != 2) { printf("Parameter error.\n"); exit(1); } if (is_num(argv[1]) == 1) { printf("Parameter error, parameter 1 is PIN pin value\n"); exit(1); } int pin = atol(argv[1]); int status = 0; wiringPiSetup(); pinMode(pin, INPUT); pullUpDnControl(pin, PUD_DOWN); status = digitalRead(pin); printf("%d\n", status); return status; }