找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2350|回复: 3
收起左侧

STM32串口通信能发送一次数据,第二次失败,为什么?

[复制链接]
ID:424805 发表于 2019-3-21 21:47 | 显示全部楼层 |阅读模式
1:我能发送一次数据  但是第二次发送不了为什么?
void  UART4_IRQHandler(void)//串口中断服务函数
{
    u8 a,b=0;
if((USART_GetITStatus(UART4,USART_IT_RXNE))!=RESET)//判断中断开始
{
  a=USART_ReceiveData(UART4);//接收数据
  do{
  gg[k]=a;
  k++;
  if(a==0x0d)  b=1; //判断数据是否以0x0d结束
  }while(b!=0);
  
  for(b=0;b<k;b++)
  {
   USART_SendData(UART4,gg[ b]);//发送数据
  }
  k=0;
}
}


回复

使用道具 举报

ID:424805 发表于 2019-3-22 08:21 | 显示全部楼层
是个什么情况?
回复

使用道具 举报

ID:234075 发表于 2019-3-22 14:19 | 显示全部楼层
读取数据后需要清除串行口中断标志位
回复

使用道具 举报

ID:424805 发表于 2019-3-24 01:19 | 显示全部楼层
zhb2004xp 发表于 2019-3-22 14:19
读取数据后需要清除串行口中断标志位

清除了不行啊
回复

使用道具 举报

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

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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