STM32F7串口通信问题

所属分类:STM32F系列 浏览数:574 提问者:dlx6969 提问时间:2018-02-07

问:

STM32F767用到2个串口:串口1,230400,DMA发送,中断接收;串口5,460800,DMA发送,中断接收。初始化程序如下: //初始化函数 void MX_UART5_Init(void) { 串口5初始化 HAL_UART_Receive_IT(&huart5, RS422Type.RxTmpBuf, 1); } /* USART1 init function */ void MX_USART1_UART_Init(void) { 串口1初始化 HAL_UART_Receive_IT(&huart1, RS232Type.RxTmpBuf, 1); } //串口中断函数 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) { if(huart->Instance==USART1)//如果是串口1 { 串口协议解析,正确执行HAL_UART_Transmit_DMA(&huart1,RS232Type.RxBuf,12); HAL_UART_Receive_IT(&huart1,RS232Type.RxTmpBuf,1); } else if(huart->Instance==UART5)//如果是串口5 { 串口协议解析, HAL_UART_Receive_IT(&huart5,RS422Type.RxTmpBuf,1); } } 767先上电,设备再上电通信正常,但设备先上电,再运行767,767进不了串行中断。请指正。


答:你是单步调试的吧?用relase模式,全速跑一下试试
回答者:nanhaijiaolong 回答时间:2018-02-08

登录后回答。
图书推荐
ARM快速嵌入式系统原型设计

ARM快速嵌入式系统原型设计

本书通过mbed介绍嵌入式系统设计的所有主要议题,便于读者快速掌握嵌入式系统的设计方法。
STM32库开发实战指南

STM32库开发实战指南

本书围绕库的分析和使用,对综合运用固件库开发项目给出了具体范例,循序渐进、系统地掌握。
轻松玩转STM32Cube

轻松玩转STM32Cube

本书结合官方手册和例程,全面、系统介绍了STM32F103各项功能,是学习STM32的入门教材。
广告