找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

为什么我的485在多字节接收时出错??

[复制链接]
admin 发表于 2012-9-2 10:01:49 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
我的RS485在上位机一个字节一个字节发送数据的时候,立马返回发送的数据都是正确的,但当多字节一起发送的时候就有问题,我本来是想上位机发送给单片机6个字节的数据,然后判断是否是自检信号,然后开始自检,但一直未能进入自检。。其中值为0x00的字节收到的正常但是0xFF等就不对了。。下面是我的发送函数
void Send_Char( char Char)
{
RS485_T; //设置RS485为发送状态
SBUF=Char; //发送数据
while(!TI); //检测上一个字节是否发送完毕,及是否为发送下一字节做好准备
TI=0; //清楚发送中断标志位
}

Bao_R[Num_R]=SBUF;
Num_R++; //接收到数据需自检
RI=0;
这是我在接收中断里的语句

if((Bao_R[0]==0xFF)&&(Bao_R[1]==0xAA)&&(Bao_R[2]==0xA1)&&(Bao_R[3]==Bao_R[4]==Bao_R[5]==0x00))
{
自检
}
这是判断语句
说明:我的485在主循环里面是不断设置为接收状态的只有在向上发送数据包的时候才设置为发送状态。。谢谢大家,帮忙我看看啊
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-28 08:40 , Processed in 0.049656 second(s), 10 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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