/*
 * 测试PIN脚是否1或0
 *
 */

#include <wiringPi.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

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]);
    wiringPiSetup();
    pinMode(pin, OUTPUT);
    printf("%d\n", digitalRead(pin));

    return pin;
}
