stm32中断服务函数c语言,STM32中断数据回调函数接收处理

1.定义一个空的指针函数 指针函数的参数是uint8_t 类型ch

typedef void (* usart_recv_callback)(uint8_t ch);

2.声明这个类型

usart_recv_callback  usart1_recv_cb;

3.串口配置时,一个形参为串口中断接收回调

void Usart_Config(USART_TypeDef* USARTx, uint32_t baudRate, usart_recv_callback cb)

{

GPIO_InitTypeDef GPIO_InitStructure;

USART_InitTypeDef USART_InitStructure;

NVIC_InitTypeDef NVIC_InitStructure;

if(USARTx == USART1)

{

usart1_recv_cb = cb;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA | RCC_APB2Periph_AFIO, ENABLE);

/* Configure USART1 Tx (PA.09) as alternate function push-pull */

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;

GPIO_Init(GPIOA, &GPIO_InitStructure);

/* C

你可能感兴趣的:(stm32中断服务函数c语言)