Portier Wireless Le portier sans fil est un système bidirectionnel basé sur un microcontrôleur PIC32MX130F064B-I/SS et un module radio 868 MHz, permettant à un visiteur d’envoyer une requête depuis l’extérieur via un bouton alimenté par piles, et à l’occupant du bureau de répondre par des signaux lumineux et sonores grâce à une unité intérieure alimentée en USB, le tout avec appairage sécurisé et gestion autonome de l’énergie.
|
#include "app.h"
#include <stdio.h>
#include "peripheral/adc/plib_adc.h"
#include "peripheral/reset/plib_reset.h"
#include "sound.h"
#include "RF.h"
#include "led.h"
#include "Pairing.h"
#include "management.h"
Fonctions | |
uint16_t | ReadBatVoltage (void) |
Lit la tension mesurée sur l'entrée analogique AN1. | |
void | SetDoor (void) |
Détermine si le CPU est à la porte (Door) ou à la sonnette intérieure (Bell). | |
void | APP_UpdateState (APP_STATES newState) |
Met à jour l'état de l'application. | |
bool | APP_GetIsDoor (void) |
Vérifie si l'entité courante est une porte. | |
void | APP_Initialize (void) |
Initialise l'application. | |
void | APP_Tasks (void) |
Tâche principale de l'application. |
Variables | |
APP_DATA | appData |
S_SwitchDescriptor | swEnter |
S_SwitchDescriptor | swBusy |
S_SwitchDescriptor | swRing |
S_SwitchDescriptor | swWait |
uint32_t | appPairedSerial = 0 |
uint32_t | mySerial |
bool APP_GetIsDoor | ( | void | ) |
Vérifie si l'entité courante est une porte.
Cette fonction retourne la valeur du champ isDoor de la structure appData.
void APP_Initialize | ( | void | ) |
Initialise l'application.
Cette fonction configure l'état initial de l'application, initialise les broches matérielles, la logique d'antirebond pour les boutons, ainsi que les périphériques tels que les LEDs, le module sonore et la RF.
void APP_Tasks | ( | void | ) |
Tâche principale de l'application.
Cette fonction gère la machine à états principale de l'application. Elle est appelée de manière répétée dans la boucle principale du programme.
void APP_UpdateState | ( | APP_STATES | newState | ) |
Met à jour l'état de l'application.
newState | Le nouvel état à appliquer à l'application. |
Cette fonction assigne la valeur de newState à la variable d'état de l'application.
uint16_t ReadBatVoltage | ( | void | ) |
Lit la tension mesurée sur l'entrée analogique AN1.
Cette fonction lit la valeur convertie par l'ADC sur AN1.
void SetDoor | ( | void | ) |
Détermine si le CPU est à la porte (Door) ou à la sonnette intérieure (Bell).
Cette fonction met à jour le champ appData.isDoor selon la position du CPU. Si le CPU est à la porte (isDoor), elle lit la tension de la pile, met à jour appData.batVoltage (tension pile en mV) et appData.isLowBat (indication de batterie faible).
APP_DATA appData |
uint32_t appPairedSerial = 0 |
|
extern |
S_SwitchDescriptor swBusy |
S_SwitchDescriptor swEnter |
S_SwitchDescriptor swRing |
S_SwitchDescriptor swWait |