Note
Bonjour et bienvenue dans la Communauté Facebook des passionnés de Raspberry Pi, Arduino et ESP32 de SunFounder ! Plongez plus profondément dans l’univers des Raspberry Pi, Arduino et ESP32 avec d’autres passionnés.
Pourquoi rejoindre ?
Support d’experts : Résolvez les problèmes après-vente et les défis techniques avec l’aide de notre communauté et de notre équipe.
Apprendre et partager : Échangez des astuces et des tutoriels pour améliorer vos compétences.
Aperçus exclusifs : Accédez en avant-première aux annonces de nouveaux produits et aux aperçus.
Réductions spéciales : Profitez de réductions exclusives sur nos produits les plus récents.
Promotions festives et cadeaux : Participez à des cadeaux et des promotions de vacances.
👉 Prêt à explorer et à créer avec nous ? Cliquez [Ici] et rejoignez-nous aujourd’hui !
3.1.1 Compteur
Introduction
- Ici, nous allons créer un système de comptage avec affichage numérique, composé d’un capteur
PIR et d’un afficheur à segments 4 chiffres. Lorsque le capteur PIR détecte le passage de quelqu’un, le chiffre sur l’afficheur à segments 4 chiffres augmentera de 1. Vous pouvez utiliser ce compteur pour compter le nombre de personnes traversant un passage.
Composants requis
Pour ce projet, nous avons besoin des composants suivants.
Il est certainement pratique d’acheter un kit complet, voici le lien :
Nom |
ÉLÉMENTS DANS CE KIT |
LIEN |
|---|---|---|
Kit Raphael |
337 |
Vous pouvez également les acheter séparément via les liens ci-dessous.
INTRODUCTION DES COMPOSANTS |
LIEN D’ACHAT |
|---|---|
- |
|
- |
Schéma
Nom T-Board |
Physique |
wiringPi |
BCM |
GPIO17 |
Pin 11 |
0 |
17 |
GPIO27 |
Pin 13 |
2 |
27 |
GPIO22 |
Pin 15 |
3 |
22 |
SPIMOSI |
Pin 19 |
12 |
10 |
GPIO18 |
Pin 12 |
1 |
18 |
GPIO23 |
Pin 16 |
4 |
23 |
GPIO24 |
Pin 18 |
5 |
24 |
GPIO26 |
Pin 37 |
25 |
26 |
Procédures expérimentales
Étape 1 : Construisez le circuit.
Étape 2 : Allez dans le dossier du code.
cd ~/raphael-kit/c/3.1.1/
Étape 3 : Compilez le code.
gcc 3.1.1_CountingDevice.c -lwiringPi
Étape 4 : Exécutez le fichier exécutable.
sudo ./a.out
Après l’exécution du code, lorsque le capteur PIR détecte le passage de quelqu’un, le nombre sur l’afficheur à segments 4 chiffres augmentera de 1.
Il y a deux potentiomètres sur le module PIR : l’un pour ajuster la sensibilité et l’autre pour ajuster la distance de détection. Pour que le module PIR fonctionne mieux, vous devez les tourner tous les deux dans le sens antihoraire jusqu’à la fin.
Note
Si cela ne fonctionne pas après l’exécution, ou s’il y a un message d’erreur : « wiringPi.h : Aucun fichier ou répertoire de ce type », veuillez vous référer à Installer et vérifier WiringPi.
Explication du code
void display()
{
clearDisplay();
pickDigit(0);
hc595_shift(number[counter % 10]);
clearDisplay();
pickDigit(1);
hc595_shift(number[counter % 100 / 10]);
clearDisplay();
pickDigit(2);
hc595_shift(number[counter % 1000 / 100]);
clearDisplay();
pickDigit(3);
hc595_shift(number[counter % 10000 / 1000]);
}
Tout d’abord, commencez par l’afficheur du quatrième segment, écrivez le chiffre des unités. Ensuite, commencez par l’afficheur du troisième segment et saisissez le chiffre des dizaines ; après cela, commencez respectivement par les afficheurs du deuxième et du premier segment et saisissez les chiffres des centaines et des milliers respectivement. Grâce à la vitesse de rafraîchissement très rapide, nous voyons un affichage complet à quatre chiffres.
void loop(){
int currentState =0;
int lastState=0;
while(1){
display();
currentState=digitalRead(sensorPin);
if((currentState==0)&&(lastState==1)){
counter +=1;
}
lastState=currentState;
}
}
Il s’agit de la fonction principale : afficher le nombre sur l’afficheur à segments 4 chiffres et lire la valeur du capteur PIR. Lorsque le capteur PIR détecte le passage de quelqu’un, le nombre sur l’afficheur à segments 4 chiffres augmentera de 1.
Image du phénomène