资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第一章 基础知识,第九章,彩色图形适配器及其编程,91 串行通讯口IO,在现实生活和工作中,常会有将两台计算机实现资源共享和数据交换的要求。微机双机直接通讯的方法有很多种,根据两台微机的距离远近,可分为,近程通讯,和,远程通讯,,如果两台通讯的微机在同一间屋内或相距在几十米到一两百米内,称为近程通讯;如果两台微机相距在几百米到几千米甚至更远,则把它们之间的通讯称为远程通讯。,由于计算机通讯的广泛应用,串行接口已成为个人计算机必备的部件,,IBM PC,机内装有通讯适配器板,这使得,PC,机可以和其它配有串行通讯接口的计算机或设备进行通讯。,串行接口每次由,CPU,得到,8,位的数据,,,然后串行地通过一条线路,每次发送一位将该数据发送出去,。,最常用于个人计算机上的串行接口是标准的,RS,一,232,串行接口,它装于,PC,机内的通讯适配器板上。这个标准串行接口既可用于近程或远程的数据通讯,每个系统中可以有两个或多个串行控制器连接到不同的外设上,如,IBM PC,可连接两个串行接口,(COM1,和,COM2),,但是程序每次只能对一个串口进行存取。,第一章 基础知识第九章 彩色图形适配器及其编程91,1,第一章 基础知识,第九章,彩色图形适配器及其编程,两台,PC,机或设备进行近距离通讯时,可直接将它们连接。当它们进行远距离通讯时,要使用调制解调器,(MODEN),连接到电话线上,因为,RS,一,232,标准串行接口输出的是电压信号,不能直接接到电话线上,调制解调器把代表逻辑,1,和逻辑,0,的电压信号转换成能在电话线上传输的不同频率的信号:电话线另一端的调制解调器又把这些不同频率的信号转换成接口要求的电压信号。左图为两种连接方式的示意图。,串口的连接方式,第一章 基础知识第九章 彩色图形适配器及其编程 两台P,2,第一章 基础知识,第九章,彩色图形适配器及其编程,串口的典型结构,许多外部设备和计算机是按照串行方式来进行通信的。即数据是1位1位进行传输的,在传输过程中,每1位数据都占据一个固定的时间长度。这种情况下,就要用串行接口把这个外部设备连接到总线上。,当前,可编程的串行接口有许多种。左图是串行接口部件的典型结构,从图中可以看到,串行接口部件内部有,4,个主要寄存器,即控制寄存器、状态寄存器、数据输入寄存器和数据输出寄存器,。,第一章 基础知识第九章 彩色图形适配器及其编程串口的典型,3,第一章 基础知识,第九章,彩色图形适配器及其编程,控制寄存器,用来容纳,CPU,送给此接口的各种控制信息,而控制信息决定接口的工作方式。,状态寄存器,的各位叫状态位,每一个状态值都可以用来指示传输过程中的某一种错误或者当前传输状态。,数据输入寄存器,总是和串行输入并行输出移位寄存器配对使用的。在输入过程中,数据,1,位,1,位从外部设备进入接口的,移位寄存器,,当接收完,1,个字符以后,数据就从移位寄存器送到数据输入寄存器,再等待,CPU,来取走。,数据输出寄存器,和并行输入串行输出,移位寄存器,配对使用。当,CPU,往数据输出寄存器中输出,1,个数据后,数据使传输到移位寄存器,然后,1,位,1,位地通过输出线送到外设。,CPU,可以访问串行接口中的,4,个主要寄存器。从原则来说,对这,4,个寄存器可以通过不同的地址来访问,不过,因为控制寄存器和数据输出寄存器是只写的,状态寄存器和数据入寄存器是只读的,所以,可以用读信号和写信号来区分这两组寄存器,再用,1,位地址来区分,2,个只读寄存器或,2,个只写寄存器。,第一章 基础知识第九章 彩色图形适配器及其编程控制寄存器,4,第一章 基础知识,第九章,彩色图形适配器及其编程,九针串口线的连接方式,9针串行口的针脚功能。,:针脚 功能针脚功能:1载波检测(DCD)6 数据准备好(DSR):2接受数据(RXD)7 请求发送(RTS):3发出数据(TXD)8 清除发送(CTS):4数据终端准备好(DTR)9 振铃指示(RI):5信号地线(SG),通讯电缆制作原理:,:串行通讯电缆的制作方法:其串行通讯电缆连接时都遵循下列对接关系::SGSG:TXDRXDRXDTXD:RTSCTSCTSRTS:DTRDSRDSRDTR:根据上述对接关系,就可以非常方便地连接串行通讯电缆。,第一章 基础知识第九章 彩色图形适配器及其编程九针串口线,5,第一章 基础知识,第九章,彩色图形适配器及其编程,注意事项,注意事项,::为了保证传输的信号正确、完整,导线的长度最好不要超过2米;并且宜选用计算机专用电缆。:导线必须焊接到所对应的位置,焊头连接必须牢固,并且注意不要短路。:对于串行通讯电缆,也可使用9针到25针转换接头来连接其中的一个或两个串口。:电脑商店也有卖“串口通讯电缆”和“并口通讯电缆”的,购买时要注意弄清楚是微机与微机相连的还是微机与外设相连的,这两种线的内部接法有点不同,弄错了会造成通讯失败。:不用于连接电缆的接头(如1、9接头等)宜悬空。这一点对于自己改造从电脑商店买来的所谓“串行通讯电缆”和“并行通讯电缆”尤其重要。:并口线不可能太长,串口线速率又较慢。因此本法所制电缆只适合于那些放得很近并有空闲串并口的微机。对于随身携带笔记本电脑要与其它计算交换数据的用户,本法最适合。,把串行或并行电缆两端插到两台机器对应端口上,还不能立即进行数据通讯,还必须有通讯软件的支持。,第一章 基础知识第九章 彩色图形适配器及其编程注意事项注,6,第一章 基础知识,第九章,彩色图形适配器及其编程,DOS,串行通讯口功能,串行通讯接口为辅助设备,DOS中断操作如下,。,读取操作:INT 21H的功能03H是从捕助设备(第一个串行口COM1)读一个字符到寄存器AL。,发送操作:功能04H将DL寄存器中的字符传送给串行设备,如果输出设备正忙,该功能调用等待,直到设备准备好接收字符。,注意:在多数,DOS,系统中,串行设备没有缓冲和中断,如果串行通讯口或其它辅助设备送的数据比程序处理数据快,字符可能丢失。在,PC,系统中,第一个串行口,COM1,被初始化为,2400,波特(,所谓传输率就是指每秒传输多少位,传输率也常叫波特率。,),无奇偶校验位,,1,个终止位和,8,位数据。其它机器上的,DOS,实现可能有不同的初始化。,第一章 基础知识第九章 彩色图形适配器及其编程DOS串行,7,第一章 基础知识,第九章,彩色图形适配器及其编程,注意:,DOS,没有提供读辅助设备的状态和检测,I,O,错误,(,如丢失字符等,),的功能,但,ROM,中,BIOS INT 14H,提供了这些功能。,第一章 基础知识第九章 彩色图形适配器及其编程 注意:D,8,第一章 基础知识,第九章,彩色图形适配器及其编程,BIOS,串行通讯口功能,IBM PC的BIOS,串行通讯提供如下操作:,通过,INT 14H,调用,ROM BIOS,串行通讯口例行程序。该例行程序包括将串行口初始化为指定的字节结构和传输速率,检查控制器的状态,读写字符等功能。,第一章 基础知识第九章 彩色图形适配器及其编程BIOS串,9,第一章 基础知识,第九章,彩色图形适配器及其编程,INT 14H AH,0,功能,把指定的串行通讯口初始化为希望的波特率,奇偶性,字长和终止位的位数。这些初始化参数设置在,AL,寄存器。其各位的含义如下图所示。,第一章 基础知识第九章 彩色图形适配器及其编程INT 1,10,第一章 基础知识,第九章,彩色图形适配器及其编程,例,要求,0,号通讯口的传输率为,2400,波特,字长为,8,位,,1,位终止位,无奇偶校验,串口通讯中的错误检测功能,在接口设计中,常常要考虑对错误的检测问题。当前多数可编程接口,一般能检,测下列两类错误。,一类是传输错误。因为接口和设备之间的连线常常受噪声干扰,从而引起传线错误,,所以一般传输信息时,接口采用奇偶校验位对传输错误进行检测。传输时,如果用,奇,校验,,那么使信息中1的数目(包括校验位)为奇数。也就是说,所传输的数据中如果,1的个数为奇数则使校验位为0,所传输的数据中如果1的个数为偶数则使校验位,为1,这样,在传输一个数据时,1的总数目总是为奇数。同样的道理,如果用偶校验,那么,信息中1的数目(包括校验位)为偶数。,接口在传输过程中,对信息校验之后,,如果发现有错误,则对状态寄存器中的相应位进行设置。而状态杏存器的内容可以通过,程序进行读取和检测。,第一章 基础知识第九章 彩色图形适配器及其编程例 要,11,第一章 基础知识,第九章,彩色图形适配器及其编程,另一类是复盖错误。我们知道,当计算机输入数据时,实际上是从接口的输入缓冲寄存,器中取数。如果计算机还没有取走数据,输入缓冲寄存器由于某种原因又被装上了新的数据,那么,就全产生一个复盖错误。在输出时,也会有类似的情况。,返回参数中通讯口状态字节各位置,1,的含义如下图,所示:,在接收和发送过程,错误状态位,(1,,,2,,,3,,,4,位,),一旦被置为,1,,则读入的接收数据已不是有效数据,所以在串行通讯应用程序中,应检测数据传输是否出错。,第一章 基础知识第九章 彩色图形适配器及其编程另一类是复,12,第一章 基础知识,第九章,彩色图形适配器及其编程,状态错误信息,奇偶错;通信线上(尤其是用电话线传输时)的噪音引起某些数据位的改变,产生奇偶错通常检测出奇偶错时,要求正在接收的数据至少应重新发送一段。,超越错:在上一个字符还未被处理机取走,又有字符要传送到数据寄存器里,则会引起超越错。如果处理机处理字符的速度小于串行通讯口的波持率,则会产生这种错误。,帧格式错:当接收发送器未接收到一个字符数据的停止位,则会引起帧格式错。这种错误可能是由于通信线上的噪音引起停止位的丢失,或者是由于接收方和发送方初始化不匹配。,间断;间断有时候并不能算是一个错误,而是为某些特殊的通讯环境设置的“空格”状态。当间断位为1时,说明接收的“空格”状态超过了一个完整的数据字传输时间。,第一章 基础知识第九章 彩色图形适配器及其编程状态错误信,13,第一章 基础知识,第九章,彩色图形适配器及其编程,例,从通讯口,0,读入字符并把它们显示出来,如果字符没有准备好则等待,如果传送有错则显示出错信息“,?,”。,第一章 基础知识第九章 彩色图形适配器及其编程例,14,第一章 基础知识,第九章,彩色图形适配器及其编程,9.2 显示器I/O,显示器是计算机系统的基本显示设备。显卡VGA的色彩表现能力、编程方便性和显示速度等性能都直接影响显示性能。,当前流行的都是高分辨率(分辨率为1024768、12801024等)Super VGA显示器。,本节主要介绍VGA及其以上的Super VGA显示器原理和基本I/O操作控制方法。,显示器任一时刻都必须工作在,某一显示模式下,,显示模式分为两大类:,文本模式,图形模式,文本显示模式,I/O,文本模式,:由一屏所能显示字符的行、列数及字符属性确定。,例如,,文本模式3,:80(列)25(行)彩色文本显示模式,显存,中保存着当前正显示的一整屏图像数据,VGA在,显存,与,屏幕,之间建立了一种自动映射关系,只要,向显存写入显示数据,,屏幕上将,立刻显示出字符或图形,。,第一章 基础知识第九章 彩色图形适配器及其编程9.2,15,实际上显存又被映射到主机系统的,一段内存地址空间,上,这段内存地址空间称为,视频缓冲区,。,彩色文本模式下,视频缓冲区首地址为,B800:0000H,。,程序,读写视频缓冲区,,就等效于,读写显存,。,屏幕上每个显示字符都对应,视频缓冲区,中的,两个字节单元,:,第一个单元存显示字符的,ASCII码,第二个单元存该显示字符的,属性,分辨率越高的显示模式需占用的视频缓冲区存储空间越大。,1),字符属性,字符的属性确定了该字符的显示方式:显示,字符的颜色,、,背景颜色,及是否,闪烁、高亮度,。,next,实际上显存又被映射到主机系统的一段内存地址空
展开阅读全文