单片机如何接收上位机传来的字符串?

2020-01-23 14:31发布

问题是:如何完整的接收上位机发送过来的字符串(如:abcdef),而不是单字符,上位机如果发送字符串是不是连续不停的发送?即使我们在取SBUF寄存器的数据,但在这时上位机还在不停的发送后一个字节的数据。求高手过招..给个整个理解过程,有代码就更为好了!小弟在此谢过了!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
34条回答
BloathX
1楼-- · 2020-01-26 06:43
产生接收中断的事件是数据寄存器不为空,片子接收时的内部步骤具体看手册。在中断时处理不要超过接收一个字节所需要的时间就行
xjzxl
2楼-- · 2020-01-26 08:11
 精彩回答 2  元偷偷看……
SilverBullet
3楼-- · 2020-01-26 08:16
可以收到一个字符然后向上位机返回一个“Rxed”表示已经收到,然后上位机发送下一个字符
xtl2012
4楼-- · 2020-01-26 11:47
SilverBullet 发表于 2013-3-2 10:05
可以收到一个字符然后向上位机返回一个“Rxed”表示已经收到,然后上位机发送下一个字符 ...

那这个你要修改上位机软件或者自己做一个符合这样规格的软件才行呀,这样也就不符RS232协议的
SilverBullet
5楼-- · 2020-01-26 13:06
xtl2012 发表于 2013-3-2 10:50
那这个你要修改上位机软件或者自己做一个符合这样规格的软件才行呀,这样也就不符RS232协议的 ...

上位机软件不是你自己的吗?
如果不能修改的话只能在中断里面把字符保存到一个缓冲区并保证这个保存过程比接受下个字符的速度快了
xtl2012
6楼-- · 2020-01-26 13:06
SilverBullet 发表于 2013-3-2 11:42
上位机软件不是你自己的吗?
如果不能修改的话只能在中断里面把字符保存到一个缓冲区并保证这个保存过程 ...

是的....

一周热门 更多>