收藏 分享(赏)

单片微型计算机原理与接口技术课本.doc

上传人:11xg27ws 文档编号:7127736 上传时间:2019-05-06 格式:DOC 页数:35 大小:2.86MB
下载 相关 举报
单片微型计算机原理与接口技术课本.doc_第1页
第1页 / 共35页
单片微型计算机原理与接口技术课本.doc_第2页
第2页 / 共35页
单片微型计算机原理与接口技术课本.doc_第3页
第3页 / 共35页
单片微型计算机原理与接口技术课本.doc_第4页
第4页 / 共35页
单片微型计算机原理与接口技术课本.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

1、单片微型计算机原理与接口技术1第一章 MCS51 单片机的硬件结构与工作原理1微型计算机主要由运算器、控制器、存储器和输入输出电路这四部分组成,其中运算器与控制器集成于 CPU 中。28031 单片机除有 CPU、存储器和输入输出电路外,还包括定时器/计数器、中断控制和时钟振荡电路等。3将这些部件集成在一块芯片上,通过内部总线连接构成 完整的单片微型计算机,简称单片机。单片微型计算机原理与接口技术2第一节 MCS51 存储器配置1微型计算机必须配置一定数量的存储器,但不同的微型计算机存储器的配置不同。2一种是程序与数据共用一个存储器,一般的通用计算机都采用此种形式。3另一种是将程序与数据分别放

2、在两个存储器内,一个称程序存储器,另一个称数据存储器,MCS51 单片机属于此类。4MCS51 片内集成有一定容量的程序存储器(8031/80C31/8032 除外) 和数据存储器,并具有较大的外部存储器扩展能力。5MCS51 有 4 个存储器空间:(1)片内程序存, (2)片外程序存储器, (3)片内数据存储器,(4)片外数据存储器。6从用户角度(逻辑上) ,MCS51 分为 3 个存储器空间:(1)片内、外统一编址的 64KB 程序存储器地址空间, (2)256B 内部数据存储器和特殊功能寄存器地址空间, (3)64KB 外部数据存储器地址空间。一内部数据存储器1数据存储器在物理上和逻辑上

3、分为二个地址空间:一个内部数据存储器和一个外部数据存储器。单片微型计算机原理与接口技术32访问内部数据存储器,用 MOV 指令。3访问外部数据存储器,用 MOVX 指令;48031 单片机内部数据存储器,由 128B 的内部数据存储器和 128B 的特殊功能寄存器组成,在特殊功能寄存器寻址空间中,离散地分布着 19 个特殊功能寄存器。内部数据存储器 00H7FH 内部数据存储器共有 128 个字节,根据作用不同分为三个区:寄存器区 00H1FH(32 个单元)、位寻址区 20H2FH(16 个单元)、通用 RAM 区 30H7FH(80 个单元) 。(1)寄存器区 00H1FH(共 32 个单

4、元):有 4 个寄存器组,每组 8 个寄存器,均表示为 R0R7。由于每个寄存器组的 8 个寄存器都标记为 R0R7,因此每次只能选择一个工作寄存器组。通过状态寄存器 PSW 的第 3、4 位(即 RS1、RS0)选择工作寄存器组。如表 4-1 所示由于 MCS51 单片机对寄存器操作最灵活且响应速度最快,一般情况下,总是首先选择使用寄存器,因此有效地设置 4 个工作寄存器组,可以提高现场保护能力和 CPU 实时响应的速度。(2)位寻址区 20H2FH(16 个单元):既可以按位直接寻址,进行位操作;又可按字节寻址,作为一般工作单元使用。这 16 个字节,每字节 8 位,共有 l68=128

5、位。占用地址为 00H7FH(位地址) ,如表42 所示;单片微型计算机原理与接口技术4应用这些位单元,可以方便地进行各种布尔逻辑操作。(3)通用 RAM 区 30H7FH:内部 RAM 中的 30H7FH 构成通用 RAM 区,可用于存放运算过成中的中间数据,也可作为堆栈存储区域。二特殊功能寄存器18031 单片机共有 19 个(21 个字节)特殊功能寄存器 SFR,用来设置片内电路的运行方式,记录电路运行状态,并表示有关标志等。2并行和串行端口映射在 SFR 寄存器,对这些寄存器的读写,可实现对相应 I/O 端口的输入和输出操作。321 个字节的特殊功能寄存器中,离散分布在 128 字节的

6、 SFR(80HFFH)存储空间中。4有些 SFR 具有位地址,在 SFR(80HFFH)存储空间包含有 128 个位地址空间,其地址也是80HFFH,但仅有 83 个有效地址,可对 11 个 SFR 进行位寻址操作。MCS51 系列有 19 个特殊功能寄存器:单片微型计算机原理与接口技术5A 累加器寄存器 PSW 程序状态字SP 堆栈指针 PC 程序计数器DPTR 数据指针 P0P3 I/O 端口寄存器SBUF 串行数据缓冲器TH0、TL0、TH1、TL1 定时器/计数器IP、IE、TMOD、TCON、SCON、PCON 控制寄存器单片微型计算机原理与接口技术6三程序存储器1内部程序存储器(

7、1)8051 有 4KB 的 ROM 程序存储器;(2)8751 有 4KB 的 EPROM 程序存储器;(3)8031 没有内部程序存储器,必须外接程序存储器。2外部程序存储器MCS5l 单片机有 16 根地址线和 16 位的程序计数器 PC,因此可以寻址(扩展至)64KB 的程序存储器。3程序存储器的作用(1)存放(固化)用户程序和常数表格,可通过 MOVC 指令访问。(2)程序存储器通常选用 EPROM 或 E 2 PROM 芯片来固化程序。4程序存储器中特定程序的入口地址程序存储器中某些地址被固定用于特定程序的入口地址:地址 用途0000H MSC51 复位后 PC=0000H,即程序

8、从 0000H 开始执行。0003H 外部中断 0 入口地址。000BH 定时器 0 溢出中断入口地址。0013H 外部中断 1 入口地址。001BH 定时器 1 溢出中断入口地址。0023H 串行口中断入口地址。四外部数据存储器1外部数据存储器(外部数据 RAM) ,可通过总线端口扩展外部数据 RAM,最大可扩至 64K 字节。2外部 RAM 和内部 RAM 的功能基本相同,外部 RAM 不能进行堆栈操作。3访问内部数据 RAM,用 MOV 指令;访问外部数据 RAM,用 MOVX 指令。单片微型计算机原理与接口技术7第二节 定时器/计数器12 个 16 位定时器/计数器:(1)定时器:对片

9、内机器时钟(周期方波)进行计数。(2)计数器:对 Tx 引脚输入的负脉冲进行计数。2与 Timer 工作有关的特殊功能寄存器:TCON 和 TMOD一控制寄存器1工作方式寄存器 TMOD(89H)计算机的几个时间概念:若振荡频率为 12MHz,振荡周期: sM12状态周期:6 s=0.5s单片微型计算机原理与接口技术8机器周期:12 s=1sM12指令周期:14 个机器周期M1 和 M0:操作方式控制位2控制寄存器 TCON(88H)二定时器工作方式(1)定时器/计数器有 4 种工作方式;由软件对 TMOD 中 T/C 位设置,来选择定时或计数功能。(2)由 Ml 和 M0 位的设置工作方式:

10、即方式 0、方式 1、方式 2 和方式 3。(3)对于方式 0、1、2,T0 与 T1 的工作模式相同;对于方式 3 只有 T0 才能设置。1方式 0 是将定时器(T0 或 T1)高 8 位和低 5 位组成一个 13 位的计数器,其逻辑电路结构如图所示:(1)用于定时工作方式时定时时间为:t(213-T0 初值)机器周期。(2)用于计数工作方式时计数长度为:2138192(个外部脉冲)。(3)当 TL0 的低 5 位溢出时,向 TH0 进位,而 TH0 溢出时向中断标志位 TF0 进位(硬件置位TF0),并申请中断。(4)GATE=0 时,或门 A 点电位为“1” ,引脚 INT0 输入无效。

11、与门 B 点电位取决于 TR0 状态,单片微型计算机原理与接口技术9即由 TR0 控制 T0 开启或关断。若软件使 TR0=1,启动 T0 加 1 计数,直至溢出。计数器计满溢出时,13 位寄存器清 0,TF0 置位,并申请中断。若软件使 TR0=0,停止计数。(5)当 GATE=l 时,A 点电位取决于 INT0(P3.4)引脚的输入电平。INT0 为高电平且 TR0=1 时,B 点才是高电平,T0 开始计数。(6)当 INT0 由 1 变 0 时,T0 停止计数。这一特性可以用来测量在 INT0 端出现的正脉冲的宽度。定时器(方式 0)应用程序举例:例:利用定时器计数器每隔 1ms 控制产

12、生宽度为二个机器周期的负脉冲,由 P1.0 送出。解:设时钟频率为 12MHz,机器周期为 1s,采用中断工作方式。求定时器初值,t(213-T0 初值)机器周期,设定时器初值为 X,则定时 1ms 时,应有110-3(213-X)10-6 ,可求得 X719211100000 11000B,其中高 8 位 E0H 赋给 TH0,低 5值 18H 赋给 TL0。由于系统复位后,TMOD 被清 0,正好处于定时器方式 0 状态,且 GATE0,也可不设置TMOD。程序如下: ORG 0000H AJMP MAIN单片微型计算机原理与接口技术102方式 116 位计数方式 T0 与 T1 的相同,

13、寄存器 TH0 和 TL0 组成 16 位计数器, 其逻辑电路结构如图所示:(1)用于定时工作方式时 定时时间为:t(216-T0 初值)机器周期(2)用于计数工作方式时 计数长度为 21665536(个外部脉冲)。(3)当 TL0 的低 8 位溢出时,向 TH0 进位,而 TH0 溢出时向中断标志位 TF0 进位(硬件置位TF0),并申请中断或者用于查询。TMOD TCON(4)工作方式 1 的编程要点:TMOD 选方式:写“M1,M0”=01 b 选方式 1 若不用门控位,直接用软件写 TRx 控制启/停若使用门控位,先置位 TRx,然后由 INTx 端的高/低电平来控制其启/停若要允许中

14、断,还须先置位 ETx、EA 等中断允许控制位,并编写中断服务程序若不用中断,可查询“计数溢出标志 TFx” 的方式工作,但溢出标志 TFx 须软件清 0定时器(方式 1)应用程序举例:例 1:若晶振频率为 6MHz,计算单片机的 最小与最大定时时间:单片微型计算机原理与接口技术11分析:已知 fosc= 6MHz 则:(振荡周期)1Tc=1/6MHz(机器周期)1Tm=12Tc=12/6MHz=2s粗略地说:Tmin2s16 位定时器最大数值为:216 =65536=0FFFFH+1故选择方式 1 工作可以得到:Tmax= 655362 = 131072S131.072ms例 2:要求对 T

15、0 产生 100mS 定时进行初始化。(晶振=6MHz)分析:已知 fosc= 6MHz 则:(机器周期)1Tm=12Tc=12/6MHz=2s 100ms2 s = 5000016 位定时器最大数值为: 216 = 65536 (=0FFFFH+1)故选择方式 1 工作可以满足要求。计算初值:6553650000=15536=3CB0H由分析得知:T0 选择方式 1,初值=3CB0HGATE C / T M1 M0 GATE G/T M1 M0X X X X 0 0 0 1初始化:MOV TMOD,#01H;选 T0 方式 1MOV TH0,#3CH;赋初值高 8 位MOV TL0,#0B0

16、H;赋初值低 8 位SETB TR0;启动 T0 定时若需要定时器 0 产生中断还应当写如下语句:SETB ET0;开 T0 中断允许SETB EA;开总中断允许以及相应的中断服务程序。3方式 28 位自动重装时间常数方式。方式 2 把 TL0(TL1)配置成一个可以自动重装载的 8 位定时计数器, TH0(TH1)仅用来存放时间常数。(1)TL0 计算溢出时,不仅使溢出中断标志位 TF0 置 l,而且还自动把 TH0 中的内容重装载到TL0 中。(2)在程序初始化时,TL0 和 TH0 由软件赋于相同的初值。(3)用于定时器工作方式时,其定时时间(TF0 溢出周期)为:t = (28-TH0

17、 初值)机器周期单片微型计算机原理与接口技术12(4)用于计数器工作方式时,最大计数值(TH0 初值为 0)为:28 =256(个外部脉冲)。定时器(方式 2)应用程序举例:例:从 P1.0 脚输出频率=1KHz 方波。设:晶振=6MHz。 利用 T1 定时中断。分析:fosc= 6MHz 1 机器周期=2S1KHz 方波周期=1ms半个方波周期=500s, 500uS2us=250若选择方式 2 工作,8 位定时器最大数值为:28 =256 =0FFH + 1 可以满足要求。计算初值:256250=6ORG 0000HAJMP MAINORG 001BH ;T1 的中断矢量CPL P1.0

18、;中断服务:P1.0 取非RETI ;中断返回MAIN: MOV TMOD,#20HMOV TH0, #6MOV TL0, #6SETB ET1SETB EASETB TR1 HERE: AJMP HERE ;原地等待中断END4工作方式 3 2 个 8 位方式,工作方式 3 只适用于定时器 T0。(1)若将 T0 设置为方式 3,TH0 和 TL0 被分成为两个互相独立的 8 位计数器。(2)TL0 既可用作定时器,又可用作计数器,并使用原 T0 的所有控制位及其定时器回零标志和中断源。即 C/T、GATE、TR0、TF0 和 T0(P3.4)引脚、INT0(P3.2)引脚。(3)TH0 只

19、有简单的内部定时功能,它使用定时器 T1 的控制位 TR1、中断标志位 TF1 及中断源,其启动和关闭仅受 TR1 的控制。单片微型计算机原理与接口技术13三定时/计数初值的求取方法例:已知某生产线的传送带上不断地有产品单向传送, 产品之间有较大间隔。使用光电开关统计一定时间内的产品个数,假定红灯亮时停止统计,红灯灭时才在上次统计结果的基础上继续统计。试用单片机定时器/计数器 T1 的方式 1 完成该项产品的计数任务。四定时/计数器应用举例单片微型计算机原理与接口技术14(1) 初始化: TMOD=11010000B=0D0H(GATE=1, C/T=1, M0M1=01)TCON=00H (

20、2)T1 在方式 1 时, 溢出产生中断, 且计数器回零, 故在中断服务程序中, 需用 R0 计数中断次数, 以保护累积计数结果。(3) 启动 T1 计数, 开 T1 中断。程序清单如下: ORG 0000H AJMP START ; 复位入口ORG 001BHAJMP T1INT ; T1 中断入口ORG 0100HSTART: MOV SP, 60H ; 初始化程序MOV TCON, 00HMOV TMOD, 0D0HMOV TH1, 00H MOV TL1, 00HMOV R0, 00H ; 清中断次数计数单元MOV P3, 28H ; 设置 P3.5 第二功能SETB TR1 ; 启动

21、 T1SETB ET1 ; 开 T1 中断SETB EA ; 开总中断MAIN: ACALL DISP ; 主程序, 调显示子程序ORG 0A00HT1INT: INC R0 ; 中断服务子程序RETIDISP: ; 显示子程序RET单片微型计算机原理与接口技术15存储器定时/计数器中断系统输入/输出端口第三节 中断系统18031 单片机 5 个中断源2个外部中断:INT0、INT1 引脚输入的中断源;3个内部中断源:定时器 T0、T1 溢出中断和串行口 TIRI 接收中断。44 个用于中断的控制寄存器 IE、IP、TCON(用 6 位)和 SCON(用 2 位):用于控制中断的类型、中断的开

22、(闭)及 中断源的优先级。52 个中断优先级,每个中断源可以编程为高优先级或低优先级中断。一中断的概念1数据传送的双方平时各自做自己的工作,一旦甲方要求与乙方进行数据传送,就主动发出信号提出申请,乙方接到申请后若同意传送,安排好当前的工作,再响应与甲方发生数据传送完事后,回去继续做打断前的工作。2中断功能强弱是计算机性能优劣的重要标志。提高 CPU 效率解决速度矛盾实现并行工作应付突发事件3中断涉及的几个环节:中断源 (前面提到的甲方)中断申请 (甲方发出信号提出申请)开放中断 (乙方同意传送)保护现场 (安排好当前的工作)中断服务 (响应乙方的要求)恢复现场 (完事后,回去)中断返回 (继续

23、做打断前的工作)二中断系统结构单片微型计算机原理与接口技术16三中断源1部中断源(2 个)由 INT0、INT1 引脚输入 2 个外部中断源;TCON 的低 4 位,用于外部中断控制。定时器控制寄存器 TCON (88H) TCONIE0/IE1:外部中断申请标志位:=0:没有外部中断申请;=1:有外部中断申请。IT0/IT1:外部中断请求的触发方式选择位:=0:在 INT0/INT1 端申请中断的信号低电平有效;=1:在 INT0/INT1 端申请中断的信号负跳变有效。2内部中断源(3 个)TF0/TF1:定时器溢出中断申请标志位:=0:定时器未溢出;=1:定时器溢出申请中断,进中断后自动清

24、零。TCON串行口接收和发送中断源SCON(98H)为串行口控制寄存器:SM0 SM1 SM2 REN TB8 RB8 TI RIRI,TI:串行口收/发数据申请中断标志位:0 不申请中断;1 申请中断。四中断系统控制寄存器TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0单片微型计算机原理与接口技术171中断允许寄存器IE (A8H)2中断优先寄存器 IP(0B8H) (1)8031 有 2 个中断优先级,每个中断源可编 程为高/低优先级中断;(2)可实现 2 级中断嵌套。(3)中断优先寄存器 IP(0B8H)(4)同

25、级中断源,按硬件确定的优先级顺序响应中断请求:8031 CPU 在每个机器周期,顺序采样各中断源,在下一机器周期按优先级查询中断标志,在再下一个机器周期进行中断处理。在下列任一情况时,中断申请被封锁。CPU 正在执行同级或高级的中断服务程序。不是执行当前指令的最后一个周期,即要保证把当前指令执行完。当前正在执行的指令是返回(RETI)指令或是对 IE、IP 寄存器进行读写指令。中断源 申请标志 中断矢量 中断优先级外部中断0( 0)INTIE0 0003H定时/计数器0(T0)IF0 000BH外部中断1( 1)INTIE1 0013H定时/计数器1(T1)TF1 001BH串行口接收/发送

26、RI/TI 0023H最高优先级最低优先级单片微型计算机原理与接口技术18五中断系统响应过程18031 CPU 在每个机器周期,顺序采样各中断源,在下一机器周期按优先级查询中断标志,在再下一个机器周期进行中断处理。2在下列任一情况时,中断申请被封锁。(1)CPU 正在执行同级或高级的中断服务程序。(2)不是执行当前指令的最后一个周期,即要保证把当前指令执行完。(3)当前正在执行的指令是返回(RETI)指令或是对 IE、IP 寄存器进行读写指令。3编写中断服务程序时注意: 在中断入口地址单元处放一条无条件转移指令(如:JMP H)。 在中断服务程序中,用户应注意用软件保护现场。若在执行中断程序时

27、禁止更高级中断,可用软件关闭 CPU 中断(CLR EA),或禁止某中断源中断,在中断返回前再开放中断。4要求编制一段程序,使 P1.0 端口线上输出周期为 2ms 的方波脉冲。单片机的晶振频率 f0sc=6MHz单片微型计算机原理与接口技术19第四节 输入/输出端口并行端口 P0.0P0.7 , P1.0P1.7, P2.0P2.7 , P3.0P3.7 串行端口 RXD,TXD一并行端口MCS51 单片机有 4 个 I/O 端口,共 32 根 I/O 线。 4 个 I/O 端口都是双向口包含:一个锁存器(P0P3) ;一个输出驱动器;一个输入缓冲器。MCS51 在访问外部存储器时:地址由

28、P0、P2 口送出;数据则通过 P0 口传送,这时 P0 口是分时复用的双向总线。无外部存储器的系统,4 个端口都可以作为准双向口使用。1P0 端口(1)P0.0P0.7:双向 I/O; (2)寻址外部程序存储器时分时作为双向 8 位数据口和输出低 8 位地址复用口;(3)不接外部程序存储器时可作为 8 位准双向 I/O 口使用。(4)在总线状态下,P0 口分时出现数据 D0D7、低 8 位地址 A0A7 及高阻状态。控制=1D QCK /Q读引脚读锁存器写锁存器内部总线引脚P0.X&1Vcc单片微型计算机原理与接口技术20(5)在输出状态下(切换开关 MUX 向下) ,从内部总线来的数据经锁

29、存器反向端和场效应管T2 反向后,输出到端口线。场效应管 T1 关断,T2 漏极开路应外接上拉电阻。D QCK /Q读锁存器写锁存器内部总线&1(6)在输入状态下,应先向锁存器写 1,使两个场效应管均关断,引脚处于“浮空”状态(呈高阻输入状态) ,以保证输入数据的正确性。D QCK /Q读引脚 =1读锁存器写锁存器内部总线&1 0010 0截止截止=0控制=0 时,此脚作输入口(事先必须对它写“1” )1、在总线状态下,双向2、作为数据口输出时, 加上拉电阻3、作为数据口输入时, 必须先写 1,再读入地址/数据 控制=0地址/数据 控制单片微型计算机原理与接口技术21(7)I/O 口的读修改写

30、特性,每个 I/O 端口均有两种读入方法,即有读锁存器和读引脚之分,并有相应的指令。(8)读锁存器指令是从锁存器中读取数据,进行处理,并把处理后的数据重新写人锁存器,这类指令称为“读修改写”指令。(9)那么如何区分读端口的指令是读锁存器还是读引脚呢?当目的操作数是 I/O 端口或 I/O 端口的某一位时,这些指令是读锁存器而不是读引脚,即为“读修改写”指令。(10) “读修改写”指令2P1 端口P1 端口通用 I/O 端口,8 位准双向端口。(1)输出时一切照常,仅在作输入口用时要先对其写“1” 。单片微型计算机原理与接口技术22(2)单片机的引脚(P1 口)D QCK /Q读引脚读锁存器写锁

31、存器内部总线Vcc引脚P1.X内部上拉电阻输出数据 = 0 时0 01=0导通仅在作输入口用时要先对其写“1” 。D QCK /Q读引脚读锁存器写锁存器内部总线Vcc引脚P1.X内部上拉电阻输出数据 = 1 时1 10截止=1单片微型计算机原理与接口技术23D QCK /Q读引脚 =1读锁存器写锁存器内部总线Vcc引脚P1.X内部上拉电阻输入数据时,要先对其写“1”1 10截止1、可作为静态输出2、作为数据口输入时, 必须先写 13P2 端口P2.0P2.7:双向 I/O(内置了上拉电阻) 寻址外部程序存储器时输出高 8 位地址;不接外部程序存储器时可作为 8 位准双向 I/O 口使用。1、不

32、可作为静态输出单片微型计算机原理与接口技术242、作为数据口输入时,必须先写 14P3 端口(1)P3.0P3.7: 双功能口(内置了上拉电阻)它具有特定的第二功能。在不使用它的第二功能时它就是普通的通用准双向 I/O 口。单片微型计算机原理与接口技术25D QCK /Q读引脚读锁存器写锁存器内部总线 引脚 P3.X&内部上拉电阻第二功能输出时,内部自动 D=11 11反相器D QCK /Q读引脚读锁存器写锁存器内部总线此端自动1引脚 P3.X&内部上拉电阻Vcc第二功能输入(RxD,T0,T1,INT0,INT1)第二功能输入时,信号经缓冲器4 直接进入内总线111 0 截止(2)具有第二功

33、能第一功能与 P1 口一样作为一般准双向输入/输出接口,具有字节操作和位操作。第二种功能时,输出锁存器输出 1,通过第二功能线输出特定信号。5P0P3 端口的负载能力及接口要求单片微型计算机原理与接口技术26(1)P0 口每一位输出可驱动 8 个 LS TTL 负载;做通用口使用时,输出级是开漏电路,故需外接上拉电阻;做地址/数据总线时,则无需接外部上拉电阻。(2)P1P3 口输出级接有内部上拉电阻;每一位输出可驱动 4 个 LS TTL 负载。(2)P0P3 端口已映射到特殊功能寄存器中。(3)对这些端口寄存器的读写就实现了对相应端口的输入输出操作。(4)例如:MOV A ,P1 ;把 P1

34、 端口线上的信息输入到 A MOV P1,A ;把 A 的内容由 P1 端口输出MOV P3,OFFH ;使 P3 端口线各位置 1二串行端口1串行通信的基本特征是数据逐位顺序进行传送串行通信的格式及约定(如:同步方式、通讯速率、数据块格式、信号电平等)不同,形成了多种串行通信的协议与接口标准。常见的有:通用异步收发器(UART)本课程介绍的串口通用串行总线(USB)CAN 总线SPI 总线RS-485,RS-232C,RS422A 标准等等2全双工串行接口(UART)数据通信的几个术语:并行:数据各位同时进行传送串行:数据逐位顺序进行传送全双工:(串行通信)收/发可同时进行半双工:(串行通信

35、)收/发不可同时进行异步串行通信:以字符为单位进行传送同步串行通信:以数据块为单位进行传送波特率(bps.):单位时间传送的位数单片微型计算机原理与接口技术2751单片机的串行接口SBUF(发)SBUF(收)发送控制器 TI接收控制器 RI移位寄存器波特率发生器T11A累加器(门)移位寄存器RxDTxD去申请中断引脚引脚CPU内部3MCS5l 单片机片内有一个串行 IO 端口(RXD、TXD) 。通过引脚 RXD(P3.0)和 TXD(P3.1)与外设 电路进行全双工的串行异步通信。4串行端口的基本特点:(1)8031 的串行端口有 4 种基本工作方式,通过编程设置;方式 0方式 1方式 2,

36、3(2)串行端口有两个控制寄存器:SCON(98H)和 PCON(87H)。设置工作方式;发送或接收的状态;数据传送的波特率;中断标志等。(3)串行端口有一个数据寄存器 SBUF,该寄存器为发送和接收所共用。MOV SBUF,A MOV A,SBUF向 SBUF 写入数据就启动了发送过程;读 SBUF 就启动了接收过程。(4)接收/发送数据,无论是否采用中断方式工作,每接收/发送一个数据都必须用指令对RI/TI 清 0,以备下一次收/发。5寄存器(1)串行口控制寄存器 SCON(98H)单片微型计算机原理与接口技术28(2)电源控寄存器 PCON 中有一位 SMOD 与串行口工作有关:(3)S

37、MOD(PCON.7):波特率倍增位。在串行口方式 1、方式 2 和方式 3 时,波特率与 2 SMOD 成正比,亦即当 SMOD1 时,波特率提高一倍。(4)复位时,SMOD0。6串行口工作方式(1)串行口方式 0方式 0 为同步移位寄存器输入输出方 式,常用于扩展 IO 口。方式 0 波特率fosc12。方式 0:以 8 位数据为一帧,不设起始位和停止位,先发送或接收最低位。其帧格式如下:(2)串行口方式 110 位通用异步接口。 (多用于双机之间或与外设电路的通讯) 。收发一帧数据的格式为:1 位起始位、8 位数据位(低位在前)、1 位停止位,共 10 位。波特率可调,由定时器 T1 的

38、溢出率和 SMOD 位确定。(3)串行口方式 2 和方式 311 位异步通信格式。每帧 11 位:1 位起始位,8 位数据位 (低位在前),1 位可编程的第 9数据位和 1 位停止位。两种方式操作是完全一样的,所不同的只是波特率。单片微型计算机原理与接口技术297波特率的设定(1)方式 0 波特率fosc12(2)方式 1 波特率 (定时器 T1 的溢出率)(3)方式 1 波特率 fosc(4)方式 1 波特率 (定时器 T1 的溢出率)(5)定时器 T1 的溢出率(次/秒)= (6)1、3 方式波特率= 8串行端口举例例 1:8031 单片机时钟振荡频率为 11.0592MHz,选用定时器

39、T1 工作方式 2 作波特率发生器,波特率为 2400bps,求初值。解:设置波特率控制位(SMOD)0,则例 2:设计一个串行口程序,将 8031(1)片内 RAM50H-5FH 中的数据串行发送到 803l(2)中,并存储于 803l(2)片内 RAM40H-4FH 单元中。解:假设两单片机晶振均为 11.0592MHz,并按图已经连接完毕。选择串行口方式 3 通信,接收发送 11 位数据,开始为 1 位起始位(0),中间 8 位数据位,奇偶校验位,停止位(1)。奇偶校验的实现:在发送端,TB8 作奇偶校验性。32SMOD64S32SMOD)56(1xfoscSMODs单片微型计算机原理与

40、接口技术30在数据写入缓冲发送器前,将数据的奇偶位写入 TB8。 奇偶性数据传送到接收方 RB8 位上。在接收方,接收到一个字符后,从 SBUF 转移到 A 中,此时程序状态字(PSW)会产生已接收数据的奇偶值。将此奇偶值与 RB8 中的奇偶值相比较,两者应该相符,否则接收字符有错,通知对方重发。如果选择波特率为 9600bps,且选择定时器 1 方式 2 定时,则发送与接收程序如下:第五节 时钟电路及时序一时钟电路1MCS51 内部有一个用于构成振荡器的高增益反相放大器,引脚 XTAL1 和 XTAL2 分别是此放大器的输出端和输入端。2MCS51 的时钟可由内都方式或外部方式产生。(1)内部方式时钟电路如图 1.25 所示。(2)当采用外部方式时钟电路时,外部信号接至 XTAL2(内部时钟电路输入端)而 XTAL1 接

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报