找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2446|回复: 0
打印 上一主题 下一主题
收起左侧

单片机RS485通信程序中记录本次数据长度怎么理解?

[复制链接]
跳转到指定楼层
楼主
ID:342197 发表于 2018-9-26 17:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位单片机大神:
如题,下列程序为RS485通信程序,其中 *len=RS485_RX_CNT;        //记录本次数据长度 该怎么理解?
一起探讨、一起进步,谢谢


//RS485查询接收到的数据
//buf:接收缓存首地址
//len:读到的数据长度
void RS485_Receive_Data(u8 *buf,u8 *len)
{
        u8 rxlen=RS485_RX_CNT;
        u8 i=0;
        *len=0;                                //默认为0
        delay_ms(10);                //等待10ms,连续超过10ms没有接收到一个数据,则认为接收结束
        if(rxlen==RS485_RX_CNT&&rxlen)//接收到了数据,且接收完成了
        {
                for(i=0;i<rxlen;i++)
                {
                        buf[ i]=RS485_RX_BUF[ i];                        }                                *len=RS485_RX_CNT;        //记录本次数据长度                RS485_RX_CNT=0;                //清零        }}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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