导航:首页 > 编程语言 > 野火stm32串口中断程序

野火stm32串口中断程序

发布时间:2023-09-02 21:50:05

A. stm32 串口中断发送和接收怎么回事,就是串口的中断方式和查询方式有什么区别

使用中断接收发送方式,可随时响应串口的接收发送请求,提高串口响应时间;
程序上操作步骤如下:
首先:在void RCC_Configuration(void)中配置好串口时钟;及在void GPIO_Configuration(void)配置好管脚;
RCC_PCLK2Config(RCC_HCLK_Div1); //串口波特率的确定
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA||RCC_APB2Periph_USART1, ENABLE);
/* Configure USART1 RTS (PA12) and USART1 Tx (PA9) as alternate function push-pull 根据资料可查得各管脚对应*/
GPIO_InitStructure.GPIO_Pin =GPIO_Pin_9;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //推挽输出
GPIO_Init(GPIOA, &GPIO_InitStructure);

其次:在 void NVIC_Configuration(void)函数中使能串口中断;
/* Enable the USART1 Interrupt */
NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQChannel; //通道设置为串口1中断(故后面应选择在“void USART1_IRQHandler(void)”开中断)
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; //中断占先等级0
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; //中断响应优先级0
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //打开中断
NVIC_Init(&NVIC_InitStructure);

其次。配置好串口,并开中断
/* Enable the USART1 Interrupt */
NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQChannel; //通道设置为串口1中断(故后面应选择在“void USART1_IRQHandler(void)”开中断)
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; //中断占先等级0
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; //中断响应优先级0
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; //打开中断
NVIC_Init(&NVIC_InitStructure);
最后,可在stm32f10x_.it.c中的void USART1_IRQHandler(void)函数里写上串口中断发生时中断服务函数即可;
u8 RX_dat; //定义字符变量
if (USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //判断发生接收中断
{
RX_dat=(USART_ReceiveData(USART1) & 0x7F); //接收数据,整理除去前两位
USART_ClearITPendingBit(USART1, USART_IT_RXNE); //清除中断标志
while(USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET){}//等待接收结束
// USART_ITConfig(USART1, USART_IT_RXNE, DISABLE); //关中断
USART_SendData(USART1,RX_dat); //发送数据
}

程序实现功能:当有数据通过串口发送过来时,程序进入串口中断服务程序,在中断服务程序中发送接收到的数据;

阅读全文

与野火stm32串口中断程序相关的资料

热点内容
红头文件订书红线在哪里 浏览:851
excel怎么做文件头 浏览:703
为什么word找不到文件菜单 浏览:671
ios15安装后找不到描述文件 浏览:440
学编程怎么学最有效 浏览:873
通过wifi传文件到ipad 浏览:197
js随机颜色 浏览:611
文件快速复制到u盘的软件 浏览:443
如何检查无线网络驱动是否正常 浏览:468
百度网盘来自分享的文件在哪里 浏览:127
如何发视频到腾讯视频文件夹里 浏览:510
微信打开cad外部文件找不到 浏览:882
平板可以打开各种文件后缀的软件 浏览:531
苹果微信文件怎么全选 浏览:749
手机里之前打开过的文件在哪里找 浏览:685
cad能看word文件吗 浏览:719
12306火车票系统后台数据库 浏览:570
js翻译德语 浏览:33
从哪里可以下载a股的数据 浏览:437
逻辑文件名和物理文件名关系 浏览:66

友情链接