九曲牧流云 2022-05-06 23:07 采纳率: 75%
浏览 31

STM32串口通信时,所发送的内容在单片机接收后会改变吗?

今天在捣鼓的时候忽然发现一个很有意思的现象,就是STM32在串口通信时并没有按照我预想的情况发生,话不多说,直接上图

img

最初我写的是else 但是我发现,运行时,单片机只是快闪,并不是常量,当我改成else if 的写法时,才能得到预想的结果,请问这个是什么原因呢?是发送信号时传递给串口的不仅仅是字符串1,还是说,当串口接收到1的时候,就把1给改变了(也就是说,此时i ≠1了)?

  • 写回答

1条回答 默认 最新

  • C1460 2022-05-09 14:40
    关注

    我之前也遇到类似的问题,是串口接收代码的问题。
    你可以用串口调试助手试一下你就知道了,你现在主函数里是接收发送的数据并发送出去,你可以用助手发送一个01 接收回来的数据会多两个两个字节,具体是啥我忘记了。所以应该是你发送1后i最后的值不是1导致灯灭了

    评论

报告相同问题?

问题事件

  • 创建了问题 5月6日

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?