中斷優(yōu)先級由高到低
51單片機:INT0(P3.2)、TIMER0、INT1(P3.3)、TIMER1、串口中斷(P3.0、P3.1)
52單片機:TIMER2
外部中斷下降沿觸發(fā)
內部定時器:TMOD寄存器(M1M0)
M1 M0 方式
0 0 0 13位
0 1 1 16位
1 0 2 8 auto
1 1 3 兩個8位
串口{RI->while(RI!)
TI->while(TI!)}
執(zhí)行指令時中斷來了,先執(zhí)行完這條指令再處理中斷.
單片機與外部進行信息交換的方式:輪詢方式、中斷方式、DMA
2451 53個中斷源
程序初始地址:0x30000000
中斷向量地址:0x00000000
中斷模式:
IRQ:正常觸發(fā)中斷模式
FIQ:快速中斷模式(緊急狀況使用,優(yōu)先級高)
寄存器:
SRCPND1 首標識寄存器,32位,對應中斷被請求該位置為1,默認值為0
INTMSK 屏蔽寄存器,32位,對應中斷被屏蔽該位置為1,默認為1
INTPND 尾標識寄存器,32位,和首標識寄存器內容一樣
SUBSRCPND 子標識寄存器,32位,
INTSUBMSK 子屏蔽寄存器,32位,
PRIORITY 優(yōu)先級寄存器,28位,
INTMOD 模式寄存器,32位,默認都置位0,0代表IRQ模式,1代表FIQ
(沒有被屏蔽)->INTMODE(IRQ)->PRIORITY(10、12、28)->INTPND(10位置1)->INTOFFSET(置為10)->TIMR0 中斷服務函數(ISR)->INTPND、SRCPND、SUBSRCPN
清第10 位的中斷標識位
1.優(yōu)先級順序默認
2.都不屏蔽
3.IRQ模式
定時器中斷:
51單片機:
時鐘周期: 1/110592M = 1.09us, 1/12M
機械周期: 12*1.09us,
2個機械周期 = 1個節(jié)拍
指令周期 = 若干機械周期(>=1)
T0、 1、 16位 TH0(高8位); 加計數->65535 溢出
2^16 - 1 = 65535
12M 機械周期 1us
65.535ms
定時50ms
TH0 = (65535-50000)/256; //高8位
TL0 = (65535-50000)%256; //低8位
2451:
PWM:占空比 高電平所占時間
寄存器:
TCFG: 預分頻寄存器,32位
TCON:定時器控制寄存器,22位
TCNTB: 計數寄存器
TCMPB: 比較寄存器
TCNTO: 觀測TCNTB
簡單定時器初始化步驟:
1、配置預分頻系數(199)
2、配置分頻系數(8)
3、配置計數初始值(41250)
4、配置為自動重載功能(TCON)
5、Update初值(TCON)
6、開啟定時器(TCON)
7、清除bit(Update初值控制位)(TCON)