forked from SZV10X_Software/SZV103_FM33A0xxEV_SiZhu

wujiazhi
2024-06-13 72def895431ad7a08e635b11f3da738e2b2c4618
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#ifndef __ADC_H
#define __ADC_H
 
#include "define_all.h"
 
// ÄÚ²¿ÀÛ¼Ó
// #define const_adc_Slope     (*((uint16_t *)(0x1FFFFA84)))    //ADCбÂÊ£¬³ý1000ºóʹÓÃ
// #define const_adc_Offset     (*((int16_t *)(0x1FFFFA86)))    //ADC½Ø¾à£¬³ý100ºóʹÓ㬵¥Î»mV
 
// ÍⲿÀÛ¼Ó
#define const_adc_Slope (*((uint16_t *)(0x1FFFFA88))) // ADCбÂÊ£¬³ý1000ºóʹÓÃ
#define const_adc_Offset (*((int16_t *)(0x1FFFFA8A))) // ADC½Ø¾à£¬³ý100ºóʹÓ㬵¥Î»mV
 
// ÄÚ²¿ÀÛ¼Ó  Î¶È
#define const_T_30 *(uint16_t *)0x1FFFFA92 // 0X640  30¶¨±êÖµ
 
// ÍⲿÀÛ¼Ó  Î¶È
#define const_T_30_14BIT *(uint16_t *)0x1FFFFB54 // 0XÍⲿÀÛ¼Ó 16383£¨14bit£©  30¶¨±êÖµ
 
#define AD_ALKA_BAT_REF_VOL 3.3
#define AD_ALKA_BAT_CH 12 //**PH3--->ADC_IN12
#define AD_ALKA_BAT_CNT 26
#define ALKA_VOL_COE 3.5 // 2.327
 
// ï®µçϵÊý±ä¸ü
#define AD_LITH_BAT_REF_VOL 3.3
#define AD_LITH_BAT_CH 5 //**PF6--->ADC_IN5
#define AD_LITH_BAT_CNT 26
#define LITH_VOL_COE 4.3 // 3.304
 
typedef struct ad_data_get
{
  u16 ad_get_address_p[50];
  u32 ad_buffer_cnt;
  u8 ad_ch;
} ad_data_s;
 
void Adc_Init(ad_data_s *data_p);
void ADC_DMA_Transmit(void);
uint16 Get_vol_Average(ad_data_s *data_p);
 
float get_alka_bat_voltage(void);
float get_lith_bat_voltage(void);
 
#endif