飞思卡尔ICC中断
发表:2023-08-29 12:00:04 阅读:61

飞思卡尔ICC中断:如果表10一8中任何一个事件发生,且IICIE位已经置l,则产生一个IIC中断。中断由IICIF(IIC状态寄存器中)位驱动,由IICIE位(IIC状态寄存器中)屏蔽(将该位清零,则屏蔽掉中断功能)。IICIF位必须在中断子程序中通过对其写1进行清零。用户能通过读状态寄存器确定中断类型。

1)字节传输中断:TCF(传输结束标志)位在第9个时钟的下降沿被置1,指明字节传输结果。

2)地址检测中断:当本身确定的地址(IIC地址寄存器)与呼叫地址匹配时,状态寄存器中IAAS位被置1。这时如果IICIE被置l,则CPU进入中断状态。CPU必须检查SRW位和设置它相应的TX模式。

3)仲裁丢失中断:IIC是一个真正的多主总线,允许不止一个主器件连接到它。如果两个或更多主器件试图在同一时间控制总线,一个数据仲裁进程确定竞争主器件的相对优先级。IIC模块在丢失数据仲裁进程声明这个中断,在状态寄存器中ARBL位被置1。在下列情况下仲裁丢失:

①当主器件在地址或数据传输周期期间驱动为高时,SDA采样为低。

②当主器件在一个数据接收周期的应答位期间驱动为高时,SDA采样为低。

③当总线忙时,尝试一个START周期。

④在从模式中,请求一个重复的START周期。

⑤当主器件未请求,监测到一个STOP条件。此位必须通过软件对其写1才能被清除。

 

阅读更多请您关注:

START 信号

飞思卡尔IIC地址传输

飞思卡尔IIC数据传输

freescale代理