燕山大学本科生毕业设计(论文)
控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。
(2)汉字的显示 汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码,每个汉字占32B,分左右两半,各占16B,左边为1、3、5??右边为2、4、6??根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加1,送第二个字节,换行按列对齐,送第三个字节??直到32B显示完就可以LCD上得到一个完整汉字[6]。
3.3 串口通信模块
3.3.1 MAX232与RS232C的说明
MAX232是由TI公司推出的一款兼容RS232C标准的芯片。由于电脑串口RS232C电平是-10V~+10V,而一般的单片机应用系统的信号电压是TTL电平0~+5V,MAX232就是用来进行电平转换的,该器件包含2驱动器、2接收器和一个电压发生器。
RS232C是美国电子工业协会EIA制定的一种串行物理接口标准。RS 是英文/推荐标准的缩写,232是标志号,C表示修改的次数。RS232C定义了数据终端设备与数据通信设备之间的物理接口标准。接口标准包括机械特性、功能特性和电气特性等方面的内容[8]。
3.3.1.1 MAX232的特性 MAX232芯片是作为与RS232C连接的重要部分,其特性有如下几点:
符合所有的RS232C技术标准。 只需要单 +5V电源供电。
片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V-。
功耗低,典型供电电流5mA。 内部集成2个RS232C驱动器。 内部集成两个RS232C接收器。
16
第3章 系统模块分析
高集成度,片外最低只需4个电容即可工作。
3.3.1.2 MAX232引脚功能 MAX232芯片是专门为电脑的RS232C标准串口设计的接口电路,使用+5V单电源供电。内部结构基本可分三个部分:第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12V和-12V两个电源,提供给RS232串口电平的需要;第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS232C数据从T1OUT、T2OUT送到电脑DP9插头;DP9插头的RS232C数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出;第三部分是供电。15脚DNG、16脚VCC。
从MAX232芯片中的两路发送接收中任选一路作为接口,要注意其发送与接收引脚对应,否则可能对器件或计算机串口造成永久性损坏。如选他T1IN接单片机的发送端TXD,则PC机、的RS232C的接收端RD一定要对应接T1OUT引脚。同时,R1OUT接单片机的接受端RXD引脚,则PC机的RS232C的发送端TD一定要对应接R1IN引脚。
3.3.1.3 RS232C的特性 在RS232C的规范中,电压值在+3V~+15V(一般使用+6V)称为“0”或“ON”。电压在-3V~-15V(一般使用-6V)称为“1”或“OFF”;计算机上的RS232C“高电位”约为9V,而“低电位”则约为-9V。
在串行通信中,数据通常是在两个站之间传送,按照数据在通信线路上的传送方向可分为3种基本的传送方式:单工、半双工和全双工。单工工作模式下,一方只能发送信号而另一方只能接收信号。半双工工作模式下,双方都可以发送和接收数据,但不可同时进行。RS232C为全双工工作模式,其信号的电压是参考地线而得到的,可以同时进行数据的传送和接收。在实际应用中采用RS232C接口,信号的传输距离可以达到15m。不过RS232C只具有单站功能,即一对一通信。在全双工方式下,通信系统的每一端都设置了发送器和接收器,因此,能控制数据同时在两个方向上传输,全双工方式无须进行方向的切换[9]。
17
燕山大学本科生毕业设计(论文)
图3-3 全双工通信工作原理图 接收 接收 发送 发送 串行通信可分为两种类型,一种是同步通信,另一种是异步通信。采用同步通信时,将所有字符组成一个组,这样,字符可以一个接一个地传输,但是,在每组信息的开始要加上同步字符,在没有信息要传输时,填上空字符,因为同步传输不允许有空隙。采用异步通信时,两个字符之间的传输间隔是任意的。所以,每个字符的前后都要用一些数据位来作为分隔位。因此,在传输率相同时,同步通信方式下的信息有效率要比异步方式高,因为同步方式的非数据信息比例比较小。但是,从另一方面看,同步方式要求进行信息传输的双方必须用同一个时钟进行协调,正是这个时钟确定了同步串行传输过程中每一个信息位的位置。所以,如果采用同步方式,在传输数据的同时,还必须传输时钟信号。而在异步方式下,接收方的时钟频率和发送方的时钟频率不必完全一样,只要比较相近,即不超过一定的允许范围。在数据传输中,广泛采用的是异步通信,异步通信的标准数据格式如图3-4所示。
一个字符帧 下一字符 空闲 起始位 数据位 校验位 停止位 空闲 起始位 LSB MSB 图3-4 异步通信的标准数据格式
18
第3章 系统模块分析
从图3-4所列格式可以看出,异步通信的特点是一个字符一个字符地传输,并且每个字符的传送总是以起始位开始,以停止位结束,字符之间没有固定的时间间隔要求。每一次有一个起始位,紧接着是5~8个的数据位,再后为校验位,可以是奇检验,可以是偶校验,也可不设置,最后是1比特,或1比特半,或2比特的停止位,停止位后面是不定长度的空闲位。停止位和空闲位都规定为高电平,这样就保证起始位开始处一定有一个下降沿,以此标识开始传送数据。
3.3.1.4 RS232C引脚功能 RS232C接口是1970年由美国电子工业协会联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。它的全名是“数据终端设备和数据通讯设备之间串行二进制数据交换接口技术标准”。该标准规定采用一个25个脚的DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。DB25的串口一般只用到的管脚只有2(RXD)、3(TXD)、7(GND)这三个,随着设备的不断改进,现在DB25针很少看到了,代替他的是DB9的接口,DB9所用到的管脚比DB25有所变化,是2(TXD)、3(RXD)、5(GND)这三个。因此现在都把RS232接口叫做DB9。
1 2 3 4 5 6 7 8 9 5 4 3 2 1 9 8 7 6 公头 母头
图3-5 串口接口
9针RS232串口引脚: CD:1脚,输入,载波侦测。 RXD:2脚,输入,接收数据。 TXD:3脚,输出,发送数据。 DTR:4脚,输出,数据终端准备。 GND:5脚,地线。
DSR:6脚,输入,数据准备好。 RTS:7脚,输出,请求发送。
19
燕山大学本科生毕业设计(论文)
CTS:8脚,输入,清除发送。 RI:9脚,输入,振铃指示。
图3-6 MAX232和RS232C与单片机的接口电路图
3.3.2 串口通信模块工作原理
单片机的串口通信中常用到SBUF,SBUF为串行口的收发缓冲器,他是一个可寻址的专用寄存器,其中包含了接收器和发送器寄存器,可以实现全双工通信。单片机的串行数据传输很简单,只要向发送缓冲器写入数据即可发送数据,从接收缓冲器读取数据即可接收数据。发送寄存器和接收寄存器,在物理结构上是完全独立的。它们都是字节寻址的寄存器,字节地址均为99H。这个重叠的地址靠读/写指令区分:串行发送时,CPU向SBUF写入数据,此时99H表示发送SBUF;串行接收时,CPU从SBUF读出数据,此时99H表示接收SBUF。串行通信SCON控制寄存器是一个可寻址的专用寄存器,用于串行数据的通信控制,其结构如表3-3所示。
表3-3 SCON寄存器结构
D7 SM0 9FH D6 SM1 9EH D5 SM2 8DH D4 REN 9CH D3 TB8 9BH D2 RB8 9AH D1 TI 99H D0 RI 98H SCON 位地址 20