搜索
bottom↓
回复: 0

msp430f149 单片机间uart通信 主从间握手的问题

[复制链接]

出0入0汤圆

发表于 2013-4-19 16:18:33 | 显示全部楼层 |阅读模式
主机(M),从机(S)。按照现有的通信协议,M向S发送8字节的数据包P,S在收到P后会立即回复握手H。
我想把从机回复的握手H,写入M的内存,后续程序会读取这条H的8个字节。数据包的格式有特殊的字头(head)和字尾(tail)。现在为了保证M和S间每次握手后,M的缓冲内存里能够按照预期有序的接收H的8个字节,我在M的8个uart0接收中断后,用下面的伪代码保证可靠的接受:

while(!(字头 == head &&  字尾 == tail)) {
      发送数据包P;
      延时10毫秒;//在这里设想,给从机S回复预留足够的时间,并让主机M进8次有效的接收中断
                //主机M的接收中断服务程序中,依次向内存中写入H的八个字节
}
主机M处理从机S发来的H;

这样写我个人觉得没什么问题,可现在程序写到开发板上后,有时能达到我预期的效果。但是更多时候从串口调试工具里观察单片机好像是突然间崩溃了,PC机的窗口里看到主机M极快速的(周期10ms?)发送数据包P的数据。

是不能按这样的方式在430单片机里写还是这种方式本身就有问题?

uart相关寄存器配置部分之前已经用简单的程序验证过,应该没什么问题,波特率是9600。

阿莫论坛20周年了!感谢大家的支持与爱护!!

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-7-28 08:26

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表