Single-shot Single-shot 操作是通过写COJMPCTRLx.SINGLE为1来选择的。在single-shot操作期间,比较器通常是空闲的。用户开始一个单个的比较通过向控制B寄存器中的相应的只写开始比较位(CTRLB.STARTx)。比较器是使能的,在开启时间过后,一个单个的比较就被做并且STATUSA被更新。相应外设的事件和中断也产生。没有新的比较将执行。 写一个1到CTRLB.STARTx 也清除了状态B寄存器比较器 x 准备好比特位(STATUSB.READYx)。STATUSB.READYx当单个比较结束通过硬件自动设置。为了除去轮循,一个另外的启动比较器的方法也可使用。读状态C寄存器(STATUSC)将要开始一个比较对所有的正确配置为single-shot操作的比较器。读将滞后总线直到所有的使能的比较器都读完。如果一个比较器仍然处于一个比较的忙状态,读将延迟直到当前比较结事,新的比较不再开始。 Single-shot意味着也能通过事件系统触发。写一个1到事件控制寄存器比较器x 事件输入比特(EVCTRL.COMPEIx)使能输入外设事件。每个比较器通被分开的独立的事件触发。事件触发操作同用户触发操作相似;不同的是外设事件从别一个硬件模块来导致处动开始比较和清除STATUSB.READYx 为了检测在single-shot操作中的比较器输出的边沿以达到中断的目地,当前测量的结果同前一个测量比较(一个最新的采样周期)。Single-shot操作如下图所示:
|