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

by Marwen Maghrebi
#include "main.h"

ADC_HandleTypeDef hadc1;
UART_HandleTypeDef huart1;
/* USER CODE BEGIN PV */
uint8_t MSG [50]="wait for ADC External Trigger .. \n\r";
uint8_t MSG2 [50];
uint32_t ADC_VAL=0;
/* USER CODE END PV */

/* Private user code ---------------------------------------------------------*/
/* USER CODE BEGIN 0 */
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
ADC_VAL = HAL_ADC_GetValue(&hadc1);
sprintf(MSG2,"ADC VALUE = %d\n\r",ADC_VAL);
HAL_UART_Transmit_IT(&huart1, MSG2, sizeof(MSG2));
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, 1);
}
/* USER CODE END 0 */

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

/* USER CODE BEGIN 2 */
if(HAL_ADC_Start_IT(&hadc1)!=HAL_OK)
    {
    Error_Handler();
    }
/* USER CODE END 2 */

while (1)
{
    HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, 0);
    HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_3);
    HAL_UART_Transmit_IT(&huart1, MSG , sizeof(MSG));
    HAL_Delay(1000);
}
}
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