串行通信中断及应用
串行接口电路发送缓冲器SBUF发送门TXD(P3.1)发送波特率发送控制器TI累加器Acc串行中断ES+或门接收波特率接收控制器RISBUF接收缓冲器移位寄存器RXD(P3.0)
1
1中断允许控制寄存器IE
AFHAEHADHACHABHAAHA9HA8HIEEA-ET2ESET1EX1ET0EX0位地址字节地址A8H中断允许定时器T2中断允许串行口中断允许定时器T1中断允许INT1 中断允许定时器T0中断允许INT0 中断允许只开启串行通信 SETB EA SETB ES
或者 MOV IE,#90H
2设置串行中断优先级(控制寄存器IP、IPH)
中断源的中断优先级由IPH、IP对应位编码决定IPH.X位 IP.X位
优先级
0 0 0级(优先级最低) 0 1 1级 1 0 2级
1
1
3级(优先级最高)
例如串行中断优先级最高 MOV IP,#0C0H MOV IPE,#0C0H 或者 SETB PS
MOV IPE,#0C0H
BDHBCHBBHBAHB9HB8HIP--PT2PSPT1PX1PT0PX0定时/计数器T2中断优先级低位串行口中断优先级低位定时/计数器T1中断优先级低位INT1 中断优先级低位定时/计数器T0中断优先级低位INT0 中断优先级低位(a)
2
位地址字节地址B8H复位后初值为XX000000B:(IPH没有位地址功能)
IPH--PT2HPSHPT1HPX1HPT0HPX0H字节地址B7H复位后初值为:XX000000B定时/计数器T2中断优先级高位串行口中断优先级高位定时/计数器T1中断优先级高位INT1 中断优先级高位定时/计数器T0中断优先级高位INT0 中断优先级高位(b)
3 入口地址
定时/计数器T1溢出中断 串行口中断 ORG 00H AJMP ??? ORG 1BH AJMP ??? ORG 23H AJMP ???
001BH 0023H
串行口控制寄存器SCON
5 进入中断服务程序后,
(1)CPU能自动清除下列中断请求标志位:
定时器T0中断请求标志TF0;
3
定时器T1中断请求标志TF1; 边沿触发方式下外中断的中断请求
标志IE0;