49 lines
1.1 KiB
C
49 lines
1.1 KiB
C
#ifndef ADC_H
|
|
#define ADC_H
|
|
|
|
#include "stm32f1xx_ll_adc.h"
|
|
|
|
/**
|
|
* @brief Active l'horloge et calibre l'ADC donné
|
|
* @note
|
|
* @param ADC_TypeDef adc : indique l'ADC à utiliser
|
|
* @retval None
|
|
*/
|
|
void ADC_conf(ADC_TypeDef *adc);
|
|
|
|
/**
|
|
* @brief Démarre l'ADC donné
|
|
* @note
|
|
* @param ADC_TypeDef adc : indique l'ADC à utiliser
|
|
* @retval None
|
|
*/
|
|
void ADC_start(ADC_TypeDef *adc);
|
|
|
|
/**
|
|
* @brief Récupère la valeur brute donnée par l'ADC
|
|
* @note
|
|
* @param ADC_TypeDef adc : indique l'ADC à utiliser
|
|
* int channel : le channel à lire
|
|
* @retval Valeur brute lue
|
|
*/
|
|
uint16_t ADC_readRaw(ADC_TypeDef *adc, int channel);
|
|
|
|
/**
|
|
* @brief Récupère la valeur en volts donnée par l'ADC
|
|
* @note
|
|
* @param ADC_TypeDef adc : indique l'ADC à utiliser
|
|
* int channel : le channel à lire
|
|
* @retval Valeur lue en volts
|
|
*/
|
|
float ADC_readVolt(ADC_TypeDef *adc, int channel);
|
|
|
|
/**
|
|
* @brief Converti la valeur brute donnée en volts
|
|
* @note
|
|
* @param int value : La valeur à convertir
|
|
* @retval La conversion en volts
|
|
*/
|
|
float ADC_convertToVolt(uint16_t value);
|
|
|
|
|
|
#endif
|