zoukankan      html  css  js  c++  java
  • 一、单片机——串口通信及超声波(上)

    计算机通信:

    一、基础知识。

        

    1. 异步通信:收发设备使用各自的时钟。
    2. 同步通信:发送方时钟与接收方时钟同步。
    3. 传输方式:a.单工 b.半双工 c.全双工
    4. 信号的调制与解调:

         

       5.错误校验:

        ① 奇偶校验

        ② 代码和校验

        ③ 循环冗余检验

       6.传输速率和传输距离:

        ① 传输速率:

          1) 比特率:每秒钟传输二进制代码的位数

          2) 波特率:每秒钟调制信号变化的次数,即每秒发送的位数。

          3) 波特率和比特率不总是相同的,但对于基带传输,波特率和比特率总是相同。

          4) 1B/s = 8b/s

    二、51编程:

                 

        两个物理上独立的接受、发送缓存器SBUF,他们占用同一个地址99H,接收器是双缓冲结构;发送缓冲器,因为是发送时CPU是主动的,不会产生重叠错误。

    1. 工作方式寄存器SCON

           

        ① RI(接受中断标志位):接受结束时,会由硬件置1,向CPU发出中断请求(软件置0)。

        ② TI(发送中断标志位):发送结束时,会由硬件置1,向CPU发出中断请求(软件置0)。

        ③ TB8:用来存放发送的第9位。

        ④ RB8:用来存放接受的第9位。

        ⑤ REB:串行接受允许位。

          0时:允许串行接受位/1时:禁止串行接受。

        ⑥ 工作方式设置(SM0SM1):

           

          SM2:多级通信控制位。

          SM2主要用在工作方式2和工作方式3

          当SM2=0时:不论接收的第9位是0还是1,都接收数据,产

          生中断。当SM2=1时:只有在接收到的第9位为1时,才接收

          数据,并产生中断;而如果接收到的第9位为0时,则将接收

          到的数据丢弃,不产生中断。

      2.PCON

           

          PCON是没有位寻址的,也就是说不能直接操作SMOD要直接操作PCON寄存器。

          SMOD:是波特率是否加倍的选择位。

            0时:波特率不加倍。

            1时:波特率加倍。

      3.波特率:

          波特率 = 2*SMOD/32 * 定时器Tx的溢出率

     

     

    超声波:

    采用HC-SR04超声波模块,共四个接口,分别是VCCTrigEcho以及GND。其中VCCGND对应接入即可,TrigEcho接入对应的I/O口。

                         

    实物图(正反面)

    时序图:

                  

    控制口(Trig)发送一个10us以上的高电平,就可以在接受口(Echo)等待高电平的输出(定时器计时),当接受口变为低电平的时候就可以读取定时器的值,根据公式:
    距离 = 高电平时间 * 声速 / 2

      就可以计算出距离。其中声速等于340 m/s,高电平时间是:

                  定时器时间 = THx * 256+ TLx

      计算得出的时间是ms

  • 相关阅读:
    全屏透明遮罩层
    理解Javascript__理解undefined和null
    JS 对象属性相关--检查属性、枚举属性等
    js 空正则匹配任意一个位置
    a 标签 download 和 target 不配合
    Array.prototype.filter(Boolean)
    页面操作表单不会调用表单 value 属性的 set 函数
    Babel6.x的安装
    html 事件处理程序中的代码在执行时,有权访问全局作用域中的任何代码。
    js 常用 DOM 元素宽高
  • 原文地址:https://www.cnblogs.com/hixkill/p/8031596.html
Copyright © 2011-2022 走看看