Note

Bonjour et bienvenue dans la communauté des passionnés de SunFounder Raspberry Pi, Arduino et ESP32 sur Facebook ! Plongez dans l’univers de Raspberry Pi, Arduino et ESP32 avec d’autres passionnés.

Pourquoi nous rejoindre ?

  • Support d’experts : Résolvez les problèmes après-vente et relevez vos défis techniques grâce à l’aide de notre communauté et de notre équipe.

  • Apprenez et Partagez : Échangez des astuces et des tutoriels pour perfectionner vos compétences.

  • Aperçus exclusifs : Bénéficiez d’un accès anticipé aux nouvelles annonces de produits et aux avant-premières.

  • Réductions spéciales : Profitez de réductions exclusives sur nos nouveaux produits.

  • Promotions festives et concours : Participez à des concours et à des promotions lors des fêtes.

👉 Prêt à explorer et à créer avec nous ? Cliquez sur [Ici] et rejoignez-nous dès aujourd’hui !

3.1.1 Dispositif de comptage

Introduction

Nous allons créer un système de comptage avec affichage numérique, composé d’un capteur PIR et d’un afficheur à 4 chiffres. Lorsque le capteur PIR détecte une personne passant à proximité, le nombre affiché sur l’écran à 4 chiffres s’incrémente de 1. Ce dispositif peut être utilisé pour compter le nombre de personnes traversant un passage.

Composants

../_images/list_Counting_Device11.png ../_images/list_Counting_Device21.png

Schéma de câblage

T-Board Name

physical

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

../_images/Schematic_three_one15.png

Procédures expérimentales

Étape 1 : Construisez le circuit.

../_images/image2351.png

Étape 2 : Accédez au dossier du code.

cd ~/davinci-kit-for-raspberry-pi/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 une personne passant à proximité, le nombre affiché sur l’écran à 4 chiffres s’incrémente 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 de manière optimale, tournez les deux potentiomètres complètement dans le sens antihoraire.

Note

Si cela ne fonctionne pas après l’exécution, ou s’il y a un message d’erreur indiquant : "wiringPi.h: Aucun fichier ou répertoire de ce type », veuillez vous référer à Le code C ne fonctionne pas ?.

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]);
}

Cette fonction active le quatrième afficheur à segments et écrit le chiffre des unités. Ensuite, elle active le troisième afficheur et écrit le chiffre des dizaines ; après cela, elle active respectivement le deuxième et le premier afficheur pour écrire les chiffres des centaines et des milliers. Grâce à la vitesse de rafraîchissement élevée, 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;
    }
}

Cette fonction principale affiche le nombre sur l’écran à 4 chiffres et lit la valeur du capteur PIR. Lorsque le PIR détecte une personne, le nombre affiché s’incrémente de 1.