工具/软件:TI C/C++编译器
你(们)好
(a)我想知道 TM4C 是否可以生成可抖动的时钟输出以保持低 EMI、例如300kHz 或1MHz (对于 SEPIC PSU)上的+/-5%变化。
(b)我将在 TM4C 中使用16MHz XTAL、并将系统时钟升压至大约100MHz (处于早期阶段)。 我想再次添加小抖动以保持低 EMI。 请记住、USB 将连接到嵌入式窗口10模块。 最好的方法是什么?
提前感谢您的考虑。
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.
工具/软件:TI C/C++编译器
你(们)好
(a)我想知道 TM4C 是否可以生成可抖动的时钟输出以保持低 EMI、例如300kHz 或1MHz (对于 SEPIC PSU)上的+/-5%变化。
(b)我将在 TM4C 中使用16MHz XTAL、并将系统时钟升压至大约100MHz (处于早期阶段)。 我想再次添加小抖动以保持低 EMI。 请记住、USB 将连接到嵌入式窗口10模块。 最好的方法是什么?
提前感谢您的考虑。
答案取决于许多其他因素,例如如何生成波形,您需要哪种分辨率...
通常、您通过 PWM/ccp 块来实现它。 假设您以80MHz 运行时钟并需要8位 PWM 分辨率、这会导致输出频率80M/256 = 300kHz、提供或接受。 您可以更改顶部。 如果使用 PWM、则假设占空比为50%、分辨率限制为2/256 = 1%。 也可以切换 ccp 引脚。
也可以通过其他方法。 但您必须首先确定要采取的方法。
我决定尝试一下、看看"随机"一个32位周期变量会花费多少时间。
以下是我的策略:
PR +=lfsr32 ()?(+1):(-1); 如果(pr >= PR_Mean + PR_Delta)||(pr <= PR_Mean - PR_Delta)) pr = PR_Mean;
PR_Mean = 1000、PR_Delta = 50。
在 LM3S/Keil 上、执行该策略需要10-30个周期。
我使用了一个质量未知的典型 LFSR-32位算法、因此我必须防止出现偏置的可能性。 如果您对随机化策略充满信心、您可能会同时使用"if"语句。
5分钟的工作还不错
感谢 Danny 的介绍、我认为这正是我要寻找的计时器时钟抖动 PSU 频率以降低 EMI、从而扩展频谱。 我再次感谢 这项出色的工作:-)
我稍后将为低 EMI 解决方案设计原理图和布局、一种方法是在进入 TM4C 的16MHz 时钟上设置随机抖动、从而在稍后缓解 EMI 问题。 我还没有找到 IC 时钟器件实现了这一点、但我在过去(9年前)使用过它。 TM4C 内的 PPL 会将16MHz 抖动时钟跟踪为80或100MHz、因此我需要注意不要有太多可能影响 USB 运行的抖动(我担心这一点)。
我尚未测试 TM4C 的低 EMI、也未看到证明它是低 EMI 器件、这是采取此预防措施的原因。
R.
您好 Richard、
不确定 EMI 需要达到多低、但例如、如果您想要根据欧盟标准进行测试、那么采用适当硬件设计的 TM4C 将通过此类测试。 如果您有一些超出常规国际标准的额外要求、我建议您或许先测试我们精心设计的开发板之一、如 DK-TM4C129X、然后查看结果是否足以满足您的需求。
通常、要设计原理图和布局以最大限度地降低 EMI、您应严格遵循我们的设计指南文档。 这是最大限度降低 EMI 的最佳方法、许多客户在遵循该方法时取得了巨大成功: http://www.ti.com/lit/an/spma056/spma056.pdf