Avant de pouvoir utiliser le port série, quelques réglages sont nécessaires dans Raspbian. En effet, Raspbian utilise le port série GPIO comme port console sur lequel on peut se loguer avec un terminal (comme Putty par exemple). Il faut donc désactiver ceci pour libérer le port série. Pour cela, exécuter "raspi-config" :
raspi-config
Raspi-config est une interface en mode texte. Pour se déplacer, utiliser les flèches ou la touche tabulation. Pour valider un choix, utiliser la barre d'espace ou la touche Entrée.
Sélectionner "Interface Options" :
Sélectionner "I6 Serial Port" :
Sélectionner "No" pour désactiver le shell sur le port série :
Sélectionner "Yes" pour que le port série soit activé :
Sélectionner "Ok" pour confirmer :
Sélectionner "Finish" pour quitter raspi-config :
Sélectionner "Yes" pour redémarrer le Raspberry Pi et prendre en compte les modifications :
#include <stdio.h>
#include <pigpiod_if2.h>
int main(void)
{
int pi = pigpio_start(NULL, NULL);
if (pi < 0) return 1;
int handle = serial_open(pi, "/dev/serial0", 9600, 0);
if (handle < 0) return 1;
serial_write(pi, handle, "Hello pigpiod\n", 14);
serial_close(pi, handle);
pigpio_stop(pi);
return 0;
}