具体想实现的动能是这样的:数据流经过GPRS模块(通过串口3与STM32相连接),STM32接收数据后,处理数据 并 将接收到的数据 再通过 串口1发送到电脑端。。但是问题出现了,程序能进入串口3的中断程序,而通过串口1输出的数据是 空的。。
学业不精,我把调试的一些结果,截图给大家。希望大家能帮我看看,顺道指点指点,不胜感激!!!
----------------------------------------------------------------------------串口3中断·处理函数
这里主要是通过定时器7,如果两次数据字节 时间间隔 大于100ms,则判定接收结束,将完成标志位写 1 。期间记录接收的数据到USART3_RX_BUF[]、长度
------------------------------------------------------------------------处理函数
对串口3传来的数据,进行处理 并将接收到的数据 再通过 串口1发送到电脑端。问题如下:
[img]file:///C:UsersW_J_FDocumentsTencent Files290382704ImageGroupF2D@U]$IG06SXED~O]1[OAU.png[/img]
PS:在单片机与GPRS通信的时候,用的的也是串口3.所以配置方面应该没有什么问题(个人认为。)估计是串口3处理,程序哪里出了问题,怎么也找不出原因...
问题还是:串口3接收数据,能进入中断,但是中断处理后数据为空!!!
由于这个项目还没有做好,代码会比较乱。这里主要还是为了解决问题。还望大家见谅!!等到项目搞好后,我会把整利好的开放出来。
[img]file:///C:UsersW_J_FDocumentsTencent Files290382704ImageGroupF2D@U]$IG06SXED~O]1[OAU.png[/img]
原因是我把这条语句放在 判断区域外了(这样就会使标志变量不断被清0),导致数组长度一直是0,就没有吧数组的值打印出来。
最后,感谢一下原子哥的教诲!!
这个串口3的问题,论坛貌似有很多人问,这几天。
我也是无语了,这么简单的东西搞不定,说明基础不行,回去好好继续看教程。
一周热门 更多>