版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第八章第八章 8051单片机的并行口和单片机的并行口和串行口原理及应用串行口原理及应用 并行传送方式与串行传送方式并行传送方式与串行传送方式 计算机的数据传送共有两种方式计算机的数据传送共有两种方式 并行数据传送和串并行数据传送和串行数据传送。行数据传送。 并行传送方式(并行传送方式(parallel communication) 在数据传输时,如果一个数据编码字符的所有各位都在数据传输时,如果一个数据编码字符的所有各位都同时发送、并排传输,又同时被接收,则将这种传送方式同时发送、并排传输,又同时被接收,则将这种传送方式称为并行传送方式。称为并行传送方式。 串行传送方式串行传送方式 (seri
2、al communication) 在数据传输时,如果一个数据编码字符的所有各位不在数据传输时,如果一个数据编码字符的所有各位不是同时发送,而是按一定顺序,一位接着一位在信道中被是同时发送,而是按一定顺序,一位接着一位在信道中被发送和接收,则将这种传送方式称为串行传送方式。串行发送和接收,则将这种传送方式称为串行传送方式。串行传送方式的物理信道为串行总线。传送方式的物理信道为串行总线。并行与串行通信 0 1 0 0 1 0 0 1D0D1D2D3D4D5D6D7状态控制(选通)计算机计算机(或外设) 0 1 0 0 1 0 0 1(a)8T计算机计算机计算机(或外设)(b).8.0 8051的
3、并行口原理8.0.1 并行输入并行输入/输出端口概述输出端口概述 80C51共有四个共有四个 8位的并行双向口,计有位的并行双向口,计有 32根输入输出(根输入输出(I/O)口线。各)口线。各口的每一位均由锁存器、输出驱动器和输入缓冲器所组成。由于它们在结构口的每一位均由锁存器、输出驱动器和输入缓冲器所组成。由于它们在结构上的一些差异,故各口的性质和功能也就有了差异。上的一些差异,故各口的性质和功能也就有了差异。 其位置及它们之间的异同如下图和表所示:其位置及它们之间的异同如下图和表所示:8.0.2 P0口口 P0口是一个多功能的口是一个多功能的8位口,可以字节访问也可位访问,其位口,可以字节
4、访问也可位访问,其字节访问地址为字节访问地址为80H,位访问地址为,位访问地址为80H87H。 位结构原理:位结构原理: P0P0口位结构原理图见下图所示。口位结构原理图见下图所示。 u P0口中一个多路开关:多路开关的输入有两个,地口中一个多路开关:多路开关的输入有两个,地址数据输出;输出锁存器的输出址数据输出;输出锁存器的输出/Q。多路开关的输出。多路开关的输出用于控制输出用于控制输出FET Q0的导通和截止。多路开关的切换由的导通和截止。多路开关的切换由内部控制信号控制。内部控制信号控制。u P0口的输出上拉电路:口的输出上拉电路:I/O口的上拉电路导通和截止口的上拉电路导通和截止受内部
5、控制信号和地址数据信号共同(相受内部控制信号和地址数据信号共同(相“与与”)来)来控制。控制。u 当内部信号置当内部信号置1时,多路开关接通地址数据输出端时,多路开关接通地址数据输出端。当地址数据输出线置当地址数据输出线置1 1时,时,控制上拉电路的控制上拉电路的“与与”门输出为门输出为1 1,上拉上拉FETFET导通,同时地址数据输出通过反相器输出导通,同时地址数据输出通过反相器输出0 0,控制下,控制下拉拉FETFET截止,这样截止,这样A A点电位上拉,点电位上拉,地址数据输出线为地址数据输出线为“1”1”。当地址数据输出线置当地址数据输出线置0 0时,时,“与与”门输出为门输出为0 0
6、,上拉,上拉FETFET截止,截止,同时地址数据输出通过反相器输出同时地址数据输出通过反相器输出1 1,控制下拉,控制下拉FETFET导通,这导通,这样样A A点电位下拉,点电位下拉,地址数据输出线为地址数据输出线为“0”0”。 通过上述分析可以看出,此时的输出状态随地址数据线通过上述分析可以看出,此时的输出状态随地址数据线而变。因此,而变。因此,P1P1口可以作为地址口可以作为地址/ /数据复用总线使用。这时上数据复用总线使用。这时上下两个下两个FETFET处于反相,构成了推拉式的输出电路,其负载能力处于反相,构成了推拉式的输出电路,其负载能力大大增加。此时的大大增加。此时的P0P0口相当一
7、个双向口。口相当一个双向口。u 由于内部控制信号为由于内部控制信号为0 0,与门关闭,上拉,与门关闭,上拉FETFET截止,形成截止,形成P0P0口的输出电路为漏极开路输出;口的输出电路为漏极开路输出;u P0 P0口作为普通口作为普通I/OI/O口使用:口使用: 输出锁存器的输出锁存器的Q端引至下拉端引至下拉FET栅极,因此栅极,因此P0口的输出状口的输出状态由下拉电路决定。态由下拉电路决定。 在在P0口作输出口用时,若口作输出口用时,若P0.i 输出输出1,输出锁存器的,输出锁存器的Q端为端为0,下拉下拉FET截止,这时截止,这时P0.iP0.i为漏极开路输出;若为漏极开路输出;若P0.i
8、P0.i输出输出0,输出,输出锁存器的锁存器的Q端为端为0,下拉,下拉FET导通,导通,P0.iP0.i输出低电平。输出低电平。 在在P0口作输入口用时,为了使口作输入口用时,为了使P0.i 能正确读入数据,必须先能正确读入数据,必须先使使P0.i置置1。这样,下拉这样,下拉FET也截止,也截止,P0.i 处于悬浮状态。处于悬浮状态。A点点的电平由外设的电平而定,通过输入缓冲器读入的电平由外设的电平而定,通过输入缓冲器读入CPU。这时。这时P0口相当于一个高阻抗的输入口。口相当于一个高阻抗的输入口。 P0 P0口的功能总结口的功能总结 作作IO口使用。口使用。 相当于一个真正的双向口:输出锁存
9、、输入缓冲,但输入相当于一个真正的双向口:输出锁存、输入缓冲,但输入时需先将口置时需先将口置1;每根口线可以独立定义为输入或输出。它具;每根口线可以独立定义为输入或输出。它具有双向口的一切特点。有双向口的一切特点。 与其它口的区别是,与其它口的区别是,输出时为漏极开路输出,与输出时为漏极开路输出,与NMOS的的电路接口时必须要用电阻上拉,电路接口时必须要用电阻上拉,才能有高电平输出;输入时才能有高电平输出;输入时为悬浮状态,为一个高阻抗的输入口。为悬浮状态,为一个高阻抗的输入口。 作地址数据复用总线用。作地址数据复用总线用。 此时此时P0口为一个准双向口。但是有上拉电阻,作数据输入口为一个准双
10、向口。但是有上拉电阻,作数据输入时,口也不是悬浮状态。作数据总线用时,输入输出时,口也不是悬浮状态。作数据总线用时,输入输出8位数位数据据D0D7;作地址总线用时,输出低;作地址总线用时,输出低8位地址位地址A0A7。当。当P0口作地址数据复用总线用之后,就再也不能作口作地址数据复用总线用之后,就再也不能作IO口使用口使用了。了。 P1口是一个口是一个8位口,可以字节访问也可按位访问,其字节访位口,可以字节访问也可按位访问,其字节访问地址为问地址为90H,位访问地址为,位访问地址为90H97H。 位结构和工作原理位结构和工作原理 P1口的位结构如下图所示。口的位结构如下图所示。8.0.3 P1
11、口口包含输出锁存器、输入缓冲器包含输出锁存器、输入缓冲器BUF1(读引脚)、(读引脚)、BUF2(读锁(读锁存器)以及由存器)以及由 FET晶体管晶体管 Q0与上拉电阻组成的输出输入驱与上拉电阻组成的输出输入驱动器。动器。 P1口的工作过程分析如下:口的工作过程分析如下:u P1.i位作输出口用时:位作输出口用时:CPU输出输出0时,时,D0,Q0,Ql,晶体管晶体管Q0导通,导通,A点被下拉为低电平,即输出点被下拉为低电平,即输出0;CPU输出输出1时,时,Dl,Q1,Q0,晶体管,晶体管Q0截止,截止,A点被上拉为高电平,点被上拉为高电平,即输出即输出l。 P1口的特点口的特点u 输出锁存
12、器,输出时没有条件;输出锁存器,输出时没有条件;u 输入缓冲,输入时有条件,即需要先将该口设为输入状态,输入缓冲,输入时有条件,即需要先将该口设为输入状态,先输出先输出1;u P1i位作输入口用时:先向位作输入口用时:先向P1i位输出高电平,使位输出高电平,使A点提点提升为高电平,此操作称为设置升为高电平,此操作称为设置P1i为输入线。若外设输入为为输入线。若外设输入为1时时A点为高电平,由点为高电平,由BUFI读入总线后读入总线后B点也为高电平;若外设点也为高电平;若外设输入为输入为0时时A点为低电平,由点为低电平,由BUF1读入总线后读入总线后B点也为低电平点也为低电平。u 工作过程中无高
13、阻悬浮状态,也就是该口不是输入态就是工作过程中无高阻悬浮状态,也就是该口不是输入态就是输出态。输出态。 具有这种特性的口不属于具有这种特性的口不属于“真正真正”的双向口,而被称为的双向口,而被称为“准准”双向口。双向口。 P1口的操作口的操作 字节操作和位操作字节操作和位操作 CPU对于对于 P1口不仅可以作为一个口不仅可以作为一个 8位口(字节)来操作,位口(字节)来操作,也可以按位来操作。也可以按位来操作。 有关字节操作的指令有:有关字节操作的指令有: 输出:输出: MOV P1,A ;P1A MOV P1,data ;P1data MOV P1,direct ;P1direct 输入:输
14、入: MOV A,P1 ;AP1 MOV direct,Pl ;directPl有关位操作的指令有:有关位操作的指令有: 置位、清除:置位、清除:SETB P1.i ;P1.i1 CLR Pli ;P1i0 输入、输出:输入、输出:MOV P1i,C ;P1iCY MOV C,P1i ;CYP1.i 判跳:判跳: JBP1i,rel ;P1.I=1,跳转,跳转 JBC P1i,rel ;P1.i0,跳转且,跳转且;P1.i0 逻辑运算:逻辑运算: ANL C,P1i ;CY(P1.iCY) ORL C,P1i ;CY(P1.iCY) P1i中的中的i0,7。 P1口不仅可以以口不仅可以以8位一
15、组进行输入、输出操作,还可以逐位一组进行输入、输出操作,还可以逐位分别定义各口线为输入线或输出线。例如:位分别定义各口线为输入线或输出线。例如:ORLP1,0 0 0 0 0 0 1 0 B可以使可以使P1l位口线输出位口线输出l,而使其余各位不变。,而使其余各位不变。 ANL P1,1 1 1 1 1 1 0 1 B可以使可以使P11位线输出位线输出0,而使其余各位不变。,而使其余各位不变。 读引脚操作和读锁存器操作读引脚操作和读锁存器操作 从从P1口的位结构图中可以看出,有两种读口的操作:一种口的位结构图中可以看出,有两种读口的操作:一种是读引脚操作,一种是读锁存器操作。是读引脚操作,一种
16、是读锁存器操作。u 在响应在响应CPU输出的读引脚信号时,端口本身引脚的电平值输出的读引脚信号时,端口本身引脚的电平值通过缓冲器通过缓冲器BUF1进入内部总线。这种类型的指令,执行之前进入内部总线。这种类型的指令,执行之前必须先将端口锁存器置必须先将端口锁存器置1,使,使A点处于高电平,否则会损坏引点处于高电平,否则会损坏引脚,而且也使信号无法读出。脚,而且也使信号无法读出。 这种类型的指令有:这种类型的指令有: MOV A,P1 ;AP1 MOV direct,P1 ;directP1u 在执行读锁存器的指令时,在执行读锁存器的指令时,CPU首先完成将锁存器的值通过首先完成将锁存器的值通过缓
17、冲器缓冲器BUF2读入内部,进行修改,然后重新写到锁存器中去,读入内部,进行修改,然后重新写到锁存器中去,这就是这就是“读一修改一写读一修改一写”指令。指令。这种类型的指令包含所有的口的逻辑操作(这种类型的指令包含所有的口的逻辑操作(ANL、ORL、XRL)和位操作)和位操作(JBC、CPL、MOV、SETB、CLR等)指令。等)指令。 P1口的多功能线口的多功能线 在在80C52中,中,P10和和P11口线是多功能的,即除作一般双口线是多功能的,即除作一般双向向I/O口线之外,这两根口线还具有下列功能:口线之外,这两根口线还具有下列功能: P10定时器计数器定时器计数器2的外部输入端的外部输
18、入端T2; P11定时器计数器定时器计数器2的外部控制端的外部控制端T2EX。 P2口是一个多功能的口是一个多功能的8位口,可以字节访问也可位访问,位口,可以字节访问也可位访问,其字节访问地址为其字节访问地址为A0H,位访问地址为,位访问地址为A0HA7H。 P2P2口位结构和工作原理口位结构和工作原理8.0.4 P28.0.4 P2口口 多路开关的输入有两个:一个是口输出锁存器的输出端多路开关的输入有两个:一个是口输出锁存器的输出端Q;一个是地址寄存器(一个是地址寄存器(PC或或DPTR)的高位输出端。多路开关)的高位输出端。多路开关的输出经反相器反相后去控制输出的输出经反相器反相后去控制输
19、出FET的的 Q0。多路开关的切。多路开关的切换由内部控制信号控制。换由内部控制信号控制。 输出锁存器的输出端是输出锁存器的输出端是Q而不是而不是/Q,多路开关之后需接反,多路开关之后需接反相器。相器。 u P2P2口的口的I/OI/O口状态。口状态。 在内部控制信号的作用下,多路开关的输入投向输出锁存在内部控制信号的作用下,多路开关的输入投向输出锁存器的输出器的输出Q(C点)侧,这样多路开关将接通输出锁存器。点)侧,这样多路开关将接通输出锁存器。 若经由内部总线输出若经由内部总线输出0,输出锁存器的,输出锁存器的Q端为端为”0”,信号经,信号经多路开关和反相器后输出多路开关和反相器后输出”1
20、”,Q0导通,导通,A点为点为”0”,输出,输出低电平;若经由内部总线输出低电平;若经由内部总线输出”1”,输出锁存器的,输出锁存器的Q端为端为”1”,反相器后输出反相器后输出”0”,Q0截止,截止,A点为点为”1” ,输出高电平。,输出高电平。u P2口的高口的高8位地址位地址输出状态输出状态 在内部控制信号的作用下,多路开关的输入投向地址输出在内部控制信号的作用下,多路开关的输入投向地址输出(B点)侧,这样多路开关将接通地址寄存器输出。点)侧,这样多路开关将接通地址寄存器输出。A点的电点的电平将随地址输出的平将随地址输出的“0”、“1”而而“l”、“0”地变化。地变化。 P2口的功能口的功
21、能 从上述工作过程的分析中可以看出从上述工作过程的分析中可以看出P2口是一个双功能的口:口是一个双功能的口: 作作IO口使用时,口使用时,P2口为一准双向口。口为一准双向口。 作地址输出时,作地址输出时,P2口可以输出程序存储器或片外数据存口可以输出程序存储器或片外数据存储器的高储器的高8位地址,与位地址,与P0输出的低地址一起构成输出的低地址一起构成16位地址线,位地址线,从而可分别寻址从而可分别寻址64KB的程序存储器或片外数据存储器。地址的程序存储器或片外数据存储器。地址线是线是8位一起自动输出的。位一起自动输出的。 P2口使用中注意的问题口使用中注意的问题 由于由于P2口的输出锁存功能
22、,在取指周期内或外部数据存口的输出锁存功能,在取指周期内或外部数据存储器读、写选通期间,输出的高储器读、写选通期间,输出的高8位地址是锁存的,故无需外位地址是锁存的,故无需外加地址锁存器。加地址锁存器。 在系统中如果外接有程序存储器,由于访问片外程序存储在系统中如果外接有程序存储器,由于访问片外程序存储器时连续不断的取指操作,器时连续不断的取指操作,P2口需要不断送出高位地址,这口需要不断送出高位地址,这时时P2口的全部口线均不宜再作口的全部口线均不宜再作I/O口使用。口使用。 在无外接程序存储器而有片外数据存储器的系统中,在无外接程序存储器而有片外数据存储器的系统中,P2口口使用可分为两种情
23、况:使用可分为两种情况:u 若片外数据存储器的容量若片外数据存储器的容量256 B:可使用:可使用“MOVX A,Ri”及及“MOVX Ri,A”类指令访问片外数据存储器,这类指令访问片外数据存储器,这时时P2口不输出地址,口不输出地址,P2口仍可作为口仍可作为I/O口使用;口使用;u 若片外数据存储器的容量若片外数据存储器的容量256 B:这时使用:这时使用“MOVX A,DPTR”及及“MOVXDPTR,A”类指令访问片外数据存储类指令访问片外数据存储器,器,P2口需输出高口需输出高8位地址。在片外数据存储器读、写选通位地址。在片外数据存储器读、写选通期间,期间,P2口引脚上锁存高口引脚上
24、锁存高8位地址信息,但是在选通结束后,位地址信息,但是在选通结束后,P2口内原来锁存的内容又重新出现在引脚上。口内原来锁存的内容又重新出现在引脚上。 使用使用“MOVX A,Ri”及及“MOVX Ri,A”类访问指类访问指令时,高位地址通过程序设定,只利用令时,高位地址通过程序设定,只利用P1、P3甚至甚至P2口中的某口中的某几根口线送高位地址,从而保留几根口线送高位地址,从而保留P2口的全部或部分口线作口的全部或部分口线作I/O口口用。用。 8.0.5 P38.0.5 P3口口 P3P3口是一个多功能的口是一个多功能的8 8位口,可以字节访问也可位访问,其位口,可以字节访问也可位访问,其字节
25、访问地址为字节访问地址为B0HB0H,位访问地址为,位访问地址为B0HB0HB7HB7H。 位结构与工作原理位结构与工作原理 P3P3口的位结构原理下图所示。口的位结构原理下图所示。u 与非门有两个输入端:一个为口输出锁存器的与非门有两个输入端:一个为口输出锁存器的Q Q端,另一端,另一个为替代功能的控制输出。与非门的输出端控制输出个为替代功能的控制输出。与非门的输出端控制输出FETFET管管Q0Q0。u 有两个输入缓冲器,替代输入功能取自第一个缓冲器的输有两个输入缓冲器,替代输入功能取自第一个缓冲器的输出端;出端;I/OI/O口的通用输入信号取自第二个缓冲器的输出端。口的通用输入信号取自第二
26、个缓冲器的输出端。u 当替代输出功能当替代输出功能B B点置点置”1”1”时,输出锁存器的输出可以时,输出锁存器的输出可以顺利通到引脚顺利通到引脚P3P3i i。其工作状况与。其工作状况与P1P1口相类似。这时口相类似。这时P3P3口的口的工作状态为一工作状态为一I/OI/O口,显然此时该口具有准双向口的性质。口,显然此时该口具有准双向口的性质。u 当输出锁存器的输出置当输出锁存器的输出置“1”1”时,替代输出功能可以顺利时,替代输出功能可以顺利通到引脚通到引脚P3P3i i。 若替代输出为若替代输出为“0”0”时,因与非门的时,因与非门的C C点已置点已置l l,现,现B B点点为为”0”0
27、”,故与非门的输出为,故与非门的输出为“l”l”,使,使Q0Q0导通,从而使导通,从而使A A点也点也为为“0”0”。若替代输出为。若替代输出为“1”1”时,与非门的输出为时,与非门的输出为“1”1”,Q0Q0截止,从而使截止,从而使A A点也为高电平。这时点也为高电平。这时P3P3口的工作状态处于替代口的工作状态处于替代输出功能状态。输出功能状态。 P3口的功能口的功能 P3口是一个多功能口。口是一个多功能口。 可作可作I/O口使用,为准双向口。口使用,为准双向口。 既可以字节操作,也可以位操作;既可以既可以字节操作,也可以位操作;既可以8位口操作,也可位口操作,也可以逐位定义口线为输入线或
28、输出线;既可以读引脚,也可以读以逐位定义口线为输入线或输出线;既可以读引脚,也可以读锁存器,实现锁存器,实现“读一修改一输出读一修改一输出”操作。操作。 可以作为替代功能的输入、输出。可以作为替代功能的输入、输出。 替代输入功能:替代输入功能: P30 RXD,串行输入口。,串行输入口。 P32外部中断外部中断0的请求。的请求。 P33外部中断外部中断1的请求。的请求。 P3P34T04T0,定时器计数器,定时器计数器0 0外部计数脉冲输入。外部计数脉冲输入。P3P35T15T1,定时器计数器,定时器计数器1 1外部计数脉冲输入。外部计数脉冲输入。 替代输出功能:替代输出功能:P3P3lTXD
29、lTXD,串行输出口。,串行输出口。P3P366外部数据存储器写选通,输出,低电平有效。外部数据存储器写选通,输出,低电平有效。 P3P377外部数据存储器读选通,输出,低电平有效。外部数据存储器读选通,输出,低电平有效。8.2 串行数据通信概述串行数据通信概述1. 单工方式、半双工方式、全双工方式单工方式、半双工方式、全双工方式 单工方式单工方式 (Simplex mode) 信号信号(不包括联络信号不包括联络信号) 在信道中只能沿一个方向传送,而不能在信道中只能沿一个方向传送,而不能沿相反方向传送的工作方式称为单工方式。沿相反方向传送的工作方式称为单工方式。 半双工方式半双工方式 (Hal
30、f-Duplex mode) 通信的双方均具有发送和接收信息的能力,信道也具有双向传通信的双方均具有发送和接收信息的能力,信道也具有双向传输性能,但是,通信的任何一方都不能同时既发送信息又接收信输性能,但是,通信的任何一方都不能同时既发送信息又接收信息,即在指定的时刻,只能沿某一个方向传送信息。这样的传送息,即在指定的时刻,只能沿某一个方向传送信息。这样的传送方式称为半双工方式。方式称为半双工方式。 全双工方式全双工方式(Full-Duplex mode) 若信号在通信双方之间沿两个方向同时传送,任何一方在同一若信号在通信双方之间沿两个方向同时传送,任何一方在同一时刻既能发送又能接收信息,这样
31、的方式称为全双工方式。时刻既能发送又能接收信息,这样的方式称为全双工方式。ASSB(a)(b)(c)ABAB串行通信数据传送的四种方式单工方式;(b) 半双工方式;全双工方式(d)多工方式: 以上三种传输方式都是用同一线路传输一种频率信号,为了充分地利用线路资源,可通过使用多路复用器或多路集线器,采用频分、时分或码分复用技术,即可实现在同一线路上资源共享功能,称之为多工传输方式。2. 异步通信和同步通信异步通信和同步通信 在数据通信中,要保证发送的信号在接收端能被正确地接收,在数据通信中,要保证发送的信号在接收端能被正确地接收,必须采用同步技术。常用的同步技术有两种方式,一种称为异步必须采用同
32、步技术。常用的同步技术有两种方式,一种称为异步通信也称起止同步方式,另一种称为同步通信也称同步字符同步通信也称起止同步方式,另一种称为同步通信也称同步字符同步方式。方式。 异步通信异步通信 异步通信以字符为单位进行数据传输,每个字符都用起始位、异步通信以字符为单位进行数据传输,每个字符都用起始位、停止位包装起来,在字符间允许有长短不一的间隙。停止位包装起来,在字符间允许有长短不一的间隙。 在单片微机中使用的串行通信都是异步方式。在单片微机中使用的串行通信都是异步方式。 同步通信同步通信 同步通信用来对数据块进行传输,一个数同步通信用来对数据块进行传输,一个数据块中包含着许多连续的字符,在字符之
33、间没据块中包含着许多连续的字符,在字符之间没有空闲。同步通信可以方便地实现某一通信协有空闲。同步通信可以方便地实现某一通信协议要求的帧格式。议要求的帧格式。例:IBM的BSC协议异步通信和同步通信的比较异步通信和同步通信的比较v(1)异步通信简单,双方时钟可允许一定误差。同步通信较复杂,双方时钟的允许误差较小。v(2)异步通信只适用于点 点,同步通信可用于点 多。v(3)通信效率:异步通信低,同步通信高。 3. 波特率波特率(BAUD RATE) Baud: Jean Maurice Emile Baudot (1845-1903), French Engineer 串行通信的传送速率用于说明
34、数据传送的快慢,波串行通信的传送速率用于说明数据传送的快慢,波特率表示串行通信时每秒钟传送特率表示串行通信时每秒钟传送“位位” 的数目,比如的数目,比如1秒钟传送秒钟传送1位,就是位,就是1波特。即波特。即1波特波特1bps (位位/秒秒)串行通信常用的标准波特率在串行通信常用的标准波特率在RS-232C标准中已标准中已有规定,如波特率为有规定,如波特率为600、1200、2400、4800、9600、19200等等。等等。 假若数据传送速率为假若数据传送速率为120字符字符/秒,而每一秒,而每一个字符帧已规定为个字符帧已规定为10个数据位,则传输速率为个数据位,则传输速率为120101200
35、位位/秒,即波特率为秒,即波特率为1200,每一位数据传送的时,每一位数据传送的时间为波特率的倒数:间为波特率的倒数:T112000.833ms8.2 80C51串行口及控制串行口及控制8.2.1 80C51串行口结构串行口结构 8051中的串行口是一个全双工的异步串行通信接口,它可作中的串行口是一个全双工的异步串行通信接口,它可作UART (Universal Asynchronous Receiver and Transmitter) (通用通用异步接收和发送器)用,也可作同步移位寄存器用。异步接收和发送器)用,也可作同步移位寄存器用。80C51串行口基本结构如图串行口基本结构如图81所示
36、。主要由两大部分组成所示。主要由两大部分组成 。 波特率发生器:波特率发生器: 主要由主要由T1、T2 及内部的一些控制开关和分频器所组成。它提及内部的一些控制开关和分频器所组成。它提供串行口的时钟信号为供串行口的时钟信号为 TXCLOCK(发送时钟)和发送时钟)和 RXCLOCK(接收时钟)。相应的控制波特率发生器的特殊功能寄存器有接收时钟)。相应的控制波特率发生器的特殊功能寄存器有 TMOD、TCON、T2CON、PCON、TL1、TH1、TL2、TH2等。等。 串行口的内部包含:串行口的内部包含: 串行数据缓冲寄存器串行数据缓冲寄存器SBUF 有接收缓冲器有接收缓冲器SBUF和发送缓冲器
37、和发送缓冲器SBUF,以便以便80C51能以全双能以全双工方式进行通信。它们在物理上是隔离的,但是占用同一个地址工方式进行通信。它们在物理上是隔离的,但是占用同一个地址(99H) 。串行发送时,从片内总线向发送缓冲器串行发送时,从片内总线向发送缓冲器SBUF写入数据;写入数据;串行接收时,从接收缓冲器串行接收时,从接收缓冲器SBUF中读出数据。中读出数据。 串行口控制寄存器:串行口控制寄存器:SCON。 串行数据输入输出引脚串行数据输入输出引脚接收方式下,串行数据从接收方式下,串行数据从RXD(P30)引脚输入,串行口引脚输入,串行口内部在接收缓冲器之前还有移位寄存器,从而构成了串行接收的内部
38、在接收缓冲器之前还有移位寄存器,从而构成了串行接收的双缓冲结构,可以避免在数据接收过程中出现帧重叠错误,即在双缓冲结构,可以避免在数据接收过程中出现帧重叠错误,即在下一帧数据来时,前一帧数据还没有读走。下一帧数据来时,前一帧数据还没有读走。在发送方式下,串行数据通过在发送方式下,串行数据通过TXD(P31)引脚输出引脚输出。 串行口控制逻辑:串行口控制逻辑:n接受来自波特率发生器的时钟信号接受来自波特率发生器的时钟信号TXCLOCK(发送时钟)和发送时钟)和RXCLOCK(接收时钟);接收时钟);n控制内部的输入移位寄存器将外部的串行数据转换控制内部的输入移位寄存器将外部的串行数据转换为并行数
39、据;为并行数据;n控制内部的输出移位寄存器将内部的并行数据转换控制内部的输出移位寄存器将内部的并行数据转换为串行数据输出;为串行数据输出;n控制串行中断(控制串行中断(RI和和TI)。)。8.2.2 80C51串行口控制串行口控制在在8051中与串行口相关的寄存器包括:中与串行口相关的寄存器包括:nSCON ( Serial Control Register) (98H)nPCON (Power Control and Baud Rate Selection Register) ( 97H)nSBUF( Serial Buffer Register) (99H)n与定时器与定时器T1和中断相关
40、的控制寄存器和中断相关的控制寄存器 串行口状态控制寄存器串行口状态控制寄存器 SCON串行口状态控制寄存器串行口状态控制寄存器SCON用来控制串行通信的方式选择、用来控制串行通信的方式选择、接收,指示串行口的中断状态。寄存器接收,指示串行口的中断状态。寄存器SCON既可字节寻址也可位既可字节寻址也可位寻址,字节地址为寻址,字节地址为98H,位地址为位地址为98H9FH。SCON寄存器格式如下:寄存器格式如下:各位的意义如下:各位的意义如下:nSM0(SCON.7),SM1(SCON.6)串行口工作方式选择位串行口工作方式选择位 。其。其功能见表功能见表81。 n SM2(SCON.5)允许方式
41、允许方式2、3中的多处理机通信位。中的多处理机通信位。 方式方式0时,时,SM20。 方式方式1时,若时,若SM2l,只有接收到有效的停止位,接收中断只有接收到有效的停止位,接收中断RI才置才置1。 而当而当SM20时,则不论接收到的笫九位数据是时,则不论接收到的笫九位数据是”0” 或或”1” ,都将前八位数据装入都将前八位数据装入SBUF中,并申请中断。中,并申请中断。位 地位 地址址 9FH 9EH9DH9CH 9BH9AH 99H 98H位 功位 功能能SM0SM1SM2REN TB8 RB8 TI RI 串行接口输入串行接口输入/ /输出引脚:输出引脚:TXD(P3.1)TXD(P3.
42、1)、RXD(P3.0)RXD(P3.0)按按不同方式,一帧位数不同方式,一帧位数 8/10/118/10/11发送发送/ /接收时,数据皆低位接收时,数据皆低位在前。在前。一帧字符发送一帧字符发送/ /接收结束,置位标志位接收结束,置位标志位(TI/RI)(TI/RI)并申请并申请SIOSIO中断。中断。中断控制:中断允许位中断控制:中断允许位ESES中断入口:中断入口:0023H0023HD0D1D2D3D4D5D6D7停止位停止位起始位起始位D0D1D2D3D4D5D6D7D0D1D2D3D4D5D6T/RB8停止位停止位起始位起始位D780518051串行口各种工作方式下的数据格式串行
43、口各种工作方式下的数据格式方式方式0 0方式方式1 1方式方式2,32,3 方式方式2和方式和方式3时,若时,若SM21,则只有当接收到的第则只有当接收到的第9位位数据(数据(RB8)为为1时,才将接收到的前八位数据送入缓冲器时,才将接收到的前八位数据送入缓冲器SBUF中,并把中,并把RI置置1、同时向、同时向CPU申请中断;如果接收到的第申请中断;如果接收到的第9位数据(位数据(RB8)为为0,RI置置0,将接收到的前八位数据丢弃。,将接收到的前八位数据丢弃。 若若SM2=0,则接收到,则接收到9位数据后应申请中断,并将第位数据后应申请中断,并将第9位数位数据 放 入据 放 入 R B 8
44、中 。 这 种 功 能 可 用 于 多 处 理 机 通 信 中 。中 。 这 种 功 能 可 用 于 多 处 理 机 通 信 中 。 REN(SCON.4)允许串行接收位。允许串行接收位。nREN1时,允许串行接收;时,允许串行接收;REN0时,禁止串行接收。时,禁止串行接收。用软件置位清除。用软件置位清除。n TB8(SCON.3)方式方式2和方式和方式3中要发送的第中要发送的第9位数据。位数据。在通信协议中,常规定在通信协议中,常规定TB8作为奇偶校验位。在作为奇偶校验位。在80C51多多机通信中,机通信中,TB8用来表示数据帧是地址帧还是数据帧。用来表示数据帧是地址帧还是数据帧。用软件置
45、位清除。用软件置位清除。nRB8(SCON.2)RB8(SCON.2)方式方式2 2和方式和方式3 3中接收到的第中接收到的第9 9位数据。位数据。方式方式1 1中接收到的是停止位。方式中接收到的是停止位。方式0 0中不使用这一位。中不使用这一位。n TI TI(SCONSCON1 1)发送中断标志位。发送中断标志位。方式方式0 0中,在发送第中,在发送第8 8位末尾置位;在其它方式时,在发送停位末尾置位;在其它方式时,在发送停止位开始时设置。止位开始时设置。由硬件置位,用软件清除。由硬件置位,用软件清除。n RI RI(SCONSCON0 0)接收中断标志位。接收中断标志位。方式方式0 0中
46、,在接收第中,在接收第 8 8位末尾置位;在其它方式时,在位末尾置位;在其它方式时,在接收停止位中间设置。接收停止位中间设置。由硬件置位,用软件清除。由硬件置位,用软件清除。 系统复位后,系统复位后,SCONSCON中所有位都被清除。中所有位都被清除。 电源控制寄存器电源控制寄存器 PCON 电源控制寄存器电源控制寄存器PCON仅有几位有定义,其中最高位仅有几位有定义,其中最高位SMOD与串行口控制有关,其它位与掉电方式有关。寄存器与串行口控制有关,其它位与掉电方式有关。寄存器PCON的地址为的地址为87H,只能字节寻址。其格式如下:只能字节寻址。其格式如下:n SMOD(PCON.7)串行通
47、信波特率系数控制位。串行通信波特率系数控制位。 当当SMOD1时,使波特率加倍。复位后,时,使波特率加倍。复位后,SMOD0。 D7 D6 D5 D4 D3 D2 D1 D0SMOD GF1 GF0 PD IDL 其中:其中:SMOD:波特率倍增位,在串行通讯时使用。:波特率倍增位,在串行通讯时使用。 GF1、GF0:通信标志位:通信标志位1、0。 PD:掉电方位式,:掉电方位式,PD1,则进入掉电方式。,则进入掉电方式。IDL:待机方式位,:待机方式位,IDL1,则进入待机方式。,则进入待机方式。 (1)待机方式(待机方式(IDLE)n 使用指令使使用指令使PCON寄存器寄存器IDL位置位置
48、1,则,则80C51进入待机方式。进入待机方式。 SMOD GF1 GF0 PD IDLn待机方式与掉电方式待机方式与掉电方式 由图可看出这时振荡器仍然运行,并向中断逻辑、串行口和定时器由图可看出这时振荡器仍然运行,并向中断逻辑、串行口和定时器/计数器电路计数器电路提供时钟,中断功能继续存在提供时钟,中断功能继续存在 。 向向CPU提供时钟的电路被阻断,因此提供时钟的电路被阻断,因此CPU不能工作,与不能工作,与CPU有关的如有关的如SP、PC、PSW、ACC以及全部通用寄存器都被冻结在原状态。以及全部通用寄存器都被冻结在原状态。n 可以采用中断方式或硬件复位来退出待机方式。可以采用中断方式或
49、硬件复位来退出待机方式。 在待机方式下,若产生一个外部中断请求信号,在单片微机响应中断的同时,在待机方式下,若产生一个外部中断请求信号,在单片微机响应中断的同时,PCON.0位(位(IDL位)被硬件自动清位)被硬件自动清0, 单片微机就退出待机方式而进入正常工单片微机就退出待机方式而进入正常工作方式。在中断服务程序中安排一条作方式。在中断服务程序中安排一条RETI指令,就可以使单片微机恢复正常工作,指令,就可以使单片微机恢复正常工作,从设置待机方式指令的下一条指令开始继续执行程序。从设置待机方式指令的下一条指令开始继续执行程序。(2)掉掉 电保护方式电保护方式(Power Down)n PCO
50、N寄存器的寄存器的PD位控制单片微机进入掉电保护方式。位控制单片微机进入掉电保护方式。 当当80C51检测到电源故障时,除进行信息保护外,还应检测到电源故障时,除进行信息保护外,还应把把PCON.1位置位置1,使之进入掉电保护方式。此时单片微机,使之进入掉电保护方式。此时单片微机一切工作都停止,只有内部一切工作都停止,只有内部RAM单元的内容被保护。单元的内容被保护。n只能依靠复位退出掉电保护方式。只能依靠复位退出掉电保护方式。 80C51备用电源由备用电源由Vcc端引入。当端引入。当Vcc恢复正常后,只要恢复正常后,只要硬件复位信号维持硬件复位信号维持10ms,就能使单片微机退出掉电保护方式
51、,就能使单片微机退出掉电保护方式,CPU则从进入待机方式的下一条指令开始重新执行程序。则从进入待机方式的下一条指令开始重新执行程序。(3)功耗比较功耗比较AT80C51RD2 单片机在不同工作方式下的功耗比较 D7 D6 D5 D4 D3 D2 D1 D0 SD7 SD6 SD5 SD4 SD3 SD2 SD1 SD0读读SBUF(MOV A,SBUF),),访问接收数据寄存器;访问接收数据寄存器;写写SBUF(MOV SBUF,A),),访问发送数据寄存器。访问发送数据寄存器。 串行数据寄存器串行数据寄存器SBUF 串行数据寄存器串行数据寄存器SBUF包含在物理上是隔离的两个包含在物理上是隔
52、离的两个8位寄存器:发位寄存器:发送数据寄存器和接收数据寄存器,但是它们共用一个地址送数据寄存器和接收数据寄存器,但是它们共用一个地址99H。其其格式如下:格式如下:8.3 串行口的工作方式串行口的工作方式8.3.1 串行口方式串行口方式0 同步移位寄存器方式同步移位寄存器方式数据传输波特率固定为(数据传输波特率固定为(112)fosc。 由由RXD(P30)引脚输入或输出数据,引脚输入或输出数据,由由TXD(P31)引脚输出同步移位时钟。引脚输出同步移位时钟。接收发送的是接收发送的是8位数据,传输时低位在前。位数据,传输时低位在前。发送:当执行任何一条写发送:当执行任何一条写SBUFSBUF
53、的指令(的指令(MOV SBUFMOV SBUF,A A)时,时,就启动串行数据的发送。就启动串行数据的发送。 接收:当满足接收:当满足RENREN1(1(允许接收允许接收) )且接收中断标志且接收中断标志RIRI位清除时,位清除时,就会启动一次接收过程。就会启动一次接收过程。串行口工作方式串行口工作方式0工作原理图工作原理图 特点:特点: 当当 SM00、SM1l时,串行口选择方式时,串行口选择方式1。 波特率由定时器计数器波特率由定时器计数器 T1的溢出决定的溢出决定 由由 TXD(P31)引脚发送数据。引脚发送数据。 由由 RXD(P30)引脚接收数据。引脚接收数据。 发送或接收一帧信息
54、为发送或接收一帧信息为10位:位:1位起始位位起始位(“0”)、)、8位数据位位数据位(低位在前低位在前)和和l位停止位位停止位(“1”)。帧格式如下:)。帧格式如下:8.3.2 串行口方式串行口方式18位位UART当执行任何一条写当执行任何一条写 SBUF的指令时,就启动串行数的指令时,就启动串行数据的发送。据的发送。当当REN1且清除且清除RI后,若在后,若在RXD(P31)引脚上引脚上检测到一个检测到一个1到到0的跳变,立即启动一次接收。的跳变,立即启动一次接收。置位置位RIRI的条件是:的条件是: (1 1)RIRI0 0 即上一帧数据接收完成时发出的中断请即上一帧数据接收完成时发出的
55、中断请求已被响应,求已被响应,SBUFSBUF中数据已被取走。中数据已被取走。 (2 2)SM2SM20 0 或(或(SM2=1SM2=1时接收到的停止位时接收到的停止位1 1)。)。 若以上两个条件中有一个不满足,将不可恢复地若以上两个条件中有一个不满足,将不可恢复地丢失接收到的这一帧信息;如果满足上述两个条件,丢失接收到的这一帧信息;如果满足上述两个条件,则数据位装入则数据位装入SBUF,停止位装入停止位装入RB8且置位且置位RI。串行口方式串行口方式1接收工作原理图接收工作原理图特点:特点:n当当SM01、SM10时,串行口选择方式时,串行口选择方式2;n当当SM11、SM01时,串行口
56、选择方式时,串行口选择方式3。n发送或接收一帧信息为发送或接收一帧信息为11位:位:1位起始位(位起始位(“0”)、)、8位数据位数据位位(低位在前低位在前) 、1位可编程位和位可编程位和1位停止位(位停止位(“l”)。)。发送时可编发送时可编程位程位TB8可设置为可设置为1或或0,接收时可编程位进入,接收时可编程位进入SCON寄存器的寄存器的RB8位。位。n 方式方式2和和3的不同在于它们波特率产生方式不同。方式的不同在于它们波特率产生方式不同。方式2的波特的波特率是固定的,为振荡器频率的率是固定的,为振荡器频率的1/32或或1/64。方式。方式3的波特率则由的波特率则由定时器计数器定时器计
57、数器T1和和T2的溢出决定,可用程序设定。的溢出决定,可用程序设定。8.3.3 串行口方式串行口方式2和和3 9位位UARTn发送:当执行任何一条写发送:当执行任何一条写SBUF的指令时,就启动串的指令时,就启动串行数据的发送。行数据的发送。n 接收:当接收:当RENl且清除且清除RI后,若在后,若在RXD(P31)引脚上检测到一个引脚上检测到一个l到到0的跳变,立即启动一次接收。的跳变,立即启动一次接收。n当串行口以方式当串行口以方式2或方式或方式3接收时,若接收时,若SM21,只有只有当接收到的第当接收到的第9位数据(位数据(RB8)为为1时,才将数据送入时,才将数据送入接收缓冲器接收缓冲
58、器SBUF,并使并使RI置置1,申请中断,否则数据,申请中断,否则数据将丢失;若将丢失;若SM20,则无论第则无论第9位数据(位数据(RB8)是是1还是还是0,都能将数据装入,都能将数据装入SBUF,并且发中断。并且发中断。n帧格式如下:帧格式如下:8.4 多处理机通信方式多处理机通信方式 在串行口控制寄存器在串行口控制寄存器SCON中,设有多处理机通信位中,设有多处理机通信位SM2(SCON5)。)。多机通信连线示意图,系统中左边的多机通信连线示意图,系统中左边的80C51为主机,其余的为为主机,其余的为1n号从机,并保证每台从机在系统中的编号是惟一的。号从机,并保证每台从机在系统中的编号是
59、惟一的。主机工作原理主机工作原理:主机欲与某从机通信,先向所有从机发出所主机欲与某从机通信,先向所有从机发出所选从机的地址,从机地址符合后,接着才发送命令或数据。选从机的地址,从机地址符合后,接着才发送命令或数据。 在主机发地址时,置第在主机发地址时,置第9位数据(位数据(RB8)为为1,表示主机发送,表示主机发送的是地址帧;的是地址帧; 当主机呼叫某从机联络正确后,主机发送命令或数据帧时,当主机呼叫某从机联络正确后,主机发送命令或数据帧时,将第将第9位数据(位数据(RB8)清清0。 从机工作原理:从机工作原理:各从机由于各从机由于SM2置置1,将响应主机发来的第,将响应主机发来的第9位数据(
60、位数据(RB8)为为1的地址信息。从机响应中断后,有两种不同的地址信息。从机响应中断后,有两种不同的操作:的操作: 若从机的地址与主机点名的地址不相同,则该从机将继续维若从机的地址与主机点名的地址不相同,则该从机将继续维持持SM2为为l,从而拒绝接收主机后面发来的命令或数据信息,不从而拒绝接收主机后面发来的命令或数据信息,不会产生中断,而等待主机的下一次点名。会产生中断,而等待主机的下一次点名。 若从机的地址与主机点名的地址相同,该从机将本机的若从机的地址与主机点名的地址相同,该从机将本机的SM2清清0,继续接收主机发来的命令或数据,响应中断。,继续接收主机发来的命令或数据,响应中断。这样,保
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年福建省乡村发展投资有限公司招聘1人考试备考题库及答案解析
- 2026年宠物饲料加工行业投资战略研究报告及未来五至十年跨界融合与颠覆创新
- 2026年南京水务集团有限公司人员招聘考试题库及答案详解
- 2026第四季度重庆市万盛经开区创业就业和人才中心公益性岗位招聘1人考试模拟试题及答案解析
- 2026年河北建工集团有限责任公司人员招聘考试题库及答案详解
- 2026年湖北中烟工业有限责任公司人员招聘考试备考题库及答案详解
- 2026年武汉光谷联合产权交易所有限公司人员招聘考试参考试题及答案详解
- 2026年中国联通贵州省分公司人员招聘笔试参考题库及答案详解
- 2026年合成橡胶制造行业投资研究报告及未来五至十年增长动能与投资价值分析
- 2026年电影和广播电视节目发行行业战略咨询报告及未来五至十年研发投入与专利布局
- 【第一次月考】2026 秋七年级上册道法第一次月考卷(统编版素养测评)
- 2026年非融资担保服务行业市场深度调查及投资规划报告及未来五至十年区域市场差异与机会
- 大型机械设备运行路线及作业位置承载能力校核方案
- 2026-2027学年四年级上册数学第一次月考分层训练测试完整版试卷
- 中国树莓果汁市场销售格局与未来经营效益盈利性研究报告
- 2026年南宁市青秀区社区工作者招聘笔试备考题库及答案详解
- VDA6.3-2026版 过程审核完整培训教材
- 高中主题班会 珍爱生命远离毒品课件-高中主题班会
- 供应商绩效考核方案实施细则
- 比亚迪造车工作制度
- 新时期高校统战工作:问题剖析与创新发展路径探究
评论
0/150
提交评论