只有一個(gè) VINDEX 寄存器,并且每次接收到觸發(fā)信號(hào)時(shí)值都會(huì)被覆蓋。這意味著用戶(hù)無(wú)法將具有唯一 VINDEX 值的多個(gè)觸發(fā)事件排隊(duì)。但是,DDS 可以多次重復(fù)使用存儲(chǔ)的 VINDEX 值。例如,如果 DDS_BURST=3,則單個(gè)觸發(fā)事件會(huì)播放特定波形 4 次。下面詳細(xì)說(shuō)明了該示例的操作:
- 假設(shè) DDS 正在等待觸發(fā)且 DDS_SYM[0]=0(非對(duì)稱(chēng)模式)。
- 假設(shè) DDS_VEC[80].VTRIG_MODE=1。
- TRIG[0] 上升,其中 TRIG[4:1]=5。DDS 設(shè)置 VINDEX=5*16=80。DDS 開(kāi)始播放矢量 80(使用一次觸發(fā),并且因?yàn)?DDS_BURST=3,3 個(gè)觸發(fā)事件排隊(duì))。
- DDS 播放矢量 80 至 83。
- DDS_VEC[83].LAST_VEC=1,因此 DDS 跳轉(zhuǎn)到 DDS_VEC[VINDEX](這是矢量 80,因?yàn)?VINDEX 尚未更改)。由于 DDS_VEC[80].VTRIG_MODE=1,因此從隊(duì)列中刪除了一個(gè)觸發(fā)事件。
- 矢量 80 至 83 共播放 4 次(播放中間隔為零)。第四次播放后,觸發(fā)隊(duì)列為空,因此 DDS 停止(靜音)并再次等待觸發(fā)。