Detection_2023/SelectionCapteur.c

36 lines
989 B
C

#include "pico/stdlib.h"
#define PIN_ADRESSE_A0 5
#define PIN_ADRESSE_A1 4
#define PIN_ADRESSE_A2 3
#define PIN_ADRESSE_A3 2
#define PIN_COM 6
void Selection_capteur_init_pin_low(uint pin);
void Selection_capteur_init(void){
Selection_capteur_init_pin_low(PIN_COM);
Selection_capteur_init_pin_low(PIN_ADRESSE_A0);
Selection_capteur_init_pin_low(PIN_ADRESSE_A1);
Selection_capteur_init_pin_low(PIN_ADRESSE_A2);
Selection_capteur_init_pin_low(PIN_ADRESSE_A3);
}
/// @brief Désactive le capteur en question
/// @param capteur capteur, numéroté de 1 à 12
void Selection_capteur_select(uint32_t capteur){
capteur = capteur - 1;
gpio_put(PIN_ADRESSE_A0, capteur & 0x01);
gpio_put(PIN_ADRESSE_A1, (capteur & 0x02) >> 1);
gpio_put(PIN_ADRESSE_A2, (capteur & 0x02) >> 2);
gpio_put(PIN_ADRESSE_A3, (capteur & 0x04) >> 3);
}
void Selection_capteur_init_pin_low(uint pin){
gpio_init(pin);
gpio_set_dir(pin, GPIO_OUT);
gpio_put(pin, 0);
}