26.6.3.4 回环模式
通过配置Pinout管脚数据输入(CTRLA.DIPO)和数据输出管脚(CTRLA.DOPO)用同样的数据管脚来接收
和发射,回环模式实现。回环是通过pad,所以信号也适用于外部。
26.6.3.5 硬件控制_SS
在主机模式,一个芯片选择_SS信号通通过设置主从选择允许(CTRLB.MSSEN)比特为1。在这个模式下
,在传输前_SS管脚拉低一个波特率周期的一小部分,并且在传输完成前停在低电平一个波特率周期的一
小部分时间。如果连续的帧传输,_SS管脚总是在针与针之间被拉高一个波特率周期的一小段时间。
当MSSEN被设为0,_SS管脚被用户软件和通用GPIO控制。
26.6.3.6 从机选择低电平检测
在从机模式SPI有能力唤醒CPU当从机选择(_SS)变成低。当从机选择低检测是允许(CTRLB.SSDE=1),
一个高到低的传输将设置从机选择低中断标志(INTFLAG.SSL)并且设备将被唤醒。
26.6.4 DMA,中断和事件
26.6.4.1 DMA操作
SPI产生以下DMA请求:
。数据接收(RX):请求被设置当数据在接收FIFO可用。请求清除是当DATA被读走。
。数据传输(TX):当传输缓冲(TX DATA)是空请求被设置。当DATA被写时请求清除。
26.6.4.2 中断
SPI有以下中断源:
。Error(ERROR):这是一个非同步中断并且能从任何休眠模式中唤醒设备。
。从机选择低(SSL):这是一个非同步中断并且能从任何休眠模式中唤醒设备。
。接收完成(RXC):这是一个非同步中断并且能从任何休眠模式中唤醒设备。
。传输完成(TXC):这是一个非同步中断并且能从任何休眠模式中唤醒设备。
。数据寄存器空(DRE):这是一个非同步中断并且能从任何休眠模式中唤醒设备。
每个中断源有一个中断标志与其相关。当中断条件发生中断标志在中断标志和清除寄存器(INTFLAG)
被调置。每个中断能被单独通过向中断使能设置寄存器(INTENSET)相应的位写1.并且是通过向中断使能清
除寄存器(INTENCLR)相应的位写1。一个中断请求产生是在中断标志置1并且相应的中断使能。中断请求保
持到中断旗标被清除,SPI被禁止或系统复位。见寄存器描述关于怎样清除中断标志。SPI有一个对所有中
断源的通用中断请求线,用户必须读INTFLAG来确定哪个中断条件存在。
|