1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
| #include <stdio.h>
#include <wiringPi.h>
#include <mcp23017.h>
#include <string>
#include <iostream>
#include <stdlib.h>
#include <string.h>
int main(int argc, char * const argv[])
{
int GPB0M1, GPB1M1; // GPB2M1, GPB3M1, GPB4M1;
wiringPiSetup();
mcp23017Setup (120, 0x20) ;
pinMode (120, OUTPUT); //PIN GPA0-M1 mode sortie
pinMode (121, OUTPUT); //PIN GPA1-M1 mode sortie
pinMode (122, OUTPUT); //PIN GPA2-M1 mode sortie
pinMode (123, OUTPUT); //PIN GPA3-M1 mode sortie
pinMode (124, OUTPUT); //PIN GPA4-M1 mode sortie
digitalWrite(120, 0); //PIN GPA0-M1 eteint
digitalWrite(121, 0); //PIN GPA1-M1 eteint
digitalWrite(122, 0); //PIN GPA2-M1 eteint
digitalWrite(123, 0); //PIN GPA3-M1 eteint
digitalWrite(124, 0); //PIN GPA4-M1 eteint
pinMode (127, INPUT); //PIN GPB0-M1 mode entrée
pinMode (128, INPUT); //PIN GPB1-M1 mode entrée
digitalWrite(120, 0);
delay(200);
if (strcmp(argv[1], "produit1") == 0)
{
GPB0M1 = 0;
digitalWrite(120, 1); //PIN GPA0-M1 allumée
GPB0M1 = digitalRead(127);
while(GPB0M1==0){GPB0M1 = digitalRead(127);} //tant que GPB0M1 n'est pas à 1 je lit la valeur de GPB0M1 SINON ligne suivante
digitalWrite(120, 0); //PIN GPA0-M1 eteint
}
else if (strcmp(argv[1], "produit2") == 0)
{
GPB1M1 = 0;
digitalWrite(121, 1);
GPB1M1 = digitalRead(128);
while(GPB1M1==0){GPB1M1 = digitalRead(128);}
digitalWrite(121, 0);
}
getchar();
return EXIT_SUCCESS;
} |
Partager