第8章串行口及AD
第8章 MCS-51的串行通信 随着多微机系统的广泛应用和计算机网络技术的普及,计算机的通信功能愈来愈显得重要。计算机通信是指计算机与外部设备或计算机与计算机之间的信息交换。 通信有并行通信和串行通信两种方式。在多微机系统以及现代测控系统中信息的交换多采用串行通信方式。 并行通信通常是将数据字节的各位用多条数据线同时进行传送 。 串行通信是将数据字节分成一位一位的形式在一条传输线上逐个地传送。 通信协议:指通信双方对数据传送控制的一种约定。约定中包括对数据格式、同步方式、传送速率、传送步骤、检纠错方式以及控制字符定义等问题作统一规定,通信双方必须共同遵守。 异步串行通信和同步串行通信特点: 异步通信是指通信的发送与接收设备使用各自的时钟控制数据的发送和接收过程。为使双方的收发协调,要求发送和接收设备的时钟尽可能一致。 将许多字符组成一个信息组(称为帧) ,字符一个接一个地传输。在每帧的开始处加上同步字符,没有信息传输时,填上空字符,同步传输不允许字符与字符之间有间隙 。 按照数据流的方向,串行通信分成三种方式: 单工:只能单方向传送信息。如键盘与主机之间。 半双工:可以双向传送信息;由于通过同一个通道传送信息,所以同一时刻只能单向传送; 全双工:采用两条通道,可以同时发送和接收信息。如计算机之间的通信。 2. 数据终端设备(DTE)和数据通讯设备(DCE) DTE (Data Terminal Equipment):指使用数据的设备,可以是计算机或外设,它负责对数据通信进行控制,包括数据收/发、差错控制、同步和识别通信站点等。 DCE (Data Communication Equipment):指数据通信设备,一般是MODEM,或其它一些通信外设。它负责在实际的数据链路上进行通信控制 ,包括链路的建立、维持、终止、数据信号变换与编码等。 DTE之间的通信:近距离通信时可以直接互连;远距离通信时通常要通过DCE的连接来实现。 3. 过程特性 过程特性规定了信号之间的时序关系,以便正确地接收和发送数据 。 MCS-51单片机内部有1个全双工串行口,可同时发送和接收数据。它有4种工作方式,可供不同场合使用。波特率由软件设置,通过片内的定时/计数器产生。 接收、发送均可工作在查询方式或中断方式,使用十分灵活。MCS-51的串行口除了用于数据通信外,还可以非常方便地构成一个或多个并行输入/输出口,或作串/并转换,用来驱动键盘与显示器。 串行口方式1和方式3都是异步通信方式,方式1为8位数据位,方式3为9位数据位,两种方式的波特率都是受定时器T1的溢出率控制。 方式1或方式3实现串行异步通信时,初始化程序:要设定串行口的工作方式,并对定时器T1实现初始化,即设定定时器方式和定时器初值。此外,还要编写发送子程序和接收子程序。 例2:用中断法编出8051单片机串行口方式1下的发送程序:fosc=6MHz,定时器T1做波特率发生器,波特率为2400bps,选SMOD=1;发送字符块在内存RAM中的TBLOCK单元,字符块长度为20。采用奇校验,校验位在数据第8位。 主程序: MOV TMOD,#20H ;定时器T1设为方式2 MOV TL1, #0F4H ;装入定时器初值 MOV TH1, #0F4H ;8位重装值 SETB TR1 ;启动定时器T1 MOV SCON, #40H ;串行口设为方式1 MOV PCON,#80H ;SMOD=1 MOV R0, #TBLOCK ;发送缓冲区首址 MOV R2 , #20 ;数据长度 SETB EA ;开中断 SETB ET1 ;允许T1中断中断 SETB ES ;允许串行口中断 MOV A ,R2 ; MOV SBUF,A ;先输出字符长度 SJMP $ ;等待中断 例3:查询法:串行口在工作方式3发送数据。传送的波特率为2400波特。假设发送字符的首址为20H,字符长度为50,时钟频率fosc=6MHz,试编写有关的通信程序。 主程序: MOV TMOD,#20H ;定时器T1设为方式2 MOV TL1, #0F4H ;装入定时器初值 MOV TH1, #0F4H ;8位重装值 SETB TR1 ;启动
原创力文档

文档评论(0)