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

126
user/Protocol/SampProcess.h Executable file → Normal file
View File

@@ -1,126 +1,32 @@
#ifndef __SAMPPROCESS_H__
#define __SAMPPROCESS_H__
#if 0
typedef struct {
u8 Gain; //ADC<44><43><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>ϵ<EFBFBD><CFB5>
u8 PChan; //ADC<44><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 NChan; //ADC<44><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 SPS; //ADC<44><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
} ADC_BaseConfig_TypeDef;
typedef struct {
u8 Gain0; //ADC_0<5F><30><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>ϵ<EFBFBD><CFB5>
u8 PChan0; //ADC_0<5F><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 NChan0; //ADC_0<5F><30><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 Gain1; //ADC_1<5F><31><EFBFBD><EFBFBD><EFBFBD>Ŵ<EFBFBD>ϵ<EFBFBD><CFB5>
u8 PChan1; //ADC_1<5F><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 NChan1; //ADC_1<5F><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>
u8 SPS; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
} ADC_SyncConfig_TypeDef;
enum
{
C = 0 ,
R,
H,
A,
B,
D,
E,
F,
IRHCode,
IRRCode,
URUCode,
URHCode,
BASCode,
BATCode,
TCode_Count
};
typedef struct
{
ADC_BaseConfig_TypeDef adcBaseCfg;
ADC_SyncConfig_TypeDef adcSyncCfg; //ADC<44><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
u32 TempCode[TCode_Count]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD>
u8 SkipSampNum ; //<2F><><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/*<2A>жϷ<D0B6>ʽ<EFBFBD><CABD><EFBFBD>ݶ<EFBFBD><DDB6><EFBFBD>*/
u8 CounterMax; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
u8 Counter; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
u32 ADCBuffer[2]; //<2F><><EFBFBD><EFBFBD>ֵ
/*DMA<4D><41>ʽ<EFBFBD><CABD><EFBFBD>ݶ<EFBFBD><DDB6><EFBFBD>*/
u32 DMA_ADC_Buffer[2][70];
u8 DMA_ADC_adcflag[2];
u8 DMA_ADC_SampLen;
u8 DMA_ADC_Exponent;
}__Samp_Buf_TypeDef;//<2F><><EFBFBD><EFBFBD>
//// <20>ж<EFBFBD>ģʽ<C4A3><CABD><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD><EFBFBD>
//typedef struct {
// ADC_BaseConfig_TypeDef adc_cfg;
// u8 skip_num ;
// u8 counter; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// u32 adc_buffer; //<2F><><EFBFBD><EFBFBD>ֵ
//}__IntSingleSampleData_t;
//// <20>ж<EFBFBD>ģʽ<C4A3><CABD>˫ ADC ͬ<><CDAC><EFBFBD><EFBFBD>
//typedef struct {
// ADC_SyncConfig_TypeDef adc_cfg;
// u8 skip_num ;
// u8 counter; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// u32 adc_buffer[2]; //<2F><><EFBFBD><EFBFBD>ֵ
//}__IntSyncSampleData_t;
//// <20><> ADC + DMA ģʽר<CABD><D7A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//typedef struct {
// ADC_BaseConfig_TypeDef adc_cfg;
// u32 dma_buffer[128];
// u8 adcflag ;
// u8 samp_len;
// u8 exponent;
// u8 skip_num;
//}__SingleDmaSampleData_t;
//// ˫ ADC ͬ<><CDAC> + DMA ģʽר<CABD><D7A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//typedef struct {
// ADC_SyncConfig_TypeDef adc_cfg;
// u32 dma_buffer[2][128]; // [0]=ADC0, [1]=ADC1
// u8 adcflag[2] ;
// u8 samp_len;
// u8 exponent;
// u8 skip_num;
//}__DualSyncDmaSampleData_t;
//extern __IntSingleSampleData_t sampleData1;
//extern __IntSyncSampleData_t sampleData2;
//extern __SingleDmaSampleData_t sampleData3;
//extern __DualSyncDmaSampleData_t sampleData4;
{
ADC_Config_TypeDef adcConfig;
u8 SkipSampNum ;
u8 CounterMax; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
u8 Counter; //<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
u32 ADCBuffer[2]; //<2F><><EFBFBD><EFBFBD>ֵ(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
u32 TCode[TCode_Count]; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><E6B4A2>
}__Samp_Buf_TypeDef; //<2F><><EFBFBD><EFBFBD>
extern __Samp_Buf_TypeDef sampleData;
u16 GetAdcGain(u16 gianX);
/*ADC<44><43><EFBFBD>ó<EFBFBD>ʼ<EFBFBD><CABC>*/
void SetSampleSiagnlForSingleADC( ADC_BaseConfig_TypeDef* adc_cfg);
void SetSampleSiagnlForSyncADC( ADC_SyncConfig_TypeDef* adc_cfg);
/*<2A>жϷ<D0B6>ʽ*/
void StartADC0SampingData(void);
void StartADC1SampingData(void);
void SetSampleSiagnlForADC(ADC_Config_TypeDef adc_cfg);
void StartADCSyncSampingData(void);
void ReadSamplingData(void);//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
void ComputeSampleData(void);//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/*DMA<4D><41>ʽ*/
void StartDMAForADC0SampingData(void);
void StartDMAForADC1SampingData(void);
void StartDMAForADCSyncSampingData(void);
u8 WaitADC0DMAComplete(void);
u8 WaitADC1DMAComplete(void);
u8 WaitSyncDMAComplete(void);
u16 DMA_ComputeSampleData_ADC0(void);
u16 DMA_ComputeSampleData_ADC1(void);
/*DMA ADC<44><43><EFBFBD>з<EFBFBD>ʽ*/
void StartDMA_ForADC0_SeqSample(void);
void ADC_ReadSeqData(u16* SeqData ,u8 SeqNumCount) ;
#endif
#endif