嵌入式应用编程BUG-STM32串口应用

来源:互联网 发布:windows fix it 下载 编辑:程序博客网 时间:2024/05/18 01:07

    近年二维码应用越来越广泛,针对市场需求公司在原有的系统之上增加二维码访客功能。这里自己主要负责基于硬件(主控STM32F101)二维码数据的解密和数据传输功能,   这里硬件上需要需要三个串口。这对于这块主控来说也是很轻松的事情。在代码实现过程中很快自己发现了问题。

   问题描述:

     当我同时用两个串口时,发现两个串口不能同时正常工作。一个串口打印,一个串口用于485数据传输。只要开了打印功能485传输虽然有数据但是数据错误。

   解决过程:

     这里先是查看自己的串口初始化设置,反复查看一直没能发现问题所在,以及在网上查看各种帖子也没能找到问题所在。这里很庆幸有很多朋友都在网上分享自己的经验,这也让自己在解决问题的同时,学习到了很多东西。这里传承前辈们的精神,今后也将持续把自己的工作调试经验分享。

   BUG所在:

      这里在调试过程中自己用一个串口用于打印调试信息,一个串口接收有效数据。这里为了看到是否成功进入接收中断以及看到接收的数据。在接收中断函数里面用了      打印函数,也就是说我在一个串口接收函数中,用了另外一个串口的发送函数。通过反复查找发现正式因为这个函数导致,用于485数据通信的串口无法正常工作。、

  学习总结:

    这里告诉我们当我们在中断函数中,进行操作的时候应该格外注意。我们应该把许多的处理都放在中断函数外,尽量让中断函数尽可能的少做处理,提高代码的健壮性。

 

1 0
原创粉丝点击