菜单
  

    当地址信息发送完毕后,紧接着发送数据信息,其中数据信息由4个字节组成,其中前两个字节为湿度的整数部分和小数部分,后两个字节为温度的整数和小数部分。
    最后一个字节是数据校验和,它是前面5字节数据的和,用于校验目的,减少数据在传输的过程中受外界干扰发生跳变而误将数据接收处理。与奇偶校验类似,首先将欲发送的前5个字节数据进行累加,若累加后超出8位则采用补码形式表示,将所得的数据和作为最后一个字节。接收端接收到这组数据后,将前面5组数据进行累加,超出8位同样采用补码形式表示,得出新的校验和,将此校验和与接收所得的校验和进行对比,若结果相同则数据在传输过程中没有发生错误,否则数据传输有误,丢弃整组数据不进行处理。
    每个字节在传输过程中均按下面介绍的串口通信协议传输。详见串口初始化子程序。
    4.3    串口子程序
    当单片机读取到传感器的数据时,就需要将所得数据发送至无线模块,在这里采用的是串口通信协议,同样在调试过程中,节点与上位机通信也是使用的串口通信协议,利用单片机的USART口进行数据传输,在ATmega8上通用同步和异步串行接收器和转发器(USART) 是一个高度灵活的串行通讯设备。
    其主要特点为:
        全双工操作( 独立的串行接收和发送寄存器)
        高精度的波特率发生器
        支持5,6,7,8,或9个数据位和1个或2个停止位
        硬件支持的奇偶校验操作
        数据过速检测
        帧错误检测
        三个独立中断:发送结束中断,发送数据寄存器空中断,以及接收结束中断
        倍速异步通讯模式
    4.3.1    串口初始化子程序
    要保证下位单片机和上位PC机之间的数据传送准确、可靠,需要像无线传输一样共同遵守一个事先制定好通信协议,对USART进行初始化就是对通信协议确定。
    初始化过程通常包括波特率的设定,帧结构的设定,以及根据需要使能接收器或发送器。重新改变USART的设置应该在没有数据传输的情况下进行。TXC标志位可以用来检验一个数据帧的发送是否已经完成,RXC标志位可以用来检验接收缓冲器中是否还有数据未读出。在每次发送数据之前(在写发送数据寄存器UDR前)TXC标志位必须清零。图4.2为串口初始化子程序流程图。
  1. 上一篇:matlab硅微陀螺检测信号数字处理研究
  2. 下一篇:MSP430单片机控制的电子文件柜设计
  1. STC89C52单片机无线遥控电子...

  2. msp430g2553单片机高精度差分GPS技术研究

  3. AT89C51单片机城市道路积水...

  4. STC89C52RC单片机和CPLD的等精度频率计

  5. AT89C52单片机基于max038的信号发生器设计+程序

  6. STC89C52单片机MAX038的程控信...

  7. AT89C52单片机超声波发射和...

  8. 当代大学生慈善意识研究+文献综述

  9. 中考体育项目与体育教学合理结合的研究

  10. 杂拟谷盗体内共生菌沃尔...

  11. 乳业同业并购式全产业链...

  12. java+mysql车辆管理系统的设计+源代码

  13. 大众媒体对公共政策制定的影响

  14. 河岸冲刷和泥沙淤积的监测国内外研究现状

  15. 酸性水汽提装置总汽提塔设计+CAD图纸

  16. 十二层带中心支撑钢结构...

  17. 电站锅炉暖风器设计任务书

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回