This commit is contained in:
2026-03-20 21:19:04 +08:00
parent 90c3d919df
commit 9d3b4b836f
247 changed files with 22127 additions and 30305 deletions

45
user/MCU/lhl_adc.h Executable file → Normal file
View File

@@ -4,7 +4,7 @@
/*==================================================================================*/
//ϵͳ<CFB5><CDB3><EFBFBD>ض<EFBFBD><D8B6><EFBFBD>
/*==================================================================================*/
#define MainADC pADC
#define ADC pADC
//<2F><><EFBFBD><EFBFBD> Gain0 Gain1
#define GAIN1 ADC_PGA_GAIN_1
@@ -79,24 +79,45 @@
#define ADC1_CALIBP ADC1_AINP_CALIBP // ADC1_AINP_CALIBP, ADC1_AINM_CALIBN,
//} ADC1_AINP_CHANNEL_t; } ADC1_AINM_CHANNEL_t;
/*==================================================================================*/
//ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
/*==================================================================================*/
typedef struct {
u8 Gain0; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>ϵ<EFBFBD><CFB5>
u8 PChan0; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 NChan0; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 Gain1; //<2F><><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>ϵ<EFBFBD><CFB5>
u8 PChan1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 NChan1; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 SPS; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
} ADC_Config_TypeDef;
void ADC0_Conversion_Init(ADC_Config_TypeDef adcCfg);
void ADC1_Conversion_Init(ADC_Config_TypeDef adcCfg);
void ADC0_1_SyncConversion_Init(ADC_Config_TypeDef adcCfg);
//void StartADCConversion(ADC_ID_t ADCx);//ADC_ID_t
void StopADCConversion(ADC_ID_t ADCx);//ADC_ID_t
uint32_t ADC_ReadSampleData(ADC_ID_t ADCx);
void ADC_REF_Init(u8 vref,u8 vdrive);
void ADC_Init(ADC_ID_t ADCx ,u8 SPS ,u8 Gain, u8 PChan, u8 NChan );
void ADC_SyncCmd(FunctionalState NewState);
void StartADC(ADC_ID_t ADCx);
void StopADC(ADC_ID_t ADCx);
uint32_t ADC_ReadData(ADC_ID_t ADCx);
void ADC_Init_For_SNOOZE(ADC_ID_t ADCx ,u8 SPS ,u8 Gain, u8 PChan, u8 NChan );
void ADC_Init_For_LowerPower(ADC_ID_t ADCx, u8 SPS, u8 Gain, u8 PChan, u8 NChan);
//ADC<44>жϻص<CFBB>
typedef void (*adc_irq_callback_t)(void);
void ADC_register_irq_callback(ADC_ID_t ADCx, adc_irq_callback_t tim_irq_callback);
extern __RW uint8_t adcFlag0 , adcFlag1;
void DMA_ADC0_Conversion_Init(uint8_t Gain, uint8_t PChan, uint8_t NChan);
void DMA_ADC0_1_SyncConversion_Init(uint8_t Gain0, uint8_t PChan0, uint8_t NChan0 ,uint8_t Gain1, uint8_t PChan1, uint8_t NChan1 );
uint32_t DMA_ADC_ReadData(ADC_ID_t ADCx);
typedef struct {
uint8_t ainp_channel;//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8_t ainm_channel; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}SeqChannelConfig;
void DMA_ADC_SingleChannel_Init(void);
#endif