4 C8051F单片机的中断系统_第1页
4 C8051F单片机的中断系统_第2页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C8051F340单片机的中断系统一、综述计算机,包括单片机,来运行程序,大多是在时钟的驱使下按照一定的、事先安排的好顺序,一步一步完成的。但是有些事件,是无法预料或不知什么时候要发生。还有些任务,需要外部的相关设备来执行,执行的速度很慢,与几十兆运行速度的单片机进行信息交换,计算机要进行慢长的等待。为了解决以上性质的问题,单片机引入中断机制。中断:指当出现需要时,CPU暂时停止当前程序的执行转而执行处理新情况的程序和执行过程。即在程序运行过程中,系统出现了一个必须由CPU立即处理的情况,此时,CPU暂时中止程序的执行转而处理这个新的情况的过程就叫做中断。中断服务程序:CPU停下当前工作,来处

2、理紧急事件,这个紧急事件的处理程序,就是中断服务程序。不同性质的紧急事件,一般要对应不同的中断服务程序。中断向量:中断服务的首地址,称为中断向量。中断向量一般是由硬件规定死的,比如C8051F340单片机,也有些单片机,可以在特定的区域内写一张中断向量表,中断发生后,中断向量由硬件通过相关机制序查询得到。中断号:各种类型的中断,按照中断向量的顺序或中断向量表的顺序,来编号,有的从0开始编号,有的单片机从1开始编号。it9.4中断一範表申斷憑中断中斷标庞淸除申斷尢许优先绩建制夏位&?cOO(H)绘高无N/AN-A始罐朮许总肚量高I:茁0INTO)taOCKH0IEO(TCOhi.l)YY

3、EXO(IE-0)PXO(TP.O)定时器0进出OsOOOE1TFO(TCON-5)YYETO(IE-1)PT&(IP.1)|:斷1INT1)taOOll2IE1(TCOhJ.3)YYEXI(IE-2PX1(IP.2)定时器1港出OxOOlB3TF1(TCON-7)YYET1(IE3PT1(IP3)UARTO0x00234RIO(SCONO.OJnO(SCQNG.lYKESO(IE.4)PSCIP.+)定时器2港出OxOOZETF2H(TME2CN.7)TF2L(TMR2.CN.6)YNET2(IE-5)PT2(IR5SPIO(hrOOSJ6SPIF(SPIKN.7)WCQL(SPIO

4、CN-6)MODF(SPIOCN-5RXOXT1N(SPIOCNJ1YNESPIO(IE旬PSPIO(IPfi)SMB0OxOOSB7SI(SMBOCN.O)YKESMBO(HELDPSMB0(EJPLO)USBGQsOCMJS持蘇NNEUSBO(EIE1.1)PUSBO(EIPL1ADC0口比毂taOME9ADOIMNT(ADC0CN.3)YNEttADCO(EIEL2)PWADC0(EIP1-2)ADS转唤舗卑ta0053)0ADOINT(ADC0CN.5)YNEADCO(EIE13)PADC0iJJPl-3.)可滋程计数器阵列QsOOfE11CT(PCAOCK-BCCFn(PCAOCNj

5、hJYNEKAO(EIE1J)PKA0(EIPL4)比较辭0taOM312CPDFIF(CPT0CN.4CP0RIF(CPT0CN.5NNECPO(HE1.5)PCPO(EIPLS)比&»1QjeGMB13CP1FIF(CPT1CN.4)CP1RIF(CPT1CN.5)NKECPI(EIE1.6)PCP1(EIPL6)定时港出0x007314TF3H(Ti<R3CN,7)TF3L(TMR3CN.6)NNET3(EIE1.7)PT3iJJPLT)VBL3电平OxOOTB15N.-AN/AN-AEVBUS(EIE2.0PVBUEiIP2-0)UART1ta008316RI1

6、(SCON1-OJm(&CON1.1)NNESI(EIE2.1)PSI(EIPHl)二、C8051F34O单片机的中断系统C8051F340包含一个扩展的中断系统,支持16个中断源,见上面的表。每个中断源有两个优先级。如果一个中断源被允许,则在相应的中断标志被置位时,将产生一个中断。每个中断源都可以用一个SFR(IE-EIE2)中的相关中断允许位来允许或禁止,但是必须首先将EA位(IE.7)置1',以保证每个单独的中断允许位有效。不管每个中断允许位的设置如何,清O'EA位将禁止所有中断。某些中断标志在CPU进入中断服务程序时被自动清除,但大多数中断标志不是由硬件清除的,

7、必须在中断服务程序返回前用软件清除。如果一个中断标志,在CPU执行完中断服务程序后,仍然保持置位状态,则会立即产生一个新的中断请求。三、外部中断外部中断,是由单片机引脚的状态发生变化时,引起的中断。C8051F340有两个外部中断,分别称INTO、INTI。INTO、INTI分别由单片机的P0口的某两个引脚构成。具体是哪两个引脚,由INT0/INT1配置寄存器ITO1CF来指定。同时ITO1CF,还指定引脚的触发极性。IT01CF:INT0/INT1配置寄存器RTtrR.W比IVRT1-RWE_WRTtr豆宜(A1X1如|IN1SL二|INL孔|INI竈。|KWL|H第二|IN此L】|b號LO

8、|ODQXKMI也了应厅击位4应W田辰i:;:.DTIW1电平罐感申断选择JdSFR.定文2L1</7-INlPLi.-INTI6JNT1拘低电甲育效.hINTI拘在电平肖效.t-6-4-IN1SL2-0j-'INTHril-l引押选择垃这M用于选择分配皓ANTI的端口引脚.注竜.该引脚分配与左更开关无挟:/INT1爵也视分配翁它的胡口引別-遐不影响板交真开关分配了相问弓脚的外设.如果将立叉开关配为跳过这牛引脚(洁过箱寄存棒POSKIP中的对应位itr来实班则谀引脚爵不会枝掃配绪外啟.tZ3:INDPLlINTfl性mmm詢低宅平有敢*1:罟肖效”位2-0jINOEL2-Oj-u

9、m刪口引洱选择应这魏用于迭择分配给.ONTD的胡口引JW*注意.该引脚分配与龙頁开关无失INTO持监视井配皓它的瑤口引脚.怛不躺响談空又开关分配了相同引脚的外SL如卑將空叉开臭配逼詢琳过这牛引泻通过蔚得存器POSKIP中的前应位靈'V来实班)则谨引脚将不会板甘配耸外盘外部中断有电平触发、边缘触发两种方式。由于外部电平的持续一般远大于单片机的中断服务程序的执行时间,如用电平触发,则外中断服务程序就会反复触发,因此外部中断多用边缘触发方式。选择电平触发还是边缘触发,需要设置寄存器TCON。TCON大多数位是和定时器相关,和外中断相关的只有4位。EFR定X2L1ICON:定时黠控制超存器R.

10、-TVR.WR.-TVRWR-WR/WR/WE/W碗曲IT:TRIIT&TROIE1IT1LBOno(HKOMOOH7竝d->5也斗垃2应1SERJ珈位头E1:外部中断1当检测到一个由m定义的边沿/电平时,该标志由硬件置位.诩位可以用软件清0,但当cpu辂向外部中断1中断服务程序时该位被自动淸(K如果m=i汇当m-0时,该标志ilMTl有效时被置*r(有效电平由IT01CF寄存器中的IN1PL位定义*见SFR定义9.13)o位宀m:中断1类型选择该位选择血n中断是边沿触发还是电平触发.可以用rrcicF寄存器中的IN1P匸位将ZENT1配置为低电平有效或高电平有效(见SEEt9.

11、13)o0:.INT1为电平触发口h/INT1为边沿触发口位kIE0:外部中断0当检测到一个由IT0定义的边沿/电平时.该标志由硬件置位诩位可以用软件淸0,但当CPU转向外部中断0中断服务程序时诩位被自动淸0(如果ITO=1L当IT0-0时,该标志在/INTO有效时被誉T(有效电平点IT01CF寄存器中的INOPL位定义*见SFR义9一13)°位ono:中断o类型选择该位选择ONTO中断是边沿触发还是电平触发.可以用rrciGF寄存器中的INOPL位将'INTO配置曲低电平有效或高电平有效(见SFR世义9.13),0:.INTO电平触发.hylNTC人边沿触发n比如我们欲要P

12、0.0、P0.4分别设置成下降沿触发的INT0、INT1中断,分别分析上面两个寄存器的功能,我们应将IT01CF设成0X04,TCON的第0、2两位设置成:“1、1”代码:IT01CF=0X04;TCON|=0X05;又比如我们欲要P0.2、P0.5分别设置成上升沿触发的INT1、INTO中断,分别分析上面两个寄存器的功能,我们应将ITO1CF设成OXDA,TCON的第0、2两位设置成:“1、1”代码:IT01CF=0X0DA;TCON|=0X05;请同学们分析,为什么是OXDA,TCON为什么加一个“I”TCON的第1和第3两位,分别是IEO、IE1,这两位就是外中断标志位。引脚事件发生时,

13、首先将这两位中的某一位置“1”,如果中断允许的话,然后由这两位触发中断服务程序。四:中断允许寄存器IE中断允许寄存器IE,是最基本的中断控制寄存器。其中IE.7,又称EA,是所有中断的总开关。其余各位,则分别来控制各个具体的中断。当然C8051F340有16个中断,单靠这一个IE是远远不够的。但对于外中断来说,IE就够了。定X?"it:中断允许寄荷器R.TVR.TVRWEWE/TVETVKWRW夏位虫EAESPIOET2ESOET1EXIET&EX&M00OCW血Pd栓5磴斗k3k2位1也0SFRJfei:寻址)OxASJ7:EA:允许所冇+«,该J允许/禁

14、止所冇中断它超越所有的单个中断屏蔽设7t0:禁止所冇屮断漏.L开放屮断卩每个中断由它对应的屮断屏蔽设置决定.栓ESPIO:.tlT#a接口(SPIO)屮断允许竝n该位用丁设責SPIO的中断屏蔽。0:禁止SPIO屮断.1:.fCfSPIOflij中蓟请求.ET2:定时器2屮蓟允许该怪用于设亶定时器2的屮断屏蔽aOz禁止定时嗣2屮断nli允许TF2L或7T2H标志的中断诸轧14:ESO:UAKT0屮断允it位a该恆设iKUAETO的屮断屛赴=0:禁止UAJ辽0屮断=,1:.fCiTUAiaO屮斷=,&3:ET1:定时器1屮商允许恆口该直用于设亶定时器1的屮断Wfco0:禁止定时嗣1屮断。1:允许m标志位的中断谕求a&2:EX1:外部中断1允1T世.该直用于设迂外揶中断1的屮断屏蔽*0:禁止外部屮断la1:.fCfr/INTL?|脚的屮断淌求11:ETO:定时器0屮断允许该直用于设就定时器0的屮断屛蔽a0:禁止定时嗣0屮断。1:.feiTTFO标志S的屮断请求。®0:EX0:外部中断0允1T世.该恆用于设置外部屮断D的中断屏蔽a0:禁止外SE屮断仇1:.ftft/INTO引脚的屮断淌求比如,我们要使用INTO、INT1两个外中断,则我们应将IE的第2、0两位置成1。代码如下:IE|=0X85;,如果只用I

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论