一、单片机——串口通信及超声波(上)
计算机通信:
一、基础知识。
- 异步通信:收发设备使用各自的时钟。
- 同步通信:发送方时钟与接收方时钟同步。
- 传输方式:a.单工 b.半双工 c.全双工
- 信号的调制与解调:
5.错误校验:
① 奇偶校验
② 代码和校验
③ 循环冗余检验
6.传输速率和传输距离:
① 传输速率:
1) 比特率:每秒钟传输二进制代码的位数
2) 波特率:每秒钟调制信号变化的次数,即每秒发送的位数。
3) 波特率和比特率不总是相同的,但对于基带传输,波特率和比特率总是相同。
4) 1B/s = 8b/s
二、51编程:
两个物理上独立的接受、发送缓存器SBUF,他们占用同一个地址99H,接收器是双缓冲结构;发送缓冲器,因为是发送时CPU是主动的,不会产生重叠错误。
- 工作方式寄存器SCON:
① RI(接受中断标志位):接受结束时,会由硬件置1,向CPU发出中断请求(软件置0)。
② TI(发送中断标志位):发送结束时,会由硬件置1,向CPU发出中断请求(软件置0)。
③ TB8:用来存放发送的第9位。
④ RB8:用来存放接受的第9位。
⑤ REB:串行接受允许位。
0时:允许串行接受位/1时:禁止串行接受。
⑥ 工作方式设置(SM0和SM1):
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超声波模块,共四个接口,分别是VCC,Trig,Echo以及GND。其中VCC和GND对应接入即可,Trig和Echo接入对应的I/O口。
实物图(正反面)
时序图:
控制口(Trig)发送一个10us以上的高电平,就可以在接受口(Echo)等待高电平的输出(定时器计时),当接受口变为低电平的时候就可以读取定时器的值,根据公式:
距离 = 高电平时间 * 声速 / 2
就可以计算出距离。其中声速等于340 m/s,高电平时间是:
定时器时间 = (THx * 256)+ TLx
计算得出的时间是ms。