1、兰州理工大学电信学院兰州理工大学电信学院 第十章 串行通信 1 串行通信是指利串行通信是指利用一条传输线将数用一条传输线将数据一位一位地按顺据一位一位地按顺序分时传输。当传序分时传输。当传送一字节的数据时,送一字节的数据时,8位数据通过一条线位数据通过一条线分分8个时间段发出,个时间段发出,发出顺序一般是由发出顺序一般是由低位到高位。低位到高位。并行通信是指利并行通信是指利用多根传输线将多位用多根传输线将多位数据同时进行传送。数据同时进行传送。一字节的数据通过一字节的数据通过8条传输线同时发送。条传输线同时发送。2图图10.1串行通信与并行通信的示意图串行通信与并行通信的示意图 10.1 2异
2、步串行通信 串行通信系统中为了使收发数据正确,收发两端操作必须相互协调,即收发在时间上应同步。同步方式有两种:异步串行通信ASYNC(Asynchronous Data Communication)和同步串行通信SYNC(Synchronous Data Communication)。异步传送是计算机通信中常用的串行通信方式。异步是指发送端和接收端不使用共同的时钟,也不在数据中传送同步信号。在这种方式下,收方与发方之间必须约定数据帧格式和波特率。1.数据帧格式数据帧格式 图图10.2为异步传送的数据帧格式。每帧包括:为异步传送的数据帧格式。每帧包括:1个起始位(低电平)、个起始位(低电平)、5
3、8个数据位、个数据位、1个可选的个可选的奇偶校验位、奇偶校验位、12个终止位(高电平)。个终止位(高电平)。相邻两个数据帧之间的间隔称为空闲位,长度任意,相邻两个数据帧之间的间隔称为空闲位,长度任意,为高电平。由高电平变为低电平就是起始位,后面紧跟的为高电平。由高电平变为低电平就是起始位,后面紧跟的是是58位有效数据位。传送时数据的低位在前、高位在后。位有效数据位。传送时数据的低位在前、高位在后。数据的后面跟奇偶校验位(可选),结束是高电平的终止数据的后面跟奇偶校验位(可选),结束是高电平的终止位(位(12位)。起始位至停止位构成一帧。下一数据帧的位)。起始位至停止位构成一帧。下一数据帧的开始
4、又以下降沿为标志,即起始位开始。通常开始又以下降沿为标志,即起始位开始。通常58位数据位数据可表示一个字符,如可表示一个字符,如ASCII码就是码就是7位。位。5图10.2异步通信的数据帧格式 2.波特率波特率(Baud Rate)波特率是衡量串波特率是衡量串行数据传送速度行数据传送速度的参数,是指单的参数,是指单位时间内传送二位时间内传送二进制数据的位数,进制数据的位数,以位秒为单位,以位秒为单位,也称为波特。也称为波特。常用的波特率有常用的波特率有50、75、100、110、150、300、600、1 200、2 400、4 800、9 600、19200。7 例题例题 设数据帧为设数据帧
5、为1位起始位、位起始位、1位位终止位终止位,7位数据位、位数据位、1位奇偶校验位,传位奇偶校验位,传送的波特率为送的波特率为1 200。用。用7位数据位代表位数据位代表一个字符,求最高字符传送速度。一个字符,求最高字符传送速度。答:答:1 200(位秒)(位秒)/10(位)(位)120(字符秒)(字符秒)810.13同步串行通信 同步传送要求对传送的每一位在收发两端保持严格同步,发送、接收端可使用同一时钟源以保证同步,或在发送端采用某种编码方式,在收端将时钟恢复。图10.3某种同步串行通信的数据格式 910.1.4串行通信中的数据传送模式 10 如果直接以逻辑电平表示的数字信号进行传送,由于其
6、频谱很宽,需要的通信线路的频带也就很宽。在进行远程数据通信时,通信线路往往是借在进行远程数据通信时,通信线路往往是借用现有的公用电话网或其他通信网络。而现有的用现有的公用电话网或其他通信网络。而现有的通信网的带宽是一定的,如电话线路的带宽是通信网的带宽是一定的,如电话线路的带宽是3.4 kHz,因此不合适直接传输二进制数据。为了利用因此不合适直接传输二进制数据。为了利用电话线传输数字信号,必须采取一些措施,把数电话线传输数字信号,必须采取一些措施,把数字信号转换为适合传输的模拟信号,而在接收端字信号转换为适合传输的模拟信号,而在接收端再将其转换成数字信号。再将其转换成数字信号。11 图10.5
7、调制和解调 DOS系统功能调用和BIOS中断调用;汇编语言上机调试过程;可编程串行接口芯片。8086/8088的引脚功能;的引脚功能;8086的两种工作模式;的两种工作模式;8086的存储器组织;的存储器组织;8086的总线操作和时序;随的总线操作和时序;随机存储器机存储器RAM;只读存储器;只读存储器ROM;常用;常用I/O接口接口芯片;通信基本概念。芯片;通信基本概念。计算机基础知识;计算机硬件基本结构;计算机工作原理;8088/8086微型计算机系统的组成及工作原理;8086的寻址方式和指令系统及程序设计;CPU与存储器的连接;存储器空间的分配;中断技术;输入输出技术;可编程芯片8253
8、、8255及应用;模数、数模转换器及其应用。4.选学部分选学部分:DMA控制器8237A;通用可编程串行通信接口芯片8251;高性能微处理器;总线标准。AL=50H(或80)BL=28H(或40)程序分析题 1 MOV AL,10 ADD AL,AL SHL AL,1 MOV BL,AL ADD AL,BL 问:AL=BL=152.MOV BX,00FFH AND BX,0FFFH OR BX,0F0FH XOR BX,00FFH问:BX 0F00H3.XOR AX,AX MOV BX,2 MOV CX,10 LP:ADD AX,BX ADD BX,2 LOOP LP HLT(1)该程序的功能
9、是什么?(2)程序执行后,AX BX CX求220间的偶数和。(完成累加求和,即求:2+468101214161820)。110 22 0 174.MOV CL,4 SHL A,CL MOV CL,2 SHR B,CL 若A、B为字类型变量,上述程序段的功能是什么?将存储单元A中的字变量内容左移4位,将存储单元B中的字变量数据右移2位(移位后的空位补零)。185.MOV AL,A MUL B MOV C,AX 以上程序段的功能是什么?将A单元内容与B单元内容相乘,其积存在C单元开始的连续两个字节中,高位在高字节中。196.MOV AX,A AND AX,0FF0H MOV A,AX OR A,
10、000FH 以上程序段的功能是什么?将字变量A的高4位置0,将其低4位置1,其余各位不变。7.MOV AL,A MOV CL,4 SHR AL,CL OR AL,30H MOV C,AL MOV AL,A AND AL,0FH OR AL,30H MOV B,AL 以上程序段的功能是什么?以上程序段的功能是什么?将存储单元A中两个压缩的BCD码数转换成2个ASCII码,高位ASCII码放在C单元中,低位ASCII码放在B单元中。21 程序功能是计算程序功能是计算110的累加和。的累加和。AX=10,BX47H,CX=0。8.MOV AX,00H MOV BX,10H MOV CX,10 LP:
11、INC AX ADD BX,AX LOOP LP HLT 以上程序段的功能是什么?程序执行完以上程序段的功能是什么?程序执行完后,后,AX、BX、CX各为多少?各为多少?229.XOR AX,AX MOV AX,6C5AH MOV CX,0203H RCL AH,CL XCHG CH,CL RCR AL,CL HLT 程序执行后,AX内容为多少?CF为何值?AX=6156H,CF=1 23 10.MOV AX,1234H MOV BX,AX NEG BX ADD AX,BX HLT 上述程序段执行完后,上述程序段执行完后,AX、BX和和CF各为何值?各为何值?AX=0,BX0EDCCH,CF1
12、241.AX中有一个无符号数,若其值小于中有一个无符号数,若其值小于100,就加就加100;若其值大于等于;若其值大于等于100,就减,就减50,但,但计算结果仍保存在计算结果仍保存在AX中。在下面程序段每一中。在下面程序段每一空白处填上一条适当指令,以实现其功能。空白处填上一条适当指令,以实现其功能。CMP AX,100 SUB AX,50 PP:ADD AX,100 DONE:HLTJC PPJMP DONE程序填空题 25 2.下面程序段判断A单元的值,并根据其值是负数、0或正数,分别将0FFH,00H,01H送入AL中。在空白处填入适当指令。MOV AL,A CMP AL,0 JZ S
13、YM MOV AL,OFFH JMP DONE SYM:MOV AL,1DONE:HLT JZ DONE 或JE DONETEST AL,80H 或AND AL,80H263.对于符号函数 010001当当当XXXY MOV AL,X CMP AL,0 MOV Y,1 AA:JL BB MOV Y,0 BB:MOV Y,0FFH DONE:HLT请在下面程序段中每一空白处填上一条适当指令,实现符号函数功能。JLE AA JMP DONE JMP DONE 27 4在AL,BL,CL中有三个有符号数,在程序段的每个空白处填上一条适当指令,使三个数由小到大依次放在AL,BL和CL中。CMP AL,BL XCHG AL,BL LP1:CMP AL,CL JLE LP2 LP2:CMP BL,CL XCHG BL,CL DONE:HLTJLE LP1 XCHG AL,CL JLE DONE 28 5.在AL中有一个十六进制数的ASCII码,完成下面程序段在每一空白处填上一条适当指令,实现将AL中的ASCII码转换成二进制数。CMP AL,3 AH SUB AL,7 DONE:HLTJC DONESUB AL,30H 293031323334353637383940414243