晴天有时下雨_ 2021-06-13 10:25 采纳率: 0%
浏览 19

把例程下到我的stm32板子里,可以从pc发送数据,但不能接收;在买的板子里可以发送和接收

我用ch340实现串口,正确应该在发送时txd信号灯亮,接收时rxd信号灯亮;例程是按住复位键,PC端接收到数据,但是我的板子从按下复位键到抬起,rxd灯一直亮,应该只亮一下。请问是什么原因呢??

 

例程如下:

void USART2_IRQHandler(void)                                                            //USART接收中断
{
  if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET)                                    //判断标志位
  {                                                                                        
      USART_ClearFlag(USART2, USART_IT_RXNE);                                                //清除标志位

    sprintf((char*)string,"HELLO %d",11);                                          //写入字符串
    LCD_DisplayStringLine(Line1,string);                                                         //
  }
}
  

void USART_SEND(u8 *str)                                                                //定义串口发送函数
{
    int index=0;                                                                        //定义一个整型变量
    do
    {
        USART_SendData(USART2, str[index++]);                                            //当查询到标志位后,一位一位发送数据,直至数据全部发送完毕
        while(USART_GetFlagStatus(USART2,USART_FLAG_TXE)==RESET);        
    }  while(str[index]!=0);
}

  • 写回答

1条回答 默认 最新

  • 梧桐树✯ 2021-06-13 10:50
    关注

    有些板子引脚定义各不相同,建议使用debug调试。

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器