8xx51单片机有5个中断源,8xx52单片机正加了一个定时/计时器2,共有6个中断源,其中两个外部中断源,其余为内部中断源。本篇博客以52单片机为例总结。
中断源
中断源就是引起中断的原因和发出中断申请的来源。他们在程序储存器中个有固定的中断服务程序入口地址。这些中断源符号和名称见如下表。
中断控制的有关寄存器
1、中断的允许和禁止——中断控制寄存器
如果允许该中断则该位置“1”,禁止为“0”,如下表。
EA:中断控制总开关。EA=1,CPU开中断;EA=0,CPU关中断。
2、外部中断方式选择寄存器TCON
寄存器TCON的格式如下
中断程序的设计
Interrupt n表示将函数为服务中断函数,n为中断源编号,n的值代表中断名称如下表。
定时/计数器方式寄存器TMOD
TMOD寄存器为8位寄存器,其高4位用于选择T1的工作方式,低4位用于选择T0的工作方式。
定时/计数器控制寄存器TCON。
定时/计数器的初始化编程步骤:
1、根据定时时间要求或计数要求计算计数器初值;
2、将工作方式控制字写入TMOD寄存器
3、将计数初值写入高四位(TH)和低四位(TL)寄存器中
4、启动定时器或计数器。