Мне нужна простая программа, которая будет писать в gpio. Я нигде не могу найти. Пример в документации mmra не работает. Я выбрал gpio14, потому что пример Sprakfun, который пишет на этот вывод с помощью системных вызовов, работает просто отлично. Но моя программа не работает.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <mraa.h>
#include <math.h>
#include <mraa/gpio.h>
int main(int argc, char **argv)
{
mraa_gpio_context gpio;
gpio = mraa_gpio_init(14); <--- to get gpio14 to toggle change this to 36
mraa_gpio_dir(gpio, MRAA_GPIO_OUT);
int value = 0;
for (;;) {
if(value == 0)value = 1;
else value = 0;
mraa_gpio_write(gpio,value);
printf("output is %d\n",value);
sleep(1);
}
mraa_gpio_close(gpio);
return 0;
}
Цикл запускается и выводит результат 1, затем вывод 0. У меня есть осциллограф на штырьке, и он остается низким.
С помощью этого руководства Sparkfun я могу двигаться штифт высокий, поэтому я знаю, что моя настройка правильная. Если кто-то может просто дать мне пример кода, который работает со всеми включениями, это было бы очень полезно.