guowenxue
2024-06-25 5fc803d51ca097f07b4efbe0290ccc540b0660df
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
/**
  ******************************************************************************
  * File Name          : ADC.h
  * Description        : This file provides code for the configuration
  *                      of the ADC instances.
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; Copyright (c) 2021 STMicroelectronics.
  * All rights reserved.</center></h2>
  *
  * This software component is licensed by ST under Ultimate Liberty license
  * SLA0044, the "License"; You may not use this file except in compliance with
  * the License. You may obtain a copy of the License at:
  *                             www.st.com/SLA0044
  *
  ******************************************************************************
  */
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __adc_H
#define __adc_H
#ifdef __cplusplus
 extern "C" {
#endif
 
/* Includes ------------------------------------------------------------------*/
#include "main.h"
#include "board_common.h"
 
#define ADC_CHANNEL_MAX_SIZE 10
#pragma pack(1)
 
typedef struct
{
    uint16_t vref; /* 通道0*/
    uint16_t vsys24v; /* 通道1*/
    uint16_t V0; /* 通道2*/
    uint16_t V1; /* 通道3*/
    uint16_t V2; /* 通道4*/
    uint16_t V3; /* 通道5*/
    uint16_t I0; /* 通道6*/
    uint16_t I1; /* 通道7*/
    uint16_t I2; /* 通道8*/
    uint16_t I3; /* 通道9*/
}SampleData;
/* USER CODE END Includes */
 
typedef union
    SampleData data;
    uint16_t sampleBuffer[ADC_CHANNEL_MAX_SIZE];
}ADC_SampleData;
#pragma pack()
 
extern ADC_HandleTypeDef hadc1;
 
/* USER CODE BEGIN Private defines */
 
/* USER CODE END Private defines */
 
void Board_ADC1Init(void);
 
//int16_t Board_ReadADC(Data_t *Data);
//void Board_TestADC(void);
//int8_t Board_TestTem(uint16_t *Buffer);
 
int8_t ADC1_ADC_GetSampleData(ADC_SampleData *data, uint16_t size);
 
#ifdef __cplusplus
}
#endif
#endif /*__ adc_H */
 
/**
  * @}
  */
 
/**
  * @}
  */
 
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/