advanced-analog-to-digital-conversion-stm32-timer-trigger

by Marwen Maghrebi
#include "main.h"
#include<stdio.h>
ADC_HandleTypeDef hadc1;
TIM_HandleTypeDef htim3;
UART_HandleTypeDef huart1;

void SystemClock_Config(void);
static void MX_GPIO_Init(void);
static void MX_ADC1_Init(void);
static void MX_TIM3_Init(void);
static void MX_USART1_UART_Init(void);

/* USER CODE BEGIN 0 */
uint8_t MSG[50];
uint32_t ADC_VAL=0;
void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc)
{
ADC_VAL = HAL_ADC_GetValue(&hadc1);
sprintf(MSG,"ADC VAL %d \n\r",ADC_VAL);
HAL_UART_Transmit_IT(&huart1, MSG, sizeof(MSG));
HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_1);
}
/* USER CODE END 0 */

int main(void)
{
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_ADC1_Init();
MX_TIM3_Init();
MX_USART1_UART_Init();

if(HAL_ADC_Start_IT(&hadc1) !=HAL_OK)
    {
    Error_Handler();
    }
if(HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_1)!=HAL_OK)
    {
    Error_Handler();    
    }
while (1)
    {
    HAL_GPIO_WritePin(GPIOA, GPIO_PIN_1, 0);
    HAL_Delay(100);
    }
}
Are you sure want to unlock this post?
Unlock left : 0
Are you sure want to cancel subscription?
-
00:00
00:00
Update Required Flash plugin
-
00:00
00:00