(库函数版本,适合战舰V3 STM32开发板)实验32 MPU6050六轴传感器实验.rar

  • 浏览量:1680
  • 下载量:1
  • 资料大小:0 B
  • 日期:2015-12-19
  • 上传者:Cigoy
  • 分享
  • 评论
  • 举报
  • 收藏

资料描述

    本教程作者为云汉电子社区网友@cigoy ,回帖参与讨论、提问、分享,就能赢取超多丰厚奖励哦~  

    学教程,送奖励,活动说明详见:从〇开始学51系列













    前面的帖子,聊了一些简单的用法


    其实基础的内容基本上已经完结


    想了想,还是得稍微聊聊和实际项目关联度大些的内容


    也就有了这贴,自定义通信协议


     


    首先,咱得知道,为什么需要自定义通信协议


    其实iic也好、uart串口也好


    都规定了比较严谨的通信协议和信号时序


    但是,值得注意的是


    它们仅仅是物理层的协议


    简单点理解


    这些协议就是只确保数据的按时按量传输


    换句话就是只保证数据在确定的时间内完成确定数量的传输


    举个栗子


    iic协议能够很好滴保障发送器


    在一次传输时间内,将8比特数据也就是1字节的数据10110011


    完整地发送到接收器


    但是它也只能保证8比特的数据完成传输


    无法保障接收方收到的也是10110011这8位数据


    也许由于各种客观因素(各种电磁串扰、pcb布线等因素)


    接收方遵循iic协议接收到的却可能是10010010


    也就是说


    这种物理层的协议,只保证量,而不保证质(一些有校验纠错的物理层协议不在此讨论范围)


    所以,在这些物理层的协议基础上


    咱还得自己想办法


    确认发送和接收的数据完全一致


    也就是这次要讨论的自定义通信协议


     


    如何自定义通信协议呢


    往牛x了说,是自己设计一套协议


    往简单了说,理解成自己安排数据的传输规则即可


    来看看自定义通信协议的几个规则吧


    1、  语法规则


    用来规定数据的结构和格式


    譬如有4个传感器,每个传感器的数据需要2字节来传递采集的值


    那么传感器的实际有效数据应该有8个字节


    如何保证这八个字节按时按质按量完成传输呢


    咱可以设计一个11字节的数据帧(叫数据包也不是不可以)







    数据编号




    数据内容





评论(0)

登录后可评论,请 登录注册

   
相关资料
换一换