Raspberry Pi ZeroW: 192.168.1.35, port 22, root
ssh root@192.168.1.35
pwd: root
Installation de WiringPi:
Si git pas installé:
sudo apt-get install git-core
Pour vérifie si gpio installé
gpio -v
Pour supprimer wiringpi:
sudo apt-get purge wiringpi
hash -r
Télécharger wiringPi:
sudo apt-get purge wiringpi
Installer WiringPi quand téléchargé
cd WiringPi
git pull origin
./buil
Et vérifier installation:
gpio -v
Voir les gpio:
gpio readall
Test en sortie
gpio -g mode 26 output
gpio -g write 26 1
gpio -g write 26 0
Test en entrée:
gpio -g mode 26 up
gpio -g read 26
En C:
#include <wiringPi.h>
digitalWrite(26, HIGH);
Compilation programme utilisation wiringPi:
gcc -o prog prog.c -l wiringPi
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#define GPIO_ROOT "/sys/class/gpio"
#define EXPORT "/sys/class/gpio/export"
#define UNEXPORT "/sys/class/gpio/export"
#define LOW 0
#define HIGH 1
int export_pin(int num) {
FILE* export = fopen(EXPORT, "w");
if (export == NULL) {
printf("Failed to open the export file\n");
exit(-1);
}
fprintf(export, "%d", num);
fclose(export);
return 0;
}
int unexport_pin(int num) {
FILE* unexport = fopen(UNEXPORT, "w");
if (unexport == NULL) {
printf("Failed to open the unexport file\n");
exit(-1);
}
fprintf(unexport, "%d", num);
fclose(unexport);
return 0;
}
int set_direction(char *mode, int num) {
char direction_file_path[1024];
snprintf(direction_file_path, sizeof(direction_file_path), "/sys/class/gpio/gpio%d/direction", num);
FILE* direction = fopen(direction_file_path, "w");
if (direction == NULL) {
printf("Failed to open the direction file\n");
exit(-1);
}
fputs(mode, direction);
fclose(direction);
return 0;
}
int set_value(int val, int num) {
char value_file_path[1024];
snprintf(value_file_path, sizeof(value_file_path), "/sys/class/gpio/gpio%d/value", num);
FILE* value = fopen(value_file_path, "w");
if (value == NULL) {
printf("Failed to open the value file\n");
exit(-1);
}
fprintf(value, "%d", val);
fclose(value);
return 0;
}
int main() {
int rslt;
int num;
int num_blinks;
num = 26;
num_blinks = 5;
printf("\nFred will blink !!\n");
rslt = export_pin(num);
rslt = set_direction("out", num);
for (int i = 0; i < num_blinks; i++) {
rslt = set_value(HIGH, num);
usleep(500000); // Temps en µS, et sleep(xx) = temps en secondes
rslt = set_value(LOW, num);
usleep(500000);
}
rslt = set_value(LOW, num);
rslt = set_direction("in", num);
rslt = unexport_pin(num);
return EXIT_SUCCESS;
}
https://linuxhint.com/install-qt-creator-raspberry-pi/