2个单片机通信问题

[复制链接]
1355|14
 楼主| JAWN 发表于 2015-10-24 11:18 | 显示全部楼层 |阅读模式
zigbee向MSP430F5438A发送数据,发送的是4个数1234(每2秒发一次),然后我用MSP430F5483A串口0接收并通过串口发送到PC串口调试助手上,但在串口调试助手上显示的只有最后一个数(00 34 00 00 34 00 34 34 34(hex)),这是什么原因,怎么判断是MSP430F5483A接收出现还是发送出现问题
 楼主| JAWN 发表于 2015-10-24 15:47 | 显示全部楼层
简单来说 单片机怎样接收多个字节
dirtwillfly 发表于 2015-10-24 17:40 | 显示全部楼层
串口每次接收一个字符,接收后记得及时存到别的地方去,或者及时转发
nyf1972 发表于 2015-10-24 20:13 | 显示全部楼层
我不了解MSP430 ,但是原理一样 :
      这个问题可能在你转发的时候出现的问题 (我理解T0接受 ,T1发送 ) ,我建议 ,接收和发送的使用不同波特率(如果使用相同的波特率,容易掉数据如果 在串口中断 中 接收后立即发送 ,那么 可能会 出现 问题,特别 是对 一组数据 ,将非常明显 ,但是掉的基本上 是靠后的  ),发送波特率高一些。
       如果只有最后一个字节 ,而不是前面 有 后面没有 ,你更应该查询你的代码 。代码上可能有问题的 。

 楼主| JAWN 发表于 2015-10-25 09:17 | 显示全部楼层
nyf1972 发表于 2015-10-24 20:13
我不了解MSP430 ,但是原理一样 :
      这个问题可能在你转发的时候出现的问题 (我理解T0接受 ,T1发送 )  ...

那要将接收到的数据存到一个数组里要怎样存
huarana 发表于 2015-10-25 10:50 | 显示全部楼层
JAWN 发表于 2015-10-25 09:17
那要将接收到的数据存到一个数组里要怎样存

430的寄存器记不下

以pic举例

u8 rx_dat[]={0};
u8 rx_num;
中断里面

rx_dat[rx_num]=RCREG;   //接受寄存器

rx_num++;

简单的就是这样,然后你再组织下。
 楼主| JAWN 发表于 2015-10-25 13:30 | 显示全部楼层
huarana 发表于 2015-10-25 10:50
430的寄存器记不下

以pic举例

能用51举例一下么
huarana 发表于 2015-10-27 11:37 | 显示全部楼层
JAWN 发表于 2015-10-25 13:30
能用51举例一下么

寄存器名字换下就行了 - -!  RCREG换成 SBUF
xiaoyaozt 发表于 2015-10-27 22:09 | 显示全部楼层
16进制吗?
xiaoyaozt 发表于 2015-10-27 22:10 | 显示全部楼层
超出发送量程了。
sunmeat 发表于 2015-10-28 17:33 | 显示全部楼层
接收完,保存到数组中。你那个应该是没有缓冲完毕的问题。
baimiaocun2015 发表于 2015-10-28 21:52 | 显示全部楼层
串口收发数据是很简单的啦
旧影子 发表于 2015-10-29 16:21 | 显示全部楼层
接收再发送的函数做好,还要速度一定要匹配。
陌小生 发表于 2015-10-30 23:33 | 显示全部楼层
51之类的程序,多了去了,随便找
1988020566 发表于 2015-10-31 11:06 | 显示全部楼层
看看共地了吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

38

主题

110

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部