BF6921A中断系统详解:中断等待与采样机制

需积分: 39 35 下载量 199 浏览量 更新于2024-08-08 收藏 716KB PDF 举报
"BF6921A是一款由比亚迪微电子公司生产的电容触摸按键控制器,其数据手册详细描述了该芯片的功能、引脚配置、电气特性、中断系统以及通信接口等关键信息。" 在BF6921A这款芯片中,中断系统是一个重要的组成部分,它涉及到中断等待和中断采样两个关键概念。 11.5 中断采样: 中断采样机制允许芯片对外部中断请求进行响应。内部定时器和串口通过它们各自专用的SFR(特殊功能寄存器)中的中断标志位来引发中断请求。中断INT_M和INT_EXT是低电平有效的,这意味着当这些引脚上的电压降低时,会触发中断。通过TCON SFR中的IT0和IT1位,可以设置INT_M和INT_EXT为边缘触发或电平触发模式。例如,IT0=0时,INT_M将变为边缘触发,当检测到INT_M脚从高电平变为低电平时,IE0置1。其他四个外部中断(INT 2, INT 4, INT 3_n, INT 5_n)只能使用边缘触发,其中INT 2和INT 4在上升沿有效,INT 3_n和INT 5_n在下降沿有效。中断的采样是在每个指令周期的第4个时钟周期结束时,通过clk的上升沿进行的。对于边缘触发的中断,需要中断信号保持4个时钟的高电平,然后保持4个时钟的低电平,以便被正确检测。电平触发中断则不锁存,中断信号必须在整个中断响应期间保持不变。 11.6 中断等待: 中断的响应时间取决于BF6921A当前的状态。理想的最短响应时间为5个指令周期,这包括1个周期用于检测中断请求,其余4个周期用于执行中断服务程序(ISR)的LCALL指令。然而,当BF6921A正在执行RETI指令,并且接下来要执行MUL或DIV指令时,中断等待时间最长,可达13个指令周期。这是因为需要完成RETI指令的3个周期,MUL或DIV指令的5个周期,以及ISR的LCALL指令的4个周期,总共52个时钟周期。 BF6921A的中断系统设计考虑到了灵活性和实时性,允许根据具体应用需求配置中断触发方式,并且能够快速响应中断请求,确保系统的高效运行。中断采样和中断等待的机制确保了中断处理的准确性和及时性,这对于实时性强、对响应时间敏感的嵌入式系统来说至关重要。此外,BF6921A还具备GPIO端口、PWM输出、定时器、UART0、IIC通信等功能,使其成为适用于多种应用场景的多功能芯片。