User Tools

Site Tools


raspberrypi:pigpio_rencoder.c

sis kodas labai gerai ir tiklsiai veikia

kazkodel su python sito pasiekti nepavyksta

#include <stdio.h>
#include <unistd.h>  
#include <pigpio.h>
/* to compile and run
gcc -Wall -pthread -o pigpio_rencoder pigpio_rencoder.c -lpigpio -O3
sudo ./pigpio_rencoder
*/
int pin1 = 16;
int pin2 = 12;
int pin3 = 20;
 
int previous_pin = 0;
int previous_level = 0;
int p = 0;
 
void aFunction(int gpio, int level, uint32_t tick)
{
   if (gpio == pin2 && previous_pin == pin1 && level == 0 && previous_level == 0) p--;
   if (gpio == pin1 && previous_pin == pin2 && level == 0 && previous_level == 0) p++;
   printf("GPIO %3d became %3d at %10d, value = %5d\n", gpio, level, tick, p);
   previous_pin = gpio;
   previous_level = level;
}
 
int main(int argc, char *argv[])
{
    if (gpioInitialise() < 0) return -1;
 
    gpioSetAlertFunc(pin1, aFunction);
    gpioSetAlertFunc(pin2, aFunction);
    gpioSetAlertFunc(pin3, aFunction);
 
    printf("Press e and enter to exit program\n");
    int c;  
    while((c=getchar())!= 'e')       
        sleep(10);
 
   return 0;   
}
raspberrypi/pigpio_rencoder.c.txt · Last modified: by aistis