预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共16页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

目录引言11设计任务与目的21.1设计任务:21.2设计目的:22串口通信原理22.1串行口工作原理22.3方案论证43硬件设计63.1AT89S52最小系统63.3LCD显示电路73.4max232电平转换电路84软件设计94.1主程序流程图94.2LCD显示函数104.3键盘函数105系统调试115.1硬件调试115.2软件调试116结论11参考文献12引言51单片机内部有一个全双工串行接口。什么叫全双工串口呢?一般来说只能接受或只能发送的称为单工串行;既可接收又可发送但不能同时进行的称为半双工;能同时接收和发送的串行口称为全双工串行口。串行通信是指数据一位一位地按顺序传送的通信方式其突出优点是只需一根传输线可大大降低硬件成本适合远距离通信。其缺点是传输速度较低。在国内外以PC机作为上位机单片机作为下位机的控制系统中PC机通常以软件界面进行人机交互以串行通信方式与单片机进行积极交互的技术得到越来越大的重视和越来越广泛的应用。LCD显示技术是一门新兴的显示技术相对于LED显示LCD显示有节能能显示的更多以及更高端等优点。本次课程设计选用串行通信和LCD显示来进一步加深我们对于单片机的理解。1设计任务与目的1.1设计任务:(1)下位机选用89S51或89S52单片机;(2)下位机接收上位机的数据并显示在LED或LCD上(3)下位机显示数据可以显示固定数据、以为数据、循环移位;(4)硬件要求:制作串口线和下位机及外围电路;(5)软件要求:keilc或汇编编程设计串口调试助手或labview串口通信编程。1.2设计目的:(1)通过串口实现下位机与上位机之间的相互通信。(2)通过设计将串口通信的各种方式进行进一步的了解。(3)将接收的数字与发送的数字在LCD上进行显示从而熟悉液晶显示屏LCD1602的具体操作。(4)熟练掌握C语言在单片机上的编程应用。(5)将各学科之间的的知识进行综合运用并能够实现所需的功能设计。2串口通信原理串行通信是CPU与外界交换信息的一种基本通信方式。通信时仅需一到两根传输线且每次只能传送一位适用于长距离传输但速度较慢。MCS—51串行口是一个可编程的全双工串行通信接口其对应的引脚为P3.0(10脚)和P3.1(11脚)分别为RXD和TXD通过软件编程它可以作通用异步收发器用也可以做同步移位寄存器使用其帧格式有8位、10位和11位3种并能设置各种波特率。MCS—51串行口有两个独立的缓冲器即发送缓冲器和接收缓冲器且共用一个地址99H(SBUF)。同时MSC—51串行口可以用软件设置成4种不同的工作方式。2.1串行口工作原理通过对特殊功能寄存器—串行口控制寄存器中SM0、SM1两位的操作MCS—51单片机串口通信工作方式有4种与串行口有关的特殊功能寄存器有串行口控制寄存器SCON、电源控制寄存器PCON和定时器T1主要确定了串口通信的工作方式和波特率的计算方法。(1)串行口数据缓冲器SBUFSBUF是两个在物理上相互独立的接收发送缓冲器可同时发送接收数据两个缓冲器共用一个字节地址为99H可字节寻址不可位寻址复位值为00H。可通过编程对SBUF的读写来区别是对接收缓冲器的操作还是对发送缓冲器的操作。CPU写SBUF就是修改发送缓冲器;CPU读SBUF就是读接收缓冲器在硬件结构上串行口对外有两条独立的收发信号线RXD和TXD因此可以同时发送接收数据实现全双工传送。(2)串行口控制寄存器SCONSCON寄存器用于确定串行通信的工作方式、接收和发送控制、串行口的中断状态标志它既可以是字节寻址也可以是位寻址字地址为98H其复位值为00H。SM0SM1—工作方式控制位可构成4种通信工作方式分别为:方式0-同步移位寄存器;方式1-10位异步收发;方式2-11位异步收发;方式3-11位异步收发。SM2—多机通信控制位用于主一从式多机通信控制因多机通信是在方式2和方式3下进行因此SM2位主要用于方式2和方式3。若SM2=1则允许多机通信。若SM2=0则不属于多机通信情况接收到一帧数据后无论第9位(D8)是0还是1都置中断标志RI=1接收到的数据装入接收/发送缓冲器(SBUF)中。在工作方式1时若SM2=1则只有接收到有效停止位时中断标志RI才置1以便接收下一帧数据;在工作方式0时SM2必须为0。REN—允许接收控制位用软件置1或清零REN=1允许接收;REN=0禁止接收。TB8—发送数据位8在方式2和方式3时TB8是要发送的第9位数据。在多机通信中以TB8位的状态表示主机发送的是地址还是数据:TB8=0为数据TB8=1为地址该位由软件置位或清零此外该位还可以作为数据的奇偶检验位。RB8—接收数据位8在工作方式2和工作方式3