OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4107|回复: 0

关于stm32f7的UART7中断接收的问题

[复制链接]

23

主题

69

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2017-1-5
在线时间
50 小时
发表于 2017-1-11 14:50:08 | 显示全部楼层 |阅读模式
6金钱
刚接触单片机不久,若有不清楚的地方,请批评指正,谢谢!
想做RS485实现两个单片机的通信,在接收中断这遇到问题,描述见下面:
HAL_UART_Receive(&huart7,receive_data,len,100);用阻塞模式能收到计算机发来的数据然后有个函数HAL_UART_Receive_IT(&huart7,receive_data,len);是用在中断模式 问题一:中断模式与阻塞模式是怎么进入的  什么时候用这个函数啊
下面是UART7的中断函数
[mw_shl_code=applescript,true]void UART7_IRQHandler(void)//这是参考书上例程改的 ,HAL库的函数刚运用,还不大熟
{
  /* USER CODE BEGIN UART7_IRQn 0 */
        //uint8_t res;
        if(HAL_UART_GetState(&huart7) != RESET )//接收到数据
        {
                HAL_GPIO_WritePin(GPIOE,RE_Pin, GPIO_PIN_RESET);//使能接收
                HAL_UART_Receive(&huart7,RS485_RX_BUF,1,100);
                HAL_GPIO_WritePin(GPIOE,RE_Pin, GPIO_PIN_SET);//关闭使能接收
                if(RS485_RX_CNT<64)
                {
                       
                        RS485_RX_BUF[RS485_RX_CNT]=RS485_RX_BUF[0];
                        RS485_RX_CNT++;
                }
        }
  /* USER CODE END UART7_IRQn 0 */
  HAL_UART_IRQHandler(&huart7);

}[/mw_shl_code]


再就是主函数不知道怎么写,已经把这几个HAL库的函数和例程函数改造了很多次了,请大家帮忙给理一理思路,谢谢你们!

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-20 18:30

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表