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.
工具/软件:Code Composer Studio
大家好!我正在为自己学习新的 TMS320F280049PMSR。 有3个问题:
配置工程时、应选择哪个变体:TMS320F280049、TMS320F280049C、TMS320F280049M?
2在配置 SDFM 模块的示例中、使用了以下中断:INT_SD FM 1和 INT_SDFM1DR1。 我在数据表中找不到有关此中断的任何说明。 假设转换完成时触发 INT_SDFM1DR1、并且在发生错误或触发比较器时触发 INK_SD FM 1、我是否正确?
3.在配置 SD FM 模块的示例中、显示了以下中断处理程序:
_interrupt void sdfmDR1ISR (void) { 静态 uint16_t loopCounter1 = 0; SDFM_setOutputDataFormat (SDFM1_base、SDFM_filter_1、 SDFM_DATA_FORMAT_16_BIT); // //读取 SDFM 标志寄存器(SDIFLG) // if (loopCounter1 >= MAX_SAples) { loopCounter1 = 0; } while ((HWREG (SDFM1_base + SDFM_O_SDIFLG)& 0xF000U)!= 0xF000U) { } 滤波器1 Result[loopCounter1]= (int16_t)(SDFM_getFilterData (SDFM1_base、SDFM_filter_1)>> 16U); filter2Result[loopCounter1]= (int16_t)(SDFM_getFilterData (SDFM1_base、SDFM_filter_2)>> 16U); 滤波器3 Result[loopCounter1]= (int16_t)(SDFM_getFilterData (SDFM1_base、SDFM_filter_3)>> 16U); filter4Result[loopCounter1++]= (int16_t)(SDFM_getFilterData (SDFM1_base、SDFM_filter_4)>> 16U); // //清除 SDFM 标志寄存器(SDIFLG) // SDFM_clearInterruptFlag (SDFM1_base、SDFM_MASTER_INTERRUPT_FLAG | SDFM_FILTER_1_NEW _DATA_FLAG | SDFM_FILTER_2_new_data_FLAG | SDFM_FILTER_3_NEW _DATA_FLAG | SDFM_FILTER_4_NEW _DATA_FLAG); // //确认此中断以接收来自组5的更多中断 // interrupt_clearACKGroup (interrupt_ack_group5); }
如何使中断仅在滤波器4中的转换结束后工作?
(与 ADC 一样:SOIC 0 ->SOC1 ->SOC2->SOC 3->中断)
弗拉基米尔
[引述]1. 配置项目时、我应该选择哪个变体:TMS320F280049、TMS320F280049C、TMS320F280049M?[/QUERP]
使用 TMS320F280049
[引用] 2在配置 SDFM 模块的示例中、使用了以下中断:INT_SD FM 1和 INT_SDFM1DR1。 我在数据表中找不到有关此中断的任何说明。 假设转换完成时触发 INT_SDFM1DR1、并且在发生错误或触发比较器时触发 INK_SD FM 1、我是否正确? [/报价]
17.7 SDFM 一章中的中断单元解释了这些中断。 INT_SDFM 实际上是 SDy_ERR 中断。
[引用]如何使中断仅在滤波器4中的转换结束后才起作用? [/报价]
假设所有4个滤波器的数据速率相同、所有4个滤波器通道处于同一相位(意味着所有4个滤波器通道同时获取新的滤波器数据)、则可以使用 INT_SDFM1DR4中断并禁用 INT_SDFM1DRx (1、2、3)中断源。
此致、
曼诺伊