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.
您好!
我对 TMS320F28377S 器件的缓冲数模转换器(DAC)模块有疑问。
参考其技术参考手册、在第10.1节中写入"对 DAC 值寄存器的软件写入可立即生效或与 PWMSYNC 事件同步。"
我的问题是关于 PWMSYNC 事件。
我不能弄清楚 PWMSYNC 事件到底意味着什么。
在增强型脉宽调制器(ePWM)的第13章中、我找不到 与 DAC 模块相关的 PWMSYNC 事件的任何信息。
感谢您的指导。
此致、
G. Kim
尊敬的 Frank:
感谢您的评论。
我需要讨论 DACVALA 寄存器与 PWMSYNC 事件的同步。
我使用 ePWM6模块测试了 DAC-A 模块、如下所示:
SyncSockRegs.SYNCSELECT.BIT.EPWM4SYNCIN = 0; //EPwm1SyncOut
EPwm4Regs.TBCTL.bit.SYNCOSEL = TB_SYNC_IN;
EPwm5Regs.TBCTL.bit.SYNCOSEL = TB_SYNC_IN;
EPwm6Regs.TBCTL.bit.SYNCOSEL = TB_SYNC_IN;
因此 、EPWM6SYNCO 信号将每100us 生成一次。
DacaRegs.DACCTL.bit.LOADMODE = 1; //使能值只在 SYNC 信号上改变
DacaRegs.DACOUTEN.bit.DACOUTEN = 1; //启用 DAC 输出
DacaRegs.DACCTL.bit.SYNCSEL = 5; //同步 SEL 5表示从 PWM 同步6
因此、DAC-A 模块的 DACVALA 寄存器将每100us 更新一次。
在每6.25us 执行一次 ISR 中、包含以下语句:
DacaRegs.DACVALs.bit.DACVALS = sineTable[rslvrOut.sineIndex];
最后、当我使用示波器测量 DACA 引脚时、我发现 DACVALA 寄存器每6.25us 更新一次。
它不会每100us 更新一次。
我无法弄清为什么 DACVALA 寄存器每6.25us 更新一次。
请为我查看此问题。
感谢您的指导。
此致、
G. Kim
尊敬的 Frank:
感谢您的评论。
令人遗憾的是,我无法清楚地理解你的意思。
EPWMxSYNCO 信号应为 脉冲信号。
在 为 DAC 模块选择 SYNC 上的负载之前、我已经配置了 ePWM。
TBPRD 不为零。 它已配置为5、000。
我 假设对于这个 TMS320F28377S 器 件、DACVALA 与 PWMSYNCH 事件同步的功能可能不起作用。
请评论我的假设。
感谢您的指导。
此致、
G. Kim