MCS—51系列单片机内部只有两个外部中断源输入端,当外部中断源多于两个时 ,就必须进行扩展,下面介绍两种简单的扩展方法: 端(INT0或INT1),同时再把外部中断源送到单片机的某个输入输出端口,这 样当外部中断时,通过“或非”(与)门引起单片机中断,在中断服务程序中再通 过软件查询,进而转相应的中断服务程序。显然,这种方法的中断优先级取决于 软件查询的次序。其硬件连接和软件编程如下: Void zhongduan (void) interrupt 0 using 3 //中断函数
二、用普通二极管构成中断选择 有点类似第一种方法。
三、用定时器/计数器作外部中断 跳变时,计数器加一,当加一计数器溢出时,就向CPU发出中断,利用这个特性 来扩展中断的方法是:首先把定时器/计数器设置成计数方式,并预置满值,把 外部中断源输入到P3口第4引脚或第5引脚(计数器输入端),这样就可以利用 定时器/计数器作为单片机外部中断了。注意这种方法的中断服务的入口地址应 在000BH或001BH。
四、用专用中断扩展芯片8259A 8259A是可编程中断控制接口,单片机控制八级中断。在系统中还可采用级联方式,一个主片可级联8个从片,构成64级中断处理系统。
这样在程序小于8K的情况,就可以用一片单片机实现了,而不需要用两片单片机控制,还要进行单片机点对点通讯。 |
51单片机扩展中断的四种方法
最新推荐文章于 2022-12-12 23:29:13 发布