1 заметка с тегом

Wiring

Про GPIO на OrangePi

Не все наверное знают про  WiringOtherPi This is a GPIO access library for OrangePi форк original WiringPi for Raspberry Pi

Для проверки, как заработает на OrangePi код для Raspberry Pi использующий прерывания и библиотеку Wiring ,
скомпилируем программу для определения направления вращения вала энкодера .
Reading a Rotary Encoder from a Raspberry Pi

ставим WiringOtherPi :

git clone https://github.com/lanefu/WiringOtherPi.git
cd WiringOtherPi
sudo ./build
cd ..

затем:

git clone https://github.com/astine/rotaryencoder
cd rotaryencoder
nano test.c

вставляем:


#include "stdio.h"
#include "rotaryencoder.h"
int main()
{
printf("Hello!\n");
wiringPiSetup () ;
/*using pins 3/7*/
struct encoder *encoder = setupencoder(7,8);
long value;
while (1)
 {
 updateEncoders();
 long l = encoder->value;
   if(l!=value)
   {
     printf("value: %d\n", (void *)l);
     value = l;
   }
 }
return(0);
}

Save and compile it:

gcc -lwiringPi test.c rotaryencoder.c -o test

энкодер подключаем к контактам 3 и 7 гребенки, общий вывод к 6 контакту.

./test

value: 0
value: 1
value: 2
value: 3
value: 4


работает!

2017   armbian   GPIO   OrangePI PC   Wiring