存档:显示函数被注释,继电器切换至热电偶和(热)电阻时工作异常
This commit is contained in:
parent
ffd10e8ccf
commit
01e2295383
38
.mxproject
38
.mxproject
File diff suppressed because one or more lines are too long
|
@ -306,7 +306,7 @@ void ads1220_operation(uint8_t channel, float32 *data_pv)
|
||||||
vTaskDelay(30);
|
vTaskDelay(30);
|
||||||
ads1220_get_conversion_data(data_pv);
|
ads1220_get_conversion_data(data_pv);
|
||||||
}
|
}
|
||||||
else if (channel == CH9_IN_TC)
|
else if (channel == CH10_IN_TC)
|
||||||
{
|
{
|
||||||
ads1220_reset();
|
ads1220_reset();
|
||||||
vTaskDelay(5);
|
vTaskDelay(5);
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* @Author: wujunchao wujunchao@wuxismart.com
|
* @Author: wujunchao wujunchao@wuxismart.com
|
||||||
* @Date: 2024-12-27 11:50:56
|
* @Date: 2024-12-27 11:50:56
|
||||||
* @LastEditors: wujunchao wujunchao@wuxismart.com
|
* @LastEditors: wujunchao wujunchao@wuxismart.com
|
||||||
* @LastEditTime: 2025-03-20 12:28:06
|
* @LastEditTime: 2025-03-20 15:09:02
|
||||||
* @FilePath: \signal_generator\App\APP_WU\Src\apps_gather.c
|
* @FilePath: \signal_generator\App\APP_WU\Src\apps_gather.c
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
*/
|
*/
|
||||||
|
@ -198,83 +198,86 @@ void sig_channel_select(uint8_t io, SIG_FUNCTIONS_TYPE type)
|
||||||
{
|
{
|
||||||
case VOLTAGE_MV:
|
case VOLTAGE_MV:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH6_IN_MVOL;
|
mux_signal.channel = CH7_IN_MVOL;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VOLTAGE_V:
|
case VOLTAGE_V:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH5_IN_VOL;
|
mux_signal.channel = CH6_IN_VOL;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case CURRENT_MA:
|
case CURRENT_MA:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH7_IN_CUR;
|
mux_signal.channel = CH8_IN_CUR;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RESISTANT_OHM:
|
case RESISTANT_OHM:
|
||||||
{}
|
{
|
||||||
|
//与热电阻一致
|
||||||
|
mux_signal.channel = CH11_IN_RTD;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case FREQUENCE_KHZ:
|
case FREQUENCE_KHZ:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH8_IN_FRE;
|
mux_signal.channel = CH9_IN_FRE;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TC_K:
|
case TC_K:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH9_IN_TC;
|
mux_signal.channel = CH10_IN_TC;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TC_S:
|
case TC_S:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH9_IN_TC;
|
mux_signal.channel = CH10_IN_TC;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TC_N:
|
case TC_N:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH9_IN_TC;
|
mux_signal.channel = CH10_IN_TC;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TC_B:
|
case TC_B:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH9_IN_TC;
|
mux_signal.channel = CH10_IN_TC;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TC_E:
|
case TC_E:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH9_IN_TC;
|
mux_signal.channel = CH10_IN_TC;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TC_J:
|
case TC_J:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH9_IN_TC;
|
mux_signal.channel = CH10_IN_TC;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TC_R:
|
case TC_R:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH9_IN_TC;
|
mux_signal.channel = CH10_IN_TC;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case TC_T:
|
case TC_T:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH9_IN_TC;
|
mux_signal.channel = CH10_IN_TC;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case RTD_DC:
|
case RTD_DC:
|
||||||
{
|
{
|
||||||
mux_signal.channel = CH10_IN_RTD;
|
mux_signal.channel = CH11_IN_RTD;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
* @Author: wujunchao wujunchao@wuxismart.com
|
* @Author: wujunchao wujunchao@wuxismart.com
|
||||||
* @Date: 2024-12-24 08:18:26
|
* @Date: 2024-12-24 08:18:26
|
||||||
* @LastEditors: wujunchao wujunchao@wuxismart.com
|
* @LastEditors: wujunchao wujunchao@wuxismart.com
|
||||||
* @LastEditTime: 2025-03-19 13:07:31
|
* @LastEditTime: 2025-03-20 15:01:22
|
||||||
* @FilePath: \signal_generator\App\MUX_SIGNAL\mux_signal.c
|
* @FilePath: \signal_generator\App\MUX_SIGNAL\mux_signal.c
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
||||||
*/
|
*/
|
||||||
|
@ -149,30 +149,32 @@ void mux_signal_switch(st_mux_signal *mux_signal)
|
||||||
case CH4_OUT_RES:
|
case CH4_OUT_RES:
|
||||||
fun_dac7811_operate(&mux_signal->data_sv);
|
fun_dac7811_operate(&mux_signal->data_sv);
|
||||||
break;
|
break;
|
||||||
case CH5_IN_VOL:
|
case CH5_EMPTY:
|
||||||
|
break;
|
||||||
|
case CH6_IN_VOL:
|
||||||
fun_get_sig16132_ch(2, &mux_signal->data_pv);
|
fun_get_sig16132_ch(2, &mux_signal->data_pv);
|
||||||
// fun_rn7302_operate(CH0_IN_VOL, &mux_signal->data_pv);
|
// fun_rn7302_operate(CH0_IN_VOL, &mux_signal->data_pv);
|
||||||
break;
|
break;
|
||||||
case CH6_IN_MVOL:
|
case CH7_IN_MVOL:
|
||||||
fun_get_sig16132_ch(3, &mux_signal->data_pv);
|
fun_get_sig16132_ch(3, &mux_signal->data_pv);
|
||||||
// fun_rn7302_operate(CH0_IN_VOL, &mux_signal->data_pv);
|
// fun_rn7302_operate(CH0_IN_VOL, &mux_signal->data_pv);
|
||||||
break;
|
break;
|
||||||
case CH7_IN_CUR:
|
case CH8_IN_CUR:
|
||||||
fun_get_sig16132_ch(5, &mux_signal->data_pv);
|
fun_get_sig16132_ch(5, &mux_signal->data_pv);
|
||||||
// fun_rn7302_operate(CH1_IN_CUR, &mux_signal->data_pv);
|
// fun_rn7302_operate(CH1_IN_CUR, &mux_signal->data_pv);
|
||||||
break;
|
break;
|
||||||
case CH8_IN_FRE:
|
case CH9_IN_FRE:
|
||||||
fun_get_freq(&freq_signal, &mux_signal->data_pv);
|
fun_get_freq(&freq_signal, &mux_signal->data_pv);
|
||||||
break;
|
break;
|
||||||
case CH9_IN_TC:
|
case CH10_IN_TC:
|
||||||
ads1220_operation(CH9_IN_TC, &mux_signal->data_pv);
|
ads1220_operation(CH10_IN_TC, &mux_signal->data_pv);
|
||||||
// fun_rn7302_operate(CH3_IN_RTD, &mux_signal->data_pv);
|
// fun_rn7302_operate(CH3_IN_RTD, &mux_signal->data_pv);
|
||||||
break;
|
break;
|
||||||
case CH10_IN_RTD:
|
case CH11_IN_RTD:
|
||||||
fun_get_sig16132_ch(10, &mux_signal->data_pv);
|
fun_get_sig16132_ch(10, &mux_signal->data_pv);
|
||||||
// fun_rn7302_operate(CH3_IN_RTD, &mux_signal->data_pv);
|
// fun_rn7302_operate(CH3_IN_RTD, &mux_signal->data_pv);
|
||||||
break;
|
break;
|
||||||
case CH11_IN_HART:
|
case CH12_IN_HART:
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -15,18 +15,19 @@
|
||||||
typedef enum
|
typedef enum
|
||||||
{
|
{
|
||||||
CH0_OUT_VOL_V = 0,
|
CH0_OUT_VOL_V = 0,
|
||||||
CH1_OUT_VOL_MV,
|
CH1_OUT_VOL_MV = 1,
|
||||||
CH2_OUT_CUR,
|
CH2_OUT_CUR = 2,
|
||||||
CH3_OUT_FRE,
|
CH3_OUT_FRE = 3,
|
||||||
CH4_OUT_RES,
|
CH4_OUT_RES = 4,
|
||||||
CH5_IN_VOL,
|
CH5_EMPTY = 5,
|
||||||
CH6_IN_MVOL,
|
CH6_IN_VOL = 6,
|
||||||
CH7_IN_CUR,
|
CH7_IN_MVOL = 7,
|
||||||
CH8_IN_FRE,
|
CH8_IN_CUR = 8,
|
||||||
CH9_IN_TC,
|
CH9_IN_FRE = 9,
|
||||||
CH10_IN_RTD,
|
CH10_IN_TC = 10,
|
||||||
CH11_IN_HART,
|
CH11_IN_RTD = 11,
|
||||||
CHX_IN_MAX,
|
CH12_IN_HART = 12,
|
||||||
|
CHX_IN_MAX = 13,
|
||||||
|
|
||||||
} CHANNEL;
|
} CHANNEL;
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
/* USER CODE BEGIN Header */
|
||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* @file dma.h
|
||||||
|
* @brief This file contains all the function prototypes for
|
||||||
|
* the dma.c file
|
||||||
|
******************************************************************************
|
||||||
|
* @attention
|
||||||
|
*
|
||||||
|
* Copyright (c) 2025 STMicroelectronics.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under terms that can be found in the LICENSE file
|
||||||
|
* in the root directory of this software component.
|
||||||
|
* If no LICENSE file comes with this software, it is provided AS-IS.
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
/* USER CODE END Header */
|
||||||
|
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||||
|
#ifndef __DMA_H__
|
||||||
|
#define __DMA_H__
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
|
||||||
|
/* DMA memory to memory transfer handles -------------------------------------*/
|
||||||
|
|
||||||
|
/* USER CODE BEGIN Includes */
|
||||||
|
|
||||||
|
/* USER CODE END Includes */
|
||||||
|
|
||||||
|
/* USER CODE BEGIN Private defines */
|
||||||
|
|
||||||
|
/* USER CODE END Private defines */
|
||||||
|
|
||||||
|
void MX_DMA_Init(void);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN Prototypes */
|
||||||
|
|
||||||
|
/* USER CODE END Prototypes */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __DMA_H__ */
|
||||||
|
|
|
@ -107,47 +107,50 @@ extern "C" {
|
||||||
} \
|
} \
|
||||||
else if (CH == 5) \
|
else if (CH == 5) \
|
||||||
{ \
|
{ \
|
||||||
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_RESET); \
|
|
||||||
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_RESET); \
|
|
||||||
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_RESET); \
|
|
||||||
} \
|
} \
|
||||||
else if (CH == 6) \
|
else if (CH == 6) \
|
||||||
{ \
|
{ \
|
||||||
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_RESET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_RESET); \
|
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_RESET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_RESET); \
|
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_RESET); \
|
||||||
} \
|
} \
|
||||||
else if (CH == 7) \
|
else if (CH == 7) \
|
||||||
{ \
|
{ \
|
||||||
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_RESET); \
|
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_SET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_RESET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_RESET); \
|
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_RESET); \
|
||||||
} \
|
} \
|
||||||
else if (CH == 8) \
|
else if (CH == 8) \
|
||||||
{ \
|
{ \
|
||||||
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_RESET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_SET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_RESET); \
|
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_RESET); \
|
||||||
} \
|
} \
|
||||||
else if (CH == 9) \
|
else if (CH == 9) \
|
||||||
{ \
|
{ \
|
||||||
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_RESET); \
|
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_SET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_RESET); \
|
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_SET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_RESET); \
|
||||||
} \
|
} \
|
||||||
else if (CH == 10) \
|
else if (CH == 10) \
|
||||||
{ \
|
{ \
|
||||||
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_RESET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_RESET); \
|
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_RESET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_SET); \
|
||||||
} \
|
} \
|
||||||
else if (CH == 11) \
|
else if (CH == 11) \
|
||||||
|
{ \
|
||||||
|
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_SET); \
|
||||||
|
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_RESET); \
|
||||||
|
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_SET); \
|
||||||
|
} \
|
||||||
|
else if (CH == 12) \
|
||||||
{ \
|
{ \
|
||||||
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_RESET); \
|
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_RESET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_SET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A2_1_GPIO_Port, INPUT_A2_1_Pin, GPIO_PIN_SET); \
|
||||||
} \
|
} \
|
||||||
else if (CH == 12) \
|
else if (CH == 13) \
|
||||||
{ \
|
{ \
|
||||||
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A0_1_GPIO_Port, INPUT_A0_1_Pin, GPIO_PIN_SET); \
|
||||||
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_SET); \
|
HAL_GPIO_WritePin(INPUT_A1_1_GPIO_Port, INPUT_A1_1_Pin, GPIO_PIN_SET); \
|
||||||
|
|
|
@ -60,6 +60,7 @@ void USART2_IRQHandler(void);
|
||||||
void USART3_IRQHandler(void);
|
void USART3_IRQHandler(void);
|
||||||
void TIM6_DAC_IRQHandler(void);
|
void TIM6_DAC_IRQHandler(void);
|
||||||
void TIM7_IRQHandler(void);
|
void TIM7_IRQHandler(void);
|
||||||
|
void DMA2_Stream0_IRQHandler(void);
|
||||||
void USART6_IRQHandler(void);
|
void USART6_IRQHandler(void);
|
||||||
/* USER CODE BEGIN EFP */
|
/* USER CODE BEGIN EFP */
|
||||||
|
|
||||||
|
|
|
@ -1,11 +1,3 @@
|
||||||
/*
|
|
||||||
* @Author: wujunchao wujunchao@wuxismart.com
|
|
||||||
* @Date: 2024-12-27 10:42:51
|
|
||||||
* @LastEditors: wujunchao wujunchao@wuxismart.com
|
|
||||||
* @LastEditTime: 2025-03-19 14:57:50
|
|
||||||
* @FilePath: \signal_generator\Core\Inc\tim.h
|
|
||||||
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
|
|
||||||
*/
|
|
||||||
/* USER CODE BEGIN Header */
|
/* USER CODE BEGIN Header */
|
||||||
/**
|
/**
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
|
|
|
@ -31,6 +31,7 @@ uint16_t adc1_val_buf[ADC1_CHANNEL_CNT * ADC1_CHANNEL_FRE];
|
||||||
/* USER CODE END 0 */
|
/* USER CODE END 0 */
|
||||||
|
|
||||||
ADC_HandleTypeDef hadc1;
|
ADC_HandleTypeDef hadc1;
|
||||||
|
DMA_HandleTypeDef hdma_adc1;
|
||||||
|
|
||||||
/* ADC1 init function */
|
/* ADC1 init function */
|
||||||
void MX_ADC1_Init(void)
|
void MX_ADC1_Init(void)
|
||||||
|
@ -101,6 +102,25 @@ void HAL_ADC_MspInit(ADC_HandleTypeDef* adcHandle)
|
||||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||||
HAL_GPIO_Init(CV_ADC_GPIO_Port, &GPIO_InitStruct);
|
HAL_GPIO_Init(CV_ADC_GPIO_Port, &GPIO_InitStruct);
|
||||||
|
|
||||||
|
/* ADC1 DMA Init */
|
||||||
|
/* ADC1 Init */
|
||||||
|
hdma_adc1.Instance = DMA2_Stream0;
|
||||||
|
hdma_adc1.Init.Channel = DMA_CHANNEL_0;
|
||||||
|
hdma_adc1.Init.Direction = DMA_PERIPH_TO_MEMORY;
|
||||||
|
hdma_adc1.Init.PeriphInc = DMA_PINC_DISABLE;
|
||||||
|
hdma_adc1.Init.MemInc = DMA_MINC_ENABLE;
|
||||||
|
hdma_adc1.Init.PeriphDataAlignment = DMA_PDATAALIGN_HALFWORD;
|
||||||
|
hdma_adc1.Init.MemDataAlignment = DMA_MDATAALIGN_HALFWORD;
|
||||||
|
hdma_adc1.Init.Mode = DMA_CIRCULAR;
|
||||||
|
hdma_adc1.Init.Priority = DMA_PRIORITY_LOW;
|
||||||
|
hdma_adc1.Init.FIFOMode = DMA_FIFOMODE_DISABLE;
|
||||||
|
if (HAL_DMA_Init(&hdma_adc1) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
|
||||||
|
__HAL_LINKDMA(adcHandle,DMA_Handle,hdma_adc1);
|
||||||
|
|
||||||
/* USER CODE BEGIN ADC1_MspInit 1 */
|
/* USER CODE BEGIN ADC1_MspInit 1 */
|
||||||
|
|
||||||
/* USER CODE END ADC1_MspInit 1 */
|
/* USER CODE END ADC1_MspInit 1 */
|
||||||
|
@ -123,6 +143,8 @@ void HAL_ADC_MspDeInit(ADC_HandleTypeDef* adcHandle)
|
||||||
*/
|
*/
|
||||||
HAL_GPIO_DeInit(CV_ADC_GPIO_Port, CV_ADC_Pin);
|
HAL_GPIO_DeInit(CV_ADC_GPIO_Port, CV_ADC_Pin);
|
||||||
|
|
||||||
|
/* ADC1 DMA DeInit */
|
||||||
|
HAL_DMA_DeInit(adcHandle->DMA_Handle);
|
||||||
/* USER CODE BEGIN ADC1_MspDeInit 1 */
|
/* USER CODE BEGIN ADC1_MspDeInit 1 */
|
||||||
|
|
||||||
/* USER CODE END ADC1_MspDeInit 1 */
|
/* USER CODE END ADC1_MspDeInit 1 */
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
/* USER CODE BEGIN Header */
|
||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* @file dma.c
|
||||||
|
* @brief This file provides code for the configuration
|
||||||
|
* of all the requested memory to memory DMA transfers.
|
||||||
|
******************************************************************************
|
||||||
|
* @attention
|
||||||
|
*
|
||||||
|
* Copyright (c) 2025 STMicroelectronics.
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under terms that can be found in the LICENSE file
|
||||||
|
* in the root directory of this software component.
|
||||||
|
* If no LICENSE file comes with this software, it is provided AS-IS.
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
/* USER CODE END Header */
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "dma.h"
|
||||||
|
|
||||||
|
/* USER CODE BEGIN 0 */
|
||||||
|
|
||||||
|
/* USER CODE END 0 */
|
||||||
|
|
||||||
|
/*----------------------------------------------------------------------------*/
|
||||||
|
/* Configure DMA */
|
||||||
|
/*----------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
/* USER CODE BEGIN 1 */
|
||||||
|
|
||||||
|
/* USER CODE END 1 */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Enable DMA controller clock
|
||||||
|
*/
|
||||||
|
void MX_DMA_Init(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
/* DMA controller clock enable */
|
||||||
|
__HAL_RCC_DMA2_CLK_ENABLE();
|
||||||
|
|
||||||
|
/* DMA interrupt init */
|
||||||
|
/* DMA2_Stream0_IRQn interrupt configuration */
|
||||||
|
HAL_NVIC_SetPriority(DMA2_Stream0_IRQn, 5, 0);
|
||||||
|
HAL_NVIC_EnableIRQ(DMA2_Stream0_IRQn);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/* USER CODE BEGIN 2 */
|
||||||
|
|
||||||
|
/* USER CODE END 2 */
|
||||||
|
|
|
@ -310,7 +310,7 @@ void start_menu(void const * argument)
|
||||||
/* Infinite loop */
|
/* Infinite loop */
|
||||||
for(;;)
|
for(;;)
|
||||||
{
|
{
|
||||||
screen_run();
|
//screen_run();
|
||||||
osDelay(200);
|
osDelay(200);
|
||||||
}
|
}
|
||||||
/* USER CODE END start_menu */
|
/* USER CODE END start_menu */
|
||||||
|
|
|
@ -21,6 +21,7 @@
|
||||||
#include "cmsis_os.h"
|
#include "cmsis_os.h"
|
||||||
#include "adc.h"
|
#include "adc.h"
|
||||||
#include "dac.h"
|
#include "dac.h"
|
||||||
|
#include "dma.h"
|
||||||
#include "i2c.h"
|
#include "i2c.h"
|
||||||
#include "spi.h"
|
#include "spi.h"
|
||||||
#include "tim.h"
|
#include "tim.h"
|
||||||
|
@ -94,6 +95,7 @@ int main(void)
|
||||||
|
|
||||||
/* Initialize all configured peripherals */
|
/* Initialize all configured peripherals */
|
||||||
MX_GPIO_Init();
|
MX_GPIO_Init();
|
||||||
|
MX_DMA_Init();
|
||||||
MX_USART1_UART_Init();
|
MX_USART1_UART_Init();
|
||||||
MX_USART2_UART_Init();
|
MX_USART2_UART_Init();
|
||||||
MX_USART6_UART_Init();
|
MX_USART6_UART_Init();
|
||||||
|
|
|
@ -56,6 +56,7 @@
|
||||||
/* USER CODE END 0 */
|
/* USER CODE END 0 */
|
||||||
|
|
||||||
/* External variables --------------------------------------------------------*/
|
/* External variables --------------------------------------------------------*/
|
||||||
|
extern DMA_HandleTypeDef hdma_adc1;
|
||||||
extern DAC_HandleTypeDef hdac;
|
extern DAC_HandleTypeDef hdac;
|
||||||
extern TIM_HandleTypeDef htim1;
|
extern TIM_HandleTypeDef htim1;
|
||||||
extern TIM_HandleTypeDef htim3;
|
extern TIM_HandleTypeDef htim3;
|
||||||
|
@ -281,6 +282,20 @@ void TIM7_IRQHandler(void)
|
||||||
/* USER CODE END TIM7_IRQn 1 */
|
/* USER CODE END TIM7_IRQn 1 */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief This function handles DMA2 stream0 global interrupt.
|
||||||
|
*/
|
||||||
|
void DMA2_Stream0_IRQHandler(void)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN DMA2_Stream0_IRQn 0 */
|
||||||
|
|
||||||
|
/* USER CODE END DMA2_Stream0_IRQn 0 */
|
||||||
|
HAL_DMA_IRQHandler(&hdma_adc1);
|
||||||
|
/* USER CODE BEGIN DMA2_Stream0_IRQn 1 */
|
||||||
|
|
||||||
|
/* USER CODE END DMA2_Stream0_IRQn 1 */
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief This function handles USART6 global interrupt.
|
* @brief This function handles USART6 global interrupt.
|
||||||
*/
|
*/
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -710,6 +710,11 @@
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>../Core/Src/stm32f4xx_hal_timebase_tim.c</FilePath>
|
<FilePath>../Core/Src/stm32f4xx_hal_timebase_tim.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>dma.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\Core\Src\dma.c</FilePath>
|
||||||
|
</File>
|
||||||
</Files>
|
</Files>
|
||||||
</Group>
|
</Group>
|
||||||
<Group>
|
<Group>
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -10,6 +10,18 @@ CAD.pinconfig=
|
||||||
CAD.provider=
|
CAD.provider=
|
||||||
DAC.DAC_OutputBuffer=DAC_OUTPUTBUFFER_DISABLE
|
DAC.DAC_OutputBuffer=DAC_OUTPUTBUFFER_DISABLE
|
||||||
DAC.IPParameters=DAC_OutputBuffer
|
DAC.IPParameters=DAC_OutputBuffer
|
||||||
|
Dma.ADC1.0.Direction=DMA_PERIPH_TO_MEMORY
|
||||||
|
Dma.ADC1.0.FIFOMode=DMA_FIFOMODE_DISABLE
|
||||||
|
Dma.ADC1.0.Instance=DMA2_Stream0
|
||||||
|
Dma.ADC1.0.MemDataAlignment=DMA_MDATAALIGN_HALFWORD
|
||||||
|
Dma.ADC1.0.MemInc=DMA_MINC_ENABLE
|
||||||
|
Dma.ADC1.0.Mode=DMA_CIRCULAR
|
||||||
|
Dma.ADC1.0.PeriphDataAlignment=DMA_PDATAALIGN_HALFWORD
|
||||||
|
Dma.ADC1.0.PeriphInc=DMA_PINC_DISABLE
|
||||||
|
Dma.ADC1.0.Priority=DMA_PRIORITY_LOW
|
||||||
|
Dma.ADC1.0.RequestParameters=Instance,Direction,PeriphInc,MemInc,PeriphDataAlignment,MemDataAlignment,Mode,Priority,FIFOMode
|
||||||
|
Dma.Request0=ADC1
|
||||||
|
Dma.RequestsNb=1
|
||||||
FREERTOS.FootprintOK=true
|
FREERTOS.FootprintOK=true
|
||||||
FREERTOS.IPParameters=Tasks01,FootprintOK,configUSE_TICKLESS_IDLE,configGENERATE_RUN_TIME_STATS,Queues01,configTOTAL_HEAP_SIZE,Mutexes01
|
FREERTOS.IPParameters=Tasks01,FootprintOK,configUSE_TICKLESS_IDLE,configGENERATE_RUN_TIME_STATS,Queues01,configTOTAL_HEAP_SIZE,Mutexes01
|
||||||
FREERTOS.Mutexes01=mutex_lvgl,Dynamic,NULL,Available
|
FREERTOS.Mutexes01=mutex_lvgl,Dynamic,NULL,Available
|
||||||
|
@ -27,23 +39,24 @@ Mcu.CPN=STM32F407VGT6
|
||||||
Mcu.Family=STM32F4
|
Mcu.Family=STM32F4
|
||||||
Mcu.IP0=ADC1
|
Mcu.IP0=ADC1
|
||||||
Mcu.IP1=DAC
|
Mcu.IP1=DAC
|
||||||
Mcu.IP10=SYS
|
Mcu.IP10=SPI3
|
||||||
Mcu.IP11=TIM1
|
Mcu.IP11=SYS
|
||||||
Mcu.IP12=TIM3
|
Mcu.IP12=TIM1
|
||||||
Mcu.IP13=TIM6
|
Mcu.IP13=TIM3
|
||||||
Mcu.IP14=USART1
|
Mcu.IP14=TIM6
|
||||||
Mcu.IP15=USART2
|
Mcu.IP15=USART1
|
||||||
Mcu.IP16=USART3
|
Mcu.IP16=USART2
|
||||||
Mcu.IP17=USART6
|
Mcu.IP17=USART3
|
||||||
Mcu.IP2=FREERTOS
|
Mcu.IP18=USART6
|
||||||
Mcu.IP3=I2C1
|
Mcu.IP2=DMA
|
||||||
Mcu.IP4=I2C3
|
Mcu.IP3=FREERTOS
|
||||||
Mcu.IP5=NVIC
|
Mcu.IP4=I2C1
|
||||||
Mcu.IP6=RCC
|
Mcu.IP5=I2C3
|
||||||
Mcu.IP7=SPI1
|
Mcu.IP6=NVIC
|
||||||
Mcu.IP8=SPI2
|
Mcu.IP7=RCC
|
||||||
Mcu.IP9=SPI3
|
Mcu.IP8=SPI1
|
||||||
Mcu.IPNb=18
|
Mcu.IP9=SPI2
|
||||||
|
Mcu.IPNb=19
|
||||||
Mcu.Name=STM32F407V(E-G)Tx
|
Mcu.Name=STM32F407V(E-G)Tx
|
||||||
Mcu.Package=LQFP100
|
Mcu.Package=LQFP100
|
||||||
Mcu.Pin0=PE2
|
Mcu.Pin0=PE2
|
||||||
|
@ -128,6 +141,7 @@ Mcu.UserName=STM32F407VGTx
|
||||||
MxCube.Version=6.12.1
|
MxCube.Version=6.12.1
|
||||||
MxDb.Version=DB.6.0.121
|
MxDb.Version=DB.6.0.121
|
||||||
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false\:false
|
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false\:false
|
||||||
|
NVIC.DMA2_Stream0_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true\:true
|
||||||
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false\:false
|
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false\:false
|
||||||
NVIC.EXTI1_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
NVIC.EXTI1_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
|
||||||
NVIC.ForceEnableDMAVector=true
|
NVIC.ForceEnableDMAVector=true
|
||||||
|
@ -501,7 +515,7 @@ ProjectManager.ToolChainLocation=
|
||||||
ProjectManager.UAScriptAfterPath=
|
ProjectManager.UAScriptAfterPath=
|
||||||
ProjectManager.UAScriptBeforePath=
|
ProjectManager.UAScriptBeforePath=
|
||||||
ProjectManager.UnderRoot=false
|
ProjectManager.UnderRoot=false
|
||||||
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_USART1_UART_Init-USART1-false-HAL-true,4-MX_USART2_UART_Init-USART2-false-HAL-true,5-MX_USART6_UART_Init-USART6-false-HAL-true,6-MX_DAC_Init-DAC-false-HAL-true,7-MX_SPI3_Init-SPI3-false-HAL-true,8-MX_SPI2_Init-SPI2-false-HAL-true,9-MX_SPI1_Init-SPI1-false-HAL-true,10-MX_I2C1_Init-I2C1-false-HAL-true,11-MX_TIM1_Init-TIM1-false-HAL-true,12-MX_TIM3_Init-TIM3-false-HAL-true,13-MX_ADC1_Init-ADC1-false-HAL-true,14-MX_TIM6_Init-TIM6-false-HAL-true,15-MX_USART3_UART_Init-USART3-false-HAL-true,16-MX_I2C3_Init-I2C3-false-HAL-true
|
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_DMA_Init-DMA-false-HAL-true,4-MX_USART1_UART_Init-USART1-false-HAL-true,5-MX_USART2_UART_Init-USART2-false-HAL-true,6-MX_USART6_UART_Init-USART6-false-HAL-true,7-MX_DAC_Init-DAC-false-HAL-true,8-MX_SPI3_Init-SPI3-false-HAL-true,9-MX_SPI2_Init-SPI2-false-HAL-true,10-MX_SPI1_Init-SPI1-false-HAL-true,11-MX_I2C1_Init-I2C1-false-HAL-true,12-MX_TIM1_Init-TIM1-false-HAL-true,13-MX_TIM3_Init-TIM3-false-HAL-true,14-MX_ADC1_Init-ADC1-false-HAL-true,15-MX_TIM6_Init-TIM6-false-HAL-true,16-MX_USART3_UART_Init-USART3-false-HAL-true,17-MX_I2C3_Init-I2C3-false-HAL-true
|
||||||
RCC.48MHZClocksFreq_Value=82944000
|
RCC.48MHZClocksFreq_Value=82944000
|
||||||
RCC.AHBCLKDivider=RCC_SYSCLK_DIV2
|
RCC.AHBCLKDivider=RCC_SYSCLK_DIV2
|
||||||
RCC.AHBFreq_Value=82944000
|
RCC.AHBFreq_Value=82944000
|
||||||
|
|
Loading…
Reference in New Issue