添加任务挂起,解决dac输出延迟问题
This commit is contained in:
parent
f5efcca03a
commit
f024bf625f
|
@ -206,9 +206,10 @@ void start_dac_task(void const *argument)
|
|||
/* Infinite loop */
|
||||
for (;;)
|
||||
{
|
||||
osThreadSuspend(adc_taskHandle);
|
||||
dac161s997_output(DAC161S997_1, current_buff[0]);
|
||||
dac161s997_output(DAC161S997_2, current_buff[1]);
|
||||
|
||||
osThreadResume(adc_taskHandle);
|
||||
vTaskDelay(100);
|
||||
}
|
||||
/* USER CODE END start_dac_task */
|
||||
|
@ -228,13 +229,12 @@ void start_adc_task(void const *argument)
|
|||
/* Infinite loop */
|
||||
for (;;)
|
||||
{
|
||||
// uint8_t ch = 0;
|
||||
// for (ch = STOP_NC_ADC; ch < AD7124_CHANNEL_EN_MAX; ch++)
|
||||
// {
|
||||
ad7124_get_analog(STOP_NC_ADC);
|
||||
ad7124_get_analog(AI_IN2_ADC);
|
||||
ad7124_get_analog(P2_AI_ADC);
|
||||
// }
|
||||
osThreadSuspend(dac_taskHandle);
|
||||
uint8_t ch = 0;
|
||||
for (ch = STOP_NC_ADC; ch < AD7124_CHANNEL_EN_MAX; ch++)
|
||||
{
|
||||
ad7124_get_analog(ch);
|
||||
}
|
||||
HAL_GPIO_TogglePin(LED2_G_GPIO_Port, LED2_G_Pin);
|
||||
if (huart5.RxState == HAL_UART_STATE_READY)
|
||||
{
|
||||
|
@ -244,7 +244,8 @@ void start_adc_task(void const *argument)
|
|||
{
|
||||
HAL_UARTEx_ReceiveToIdle_DMA(&huart2, hart2_uart2.rx_data_temp, ARRAY_LEN(hart2_uart2.rx_data_temp));
|
||||
}
|
||||
vTaskDelay(100);
|
||||
osThreadResume(dac_taskHandle);
|
||||
// vTaskDelay(100);
|
||||
}
|
||||
/* USER CODE END start_adc_task */
|
||||
}
|
||||
|
|
|
@ -70,7 +70,7 @@ uart_t ble1_uart6 = {0};
|
|||
uart_t ble2_uart3 = {0};
|
||||
uart_t hart2_uart2 = {0};
|
||||
uart_t hart1_uart5 = {0};
|
||||
float current_buff[2] = {12.0f, 12.0f};
|
||||
float current_buff[2] = {0, 0};
|
||||
|
||||
uint8_t tcp_echo_flags_hart1 = 0;
|
||||
uint8_t tcp_echo_flags_hart2 = 0;
|
||||
|
@ -177,8 +177,7 @@ void SystemClock_Config(void)
|
|||
|
||||
/** Initializes the CPU, AHB and APB buses clocks
|
||||
*/
|
||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|
||||
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
|
||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2;
|
||||
RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
|
||||
RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
|
||||
RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV4;
|
||||
|
@ -269,7 +268,8 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
|
|||
/* USER CODE BEGIN Callback 0 */
|
||||
|
||||
/* USER CODE END Callback 0 */
|
||||
if (htim->Instance == TIM1) {
|
||||
if (htim->Instance == TIM1)
|
||||
{
|
||||
HAL_IncTick();
|
||||
}
|
||||
/* USER CODE BEGIN Callback 1 */
|
||||
|
|
File diff suppressed because one or more lines are too long
|
@ -160,6 +160,11 @@
|
|||
<WinNumber>1</WinNumber>
|
||||
<ItemText>ad7124_analog</ItemText>
|
||||
</Ww>
|
||||
<Ww>
|
||||
<count>2</count>
|
||||
<WinNumber>1</WinNumber>
|
||||
<ItemText>xReturn</ItemText>
|
||||
</Ww>
|
||||
</WatchWindow1>
|
||||
<Tracepoint>
|
||||
<THDelay>0</THDelay>
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
[EXTDLL]
|
||||
Count=0
|
|
@ -39,7 +39,7 @@ static ad7124_st_reg_t ad7124_regs[AD7124_REG_NO] = {
|
|||
{AD7124_CONFIG_5, 0x0860, AD7124_SIZE_2, AD7124_RW}, /* AD7124_Config_5 */
|
||||
{AD7124_CONFIG_6, 0x0860, AD7124_SIZE_2, AD7124_RW}, /* AD7124_Config_6 */
|
||||
{AD7124_CONFIG_7, 0x0860, AD7124_SIZE_2, AD7124_RW}, /* AD7124_Config_7 */
|
||||
{AD7124_FILTER_0, 0x060040, AD7124_SIZE_3, AD7124_RW}, /* AD7124_Filter_0 */
|
||||
{AD7124_FILTER_0, 0x060020, AD7124_SIZE_3, AD7124_RW}, /* AD7124_Filter_0 */
|
||||
{AD7124_FILTER_1, 0x060180, AD7124_SIZE_3, AD7124_RW}, /* AD7124_Filter_1 */
|
||||
{AD7124_FILTER_2, 0x060180, AD7124_SIZE_3, AD7124_RW}, /* AD7124_Filter_2 */
|
||||
{AD7124_FILTER_3, 0x060180, AD7124_SIZE_3, AD7124_RW}, /* AD7124_Filter_3 */
|
||||
|
|
Loading…
Reference in New Issue