![智仪课件第二章_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/97aa5501-18aa-40ff-b629-e26f13f24d01/97aa5501-18aa-40ff-b629-e26f13f24d011.gif)
![智仪课件第二章_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/97aa5501-18aa-40ff-b629-e26f13f24d01/97aa5501-18aa-40ff-b629-e26f13f24d012.gif)
![智仪课件第二章_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/97aa5501-18aa-40ff-b629-e26f13f24d01/97aa5501-18aa-40ff-b629-e26f13f24d013.gif)
![智仪课件第二章_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/97aa5501-18aa-40ff-b629-e26f13f24d01/97aa5501-18aa-40ff-b629-e26f13f24d014.gif)
![智仪课件第二章_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-3/2/97aa5501-18aa-40ff-b629-e26f13f24d01/97aa5501-18aa-40ff-b629-e26f13f24d015.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二章第二章 主机电路设计主机电路设计第二章第二章 主机电路设计主机电路设计在完成仪表的结构设计,选定处理器及外围芯片在完成仪表的结构设计,选定处理器及外围芯片之后,就要设计仪表的硬件电路。之后,就要设计仪表的硬件电路。处理器:处理器:MCS-51系列单片机系列单片机 嵌入式系统芯片嵌入式系统芯片本章的主要研究内容:本章的主要研究内容:2.1 MCS-51单片机回顾单片机回顾2.2 主机电路主机电路2.1.1 MCS-51芯片的引脚分配和功能芯片的引脚分配和功能2.1.2 存储器存储器2.1.3 I/O端口端口2.1.4 定时器定时器/ /计数器计数器2.1.5 串行口串行口2.1.6 中断系
2、统中断系统2.2.1 外接存储器外接存储器2.2.2 外接外接I/O(8155)2.1 MCS-51单片机单片机MCS-51系列系列芯片芯片有有8031、8051、8751。MCS-52系列系列芯片是芯片是MCS-51系列系列芯片的改进型芯片的改进型。对。对应于上述应于上述MCS-51的有的有8032、8052和和8752。其区别为:。其区别为: 3个定时个定时/计数器、计数器、 内部内部RAM容量增至容量增至256个字节;个字节;内部有内部有ROM或或EPROM容量增至容量增至8kB。 XTAL1 P0 XTAL2 RESET P1 51 系列系列 EA P2 ALE PSEN P3 Vcc
3、 Vss VCC 、VSS:5V电源的正端和接地电源的正端和接地端。端。XTAL1、XTAL2:内部振荡电路:内部振荡电路的输入、输出端。的输入、输出端。RESET:复位输入端。:复位输入端。2.1.1 MCS-51芯片的引脚分配和功能芯片的引脚分配和功能 XTAL1 P0 XTAL2 RESET P1 51 系列系列 EA P2 ALE PSEN P3 Vcc Vss EA:内部、外部程序存储器的选择端。:内部、外部程序存储器的选择端。为为高电平高电平时,访问内部程序存储器,时,访问内部程序存储器,当程序计数器的值超过当程序计数器的值超过0FFF时,转入时,转入外部程序存储器;为外部程序存储
4、器;为低电平低电平时,访问时,访问外部存储器。外部存储器。ALE:地址锁存允许信号,在访问外:地址锁存允许信号,在访问外部存储器时,用来锁存由部存储器时,用来锁存由P0口送出的口送出的低低8位信号;还可以以位信号;还可以以1/6的固定速率的固定速率输出脉冲信号,作为对外输出的时钟输出脉冲信号,作为对外输出的时钟或定时。或定时。P0、P1、P2、P3:8位位I/O端口。端口。PSEN:外部程序存储器的读选通信:外部程序存储器的读选通信号,在访问外部程序存储器时会自动号,在访问外部程序存储器时会自动产生该信号,在访问内部产生该信号,在访问内部ROM或外部或外部RAM时不会产生该信号。时不会产生该信
5、号。 XTAL1 P0 XTAL2 RESET P1 51 系列系列 EA P2 ALE PSEN P3 Vcc Vss 程序存储器程序存储器、数据、数据存储器存储器、特殊功能寄存器的、特殊功能寄存器的寻址范围和操作方式寻址范围和操作方式。2.1.2 存储器存储器 0000H 0FFFH 外 部 程 序 存 储 器 1000H FFFFH 内部 EA=1 外部 EA=0 0FFFH 0000H 程序存储器 程序存储器程序存储器访问外部访问外部ROM时,时,PSEN产生选产生选通信号。通信号。数据存储器有数据存储器有内部、外部内部、外部之分之分 RAM 特殊功能寄存器 工作寄存器 1FH 00H
6、 内部数据存储器 位寻址区 20H 2FH 数据缓冲区 30H 7FH FFH 80H 工作寄存器工作寄存器又分为四组,由程序状态又分为四组,由程序状态字寄存器字寄存器(PSW)中第中第3、4位位(RS0、RS1)来决定。来决定。 1 0 1 1 0 1 0 0 RS0 RS1 工作寄存器组 0 组(0007H) 1 组(080FH) 2 组(1017H) 3 组(181FH) 程序状态字寄存器程序状态字寄存器PSWC:进位标志。:进位标志。在加(或减)运算时,最高位有进位在加(或减)运算时,最高位有进位(或借位),则(或借位),则C=1,否则否则C=0。在进行位操作时,在进行位操作时,C作为
7、位操作累加器。作为位操作累加器。AC:半进位标志。半进位标志。在加(或减)运算时,低半字节在加(或减)运算时,低半字节向高半字节有进位(或借位),则向高半字节有进位(或借位),则AC=1,否则否则AC=0。F0:用户标志。用户标志。由用户置位、复位,作为软件标志。由用户置位、复位,作为软件标志。RS1、RS0:工作寄存器指针,用来选择当前工作的工作寄存器指针,用来选择当前工作的寄存器组。单片机复位时,寄存器组。单片机复位时,RS1=RS0=0。C RS1 F0 AC D7 D6 D5 D4 D3 D2 D1 D0 RS0 OV F1 P OV:溢出标志。:溢出标志。反映运算结果是否溢出,溢出时
8、,反映运算结果是否溢出,溢出时,OV=1,否则否则OV=0。溢出溢出和和进位进位是两种不同性质的是两种不同性质的概念。概念。F1:用户标志位。用户标志位。由用户置位、复位,作为软件标由用户置位、复位,作为软件标志。志。P:奇偶标志。奇偶标志。反映累加器反映累加器A中内容的奇偶性中内容的奇偶性。奇数奇数个个1,P置置1,否则为,否则为0。C RS1 F0 AC D7 D6 D5 D4 D3 D2 D1 D0 RS0 OV F1 P 位寻址区位寻址区 RAM 特殊功能寄存器 工作寄存器 1FH 00H 内部数据存储器 位寻址区 20H 2FH 数据缓冲区 30H 7FH FFH 80H 7F 7E
9、 7D 7C 7B 7A 7978777675747372717037363534333231302F 2E 2D 2C 2B 2A 292827262524232221201F 1E 1D 1C 1B 1A 191817161514131211100F 0E 0D 0C 0B 0A 09080706050403020100 工作寄存器工作寄存器00H1FH20H2FH位寻址区位寻址区 特殊功能寄存器特殊功能寄存器 RAM 特殊功能寄存器 工作寄存器 1FH 00H 内部数据存储器 位寻址区 20H 2FH 数据缓冲区 30H 7FH FFH 80H 单片机内的各种控制寄存单片机内的各种控制寄
10、存器、状态寄存器、器、状态寄存器、I/O端口端口锁存器、定时器等都是以锁存器、定时器等都是以特殊功能寄存器的形式出特殊功能寄存器的形式出现的,它们是离散分布的。现的,它们是离散分布的。见见P22表表2-2。 外部外部RAM I/O 0000H FFFFH 将外部将外部RAM和和I/O接在接在P0、P2口,利用口,利用P3口的口的变异控制功能即可进行变异控制功能即可进行读写操作。读写操作。外部数据存储器外部数据存储器I/O端口(端口(P0P3)为并行输入输出口,并具有总线)为并行输入输出口,并具有总线复用和功能复用的功能:复用和功能复用的功能:P0口(口(P0.0P0.7):双向):双向I/O口
11、,地址口,地址/数据总线口数据总线口。在访问外部存储器时,可分时用作低。在访问外部存储器时,可分时用作低8位地址和位地址和8位数据线。低位数据线。低8位地址由位地址由ALE信号的负跳变使它锁存信号的负跳变使它锁存到外部地址锁存器中。到外部地址锁存器中。2.1.3 I/O端口端口21DQCL/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制引脚引脚P0.X34VccP1口(口(P1.0P1.7):双向):双向I/O口。每一位口线都可独口。每一位口线都可独立用作输入线或输出线。当某一位由输出方式改为立用作输入线或输出线。当某一位由输出方式改为输输 入方式时
12、,相应位的锁存器必须写入入方式时,相应位的锁存器必须写入“1”。D QCLQ内部总线内部总线写锁存器写锁存器读引脚读引脚读锁存器读锁存器内部提升内部提升VccP1.x引脚引脚TP2口(口(P2.0P2.7):双向):双向I/O口。与口。与P1口相同,可以口相同,可以作为输入口或输出口。在访问外部存储器时,输出高作为输入口或输出口。在访问外部存储器时,输出高8位地址。位地址。21DQCL/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位控制控制引脚引脚 P2.X3内部上拉电阻内部上拉电阻VccP3口(口(P3.0P3.7):双向):双向I/O口。每个端子都有自己口
13、。每个端子都有自己的第二功能(如下所示)的第二功能(如下所示) 。第一种功能时,第二种功。第一种功能时,第二种功能的控制线为高电平。第二种功能时,相应口线的锁能的控制线为高电平。第二种功能时,相应口线的锁存器必须是存器必须是“1”状态。状态。P3.0 RXD (串行输入串行输入) P3.4 T0P3.1 TXD (串行输出串行输出) P3.5 T1P3.2 INT0 P3.6 WR(外部写脉冲输出线外部写脉冲输出线)P3.3 INT1 P3.7 RD(外部读脉冲输出线外部读脉冲输出线)21DQCL/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线第二功能输出第二功能输出引脚引脚
14、P3.X3内部上拉电阻内部上拉电阻Vcc第二功能输入第二功能输入4T单片机外扩时,单片机外扩时, P0兼作数据总线和低兼作数据总线和低8位地址总线位地址总线,P2输出高输出高8位位地址信号。地址信号。P3可用作串行口和控制总线可用作串行口和控制总线。使用低使用低8位地址信号锁存器,在位地址信号锁存器,在ALE负跳时锁入。负跳时锁入。由由PSEN控制外部程序存储器,控制外部程序存储器,WR、RD控制外部控制外部RAM/IO。单片机与外部存储器和I/O的连接803180518751P2口ALEP0口PSENWRRD地址总线数据总线控制总线EPROMOE地址锁存器RAM/IO口WR RDA0-A15
15、D0-D751系列有系列有2个个16位的定时位的定时/计数器。计数器。2.1.4 定时器定时器/ /计数器计数器定时器定时器T0由特殊功能寄存器由特殊功能寄存器TL0和和TH0构成,定时构成,定时器器T1由特殊功能寄存器由特殊功能寄存器TL1和和TH1构成。特殊功能构成。特殊功能寄存器寄存器TMOD和和TCON分别控制其分别控制其工作方式和运行工作方式和运行状态状态。并按要求计算时间常数,。并按要求计算时间常数, 送入送入TH和和TL中。中。定时定时/ /计数器的构成计数器的构成TMOD的格式的格式T1 方式字段 T0 方式字段 GATE M0 M1 C/T GATE C/T M1 M0 D7
16、 D6 D5 D4 D3 D2 D1 D0 M1、M0 工作方式确定位,如下工作方式确定位,如下:M1M0 工作方式工作方式00方式方式0,13位定时器位定时器/计数器计数器01方式方式1,16位定时器位定时器/计数器计数器10方式方式2,常数自动装入的,常数自动装入的8位位11方式方式3,分为两个,分为两个8位位(仅用于仅用于T0)TMOD的格式的格式T1 方式字段 T0 方式字段 GATE M0 M1 C/T GATE C/T M1 M0 D7 D6 D5 D4 D3 D2 D1 D0 C/T定时器、计数器的方式选择位,定时器、计数器的方式选择位, 0-定时器方式,定时器方式,1-计数器方
17、式。计数器方式。GATE 门控位。门控位。 GATE=0,定时器、计数器的运行定时器、计数器的运行不受外部输入引脚的控制。不受外部输入引脚的控制。GATE=1,定时器、计定时器、计数器的运行受外部输入引脚电平的控制。数器的运行受外部输入引脚电平的控制。INT1、INT0分别控制分别控制T1、T0的运行。的运行。TCON的格式的格式 TF1 TR0 TF0 TR1 D7 D6 D5 D4 D3 D2 D1 D0 TR0为定时器为定时器T0的运行控制位,的运行控制位,可通过软件实现置可通过软件实现置位和复位。位和复位。当当GATE为为0时,时,TR0=1,允许,允许T0计数,计数,TR0=0,禁,
18、禁止止T0计数;计数;当当GATE为为1时,仅当时,仅当TR0=1且且INT0=1,允许,允许T0计数,计数,TR0=0或或INT0=0,禁止禁止T0计数;计数;TF0是是T0的溢出标志位。的溢出标志位。当当T0溢出时,由硬件将溢出时,由硬件将TF0置置1,并申请中断。进入中断服务程序时,硬件再将,并申请中断。进入中断服务程序时,硬件再将TF0自动清自动清0 (也可由软件清(也可由软件清0)。)。定时定时/ /计数器的工作方式计数器的工作方式C/T=1 C/T=0 振荡器 1/12 中断 TL0 5 位或 8 位 TH0 8 位 TF0 控制 T0 脚 P3.4 GATE INT0 TR0 方
19、式方式0(13位)和方式位)和方式1(16位)位)定时器定时器T0方式方式0和方式和方式1逻辑结构逻辑结构T1 方式字段 T0 方式字段 GATE M0 M1 C/T GATE C/T M1 M0 D7 D6 D5 D4 D3 D2 D1 D0 TF1 TR0 TF0 TR1 D7 D6 D5 D4 D3 D2 D1 D0 方式方式2(8位自动恢复初值)位自动恢复初值)C/T=1 C/T=0 振荡器 1/12 中断 TL0 8 位 TH0 8 位 TF0 控制 T0 脚 P3.4 GATE INT0 TR0 重新装入 定时器定时器T0方式方式2逻辑结构逻辑结构方式方式3(将(将T0分成分成2个
20、个8位定时器位定时器/计数器)计数器)控制 C/T=1 C/T=0 振荡器 1/12 TL0 8 位 TH0 8 位 TF0 中断 控制 T0 脚 P3.4 GATE INT0 TR0 TF1 中断 TR1 1/12fosc 定时器定时器T0方式方式3逻辑结构逻辑结构定时器应用举例:定时器应用举例:要求要求T0产生产生1ms定时,并使定时,并使P1.0输输出周期为出周期为2ms的方波。的方波。T0工作方式工作方式1,fosc=12MHz。 解:计算解:计算T0初始值:初始值:(216x) T = 10-3,T=12/fosc= 10-6 程序:程序:MOV TMOD,#01H MOV TL0,
21、#18H MOV TH0,#0FCH SETB TR0 JBC TF0,CONT SJMP LOOP MOV TL0,#18H MOV TH0,#0FCH CPL P1.0 SJMP LOOP LOOP:CONT:T1 方式字段 T0 方式字段 GATE M0 M1 C/T GATE C/T M1 M0 D7 D6 D5 D4 D3 D2 D1 D0 所以:所以:x=64536 或或 x=0FC18H,TMOD=01H TF1 TR0 TF0 TR1 D7 D6 D5 D4 D3 D2 D1 D0 LOOP:CONT:计数器应用举例:计数器应用举例:用用T1的方式的方式2计数,要求每计满计数,
22、要求每计满100次,将次,将P1.1取反。取反。 解:计算解:计算T1初值:初值:x=28100=156(9CH)所以:所以:TH1=TL1=9CH,TMOD=60H程序:程序:MOV TMOD,#60H MOV TL1,#9CH MOV TH1,#9CH SETB TR1 JBC TF1,CONT SJMP LOOP CPL P1.1 SJMP LOOP T1 方式字段 T0 方式字段 GATE M0 M1 C/T GATE C/T M1 M0 D7 D6 D5 D4 D3 D2 D1 D0 51 系列单片机内部的串行接口有两个缓冲器:系列单片机内部的串行接口有两个缓冲器: 发送缓冲器发送缓
23、冲器SBUF 接收缓冲器接收缓冲器SBUF两个缓冲器共用一个地址两个缓冲器共用一个地址串行口串行口SIO 也也有有03四种工作方式,应对四种工作方式,应对特殊功能寄特殊功能寄存器存器SCON 和和 PCON设置初值,以确定设置初值,以确定工作方式和波工作方式和波特率系数,特率系数,并按要求计算并按要求计算波特率波特率。定时器。定时器T1为波特率为波特率发生器。发生器。2.1.5 串行口串行口串行口寄存器串行口寄存器控制寄存器控制寄存器SCON,其格式如下:其格式如下: SM0 REN SM2 SM1 D7 D6 D5 D4 D3 D2 D1 D0 TB8 RB8 TI RI SM0、SM1:串
24、行口的方式选择位。串行口的方式选择位。SM0SM1 工作方式工作方式00移位寄存器方式(用于移位寄存器方式(用于I/O扩展)扩展)018位位UART,波特率可变,波特率可变109位位UART,波特率有,波特率有fosc/64, fosc/32119位位UART,波特率可变,波特率可变 SM0 REN SM2 SM1 D7 D6 D5 D4D3 D2 D1 D0 TB8 RB8 TI RI SM2为方式为方式2、方式、方式3 时的多机通信控制位。时的多机通信控制位。方式方式2、方式、方式3 时,若置时,若置SM2=1,则允许多机通信。,则允许多机通信。当当SM2=1时,若接收到的第时,若接收到的
25、第9位数据(位数据(RB8)为)为1,说,说明是地址帧,数据装入明是地址帧,数据装入SBUF并激活并激活RI;若接收到的;若接收到的第第9位数据(位数据(RB8)为)为0,说明是数据帧,不激活,说明是数据帧,不激活RI并将接收数据丢弃并将接收数据丢弃。当当SM2=0,则不论接收到的第,则不论接收到的第9位数据是位数据是1或或0,都将前,都将前8位数据装入位数据装入SBUF并激活并激活RI。方式方式1时,时, SM2=1或或0,仅在接收到有效的停止位时,仅在接收到有效的停止位时,RB8存放接收的停止位并激活存放接收的停止位并激活RI。方式方式0时,时, SM2=0。 SM0 REN SM2 SM
26、1 D7 D6 D5 D4 D3 D2 D1 D0 TB8 RB8 TI RI REN:允许串行接收位。由软件置位或清零。允许串行接收位。由软件置位或清零。REN=1允许接收,允许接收,REN=0禁止接收。禁止接收。TB8:发送数据位。该位是方式发送数据位。该位是方式2、3中要发送的第中要发送的第9位数据。位数据。在多机通信中用来表示是地址帧还是数据在多机通信中用来表示是地址帧还是数据帧,帧,1为地址帧,为地址帧,0为数据帧。为数据帧。RB8:接收数据位。是方式接收数据位。是方式2、3中接收到的第中接收到的第9位数位数据,据,在多机通信中为地址、数据标识位。在多机通信中为地址、数据标识位。方式
27、方式0中,中,未用。方式未用。方式1中,中,RB8存放接收的停止位。存放接收的停止位。 SM0 REN SM2 SM1 D7 D6 D5 D4 D3 D2 D1 D0 TB8 RB8 TI RI RI:接收中断标志。方式接收中断标志。方式0时,接收完第时,接收完第8 位数据或位数据或在其他方式时,接收到停止位的中间点由硬件自动在其他方式时,接收到停止位的中间点由硬件自动置位,表示一帧串行数据接收结束。置位,表示一帧串行数据接收结束。 RI可供软件查可供软件查询,也可申请中断。询,也可申请中断。 CPU响应中断时并不清除响应中断时并不清除RI,必须在中断服务程序中由软件对必须在中断服务程序中由软
28、件对RI清零。清零。TI:发送中断标志。方式发送中断标志。方式0时,发送完第时,发送完第8 位数据或位数据或在其他方式时,在发送停止位之初由硬件自动置位,在其他方式时,在发送停止位之初由硬件自动置位,表示一帧串行数据发送结束。表示一帧串行数据发送结束。TI可供软件查询,也可供软件查询,也可申请中断,可申请中断,CPU响应中断时并不清除响应中断时并不清除TI,必须在,必须在中断服务程序中由软件对中断服务程序中由软件对TI清零。清零。 SM0 REN SM2 SM1 D7 D6 D5 D4 D3 D2 D1 D0 TB8 RB8 TI RI 电源控制寄存器电源控制寄存器PCON Smod D7 D
29、6 D5 D4 D3 D2 D1 D0 其中的其中的SMOD位为串行接口波特率系数控制,位为串行接口波特率系数控制,SMOD=1时波特率加倍。时波特率加倍。串行口的工作方式串行口的工作方式串行接口的串行接口的4种工作方式中,串行通信只使用方式种工作方式中,串行通信只使用方式1、2、3。方式。方式0主要用于扩展输入输出口。主要用于扩展输入输出口。方式方式0:串行口以方式:串行口以方式0 工作时,为同步移位寄存工作时,为同步移位寄存器方式(低位在前)。数据由器方式(低位在前)。数据由RXD端输入端输入(REN=1接收)或输出,同步移位脉冲由接收)或输出,同步移位脉冲由TXD端端输出,输出,波特率就
30、是振荡频率的波特率就是振荡频率的12分频。分频。在发送或在发送或接收完接收完8位数据后置中断标志位位数据后置中断标志位TI或或RI。 SM0 REN SM2 SM1 D7 D6 D5 D4 D3 D2 D1 D0 TB8 RB8 TI RI 发送:发送:在在TI=0时,由一条写发送缓冲器时,由一条写发送缓冲器SBUF的指令的指令启动,然后在启动,然后在RXD线上发出线上发出8位数据,同时在位数据,同时在TXD线上发出同步移位脉冲。数据发送完后由硬件置位线上发出同步移位脉冲。数据发送完后由硬件置位TI。若中断开放,若中断开放,可发出串行口中断申请。也可发出串行口中断申请。也可通可通过查询过查询T
31、I来确定是否发送完一组数据。当来确定是否发送完一组数据。当TI=1,用用软件将软件将TI清零,然后发送下一帧数据。清零,然后发送下一帧数据。接收:接收:在在RI=0时,使时,使REN=1来启动接收过程。接收来启动接收过程。接收数据由数据由RXD,TXD发送同步移位脉冲。收到发送同步移位脉冲。收到8位数位数据以后,由硬件置据以后,由硬件置RI=1,在中断允许时可发出串行在中断允许时可发出串行口中断申请。口中断申请。也也可通过查询可通过查询RI来确定是否接收完一来确定是否接收完一组数据。组数据。 RI=1表示接收数据已装入缓冲器。表示接收数据已装入缓冲器。RI由软由软件清件清“0”,准备接收下一帧
32、数据。,准备接收下一帧数据。在该方式中,在该方式中,SCON中的中的SM2、RB8、TB8都不起作都不起作用,置用,置0。方式方式1:为:为8位异步通信接口,一帧数据有位异步通信接口,一帧数据有10位位 ,1位位起始位,起始位,8位数据位,位数据位,1位停止位。位停止位。一般设一般设T1为工作方式为工作方式2, 波特率波特率则为:则为:mod23212 (256(1)SoscfTH波特率发送时:发送时:数据由数据由TXD端输出。当数据写入发送缓冲端输出。当数据写入发送缓冲器器SBUF后,启动串行口发送器发送,待一帧数据发后,启动串行口发送器发送,待一帧数据发送完毕送完毕TI置置1。接收时:接收
33、时:数据由数据由RXD端输入。在端输入。在REN置置1后,接收后,接收器开始以所选波特率器开始以所选波特率16倍的速率采样倍的速率采样RXD端的电平,端的电平,检测到起始位有效时,开始接收数据一帧的其余信检测到起始位有效时,开始接收数据一帧的其余信息。息。当当RI=0,并且接收到的停止位为,并且接收到的停止位为1时,时,停止位进停止位进入入RB8,接收到的数据进入接收缓冲器,且置,接收到的数据进入接收缓冲器,且置RI=1,若两个条件不满足,信息将丢失。若两个条件不满足,信息将丢失。方式方式2、方式、方式3:为:为9位异步通信接口,一帧数据位异步通信接口,一帧数据有有11位位 ,1位起始位,位起
34、始位,8位数据位,位数据位,1位可程控为位可程控为1或或0 的第的第9位数据位和位数据位和1位停止位。位停止位。方式方式2, 波特率固定,波特率固定,为:为:方式方式3, 波特率可变,波特率可变,为:为:mod23212 (256(1)SoscfTH波特率mod264Soscf波特率发送:发送:TI=0时,数据由时,数据由TXD端输出,必须在启动发端输出,必须在启动发送前将附加的第送前将附加的第9 位数据装入位数据装入SCON中的中的TB8,这一,这一位到底起什么作用由用户决定。位到底起什么作用由用户决定。准备好准备好TB8以后,就可以启动发送,用一条以以后,就可以启动发送,用一条以SBUF为
35、目的地址的指令启动发送。串行口能自动把为目的地址的指令启动发送。串行口能自动把TB8取出,并装入到第取出,并装入到第9 位数据,再逐一发送出去位数据,再逐一发送出去。发发送完后送完后TI=1。接收:接收:接收与方式接收与方式1基本相似,基本相似,不同之处不同之处就是要接就是要接收收9位有效数据。在方式位有效数据。在方式1 时是把停止位当作第时是把停止位当作第9位位来处理的,在方式来处理的,在方式2(或方式(或方式3)中存在着真正的第)中存在着真正的第9 位数据。在接收完第位数据。在接收完第9 位数据后,必须同时满足位数据后,必须同时满足两个两个条件:条件:RI=0,并且,并且SM2=0或接收到
36、的第或接收到的第9位数位数据为据为1。若这两个条件成立,接收到的第若这两个条件成立,接收到的第9 为数据为数据进入进入RB8,前,前8位数进入位数进入SBUF以便以便CPU读取,并且读取,并且使使RI=1。若条件不满足,则此次接收的数据丢弃,若条件不满足,则此次接收的数据丢弃,RI不置位。不置位。 SM0 REN SM2 SM1 D7 D6 D5 D4 D3 D2 D1 D0 TB8 RB8 TI RI CONT:WAIT:LOOP:串行口应用举例串行口应用举例1:要求从要求从SIO输出输出40H4FH的数据。的数据。SIO工作于方式工作于方式2,TB8作奇偶校验位。作奇偶校验位。程序程序:
37、TRT : MOV SCON,#80H MOV PCON,#80H MOV R0,#40H MOV R7,#10H MOV A,R0 MOV C,P MOV TB8,C MOV SBUF,A JBC TI,CONT SJMP WAIT INC R0 DJNZ R7,LOOP RET 方式设置方式设置波特率设置波特率设置奇偶校验位奇偶校验位 SM0 REN SM2 SM1 D7 D6 D5 D4 D3 D2 D1 D0 TB8 RB8 TI RI Smod D7 D6 D5 D4 D3 D2 D1 D0 C RS1 F0 AC D7 D6 D5 D4 D3 D2 D1 D0 RS0 OV F1
38、P 串行口应用举例串行口应用举例2:要求从要求从SIO输入数据,并将数据输入数据,并将数据放入放入40H4FH。SIO工作于方式工作于方式2。MOV SCON,#90H MOV PCON,#80H MOV R0,#40H MOV R7,#10H JBC RI,CONT SJMP WAIT MOV A,SBUF JNB PSW.0,CONT1 JNB RB8,ERR SJMP RIGHT JB RB8,ERRMOV R0,A INC R0 DJNZ R7,WAIT CLR PSW.5 RET SETB PSW.5 RET WAIT:CONT:CONT1:ERR:RIGHT:方式设置方式设置SM0
39、 REN SM2 SM1 D7 D6 D5 D4 D3 D2 D1 D0 TB8 RB8 TI RI P=RB8?C RS1 F0 AC D7 D6 D5 D4 D3 D2 D1 D0 RS0 OV F1 P Smod D7 D6 D5 D4 D3 D2 D1 D0 2.1.6 中断系统中断系统当当CPU正在处理某事件时外界发生了更为紧急的请正在处理某事件时外界发生了更为紧急的请求,要求求,要求CPU暂停当前的工作,去处理这个紧急事暂停当前的工作,去处理这个紧急事件。处理完毕后,再回到原来被中断的地方,继续件。处理完毕后,再回到原来被中断的地方,继续原来的工作,这样的过程称为中断。实现这一功能
40、原来的工作,这样的过程称为中断。实现这一功能的部件称为的部件称为中断系统中断系统,请求,请求CPU中断的请求源称为中断的请求源称为中断源。中断源。中断系统是为处理机对外界异步事件具有处理能力中断系统是为处理机对外界异步事件具有处理能力而设置的。而设置的。中断系统的概念中断系统的概念单片机与外部事件信息的交换方式:单片机与外部事件信息的交换方式:查询方式查询方式和和中中断方式断方式。中断方式。中断方式CPU效率高。效率高。 对单片机的多个中断源进行管理。中断系统的任务对单片机的多个中断源进行管理。中断系统的任务包括以下几个方面:包括以下几个方面:中断系统的任务中断系统的任务开中断或关中断:开中断
41、或关中断: 这是这是CPU能否能否接收中断申请的关键。只有在开中断接收中断申请的关键。只有在开中断的情况下,才有可能接收中断源的申请。中断的开的情况下,才有可能接收中断源的申请。中断的开放或关闭通过指令实现。放或关闭通过指令实现。中断的排队:中断的排队:对于多中断源系统,在开中断的条件下,如果有若对于多中断源系统,在开中断的条件下,如果有若干个中断申请同时发生,就需要决定先对哪一个中干个中断申请同时发生,就需要决定先对哪一个中断申请进行响应。也就是说要对中断源作一个优先断申请进行响应。也就是说要对中断源作一个优先级的排队。级的排队。中断的响应中断的响应:单片机在响应中断源的申请时,单片机在响应
42、中断源的申请时,(1)应使应使CPU从主程从主程序转去执行中断服务子程序,序转去执行中断服务子程序,(2)同时要把断点地址同时要把断点地址送入堆栈进行保护,以便在执行完中断服务子程序送入堆栈进行保护,以便在执行完中断服务子程序后能返回到原来的断点,继续执行主程序后能返回到原来的断点,继续执行主程序。(3)中断中断系统还要能确定各个被响应中断源的中断服务子程系统还要能确定各个被响应中断源的中断服务子程序的入口。序的入口。中断响应原则中断响应原则:根据中断源的轻重缓急排队,优先处理最紧急事件根据中断源的轻重缓急排队,优先处理最紧急事件的中断请求源(每一个中断源有一个优先级别)。的中断请求源(每一个
43、中断源有一个优先级别)。中断源有高、低两个优先级,可实现两级中断源有高、低两个优先级,可实现两级中断嵌套中断嵌套。当当CPU正在处理一个中断源请求时,发生了正在处理一个中断源请求时,发生了另一个优先级比它高的中断源请求。另一个优先级比它高的中断源请求。CPU暂暂停对原来中断源的处理程序,转而去处理优先停对原来中断源的处理程序,转而去处理优先级更高的中断源请求,处理完以后,级更高的中断源请求,处理完以后,再回到原再回到原来的低级中断处理程序。这就是中断嵌套。来的低级中断处理程序。这就是中断嵌套。中断的嵌套中断的嵌套51系列单片机有系列单片机有5个中断源,分为个中断源,分为内部中断内部中断和和外部
44、中外部中断断。两个外部中断源从两个外部中断源从INT0(P3.2)和和INT1(P3.3)端子输入。端子输入。外部中断请求信号有两种方式:外部中断请求信号有两种方式:电平输入方式电平输入方式和和负负边沿输入方式(下降沿)边沿输入方式(下降沿)。电平输入方式电平输入方式:在在INT0和和INT1端子上检测到低电位端子上检测到低电位即为有效的中断申请。即为有效的中断申请。负边沿输入方式负边沿输入方式:要检测到负脉冲跳变才为有效申要检测到负脉冲跳变才为有效申请。请。从面向用户的角度来看,从面向用户的角度来看,51系列单片机的中断系统系列单片机的中断系统就是若干个特殊功能寄存器:定时器运行控制寄存就是
45、若干个特殊功能寄存器:定时器运行控制寄存器器TCON;中断允许寄存器;中断允许寄存器IE;中断优先级寄存器中断优先级寄存器IP;串行口控制寄存器串行口控制寄存器SCON。其中,其中,TCON和和SCON只有一部分位用于中断控制。只有一部分位用于中断控制。通过对特殊功能寄存器各位的置位或复位来实现中通过对特殊功能寄存器各位的置位或复位来实现中断控制功能的。断控制功能的。中断的撤除:中断的撤除:在响应中断申请以后,返回主程序之在响应中断申请以后,返回主程序之前,中断申请应该撤除,否则就等于中断申请仍然前,中断申请应该撤除,否则就等于中断申请仍然存在,这会影响对其他中断申请的响应。存在,这会影响对其
46、他中断申请的响应。51系列单系列单片机只能对一部分中断申请在响应之后自动撤除。片机只能对一部分中断申请在响应之后自动撤除。TCON中与中断有关的各控制位:中与中断有关的各控制位:IE1 IE0 IT0 IT1 D7 D6 D5 D4 D3 D2 D1 D0 与中断有关的寄存器与中断有关的寄存器IT0:选择外部中断:选择外部中断INT0的中断触发方式。的中断触发方式。IT0=0电电平输入方式;平输入方式;IT0=1负边沿输入方式。负边沿输入方式。IT0的状态由的状态由指令置位或复位。指令置位或复位。IE0:外部中断:外部中断INT0的中断申请标志。当检测到的中断申请标志。当检测到INT0上存在有
47、效中断申请时,由硬件使上存在有效中断申请时,由硬件使IE0置位。置位。当当CPU 转向中断服务程序时,由硬件清转向中断服务程序时,由硬件清0。IT1:选择外部中断:选择外部中断INT1的中断触发方式。的中断触发方式。IE1:外部中断:外部中断INT1的中断申请标志。的中断申请标志。51系列单片机系列单片机中断的开放和关闭中断的开放和关闭是由中断允许寄存是由中断允许寄存器器IE来实现两级控制的。就是有一个总控位来实现两级控制的。就是有一个总控位EA, EA=0关闭所有中断。关闭所有中断。EA=1,对各中断源的申请是对各中断源的申请是否开放,还要看各中断源的中断允许控制位。否开放,还要看各中断源的
48、中断允许控制位。 ET1 ET0 EX0 EX1 D7 D6 D5 D4 D3 D2 D1 D0 ES EA 中断允许寄存器中断允许寄存器IEEA:CPU中断允许的总控制位。中断允许的总控制位。ES:串行口中断允许位。串行口中断允许位。ES=1串行口开中断,串行口开中断,ES=0关中断。关中断。 ET1 ET0 EX0 EX1 D7 D6 D5 D4 D3 D2 D1 D0 ES EA ET1:T1的溢出中断允许位。的溢出中断允许位。ET1=1允许允许T1溢出中溢出中断,断,ET1=0不允许不允许T1溢出中断。溢出中断。EX1:外部中断外部中断1(INT1)的中断允许位。)的中断允许位。EX1
49、=1允允许外部中断许外部中断1的中断申请,的中断申请,EX1=0不允许中断。不允许中断。ET0:T0的溢出中断允许位。的溢出中断允许位。EX0 :外部中断外部中断0(INT0)的中断允许位。)的中断允许位。IE寄存器的单元地址为寄存器的单元地址为A8H,各位都可以位寻址,各位都可以位寻址,位地址为(位地址为(A8HAFH)。既可字节寻址也可位寻址。)。既可字节寻址也可位寻址。中断优先级寄存器中断优先级寄存器IP PT1 PT0 PX0 PX1 D7 D6 D5 D4 D3 D2 D1 D0 PS PS:串行口中断优先级控制位。串行口中断优先级控制位。PT1:T1中断优先级控制位。中断优先级控制
50、位。PX1:外部中断外部中断INT1中断优先级控制位。中断优先级控制位。PT0:T0中断优先级控制位。中断优先级控制位。PX0:外部中断外部中断INT0中断优先级控制位。中断优先级控制位。相应位为相应位为1则为高,为则为高,为0则为低。则为低。IP的字节地址为的字节地址为B8H,可位寻址,位地址为,可位寻址,位地址为B8HBCH。当两个同优先级级别的中断申请同时来到时,按固当两个同优先级级别的中断申请同时来到时,按固有的次序来处理中断响应。有的次序来处理中断响应。 中 断 源 优 先 级 INT0 INT1 T0 T1 SIO 最高 最低 51 中断源的优先级顺序 51系列单片机在接收到发来的
51、中断申请以系列单片机在接收到发来的中断申请以后,先把这些中断申请锁定在相应的中断后,先把这些中断申请锁定在相应的中断标志位中,然后在下一个机器周期按内部标志位中,然后在下一个机器周期按内部优先顺序和中断优先级分别来查询这些标优先顺序和中断优先级分别来查询这些标志,并在一个机器周期之内完成检测和优志,并在一个机器周期之内完成检测和优先级排队。先级排队。中断响应过程中断响应过程响应中断的条件响应中断的条件必须没有同级或更高级的中断正在得到响应。必须没有同级或更高级的中断正在得到响应。如果有则必须等如果有则必须等CPU为它们服务完之后才能响为它们服务完之后才能响应新的中断申请。应新的中断申请。必须要
52、等当前正在执行的指令执行完毕之后,必须要等当前正在执行的指令执行完毕之后,CPU才能响应新的中断申请。才能响应新的中断申请。若正在执行的指令是若正在执行的指令是RETI或是任何访问或是任何访问IE或或IP寄存寄存器的指令,则必须要在执行完另外一条指令之后才器的指令,则必须要在执行完另外一条指令之后才可以响应新的中断申请。可以响应新的中断申请。若条件满足,若条件满足,CPU就在下一个机器周期响应中断,就在下一个机器周期响应中断,完成两件工作:完成两件工作:把中断点的地址送入堆栈保护;把中断点的地址送入堆栈保护;根据中断的不同来源把程序的执行转到相应的中断根据中断的不同来源把程序的执行转到相应的中
53、断服务子程序的入口。服务子程序的入口。51系列单片机系列单片机中断源中断源入口地址入口地址INT00003HT0000BHINT10013HT1001BHSIO0023HCPU响应中断之后,中断请求被锁存在了响应中断之后,中断请求被锁存在了TCON和和SCON的相应的标志位。当某个中断请求得到响应之的相应的标志位。当某个中断请求得到响应之后,相应的中断标志位应该予以清除,否则后,相应的中断标志位应该予以清除,否则CPU又又会继续查询这些标志位而认为又有新的中断申请来会继续查询这些标志位而认为又有新的中断申请来到,实际上这些中断申请并不存在。因此,存在中到,实际上这些中断申请并不存在。因此,存在
54、中断请求的撤除问题。在断请求的撤除问题。在51系列中的系列中的5个中断源中,个中断源中,定定时器中断和外部中断是可以自动撤除的。时器中断和外部中断是可以自动撤除的。对于串行口的中断标志对于串行口的中断标志TI和和RI,中断系统不中断系统不予以自动撤除。予以自动撤除。在响应串行口中断之后要先测在响应串行口中断之后要先测试这两个标志位,以决定是接收还是发送,所试这两个标志位,以决定是接收还是发送,所以不能立即撤销。但在使用完后应使其复零,以不能立即撤销。但在使用完后应使其复零,以结束这次中断申请。复位操作可在中断服务以结束这次中断申请。复位操作可在中断服务子程序中用指令实现。子程序中用指令实现。中
55、断系统的初始化中断系统的初始化51系列单片机在响应中断之前,必须对中断系统进系列单片机在响应中断之前,必须对中断系统进行初始化。行初始化。中断系统的初始化需要完成以下操作:中断系统的初始化需要完成以下操作:开中断;开中断;确定各中断源的优先级;确定各中断源的优先级;若为外部中断,应规定触发方式(电平或负边沿)。若为外部中断,应规定触发方式(电平或负边沿)。LOOP:ICONT:STT:定时器中断应用举例:定时器中断应用举例:要求要求T0产生产生1ms定时,使定时,使P1.0输出周期为输出周期为2ms方波方波。 T0工作方式工作方式1,fosc=12MHz。 计算计算T0的初始值:的初始值:x=
56、64536 或或 x=0FC18H程序:程序:ORG 0000H SJMP STT ORG 000BH SJMP ICONT ORG 0030H MOV TMOD,#01H MOV TL0,#18H MOV TH0,#0FCH MOV IE,#82H SETB TR0 SJMP LOOP MOV TL0,#18H MOV TH0,#0FCH CPL P1.0 RETI END ET1 ET0 EX0 EX1 D7 D6 D5 D4 D3 D2 D1 D0 ES EA 2.2 主机电路主机电路2.2.1 外接存储器外接存储器程序存储器程序存储器数据存储器数据存储器扩展存储器的必要性:扩展存储器的
57、必要性:满足需要较大存储容量的智能仪表的要求满足需要较大存储容量的智能仪表的要求 外接存储器的类别外接存储器的类别RAM 6116、6264、62128、62256等等EPROM 2732、2764、27256、27512等等EEPROM 2816、2864等等单片机与外部存储器和I/O的连接803180518751P2口ALEP0口PSENWRRD地址总线数据总线控制总线EPROMOE地址锁存器RAM/IO口WR RDA0-A15D0-D7当当PSEN有效时,有效时,CPU通过通过P0口读取外扩口读取外扩ROM中中的指令字节。的指令字节。对外部对外部RAM的读写由的读写由RD和和WR控制。控
58、制。第一类指令第一类指令第二类指令第二类指令读:读:MOV DPTR,#addr16 MOVX A,DPTR写:写:MOV A,#data MOVX DPTR,A读:读: MOV P2,#addr.H8 MOV Ri,#addr.L8 MOVX A,Ri写:写: MOV A,#data MOVX Ri,ACPU与外部与外部RAM之间的数据交换之间的数据交换它们之间的数据交换是通过累加器它们之间的数据交换是通过累加器A来实现的,具体来实现的,具体的可通过以下指令完成。的可通过以下指令完成。2.2.2 外接外接I/O(8155)三态缓冲器三态缓冲器74LS373、8212、8282可编程可编程接口
59、芯片接口芯片8155、8255可编程门阵列可编程门阵列GAL、PAL接口芯片接口芯片81558155具有具有256字节的字节的RAM、两个两个8位位并行口、一个并行口、一个6位并行口和一个位并行口和一个14位位的减法计数器。的减法计数器。 TIMERIN RESET AD(07) TIMEROUT IO/M PA(07) CE 8155 RD PB(07) WR ALE PC(05) Vcc GND 8155芯片引脚芯片引脚接口信号线接口信号线AD(07)为地址数据线。用于为地址数据线。用于CPU和和8155之间的信息交换(地址、数据之间的信息交换(地址、数据、命令、状态信息)。、命令、状态信
60、息)。RD:读选通信号线。:读选通信号线。WR:写选通信号线。:写选通信号线。CE:选片信号线。:选片信号线。8155芯片引脚芯片引脚 TIMERIN RESET AD(07) TIMEROUT IO/M PA(07) CE 8155 RD PB(07) WR ALE PC(05) Vcc GND IO/M:RAM/IO的选择线。的选择线。CE=0、IO/M=0时,时,CPU对对RAM进行读进行读写,写,RAM编址编址00H0FFH;CE=0、IO/M=1时,时,CPU对对I/O口进行读写口进行读写,I/O编址见下页。编址见下页。A7A7A6A6A5A5A4A4A3A3A2A2A1A1A0A0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化工仓库短期租赁合同范本
- XX项目转让居间合同
- 物业委托经营管理合同范文
- 借款和欠款合同范本
- 2025建筑消防工程施工合同
- 国有土地使用权合法信托合同
- 房地产开发合作合同协议书范本
- 2025个人住宅楼转让合同
- 简单租房合同
- 2025北京市茶叶买卖合同版
- 中国储备粮管理集团有限公司兰州分公司招聘笔试真题2024
- 第1课 隋朝统一与灭亡 课件(26张)2024-2025学年部编版七年级历史下册
- 【历史】唐朝建立与“贞观之治”课件-2024-2025学年统编版七年级历史下册
- 产业园区招商合作协议书
- 2024年广东省公务员录用考试《行测》真题及答案解析
- 2024公路工程施工安全风险辨识与管控实施指南
- 新疆2024年新疆和田师范专科学校招聘70人笔试历年典型考题及考点附答案解析
- 【正版授权】 ISO 15978:2002 EN Open end blind rivets with break pull mandrel and countersunk head - AIA/St
- 2024时事政治考试题库(基础题)
- 2024山西文旅投资集团招聘117人公开引进高层次人才和急需紧缺人才笔试参考题库(共500题)答案详解版
- 《社区康复》课件-第七章 脑瘫患儿的社区康复实践
评论
0/150
提交评论