如果事件组的缓冲区数量 为16、并且我 在连续转换模式下将18个转换结果写入存储器、那么我可以通过 ADEVBUFFER 寄存器读取多少个结果?谢谢。
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
如果事件组的缓冲区数量 为16、并且我 在连续转换模式下将18个转换结果写入存储器、那么我可以通过 ADEVBUFFER 寄存器读取多少个结果?谢谢。
您好!
当存储器已满(16个缓冲区)时:
如果 ADEVMODECR 寄存 器中的 OVR_RAM_IGN 位置位,ADC 模块将忽略该组结果存储器的内容,并使用新转换的结果覆盖该存储器。 然后、您可以读取16个转换结果:从第3个转换结果到第18个转换结果
如果 OVR_RAM_IGN 位未设置,则代码必须在 超限条件下读出组的结果存储器;只有这样,ADC 才能继续向存储器写入新的结果。 这意味着您必须先读取前16个转换结果、然后读取2。
大家好、Gunxiong、
如果一个转换组被配置为连续转换模式、那么它只需要被触发一次。 在该组中选择用于转换的所有通道都将重复转换。
您可以启用组存储器阈值中断、并在中断服务例程中读取转换结果。
如果 OVR_RAM_IGN 位未设置、ADC 将无法覆盖事件组结果存储器的内容。 当该存储器发生溢出时、软件需要先读出该存储器的所有内容、然后 ADC 才能为事件组写入新的转换结果。 如果转换存储器中的内容未被读出、新的转换结果将丢失。