尊敬的 TI 团队:
对于 TL16C450、我们要求 UART 波特率为 9.6kbps、38.4kbps、115.2kbps。
请告诉我们 、我们是否最好使用具有+/- 50ppm 的3.072MHz 振荡器部件(SG-8018CG 3.0720M-TJHSA0)、以便我们的应用支持所有这些波特率。
此外、如果您有一些更好的 OSC/XTAL 器件、请向我们推荐它们。
提前感谢。
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 团队:
对于 TL16C450、我们要求 UART 波特率为 9.6kbps、38.4kbps、115.2kbps。
请告诉我们 、我们是否最好使用具有+/- 50ppm 的3.072MHz 振荡器部件(SG-8018CG 3.0720M-TJHSA0)、以便我们的应用支持所有这些波特率。
此外、如果您有一些更好的 OSC/XTAL 器件、请向我们推荐它们。
提前感谢。
您好、Bobby、
感谢您的回复。
明白了。 如果我们使用 1.8432MHz 振荡器、 则 所 需频率为115200时、除数为1。
请帮助我清除这个疑问;如果我们要使用 3.072MHz 振荡器、 我们将针对 所需频率=115200的分频值=1.667 (假设它为2)、 该分 频值的范围为1到(2^16 - 1)。 但误差百分比将达到19.97%、这是否适合 继续执行此配置?
如果我错了、请纠正我的问题、还请向我们建议 稳定性因子、 要选择的振荡器/ XTAL 器件的负载电容、或任何特定器件型号 /振荡器频率、您希望为我们的应用建议我们。
提前感谢。
Artijeet、
我认为失配/误差的计算方法是执行(115200-96000)/115200 = 16.7%
96000 = 3.072MHz/(16x2) // DLL 除数2和器件采样率16倍
我相信如果您有一个较大的数据包,这可能会导致采样错误,这不会考虑其它 UART 设备波特率不匹配的差异....
我认为您的担忧是有效的,我们可能应该尝试将误差至少限制在 5%以下... 假设另一个器件也为5%
本文讨论裕度、但假定数据字节数据包为9位: https://www.robotroom.com/Asynchronous-Serial-Communication-2.html
可能比18.432MHz 振荡器更好的是、最大波特率的10倍: 这里的 Digikey 选项链接(单击"我")
这将为我们提供9.6k = 120、38.4k = 30和115.2k = 10时的分频值整数值、因此理论上我们可能会有0%的误差。
" 待 选振荡器/ XTAL 部件的稳定性因子、负载电容"
您选择的振荡器不应需要负载电容器、因为您不使用晶体。 我记得、当您尝试创建自己的振荡器电路时、稳定性因子是您计算的、这不是您要做的、因为它已经包含在您的振荡器中。 振荡器的负载电容是我们器件 XTAL1的输出和输入之间的疑似容性负载、一些振荡器数据表可能会规范与该负载电容值相关的驱动强度。
-Bobby