123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 |
- /**
- ******************************************************************************
- * File Name : ADC.h
- * Description : This file provides code for the configuration
- * of the ADC instances.
- ******************************************************************************
- ** This notice applies to any and all portions of this file
- * that are not between comment pairs USER CODE BEGIN and
- * USER CODE END. Other portions of this file, whether
- * inserted by the user or by software development tools
- * are owned by their respective copyright owners.
- *
- * COPYRIGHT(c) 2019 STMicroelectronics
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- * 1. Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- * 3. Neither the name of STMicroelectronics nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- ******************************************************************************
- */
- /* Define to prevent recursive inclusion -------------------------------------*/
- #ifndef __adc_H
- #define __adc_H
- #ifdef __cplusplus
- extern "C" {
- #endif
- /* Includes ------------------------------------------------------------------*/
- #include "stm32f1xx_hal.h"
- #include "main.h"
- /* USER CODE BEGIN Includes */
- #include "var.h"
-
- /* USER CODE END Includes */
-
- extern ADC_HandleTypeDef hadc1;
- extern ADC_HandleTypeDef hadc2;
- /* USER CODE BEGIN Private defines */
- //ADC1顺序表
- #define ADC1_DATA_NUM 11
-
- #define ADC1_RANK_NTC_PCB 0
- #define ADC1_RANK_VIN 1
- #define ADC1_RANK_NTC_COIL 2
- #define ADC1_RANK_CURRENT 3
- #define ADC1_RANK_TORQUE_SENSOR_1 4
- #define ADC1_RANK_TORQUE_SENSOR_2 5
- #define ADC1_RANK_TORQUE_SENSOR_3 6
- #define ADC1_RANK_HARDWARE_VER 7
- #define ADC1_RANK_GAS 8
- #define ADC1_RANK_TP_MCU 9
- #define ADC1_RANK_VREF 10
- //ADC2顺序表
- #define ADC2_DATA_NUM 3
- #define ADC2_RANK_CURRENT_A 0
- #define ADC2_RANK_CURRENT_B 1
- #define ADC2_RANK_CURRENT_C 2
- typedef struct
- {
- uint16_t TorqueSensor;
- uint16_t GasSensor;
- }ADC_SensorData_Struct_t;
- typedef struct
- {
- uint16_t uw_phase_a_offset;//3相电流零点
- uint16_t uw_phase_b_offset;
- uint16_t uw_phase_c_offset;
- }ADC_3ShuntCurrent_OffSet_Struct_t;
- typedef struct
- {
- int16_t uw_phase_a;
- int16_t uw_phase_b;
- int16_t uw_phase_c;
- }ADC_3ShuntCurrent_Struct_t;
- /* USER CODE END Private defines */
- extern void _Error_Handler(char *, int);
- void MX_ADC1_Init(void);
- void MX_ADC2_Init(void);
- /* USER CODE BEGIN Prototypes */
- extern uint16_t ADC1_Result[ADC1_DATA_NUM];
- extern uint16_t ADC1_Result_Filt[ADC1_DATA_NUM];
- extern uint16_t ADC2_Result[ADC2_DATA_NUM];
- extern uint16_t ADC2_Result_Filt[ADC2_DATA_NUM];
- extern FlagStatus ADC2_ConvCpmplete_Flag;
- extern uint16_t TorqueSensor_AdcResult;
- extern ADC_SensorData_Struct_t ADC_SensorData;
- extern ADC_3ShuntCurrent_OffSet_Struct_t ADC_3ShuntCurrent_OffSet;
- extern ADC_3ShuntCurrent_Struct_t ADC_3ShuntCurrent;
- extern ADC_3ShuntCurrent_Struct_t ADC_3ShuntCurrent_RMSValue;
- extern uint16_t uw_current_offset;//母线电流零点
- extern void ADC_Start(void);
- extern void ADC_SensorData_Filt(uint16_t* p_ADC1_Result_Filt, uint16_t* p_ADC2_Result_Filt);
- extern void PhaseCurrent_CalRMSValue(ADC_3ShuntCurrent_Struct_t* ADC_3ShuntCurrent, ADC_3ShuntCurrent_Struct_t* PhaseCurrent_RMS);
- extern void MOS_NTC_Init( void );
- extern void PowerDownProtection( uint16_t BusVoltage_AD );
- /* USER CODE END Prototypes */
- #ifdef __cplusplus
- }
- #endif
- #endif /*__ adc_H */
- /**
- * @}
- */
- /**
- * @}
- */
- /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
|