欢迎来到天天文库
浏览记录
ID:15595344
大小:306.71 KB
页数:17页
时间:2018-08-04
《基于串口通信的lcd显示》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、目录引言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参考文献1216引言51单片机内部有一个全双工串行接口。什么叫全双工串口呢?一般来说,只能接受或只能发送的称为单工串行;既可接收又可发送,但不能同时进行的称为半双工
2、;能同时接收和发送的串行口称为全双工串行口。串行通信是指数据一位一位地按顺序传送的通信方式,其突出优点是只需一根传输线,可大大降低硬件成本,适合远距离通信。其缺点是传输速度较低。在国内外,以PC机作为上位机,单片机作为下位机的控制系统中,PC机通常以软件界面进行人机交互,以串行通信方式与单片机进行积极交互的技术得到越来越大的重视和越来越广泛的应用。LCD显示技术是一门新兴的显示技术,相对于LED显示,LCD显示有节能,能显示的更多以及更高端等优点。本次课程设计选用串行通信和LCD显示来进一步加深我们对于单片
3、机的理解。161设计任务与目的1.1设计任务:(1)下位机选用89S51或89S52单片机;(2)下位机接收上位机的数据并显示在LED或LCD上(3)下位机显示数据可以显示固定数据、以为数据、循环移位;(4)硬件要求:制作串口线和下位机及外围电路;(5)软件要求:keilc或汇编编程设计,串口调试助手或labview串口通信编程。1.2设计目的:(1)通过串口实现下位机与上位机之间的相互通信。(2)通过设计将串口通信的各种方式进行进一步的了解。(3)将接收的数字与发送的数字在LCD上进行显示,从而熟悉液晶显
4、示屏LCD1602的具体操作。(4)熟练掌握C语言在单片机上的编程应用。(5)将各学科之间的的知识进行综合运用,并能够实现所需的功能设计。2串口通信原理串行通信是CPU与外界交换信息的一种基本通信方式。通信时仅需一到两根传输线,且每次只能传送一位,适用于长距离传输,但速度较慢。MCS—51串行口是一个可编程的全双工串行通信接口,其对应的引脚为P3.0(10脚)和P3.1(11脚),分别为RXD和TXD,通过软件编程它可以作通用异步收发器用,也可以做同步移位寄存器使用,其帧格式有8位、10位和11位3种,并能
5、设置各种波特率。MCS—51串行口有两个独立的缓冲器,即发送缓冲器和接收缓冲器,且共用一个地址99H(SBUF)。同时,MSC—51串行口可以用软件设置成4种不同的工作方式。2.1串行口工作原理通过对特殊功能寄存器—串行口控制寄存器中SM0、SM1两位的操作,MCS—51单片机串口通信工作方式有4种,与串行口有关的特殊功能寄存器有串行口控制寄存器SCON、电源控制寄存器PCON和定时器T1,主要确定了串口通信的工作方式和波特率的计算方法。(1)串行口数据缓冲器SBUFSBUF是两个在物理上相互独立的接收,发
6、送缓冲器,可同时发送,接收数据,两个缓冲器共用一个字节地址,为99H,可字节寻址,不可位寻址,复位值为00H。可通过编程对SBUF的读写来区别是对接收缓冲器的操作还是对发送缓冲器的操作。CPU写SBUF,就是修改发送缓冲器;CPU读SBUF,就是读接收缓冲器,在硬件结构上,串行口对外有两条独立的收发信号线RXD和TXD,因此可以同时发送,接收数据,实现全双工传送。(2)串行口控制寄存器SCON16SCON寄存器用于确定串行通信的工作方式、接收和发送控制、串行口的中断状态标志,它既可以是字节寻址,也可以是位寻
7、址,字地址为98H,其复位值为00H。SM0,SM1—工作方式控制位,可构成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)中。在工作方
8、式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为地址,该位由软件置位或清零,此外,该位还可以作为数据
此文档下载收益归作者所有