一种基于8051CPU系统的中断扩展方法技术方案

技术编号:7586260 阅读:346 留言:0更新日期:2012-07-20 07:46
一种基于8051CPU系统的中断扩展方法,采用硬件扩展和传统软件查询相结合的方式,实现对8051CPU系统中多中断源进行扩展处理。首先在系统程序存储器和8051CPU中间设立中断扩展处理模块,8051CPU发出访问某个中断地址时,中断扩展处理模块检测并进行拦截,根据中断优先级向量表返回数据并模拟长转移指令。8051CPU接收到返回数据后,获取长转移跳转地址,执行长转移跳转指令并跳转到相应的函数,进入中断处理。采用本发明专利技术提供的中断扩展方法,能有效提高8051CPU系统中多中断源的处理速度。

【技术实现步骤摘要】

本专利技术涉及一种中断方法,尤其涉及一种基于8051CPU系统的中断扩展方法
技术介绍
8051CPU(8位单芯片CPU)作为一个经典的系统,应用于电子行业的各个领域。一个8051CPU系统一般情形中的中断源包括外部中断0,外部中断1,定时器中断0,定时器中断1和串行中断。随着外设的增多,对于单进程的8051系统的中断有着更大的需求,并且对于中断响应也有更高的要求。随着中断源的不断增加,多个中断源使用一个8051CPU的中断入口不可避免。当系统中断源不足时,就需要将原有的中断进行扩展。传统中断源扩展实现方式一般采用将若干中断一起连接到8051CPU的中断上,并在外部集成一个中断查询寄存器,当中断发生的时候由软件实现先查询此寄存器,根据需要再选择处理相应的中断,这种中断源扩展的实现方法其执行效率较低。为解决由软件实现的方式,中断源扩展效率较低的问题,设计一种执行效率较高,且可由硬件和软件实现的中断源扩展方法,是本专利技术所要解决的
技术实现思路

技术实现思路
本专利技术目的提供一种基于8051CPU系统的中断扩展方法,采用硬件扩展和传统软件查询相结合的实现方式,能有效提高8051CPU系统中多中断源的处理速度。一种基于8051CPU系统的中断扩展方法,包含以下内容(1)在系统程序存储器和8051CPU中间设立中断扩展处理模块;(2)中断扩展处理模块检测8051CPU是否开始进入中断程序处理;(3)8051CPU发出访问某个中断地址时,中断扩展处理模块检测并进行拦截,根据中断优先级向量表返回数据并模拟长转移跳转指令;(4) 8051CPU接收到返回数据后,获取长转移跳转地址,执行长转移跳转指令并跳转到相应的函数,进入中断处理;(5)中断扩展处理模块继续拦截,并根据中断地址入口向量表依次返回相应的地址,进行系统中断处理。中断扩展处理模块提供中断优先级控制向量表、中断入口地址向量表和中断访问检测三部分内容。中断优先级向量用于判定多中断同时触发时优先进入的中断处理程序,用户可根据应用进行配置。中断地址入口向量表用于提供中断程序的入口地址,用户也可以根据需求进行配置。中断访问检测,用于检测8051CPU何时访问中断程序并提供给中断扩展处理模块进行处理。附图说明图1本专利技术提供的中断扩展方法基本流程图图28051CPU系统的中断扩展处理电路结构示意3中断扩展处理模块的内部实现示意4实施例中8051CPU指令集中长转移指令指令码具体实施例方式以下结合各附图,对本专利技术提出的内容进行详细的描述。图1给出了本专利技术提供的基于8051CPU系统的中断扩展方法基本流程图。假设外部中断0为例,中断扩展处理模块设置在8051CPU与程序存储器之间,如图2所示。当中断产生时,中断扩展处理模块开始工作,检测8051CPU是否开始进入中断程序处理。首先外部中断0上产生中断触发信号,8051CPU进入中断处理进程,从中断入口地址上读入程序数据。当外部中断0默认的地址入口为0003,则805ICPU将会访问0003这个地址读出中断处理程序。在8051CPU发出访问0003地址的时候,由中断扩展处理模块检测并且进行拦截,返回数据02并模拟长转移跳转指令。8051CPU在接收了 02指令后会继续访问0004,0005地址来获取跳转的地址,长转移跳转指令如图4所示。中断扩展处理模块继续拦截,并且根据中断地址向量表依次返回相应的地址。当8051CPU获取数据后将会执行长转移跳转指令并跳转到相应的函数,完成8051CPU的不同的中断处理。中断扩展处理模块内部实现如图3中所示。权利要求1.一种基于8051CPU系统的中断扩展方法,其特征在步骤为,(1)在系统程序存储器和8051CPU中间设立中断扩展处理模块;(2)中断扩展处理模块检测8051CPU是否开始进入中断程序处理;(3)8051CPU发出访问某个中断地址时,中断扩展处理模块检测并进行拦截,根据中断优先级向量表返回数据并模拟长转移跳转指令;(4)8051CPU接收到返回数据后,获取长转移跳转地址,执行长转移跳转指令并跳转到相应的函数,进入中断处理;(5)中断扩展处理模块继续拦截,并根据中断地址入口向量表依次返回相应的地址,进行系统中断处理。2.如权利要求1所述的一种基于8051CPU系统的中断扩展方法,其特征在于所述中断扩展处理模块提供中断优先级控制向量表、中断入口地址向量表和中断访问检测的内容。3.如权利要求1或2所述的一种基于8051CPU系统的中断扩展方法,其特征在于所述中断优先级向量用于判定多中断同时触发时优先进入的中断处理程序,用户可根据应用进行配置。4.如权利要求1或2所述的一种基于8051CPU系统的中断扩展方法,其特征在于所述中断地址入口向量表用于提供中断程序的入口地址,用户可根据应用进行配置。5.如权利要求1或2所述的一种基于8051CPU系统的中断扩展方法,其特征在于所述中断访问检测用于检测8051CPU何时访问中断程序并提供给中断扩展处理模块进行处理。全文摘要一种基于8051CPU系统的中断扩展方法,采用硬件扩展和传统软件查询相结合的方式,实现对8051CPU系统中多中断源进行扩展处理。首先在系统程序存储器和8051CPU中间设立中断扩展处理模块,8051CPU发出访问某个中断地址时,中断扩展处理模块检测并进行拦截,根据中断优先级向量表返回数据并模拟长转移指令。8051CPU接收到返回数据后,获取长转移跳转地址,执行长转移跳转指令并跳转到相应的函数,进入中断处理。采用本专利技术提供的中断扩展方法,能有效提高8051CPU系统中多中断源的处理速度。文档编号G06F9/48GK102591719SQ20111000960公开日2012年7月18日 申请日期2011年1月17日 优先权日2011年1月17日专利技术者薛重阳 申请人:上海华虹集成电路有限责任公司本文档来自技高网...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:薛重阳
申请(专利权)人:上海华虹集成电路有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术