jacksonjim 发表于 2023-6-8 15:43:10

关于STC32G的MCU针对同时存在UART和CAN如何选择主频的频率?

本帖最后由 jacksonjim 于 2023-6-9 14:47 编辑

关于STC32G的MCU针对同时存在UART和CAN如何选择主频的频率?
当前所用的MCU
STC32G12K128系列的MCU

条件:
1 设备目前预知的使用环境温度在-40 ~+65度的环境使用
2 UART 参数为 9600、115200两个波特率,
3 CAN参数为 波特率:250K , 采样点87%

疑问点
1 在条件1 的-40度 环境下使用 CAN 和 UART ,必须支持 条件2 & 3 的要求,进行数据通讯,请问选择什么频率比较合适   
2 在单独只有uart 下时根据之前的技术支持使用STC8G在做测试时,建议使用11.0592或22.184的频率,进行测试验证正常,
但是针对类似其它的整数频率,如24M进行验证测试时,出现数据异常,发送的数据和接收的数据都会错乱,改为建议的频率即可正常通讯;
3 在单独使用CAN 时根据文档和建议使用推荐的整数频率,可精准达到要求的波特率:250k 和 采样点:87%,
使用类似 11.0592频率无法达精确达到要求的参数,如下图所示,波特率:251345 也偏大了,误差0.5,采样点在81%



目前需要兼顾两者都能达到需求参数情况,选择什么频率更加理想,保证在-40度的低温或 +65度的高温极度环境下正常通讯,不会出现数据通讯异常,谢谢!
注意上面提到的环境条件,这个是客户使用的环境,必须要过的实验验证,不能以常温环境下,误差一些也可以正常就可以。

神农鼎 发表于 2023-8-11 11:43:41

用我们STC出厂时调教好的频率 24MHz,
不要用其他第三方串口来调我们的频率,否则会带来新的外部误差




CAN通信 250K bps, 理论误差为 0


串口通信,9600bps, 理论误差为 0


串口通信,115200bps,理论误差0.16%,这点误差忽略不计


jacksonjim 发表于 2023-8-23 14:27:09

神农鼎 发表于 2023-8-11 11:43
用我们STC出厂时调教好的频率 24MHz,
不要用其他第三方串口来调我们的频率,否则会带来新的外部误差



好的,我们先按这个思路来做,谢谢
页: [1]
查看完整版本: 关于STC32G的MCU针对同时存在UART和CAN如何选择主频的频率?