内容发布更新时间 : 2024/12/25 3:59:51星期一 下面是文章的全部内容请认真阅读。
信息工程学院实验报告
课程名称:单片机原理及接口
成 绩: 实验项目名称:串口通信实验 实验时间:2017.5 一、实 验 目 的:
1.了解什么是串口,串口的作用等。 2、了解串口通信的相关概念
3、利用keil软件,熟悉并掌握中串口通信的使用
4、通过实验,熟悉串口通信程序的格式,串口通信的应用等
二、实 验 原 理 1、串口通信概念:
单片机应用与数据采集或工业控制时,往往作为前端机安装在工业现场,远离主机,现场数据采用串行通信方式发往主机进行处理,以降低通信成本,提高通信可靠性。如下图所示。
指导老师(签名):
2、串口数据通信方式及特点
★ 数据通信方式有两种:并行通信与串行通信 ★并行通信: 所传送数据的各位同时发送或接收,
数据有多少位就需要多少根数据线。
特点: 速度快,成本高,适合近距离传输 如计算机并口,打印机,8255 。 ★串行通信:所传送数据的各位按顺序一位一位 地发送或接收。
只需一根数据,一根地线,共2 根
特点:成本低,硬件方便,适合远距离通信, 传输速度低。 串行通信与并行通信示意图如下:
第 1 页 共 7 页
3、串行通信基本格式
①单工通信:数据只能单向传送。
②半双工通信:通信是双向的,但每一时刻,数据流通的方向是单向的。
③全双工通信:允许数据同时在两个方向流动,即通信双方的数据发送和接收是同时进行的。
4、异步串行通信/同步串行通信 ①异步串行通信:
异步串行通信采用如下的帧结构:
起始位 + 8位数据位 + 停止位 或 起始位 + 9位数据位 + 停止位 其中:起始位为低电平,停止位为高电平。 优点:硬件结构简单 缺点:传输速度慢 ②同步串行通信:
在同步通信中,发送方在数据或字符开始处就用同步字符(常约定1~2个字节)指示一帧的开始 ,由时钟来实现发送端和接收端同步,接收方一旦检测到与规定的同步字符符合,下面 就连续按顺序传送若干个数据 ,最后发校验字节。见下图:
5、串行通信过程与UART
基本的计算机异步串行通信系统中,两台计算机之间通过三根信号线TxD、RxD和GND连接起来,TxD与GND构成发送线路,RxD与GND构成接收线路。一台计算机的TxD、RxD线分别与另一台计算机的RxD、TxD线相连。
由于在串行通信过程中的并串转换、串并转换、线路检测、采样判决、组帧、
第 2 页 共 7 页
拆帧、发送和接收等操作需消耗CPU大量时间,以至CPU无法处理其它工作,因而开发出专用于处理异步串行通信发送和接收工作的芯片UART(通用异步串行通信接收发送器)。
CPU只需将要发送的一个字节数据交给UART,其它发送工作由UART自动完成,当UART将一帧数据发送完毕,会通知CPU 已发送完,可提交下一个字节 。
UART自动监测线路状态并完成数据接收工作,当接收到一个字节数据后,UART会通知CPU来读取。采用UART后,CPU的负担大大减轻了。
6、MCS—51的串行通信接口
MCS-51单片机内部集成有一个UART,用于全双工方式的串行通信,可以同时发送、接收数据。它有两个互相独立的接收、发送缓冲器,这两个缓冲器同名SBUF,共用一个地址号(99H)。
发送SBUF:只能写,不能读; SBUF = a; 接收SBUF:只能读,不能写。 a = SBUF;
串行接口有四种工作方式,有的工作方式时其波特率是可变的。用户可以用软件编程的方法在串行控制寄存器SCON中写入相应的控制字就可改变串行口的工作方式。 串行口结构图如下:
串行通信的传送过程说明:
甲方发送时,CPU执行指令 SBUF =A 启动了发送过程,数据并行送入SBUF ,在发送时钟 shift的控制下由低位到高位一位一位发送,乙方在接收时钟 shift 的控制下由低位到高位 顺序进入移位寄存器SBUF ,甲方一帧数据发送完毕,置位发送中断标志TI,该位可作为查询标志(或引起中断),CPU可再发送下一帧数据 。乙方一帧数据到齐即接收缓冲器满,置位接收中断标志RI,该位可作为查询标志(或引起接收中断),通过A=SBUF CPU将这帧数据并行读入。
由上述可知:
1. 甲、乙方的移位时钟频率应相同,即应具有相同的波特率,否则会造成数据丢失。
第 3 页 共 7 页