当前位置:首页 > 武汉理工大学单片机课程设计_报告
武汉理工大学单片机实习报告书
自发送机的TB8,从而识别接收到的数据特征。
TI :串行口发送中断请求标志。当CPU 发送完一串行数据后,此时SBUF 寄存器为空,硬件使TI 置1,请求中断。CPU 响应中断后,由软件对TI 清零。
RI :串行口接收中断请求标志。当串行口接收完一帧串行数据时,此时SBUF 寄存器为满,硬件使RI 置1,请求中断。CPU 响应中断后,用软件对RI 清零。 电源控制寄存器PCON(见表1-3) 。
表1-3 PCON寄存器
表中各位(从左至右为从高位到低位)含义如下。
SMOD :波特率加倍位。SMOD=1,当串行口工作于方式1、2、3 时,波特率加倍。SMOD=0,波特率不变。 2. RS-232C接口
RS-232C是EIA(美国电子工业协会)1969年修订RS-232C标准。RS-232C定义了数据终端设备(DTE)与数据通信设备(DCE)之间的物理接口标准。其功能特性如图1-8所示。
图1-8 RS232C功能特性
3.80C51串行口的工作方式 一、方式0
方式0时,串行口为同步移位寄存器的输入输出方式。主要用于扩展并行输入或输出口。数据由RXD(P3.0)引脚输入或输出,同步移位脉冲由TXD(P3.1)
9
武汉理工大学单片机实习报告书
引脚输出。发送和接收均为8位数据,低位在先,高位在后。波特率固定为fosc/12。 二、方式1
方式1是10位数据的异步通信口。TXD为数据发送引脚,RXD为数据接收引脚,传送一帧数据的格式如图所示。其中1位起始位,8位数据位,1位停止位。
用软件置REN为1时,接收器以所选择波特率的16倍速率采样RXD引脚电平,检测到RXD引脚输入电平发生负跳变时,则说明起始位有效,将其移入输入移位寄存器,并开始接收这一帧信息的其余位。接收过程中,数据从输入移位寄存器右边移入,起始位移至输入移位寄存器最左边时,控制电路进行最后一次移位。当RI=0,且SM2=0(或接收到的停止位为1)时,将接收到的9位数据的前8位数据装入接收SBUF,第9位(停止位)进入RB8,并置RI=1,向CPU请求中断。
三、方式2和方式3
方式2或方式3时为11位数据的异步通信口。TXD为数据发送引脚,RXD为数据接收引脚 。
方式2和方式3时起始位1位,数据9位(含1位附加的第9位,发送时为SCON中的TB8,接收时为RB8),停止位1位,一帧数据为11位。方式2的波特率固定为晶振频率的1/64或1/32,方式3的波特率由定时器T1的溢出率决定。
四、波特率的计算
在串行通信中,收发双方对发送或接收数据的速率要有约定。通过软件可对单片机串行口编程为四种工作方式,其中方式0和方式2的波特率是固定的,而方式1和方式3的波特率是可变的,由定时器T1的溢出率来决定。
串行口的四种工作方式对应三种波特率。由于输入的移位时钟的来源不同,所以,各种方式的波特率计算公式也不相同。
方式0的波特率 = fosc/12 (公式1) 方式2的波特率 =(2SMOD/64)* fosc (公式2) 方式1的波特率 =(2SMOD/32)*(T1溢出率) (公式3) 方式3的波特率 =(2SMOD/32)*(T1溢出率) (公式4) 当T1作为波特率发生器时,最典型的用法是使T1工作在自动再装入的8位定时器方式(即方式2,且TCON的TR1=1,以启动定时器)。这时溢出率取决于TH1中的计数值。
T1 溢出率 = fosc /{12×[256 -(TH1)]} (公式5) 在单片机的应用中,常用的晶振频率为:12MHz和11.0592MHz。所以,选用的波特率也相对固定。常用的串行口波特率以及各参数的关系如表1-4所示。
10
武汉理工大学单片机实习报告书
本实习所用晶振为11.0592MHz,选用定时器1为波特率发生器工作于方式2,串口通信方式采用方式1,所以定时器1的初值为TH1=0XFD,TL1=0XFD。
表1-4 常用波特率与定时器1的参数关系表
2 仿真电路及实物调试运行图
2.1 整体电路仿真图
电路用proteus进行仿真,用两块单片机最小系统板进行实物搭建。主系统部分使用共阴极显示屏,子系统部分使用共阳极显示屏。整体电路仿真图如图3-1所示。
图3-1 整体电路仿真图
11
武汉理工大学单片机实习报告书
2.2 实物运行结果
1)给单片机上电后,单片机显示如下。如图3-2所示
图3-2 数码管初始显示
2) 按下数字键3,进行十进制数的输入。此时数码管显示结果如图3-3所示。
图3-3 数据输入初始显示图
12
共分享92篇相关文档