版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.i内部上拉电阻内部上拉电阻AB21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.X内部上拉电阻内部上拉电阻21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.i内部上拉电阻内部上拉电阻输输出出数据数据 = 1 时时110截截止止=121DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.i内部上拉电阻内部上拉电阻输输出出数据数据 = 0 时时001=0导导通通21DQCK
2、/Q读引脚读引脚 =1读锁存器读锁存器写锁写锁存器存器内部内部总线总线Vcc引脚引脚P1.X内部上拉电阻内部上拉电阻输输入入数据时,要先对其写数据时,要先对其写“1”110截截止止1.1.结构结构nP3.0P3.0P3.7: P3.7: 双功能口双功能口(内置了上拉电阻)(内置了上拉电阻) 它它具有特定的第二功能具有特定的第二功能。在不使用它的第二功能时。在不使用它的第二功能时它就是普通的它就是普通的通用准双向通用准双向I/OI/O口口。读引脚读引脚Vcc第二功能输入第二功能输入21DQCK/Q读锁存器读锁存器写锁写锁存器存器内部内部总线总线第二功能输出第二功能输出引脚引脚 P3.X3内部上拉
3、电阻内部上拉电阻421DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线替代替代功能输出功能输出(WRWR,RDRD,TxDTxD)P3.i3内部上拉电阻内部上拉电阻Vcc4第二功能输出时,内部自动第二功能输出时,内部自动 D=1D=1111反相器反相器替代功能输入替代功能输入2.2.功能功能(1 1)作)作I/OI/O口使用口使用 B B端为高电平,输出输入功能同端为高电平,输出输入功能同P1P1(2 2)替代(第二)功能输入输出)替代(第二)功能输入输出 锁存器为锁存器为1 1,与非门的输出状态取决于,与非门的输出状态取决于B B点点B21DQCK/Q读引脚读引脚读锁
4、存器读锁存器写锁写锁存器存器内部内部总线总线此端自动此端自动1 1引脚引脚 P3.X3内部上拉电阻内部上拉电阻Vcc 第二功能输入第二功能输入(RxDRxD,T0T0,T1T1,INT0INT0,INT1INT1)4第二功能输入时,信号经第二功能输入时,信号经缓冲器缓冲器4 4 直接进入内总线直接进入内总线1 11 11 10 0截截止止1.结构结构nP2.0P2.0P2.7: P2.7: 双向双向I/O I/O (内置了上拉电阻)(内置了上拉电阻) 寻址外部程序存储器时寻址外部程序存储器时输出高输出高8 8位地址位地址;不接外不接外部程序存储器时可部程序存储器时可作为作为8 8位位准双向准双
5、向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制引脚引脚 P2.X3内部上拉电阻内部上拉电阻Vcc21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制 引脚引脚P2.X控制控制=0时,此脚作通用时,此脚作通用输出口输出口:输出输出=0时时001导导通通3内部上拉电阻内部上拉电阻00Vcc=0=02.功能功能(1)作)作I/O口使用口使用 B端为高电平,输出输入功能同端为高电平,输出输入功能同P1 引脚引脚P2.X21DQCK/Q读引脚读引脚 =0读锁存
6、器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制控制控制=0时,此脚作通用时,此脚作通用输出口输出口: 输出输出=1时时110截截止止3内部上拉电阻内部上拉电阻11Vcc=1=021DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址高地址高8位位 控制控制=1 引脚引脚P2.X控制控制=1 时,此脚作时,此脚作高高8位地址位地址A8A15输出口:输出口:当当输出输出 =1 时时10截截止止3内部上拉电阻内部上拉电阻1=1Vcc=1(2)地址总线的高)地址总线的高8位输出状态位输出状态21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁
7、存器存器内部内部总线总线地址高地址高8位位 控制控制=1 引脚引脚P2.X01导导通通3内部上拉电阻内部上拉电阻0=0Vcc=0控制控制=1 时,此脚作时,此脚作高高8位地址位地址A8A15输出口:输出口:当当输出输出 =0 时时1.结构结构nP0.0P0.0P0.7: P0.7: 双向双向I/O I/O (内置(内置场效应管场效应管上拉)上拉) 寻址外部程序存储器时寻址外部程序存储器时分时分时作为作为双向双向8 8位数据口位数据口和和输输出低出低8 8位地址位地址复用口复用口;不接外部程序存储器时可不接外部程序存储器时可作为作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/
8、Q读引脚读引脚读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制引脚引脚P0.X34Vcc21DQCK/Q读引脚读引脚 =1读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制引脚引脚P0.X34控制控制=0 时时,此脚作,此脚作输入口输入口(事先必须对它写(事先必须对它写“1”)00100截截止止截截止止=0Vcc2.功能功能 (1 1)不接外部程序存储器时可作为不接外部程序存储器时可作为8 8位位准双向准双向I/OI/O口口使用。使用。21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制
9、控制=1引脚引脚P0.X34控制控制=1时,此脚作地址时,此脚作地址/数据数据复用口复用口:(1)输出地址输出地址/数据数据 =0 时时1011=0导导通通截截止止=0Vccn(2 2)寻址外部程序存储器时分时作为)寻址外部程序存储器时分时作为双向双向8 8位位数据口数据口和和输出低输出低8 8位地址位地址复用口复用口21DQCK/Q读引脚读引脚 =0读锁存器读锁存器写锁写锁存器存器内部内部总线总线地址地址/数据数据 控制控制=1引脚引脚P0.X34控制控制=1时,此脚作地址时,此脚作地址/数据数据复用口复用口:(2)输出地址输出地址/数据数据 =1 时时1100=1截截止止导导通通=1Vcc
10、n注意:用作地址、数据总线时,注意:用作地址、数据总线时,P0P0口不能进行位操口不能进行位操作,用作作,用作I/OI/O口时,输出驱动器是开漏电路,需要口时,输出驱动器是开漏电路,需要外接上拉电阻,当用作地址、数据总线时,则不外外接上拉电阻,当用作地址、数据总线时,则不外接上拉电阻。接上拉电阻。2 2个个1616位位定时器定时器/ /计数器计数器 ( (5252系列有系列有3 3个个1616位位Timer)Timer) ( (部分产品(部分产品(8080C552C552)中,还包含有一个中,还包含有一个 用做看门狗的用做看门狗的8 8位定时器(位定时器(T3T3)。)。) )1 1、加、加1
11、 1计数器计数器 下降沿触发,加下降沿触发,加1 1计数计数2 2、计数器、计数器 对对TxTx引脚引脚(P3.4 P3.5)(P3.4 P3.5)输入的负脉冲进行计数输入的负脉冲进行计数3 3、定时器、定时器 对片内机器时钟对片内机器时钟( (周期方波周期方波) )进行计数,每过一个进行计数,每过一个机器周期,计数器加机器周期,计数器加1 14 4、与、与TimerTimer工作有关的工作有关的特殊功能寄存器:特殊功能寄存器: TCON TCON 控制寄存器控制寄存器 88H 88H 有位寻址有位寻址 TMOD TMOD 方式寄存器方式寄存器 89H 89H 无位寻址无位寻址 TH0 8BH
12、 TH0 8BH 无位寻址无位寻址 TL0 8AH TL0 8AH 无位寻址无位寻址 TH1 8DH TH1 8DH 无位寻址无位寻址 TL1 8CH TL1 8CH 无位寻址无位寻址GATE C / T M1 M0 GATE C / T M1 M0T1T1T0T0M1,M0M1,M0:工作方式定义位工作方式定义位 ( ( 定义定义4 4 种方式种方式 ):):0 00 0:1313位位 TimerTimer0 10 1:1616位位 TimerTimer经常用到经常用到1 01 0:可自动重装的:可自动重装的 8 8位位 TimerTimer经常用到经常用到1 11 1:T0 T0 分为分为
13、2 2个个8 8位位 TimerTimer;T1 T1 此时不工作此时不工作C/T C/T :计数器计数器/ /定时器选择位定时器选择位 = 1 = 1 外部事件外部事件计数器计数器。对。对TxTx引脚的引脚的负脉冲负脉冲计数;计数; = 0 = 0 片内时钟片内时钟定时器定时器。对。对机器周期脉冲机器周期脉冲计数定时计数定时GATE C / T M1 M0 GATE C / T M1 M0T1T0GATEGATE门控位门控位: : TimerTimer可由软件与硬件两者控制可由软件与硬件两者控制 GATE = 0 GATE = 0 普通用法普通用法 TimerTimer的的启启/ /停停由由
14、软件软件对对TRxTRx位写位写“1 1”/ /“0 0”控制控制(89H)(89H) GATE = 1 GATE = 1 门控用法门控用法 TimerTimer的的启启/ /停停由由软件软件对对TRxTRx位写位写“1 1”/ /“0 0” 和和在在INTxINTx引脚引脚上出现的信号的上出现的信号的高高/ /低低共同控制共同控制TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0TFxTFx: Timer0/1: Timer0/1计数溢出标志位。计数溢出标志位。 =1 =1 计数溢出;计数溢出; =0 =0 计数未满计数未满 TFxTFx标志位标志位可用于可用于申请中断申请中断或
15、或供供CPUCPU查询查询。 在进入中断服务程序时会自动清零;但在在进入中断服务程序时会自动清零;但在 查询方式时必须软件清零。查询方式时必须软件清零。TRxTRx: Timer0/1: Timer0/1运行控制位。运行控制位。 =1 =1 启动计数;启动计数; =0 =0 停止计数停止计数1 1、工作方式、工作方式0 0:1313位的定时位的定时/ /计数器计数器2 2、工作方式、工作方式1 1:1616位的定时位的定时/ /计数器计数器振荡器振荡器 12TLx THx (8位位) (8位位)TFx申请申请中断中断TxTx端端TRxTRx位位GATEGATE位位INTxINTx端端1 1&
16、&C/T=0C/T=1控制控制 =1开关接通开关接通或门或门与门与门3 3、工作方式、工作方式2 2:可重装载的可重装载的8 8位定时位定时/ /计数器计数器4 4、工作方式、工作方式3 3:一个一个8 8位定时器位定时器/ /计数器和一个计数器和一个8 8位定时器(位定时器(T0T0有,有,T1T1无)无) TL0 TL0用于用于8 8位定时器位定时器/ /计数器,计数器,TH0TH0用于用于8 8位定时器位定时器分析分析:已知:已知foscfosc = 6MHz = 6MHz 则:则: (振荡周期)(振荡周期)1Tc=1/6MHz1Tc=1/6MHz (机器周期)(机器周期)1Tm=12T
17、c=12/6MHz=1Tm=12Tc=12/6MHz=2 2 S S 粗略地说:粗略地说:Tmin Tmin 2 2 S S 16 16位定时器最大数值为:位定时器最大数值为:2 21616=65536=0FFFFH+1=65536=0FFFFH+1 故选择故选择方式方式 1 1 工作可以得到:工作可以得到: Tmax = 65536Tmax = 65536 2 = 1310722 = 131072 S S131.072mS131.072mS例例1 1:若晶振频率为:若晶振频率为6MHz6MHz,计算单片机的最小,计算单片机的最小与最大与最大定时时间:定时时间:分析分析:已知:已知foscfo
18、sc = 6MHz = 6MHz 则:则: (机器周期)(机器周期)1Tm=12Tc=12/6MHz=21Tm=12Tc=12/6MHz=2 S S 100mS 100mS2 2 S = S = 5000050000 16 16位定时器最大数值为:位定时器最大数值为: 2 216 16 = = 6553665536 (=0FFFFH+1) (=0FFFFH+1) 故选择方式故选择方式1 1工作可以满足要求。工作可以满足要求。计算计算初值初值:655366553650000=15536=50000=15536=3CB03CB0H H例例2 2:要求对:要求对T0T0产生产生100mS100mS定
19、时进行初始化。定时进行初始化。 ( (晶振晶振=6MHz)=6MHz) THx/TLxTHx/TLx赋初值赋初值:如:如THxTHx赋高赋高8 8位,位,TLxTLx赋低赋低8 8位位工作方式的编程要点工作方式的编程要点: TMODTMOD选方式选方式: 写写“M1,M0M1,M0”=01 =01 b b 选方式选方式1 1 若不用门控位若不用门控位, ,直接用软件写直接用软件写TRxTRx控制启控制启/ /停停 若使用门控位,先置位若使用门控位,先置位TRxTRx,然后由,然后由INTxINTx端端 的的高高/ /低电平低电平来控制其启来控制其启/ /停停 若要允许若要允许中断中断,还须先置
20、位,还须先置位ETxETx、EAEA等中断等中断 允许控制位,并编写允许控制位,并编写中断服务中断服务程序程序 若不用中断,可若不用中断,可查询查询“计数溢出标志计数溢出标志TFxTFx” 的方式工作,但溢出标志的方式工作,但溢出标志TFxTFx须软件清须软件清0 0GATE C / T M1 M0 GATE C / T M1 M0定时器方式定时器方式寄存器寄存器TMOD由分析得知:由分析得知:T0T0选择方式选择方式1 1,初值,初值=3CB0H=3CB0H X X X X 0 0 X X X X 0 0 0 10 1初始化:初始化:MOV TMODMOV TMOD,# #01H01H ;
21、;选选 T0 T0 方式方式 1 1 MOV TH0MOV TH0, # #3CH ;3CH ;赋初值高赋初值高8 8位位 MOV TL0MOV TL0, #0#0B0H ;B0H ;赋初值低赋初值低8 8位位 SETB TR0SETB TR0 ; ;启动启动 T0T0定时定时若需要定时器若需要定时器0 0产生中断产生中断还应当写如下语句:还应当写如下语句: SETB ET0SETB ET0 ; ;开开T0T0中断允许中断允许 SETB EASETB EA ; ;开总中断允许开总中断允许以及相应的以及相应的中断服务程序中断服务程序。5.3 单片机的中断系统查询传送方式查询传送方式(LOOK U
22、P)(LOOK UP):传送前一方先查询另一方的状态,若已经准备好传送前一方先查询另一方的状态,若已经准备好就传送,否则就继续查询就传送,否则就继续查询/ /等待等待中断传送方式中断传送方式(IRQ)(IRQ):一方通过申请中断的方式与另一方进行数据传送一方通过申请中断的方式与另一方进行数据传送无条件传送方式:无条件传送方式:一方对另一方来说总是准备好的一方对另一方来说总是准备好的直接存储器存取方式直接存储器存取方式(DMA)(DMA):双方直接通过总线传送数据双方直接通过总线传送数据, , 不经不经CPUCPU中转中转1、中断的概念 数据传送的双方平时各自做自己的工作,一旦数据传送的双方平时
23、各自做自己的工作,一旦甲方甲方要求与要求与乙方乙方进行数据传送,就主动进行数据传送,就主动发出信号发出信号提出申请,提出申请,乙方乙方接到申请后若接到申请后若同意同意传送,传送,安排好安排好当前的工作当前的工作,再,再响应响应与甲方发生数据传送。与甲方发生数据传送。完事完事后,回去继续后,回去继续做打断前的工作。做打断前的工作。中断功能强弱是计算机性能优劣的重要标志中断功能强弱是计算机性能优劣的重要标志提高提高CPUCPU效率效率 解决速度矛盾解决速度矛盾 实现并行工作实现并行工作 应付突发事件应付突发事件中断传送方式特点中断源中断源 中断申请中断申请开放中断开放中断保护现场保护现场中断服务中
24、断服务恢复现场恢复现场中断返回中断返回中断涉及的几个环节5151子系列允许子系列允许5 5个个(52(52子系列子系列6 6个个) )中断源:中断源:(1 1)外部中断请求:)外部中断请求:INT0 INT0 IT0(TCON.0)=0, IT0(TCON.0)=0,低电平有效低电平有效 IT0(TCON.0)=1,IT0(TCON.0)=1,下降沿有效下降沿有效(2 2)外部中断请求:)外部中断请求: INT1INT1 IT1(TCON.1)=0, IT1(TCON.1)=0,低电平有效低电平有效 IT1(TCON.1)=1,IT1(TCON.1)=1,下降沿有效下降沿有效(3 3)定时器定
25、时器/ /计数器计数器T0T0中断请求中断请求 TF0TF0(4 4)T1T1中断请求:中断请求:TF1TF1(5 5)1 1个串行口中断请求个串行口中断请求 TI/RITI/RITcTsTmTmS5S6S4S3S2S5S6S4S3S2S1Tc=1/fosc Ts=6Tc Tm=12Tc=6TsTc=1/fosc Ts=6Tc Tm=12Tc=6Ts中断系统硬件结构注注: :各中断允许控制位各中断允许控制位=0,=0,开关断开开关断开; =1,=1,开关接通开关接通IE0IE0EX0EX0TF0TF0IE1IE1TF1TF1TITIESESET1ET1EX1EX1ET0ET0外部中断外部中断
26、请求请求0 0外部中断外部中断 请求请求1 1内部内部 定时器定时器0 0内部内部 定时器定时器1 1内部内部 串行口串行口T TR RRIRIIEIE寄存器寄存器 EAEA位位IPIP寄存器寄存器各单路开关各单路开关 总开关总开关中断源标志中断源标志位查询机构位查询机构高中断级高中断级中断请求中断请求低中断级低中断级中断请求中断请求中断入口中断入口中断源中断源标志位标志位INT0INT0INT1INT1中断入口中断入口中断源中断源标志位标志位n000BH000BHnTF0TF0n定时定时/ /计数器计数器0(T0)0(T0)n002BH002BHnTF2TF2n定时定时/ /计数器计数器2(
27、T2)2(T2)n0023H0023HnRI/TIRI/TIn串行口接收串行口接收/ /发送发送n001BH001BHnTF1TF1n定时定时/ /计数器计数器1(T1)1(T1)n0013H0013HnIE1IE1n外部中断外部中断1( INT1)1( INT1)n0003H0003HnIE0IE0外部中断外部中断0( INT0)0( INT0)n中断优先级中断优先级n中断矢量中断矢量n申请标志申请标志n中中 断断 源源最高优先级最高优先级最低优先级最低优先级 EAEA ET2 ES ET1 EX1 ET0 EX0 ET2 ES ET1 EX1 ET0 EX0IEIE1 1、中断允许寄存器、
28、中断允许寄存器IE IE (0A8H)(0A8H) EX0/EX1/ET1/ET0/ES EX0/EX1/ET1/ET0/ES 位位: 分别是分别是INT0/1INT0/1,Timer0/1Timer0/1,串行口,串行口的中断允的中断允 许控制位许控制位: : =0 =0 时禁止中断;时禁止中断; =1=1 时时允许允许中断。中断。ET2ET2:T2T2中断允许控制位(仅中断允许控制位(仅5252子系列子系列有)有) =0 =0 时禁止中断;时禁止中断; =1=1 时时允许允许中断。中断。EAEA:总的中断允许控制位(总开关):总的中断允许控制位(总开关): =0 =0 时禁止全部中断;时禁
29、止全部中断;=1=1 时时允许允许中断。中断。2、定时器控制寄存器TCON (88H)TF1TF1 TR1TR1 TF0TF0 TR0TR0 IE1IE1 IT1IT1 IE0IE0 IT0IT0TCONTCONTF0/TF1TF0/TF1:定时器溢出中断申请标志位:定时器溢出中断申请标志位: =0=0:定时器未溢出;:定时器未溢出; =1=1:定时器溢出申请中断,进中断后自动清零。定时器溢出申请中断,进中断后自动清零。TR0/TR1TR0/TR1:定时器运行启停控制位:定时器运行启停控制位: =0=0:定时器停止运行;:定时器停止运行; =1=1:定时器启动运行。定时器启动运行。TCONTC
30、ON:TimerTimer控制寄存器控制寄存器,是管理定时器工作的,是管理定时器工作的SFRSFR(其中低(其中低4 4位管外部中断)位管外部中断)定时器控制寄存器TCON (88H)TF1TF1 TR1TR1 TF0TF0 TR0TR0 IE1IE1 IT1IT1 IE0IE0 IT0IT0TCONTCONIE0/IE1IE0/IE1:外部中断申请标志位:外部中断申请标志位: =0=0:没有外部中断申请;:没有外部中断申请; =1=1:有外部中断申请。有外部中断申请。IT0/IT1IT0/IT1:外部中断请求的触发方式选择位:外部中断请求的触发方式选择位: =0=0:在:在INT0/INT1
31、INT0/INT1端申请中断的信号端申请中断的信号低电平低电平有效有效; ; =1 =1:在在INT0/INT1INT0/INT1端申请中断的信号端申请中断的信号负跳变负跳变有效有效. .TCONTCON:TimerTimer控制寄存器控制寄存器,低低4 4位管理外部中断位管理外部中断 RI,TIRI,TI:串行口收串行口收/ /发数据申请中断标志位发数据申请中断标志位 1 1 申请中断;申请中断; 0 0 不申请中断不申请中断 TB8TB8:方式方式2 2、3 3中,是要发送的第中,是要发送的第9 9位数据。位数据。 多机通信中多机通信中,TB8=0 ,TB8=0 表示发送的是数据;表示发送
32、的是数据; TB8=1 TB8=1 表示发送的是地址。(奇偶校验)表示发送的是地址。(奇偶校验) RB8RB8:在方式在方式2 2、3 3中,是收到的第中,是收到的第9 9位数据。位数据。 在多机通信中在多机通信中, ,用作区别地址帧用作区别地址帧/ /数据帧的数据帧的 标志。(奇偶校验)标志。(奇偶校验) SM0 SM1 SM2 REN TB8 RB8 TI R1 RENREN:串行口接收允许控制位串行口接收允许控制位 = 1 = 1 表示允许接收;表示允许接收; = 0 = 0 禁止接收。禁止接收。SCONSCON3、串口控制寄存器SCON (88H) PT2 PS PT1PT2 PS P
33、T1 PX1 PX1 PT0 PX0PT0 PX0IPIPPX0/PX1PX0/PX1:INTINT0/10/1优先级控制位:优先级控制位: =0=0 时属时属低低优先级;优先级; =1=1 时属时属高高优先级。优先级。PT0/PT1/PT2PT0/PT1/PT2:T0/1/2T0/1/2中断优先级控制位:中断优先级控制位: =0=0 时属低优先级;时属低优先级; =1=1 时属时属高高优先级。优先级。PS1PS1:串行口中断优先级控制位:串行口中断优先级控制位: =0=0 时属时属低低优先级;优先级; =1=1 时属时属高高优先级。优先级。4 4、中断优先级控制寄存器、中断优先级控制寄存器I
34、P IP (0B8H)(0B8H)中断矢量中断矢量: MCS-51MCS-51单片机的单片机的 5 5 个中断源分别对个中断源分别对应有各自的应有各自的中断服务程序入口地址中断服务程序入口地址中断矢量中断矢量n000BH000BHnTF0TF0n定时定时/ /计数器计数器0(T0)0(T0)n002BH002BHnTF2TF2n定时定时/ /计数器计数器2(T2)2(T2)n0023H0023HnRI/TIRI/TIn串行口接收串行口接收/ /发送发送n001BH001BHnTF1TF1n定时定时/ /计数器计数器1(T1)1(T1)n0013H0013HnIE1IE1n外部中断外部中断1(
35、INT1)1( INT1)n0003H0003HnIE0IE0外部中断外部中断0( INT0)0( INT0)n中断优先级中断优先级n中断矢量中断矢量n申请标志申请标志n中中 断断 源源最高优先级最高优先级最低优先级最低优先级对对同时发生同时发生多个中断申请时:多个中断申请时:不同优先级的中断同时申请不同优先级的中断同时申请( (很难遇到很难遇到) ) 先高后低先高后低相同优先级的中断同时申请相同优先级的中断同时申请( (很难遇到很难遇到) ) 按序执行按序执行正处理低优先级中断又接到高级别中断正处理低优先级中断又接到高级别中断 高打断低高打断低正处理高优先级中断又接到低级别中断正处理高优先级
36、中断又接到低级别中断 高不理低高不理低中断优先级处理原则没有没有同级的中断或更高级别的同级的中断或更高级别的中断正在处理中断正在处理;在中断源提出了在中断源提出了中断申请中断申请且且CPUCPU此前已经此前已经允许中断允许中断的前提下,还须满足以下的前提下,还须满足以下三个条件三个条件: :正在执行的指令必须正在执行的指令必须执行完最后执行完最后 1 1个机器周期个机器周期;若正在执行若正在执行RETIRETI,或正在访问,或正在访问IEIE或或IPIP寄存器寄存器, ,须须执行完上述指令和下一条指令以后方能响应中断。执行完上述指令和下一条指令以后方能响应中断。 1 1、中断前初始化中断前初始
37、化 选择优先级:根据需要选择,选择优先级:根据需要选择,可有可有/ /可无,可无,IPIP 设置控制位:设置控制位:TCONTCON INTxINTx触发方式触发方式(ITx)(ITx) TxTxTCONTCON, ,TMODTMOD, ,TRxTRx, ,初值初值 RI/TIRI/TISCONSCON, ,RENREN, ,RB8RB8, ,TB8TB8, , 开中断允许:必须开中断允许:必须, ,IEIE2 2、中断服务程序、中断服务程序进入中断服务进入中断服务后后:保护现场保护现场,关中断关中断,退出中断服务退出中断服务前前:恢复现场恢复现场, ,开中断开中断, ,设设TxTx的初的初
38、值值, ,清清TI/RITI/RI, ,中断服务程序的最后一条指令必是中断服务程序的最后一条指令必是 RETIRETI在在CPUCPU已经开放了外部中断允许的前提下:已经开放了外部中断允许的前提下:在在INT0INT0/ /INT1INT1引脚输入一个引脚输入一个负脉冲负脉冲或或低电平低电平, TCONTCON寄存器中的寄存器中的IE0/IE1IE0/IE1标志位自动变标志位自动变“1 1”,检测到检测到IE0/IE1IE0/IE1变变“1 1”后后, ,将产生指令:将产生指令: LCALL 0003HLCALL 0003H(/0013H)(/0013H)执行中断服务程序执行中断服务程序, ,
39、并将并将IE0/IE1IE0/IE1标志位自动清标志位自动清“0 0”, ,以备下次申请以备下次申请。外部中断(INT0,INT1)申请过程外部低电平中断的撤除外来的低电平外来的低电平反相反相CLKCLK端产生上跳沿端产生上跳沿 D D端的端的“0 0”打到打到Q Q端端申请中断申请中断INTxINTxP1.0P1.0CLKCLKS SQ QD D外来中断申请外来中断申请信号信号( (低电平低电平) )MCS-51MCS-5174LS7474LS74S=0 S=0 则则 Q=1Q=1中断返回前对中断返回前对P1.0P1.0送送“0 0” 令令Q Q端变为端变为“1 1”指令如下:指令如下: A
40、NL P1ANL P1,#0FEH #0FEH = CLR P1.0 ;= CLR P1.0 ;令令Q Q端置端置“1 1” ORL P1, #01H ORL P1, #01H = SETB P1.0 = SETB P1.0 ; ;令令S S端置端置“1 1”, ,以免下次中断来时以免下次中断来时Q Q端不能变端不能变“0 0”例:例:通过通过外部中断外部中断1 1, ,在中断服务中将在中断服务中将B B寄存器里的内容寄存器里的内容左左环移一位环移一位。 已知已知: (: (B B) )=01h=01h, ,要求采用边沿触发要求采用边沿触发, ,低优先级。低优先级。此例的此例的实际意义:实际意
41、义:在在INT1INT1引脚接一个引脚接一个按钮开关按钮开关到地,每到地,每按一下按钮就申请一次中断,中断服务则是:按一下按钮就申请一次中断,中断服务则是:依次点亮依次点亮八盏灯中的一盏八盏灯中的一盏。 例:例:通过通过外部中断外部中断1 1, ,在中断服务中将在中断服务中将B B寄存器里的内容寄存器里的内容左左环移一位环移一位。 已知已知: (: (B B) )=01h=01h, ,要求采用边沿触发要求采用边沿触发, ,低优先级。低优先级。此例的此例的实际意义:实际意义:在在INT1INT1引脚接一个引脚接一个按钮开关按钮开关到地,每到地,每按一下按钮就申请一次中断,中断服务则是:按一下按钮
42、就申请一次中断,中断服务则是:依次点亮依次点亮八盏灯中的一盏八盏灯中的一盏。 P1.0P1.0P1.7P1.7INT1INT1300 ORG 0000H ORG 0000H LJMP LJMP MAINMAIN ORG 0013H ORG 0013H ; ;中断矢量中断矢量 LJMP LJMP INTINTMAINMAIN:SETB EA ;SETB EA ;开总中断允许开总中断允许“开关开关” SETB EX1 ;SETB EX1 ;开分中断允许开分中断允许“开关开关” CLR PX1 ;0 CLR PX1 ;0 优先级(也可不要此句)优先级(也可不要此句) SETB IT1 ;SETB I
43、T1 ;边沿触发边沿触发 MOV MOV B B,#01H ;,#01H ;给给 B B 寄存器赋初值寄存器赋初值HEREHERE:SJMP HERE ;SJMP HERE ;原地等待中断申请原地等待中断申请INTINT:MOV AMOV A,B B ; ;自自B B寄存器中取数寄存器中取数 RL A RL A ; ;左环移一次左环移一次 MOV MOV B B,A ;A ;存回存回B B, ,备下次取用备下次取用 (MOV P1(MOV P1,A) A) ; ;输出到输出到P1P1口口 RETI ;RETI ;中断返回中断返回中断服中断服 务程序务程序9H5HT0启停控制启动:软硬同时控制停
44、止:软件控制T1计数值到时清软件控制位初始化时软件控制位置1P3.2 高电平串行通信的基本特征是串行通信的基本特征是数据数据逐位顺序逐位顺序进行传送进行传送串行通信的格式及约定(如:同步方式、通讯速串行通信的格式及约定(如:同步方式、通讯速率、数据块格式、信号电平率、数据块格式、信号电平等)不同,形成等)不同,形成了多种串行通信的协议与接口标准。了多种串行通信的协议与接口标准。常见的有:常见的有:通用异步收发器通用异步收发器(UART)(UART)本课程介绍的串口本课程介绍的串口通用串行总线(通用串行总线(USBUSB)I I2 2C C总线总线CANCAN总线总线SPISPI总线总线RS-4
45、85RS-485,RS-232CRS-232C,RS422ARS422A标准标准等等等等全双工串行接口全双工串行接口(UART)(UART)数据通信的数据通信的几个术语:几个术语: 并行并行:数据各位:数据各位同时同时进行传送进行传送 串行串行:数据:数据逐位顺序逐位顺序进行传送进行传送全双工全双工:(:(串行通信串行通信) )收收/ /发发可同时可同时进行进行 半双工半双工:(:(串行通信串行通信) )收收/ /发发不可不可同时进行同时进行异步串行通信异步串行通信: :以以字符字符为单位进行传送为单位进行传送 同步串行通信同步串行通信: :以以数据块数据块为单位进行传送为单位进行传送 波特率
46、波特率(bps.)(bps.): :单位时间传送的位数单位时间传送的位数SBUF(发)(发)SBUF(收)(收)发送控制器发送控制器 TI接收控制器接收控制器 RI移位寄存器移位寄存器波波特特率率发发生生器器T1 1A累累加加器器控制门控制门RxDTxD去申请中断去申请中断引脚引脚引脚引脚CPU内部内部1、串行口的结构串口串口 接收接收/ /发送数据发送数据, ,无论是否采用中断方式工作无论是否采用中断方式工作, ,每每接收接收/ /发送一个数据都必须用指令对发送一个数据都必须用指令对 RI/TIRI/TI 清清0 0,以备下一次收以备下一次收/ /发。发。波特率发生器波特率发生器 SM0 S
47、M1 SM2 REN TB8 RB8 TI R1SCONSCON SM0SM0,SM1SM1:串行口串行口4 4种工作方式的选择位。种工作方式的选择位。 0 0 0 0 方式方式0 0:8 8位移位寄存器位移位寄存器I/O,I/O,波特率波特率固定固定为为 f foscosc/12/12 0 1 0 1 方式方式1 1:8 8位位UARTUART(1 1+8+8+1 1位)位), 波特率波特率可变可变, ,按公式计算按公式计算 1 0 1 0 方式方式2 2:9 9位位UARTUART(1 1+8+1+8+1+1 1位)位), 波特率波特率固定固定= =f fosc osc x1/32x1/3
48、2或或1/641/64 1 1 1 1 方式方式3 3:9 9位位UARTUART(1 1+8+1+8+1+1 1位)位), 波特率波特率可变可变,按公式计算,按公式计算 SM2SM2:串行口串行口多机通信多机通信控制位控制位 (作为方式(作为方式2 2、方式、方式3 3的的附加控制位附加控制位) RI,TIRI,TI:串行口收串行口收/ /发数据申请中断标志位发数据申请中断标志位 1 1 申请中断;申请中断; 0 0 不申请中断不申请中断 TB8TB8:方式方式2 2、3 3中,是要发送的第中,是要发送的第9 9位数据。位数据。 多机通信中多机通信中,TB8=0 ,TB8=0 表示发送的是数
49、据;表示发送的是数据; TB8=1 TB8=1 表示发送的是地址。(奇偶校验)表示发送的是地址。(奇偶校验) RB8RB8:在方式在方式2 2、3 3中,是收到的第中,是收到的第9 9位数据。位数据。 在多机通信中在多机通信中, ,用作区别地址帧用作区别地址帧/ /数据帧的数据帧的 标志。(奇偶校验)标志。(奇偶校验) SM0 SM1 SM2 REN TB8 RB8 TI R1 RENREN:串行口接收允许控制位串行口接收允许控制位 = 1 = 1 表示允许接收;表示允许接收; = 0 = 0 禁止接收。禁止接收。SCONSCONSMOD GF1 GF0 PD 1DL特殊功能寄存器特殊功能寄存
50、器PCONPCON不能按位寻址不能按位寻址 SMODSMOD:在串行口工作方式在串行口工作方式 1 1、2 2、3 3 中,中, 是是波特率加倍位波特率加倍位 =1 =1 时,波特率加倍时,波特率加倍 =0 =0 时,波特率不加倍。时,波特率不加倍。 ( (在在PCONPCON中只有这一个位与串口有关中只有这一个位与串口有关) ) GF1,GF0GF1,GF0:用户可自行定义使用的通用标志位用户可自行定义使用的通用标志位PCONPCON PDPD:掉电控制位:掉电控制位 =0=0:常规方式。:常规方式。 =1=1:掉电方式:掉电方式: :振荡器振荡器停振停振片内片内RAMRAM和和SRFSRF
51、不变不变P0P0P3P3口维持原状口维持原状程序程序停止停止只有复位能退出掉电只有复位能退出掉电 IDLIDL:待机控制位:待机控制位 =0=0:常规方式。:常规方式。 =1=1:待机方式:待机方式:振荡器振荡器继续振荡继续振荡中断中断, ,定时器定时器, ,串口串口有效有效片内片内RAMRAM和和SRFSRF不变不变CPUCPU状态状态, ,P0P0P3P3维持原状维持原状程序程序停顿停顿。中断和复位能退出待机中断和复位能退出待机, ,继继续后面的程序。续后面的程序。SMOD GF1 GF0 PD 1DLPCONPCON两个同名的两个同名的接收接收/ /发送缓冲寄存器发送缓冲寄存器SBUFS
52、BUF 指令指令 MOV SBUFMOV SBUF,A A 启动一次数据发送启动一次数据发送, ,可向可向SBUFSBUF 再发送下一个数再发送下一个数 指令指令 MOV AMOV A,SBUFSBUF 完成一次数据接收完成一次数据接收,SBUF,SBUF可再可再 接收下一个数接收下一个数工作方式工作方式0 0:8 8位移位寄存器位移位寄存器I/OI/O方式方式发送:发送:SBUFSBUF中的串行中的串行数据数据由由RxD(P3.0)RxD(P3.0)逐位移出;逐位移出; TxD(P3.1)TxD(P3.1)输出输出移位时钟移位时钟,频率,频率=fosc1/12=fosc1/12; 每送出每送
53、出8 8位数据位数据 TITI就自动置就自动置1 1; 需要用需要用软件清零软件清零 TITI。 接收:串行接收:串行数据数据由由RxD(P3.0)RxD(P3.0)逐位移入逐位移入SBUFSBUF中;中; TxD(P3.1)TxD(P3.1)输出输出移位时钟移位时钟,频率,频率=fosc1/12=fosc1/12; 每接收每接收 8 8位数据位数据RIRI就自动置就自动置1 1; 需要用需要用软件清零软件清零 RIRI。经常配合经常配合“串入并出串入并出”“”“并入串出并入串出”移位移位 寄存器一起使用扩展接口寄存器一起使用扩展接口 方式方式0 0工作时,工作时,多用查询方式编程多用查询方式
54、编程: 发送:发送:MOV SBUFMOV SBUF,A A 接收:接收:JNB RIJNB RI,$ $ JNB TI JNB TI,$ $ CLR RICLR RI CLR TI CLR TI MOV A, SBUFMOV A, SBUF工作方式工作方式0 0:8 8位移位寄存器位移位寄存器I/OI/O方式方式( (续续) )复位时复位时, ,SCONSCON 已经被清零已经被清零, ,缺省值缺省值: : 方式方式0 0。接收前接收前, ,务必先置位务必先置位 REN=1 REN=1 允许接收数据允许接收数据。串行口常用工作方式串行口常用工作方式0 0扩展出并行扩展出并行I/OI/O口,口
55、,工作方式工作方式1 1、2 2、3 3则常用于串行通信则常用于串行通信A AB BCLKCLKh g f e d c b ah g f e d c b aCLRCLRA AB BCLKCLKCLRCLRA AB BCLKCLKCLRCLR+5V+5V74LS16474LS16474LS16474LS16474LS164是是串入并出串入并出芯片;芯片;74LS16574LS165是是并入串出并入串出芯片芯片h g f e d c b ah g f e d c b ah g f e d c b ah g f e d c b a+5V+5V共阳共阳LED LED 数码管数码管VCCVCCTxDTx
56、DRxDRxD51单片机单片机共阳极共阳极h g f e d c b ah g f e d c b aa ab bc cd dg ge ef fh h共阳共阳LEDLED数码管数码管公共端公共端( (字位字位) ) 接高电平,接高电平,笔划笔划( (字段字段) ) 置为低电平置为低电平就被点亮了就被点亮了h g f e d c b ah g f e d c b a累加器累加器 A1 1 0 0 0 0 0 01 1 0 0 0 0 0 00C0H = 0C0H = “0 0”比如要显示比如要显示“0 0” 须令须令a b c d e f a b c d e f 为为“0 0” 电平,电平,g
57、hg h为为“1 1”电平。电平。再再比如要显示比如要显示“3 3” 须令须令a b c d g a b c d g 为为“0 0” 电平,电平,e f he f h为为“1 1”电平。电平。1 0 1 1 0 0 0 01 0 1 1 0 0 0 00B0H = 0B0H = “3 3”8 8只只LEDLED显示片内显示片内RAM58H-5FH8RAM58H-5FH8个单元个单元内的非压缩内的非压缩BCDBCD数:数: MOV SCON,#0MOV SCON,#0 MOV DPTR, #SEGPT MOV DPTR, #SEGPT MOV R7, #8 MOV R7, #8 MOV R0,
58、MOV R0, #5FH#5FHLOOP: MOV A, R0 LOOP: MOV A, R0 MOVC A, MOVC A, A+DPTRA+DPTR MOV SBUF, A MOV SBUF, A JNB TI, $ JNB TI, $ CLR TI CLR TI DEC R0 DEC R0 DJNZ R7, LOOP DJNZ R7, LOOP LJMP $ LJMP $SEGPT:DB 0C0H,0F9H,0A4H,0B0H,99HSEGPT:DB 0C0H,0F9H,0A4H,0B0H,99H DB 92H,82H,0F8H,80H,90H DB 92H,82H,0F8H,80H,9
59、0Hh g f e d c b ah g f e d c b a累加器累加器 A1 1 0 0 0 0 0 01 1 0 0 0 0 0 00C0H = 0C0H = “0 0”1 0 1 1 0 0 0 01 0 1 1 0 0 0 00B0H = 0B0H = “3 3”共阳极共阳极h g f e d c b ah g f e d c b aa ab bc cd dg ge ef fh h常用于串行通讯。除发常用于串行通讯。除发/ /收收8 8位数据外,还位数据外,还 在在D0D0位前有一个位前有一个起始位起始位“0 0”; 在在D7D7位后有一个位后有一个停止位停止位“1 1”。方式方式
60、1 1工作时:工作时: 发送端发送端自动添加自动添加一个起始位一个起始位0 0和一个停止位和一个停止位1 1; 接收端接收端自动去掉自动去掉一个起始位和一个停止位。一个起始位和一个停止位。工作方式工作方式1 1: :8 8位位UARTUART( (1 1+8+8+1 1位位) )波特率波特率可变可变 波特率可变波特率可变 用定时器用定时器T1T1作波特率发生器:作波特率发生器: 公式:公式:波特率波特率 = =(2 2SMODSMOD/32/32) T1T1的溢出率的溢出率波特率波特率= =(2(2SMODSMOD/32)/32) T1T1的溢出率的溢出率 溢出率:溢出率:T1T1溢出的频繁程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《ACS的规范化诊治》课件
- 二零二五年度倪问离婚协议书:子女抚养责任与财产分割协议
- 二零二五年度农业废弃物资源化利用合作协议-@-7
- 2025年新型商业楼宇监控系统安装与运营管理协议3篇
- 2025年度企业间应急资金借款合同样本
- 2025年度充电桩充电设施运营风险控制合同4篇
- 绩效评价与绩效管理课件
- 家畜解剖学教学课件下载样部分呼吸系统
- 二零二五版风力发电项目专用设备采购及安装合同3篇
- 2025年度瓷砖设计创新研发采购合同样本3篇
- 氧气雾化吸入法
- 6月大学英语四级真题(CET4)及答案解析
- 气排球竞赛规则
- 电梯维修保养报价书模板
- 危险化学品目录2023
- FZ/T 81024-2022机织披风
- GB/T 33141-2016镁锂合金铸锭
- 2023译林版新教材高中英语必修二全册重点短语归纳小结
- JJF 1069-2012 法定计量检定机构考核规范(培训讲稿)
- 综合管廊工程施工技术概述课件
- 公积金提取单身声明
评论
0/150
提交评论