ZHDU116G January 2018 – June 2024 CC1312PSIP , CC1312R , CC1352P , CC1352R , CC2642R , CC2642R-Q1 , CC2652P , CC2652PSIP , CC2652R , CC2652RB , CC2652RSIP , CC2662R-Q1
触发条件可用于设置启动时间,或用于特定无线电操作命令中的其他特定目的。有一个通用的触发条件字节,定义见表 26-4。
| 位索引 | 字段 | 说明 |
|---|---|---|
| 0-3 | triggerType | 触发条件类型 |
| 4 | bEnaCmd | 0:无替代触发条件命令。 1:CMD_TRIGGER 可用作替代触发条件。 |
| 5-6 | triggerNo | 触发此操作的 CMD_TRIGGER 命令的触发条件编号。 |
| 7 | pastTrig | 0:过去的触发条件绝不会触发,否则在启动命令时会产生错误。 1:过去的触发条件会尽快触发。 |
triggerType 可取表 26-5 中列出的值。其他值保留。
| 编号 | 名称 | 说明 |
|---|---|---|
| 0 | TRIG_NOW | 现在(不适用于结束触发条件) |
| 1 | TRIG_NEVER | 从不(但 bEnaCmd = 1 时可能由 CMD_TRIGGER 触发) |
| 2 | TRIG_ABSTIME | 由计时器参数给出的绝对时间 |
| 3 | TRIG_REL_SUBMIT | 相对于命令提交时间的时间 |
| 4 | TRIG_REL_START | 相对于此命令开始时间的时间(不允许用于启动触发条件) |
| 5 | TRIG_REL_PREVSTART | 相对于上一条命令开始时间的时间 |
| 6 | TRIG_REL_FIRSTSTART | 相对于链中第一条命令开始时间的时间 |
| 7 | TRIG_REL_PREVEND | 相对于上一条命令结束时间的时间 |
| 8 | TRIG_REL_EVT1 | 相对于上一条命令的事件 1 的时间 |
| 9 | TRIG_REL_EVT2 | 相对于上一条命令的事件 2 的时间 |
| 10 | TRIG_EXTERNAL | 在 RAT 的外部触发输入上 |
除 TRIG_NOW 和 TRIG_NEVER 之外,所有触发条件都会使用一个 32 位时间参数。绝对时序使用 32 位 RAT 的值。相对时序使用 RAT 节拍数。外部触发条件使用源和边沿的标识符,定义见表 26-6。
| 位索引 | 字段 | 说明 |
|---|---|---|
| 0-1 | 保留 | |
| 2-3 | inputMode | 输入模式 00:上升沿 01:下降沿 10:两个边沿 11:保留 |
| 4-7 | 保留 | |
| 8-12 | source | 22:RFC_GPI0 23:RFC_GPI1 其他:保留 |
| 13-31 | 保留 |
相对时序可以相对于提交命令链的时间、命令的启动时间、前一个或第一个命令的启动时间,或命令内某些观察到的事件,需要针对每个命令进行定义。以下规则适用:
如果 bEnaCmd 为 1,该操作也可以由命令触发(CMD_TRIGGER 命令,请参阅节 26.3.3.2.5)。triggerNo 参数标识该命令的触发条件编号。
如果在评估时触发条件发生在过去,则其行为取决于 pastTrig 位。如果该位为 0,则触发条件不会发生,否则对于启动触发条件,将会产生错误。如果该位为 1,则触发条件会尽快发生。如果启动触发条件的 pastTrig 位为 1,则相对于命令启动时间的时序是相对于编程的启动时间,而不是实际的启动时间。
对于外部触发条件,无线电 CPU 会设置 RAT 以使用选定的输入事件作为单次捕获触发条件;然后 CPU 使用此捕获中断来触发操作。如果事件发生在设置完成之前,则不会捕获该事件,并且会忽略 pastTrig 位。