zhp 发表于 2023-6-9 15:20:02

jacksonjim 发表于 2023-6-9 14:01
你好,目前使用的MCU是STC32G12K128系列; 根据您的建议是说关于uart 在低温时,用12M / 24 主频下最好是加 ...

你使用的STC32G12K128没有自动追频功能
对于你这种应用,建议使用外部24M晶振

24M晶振的串口误差只有0.16%,-40℃~85℃温度范围内
115200波特率进行数据传输不会有任何问题
而且24M刚好满足你对CAN的波特率和采样点的需求

jacksonjim 发表于 2023-6-9 15:57:38

zhp 发表于 2023-6-9 15:20
你使用的STC32G12K128没有自动追频功能
对于你这种应用,建议使用外部24M晶振



目前内部晶振使用24M主频话,在低温环境是不是比较容易产生温漂影响uart,
使用外部晶振这个可能需要挑选比较好,温漂相对较小的晶振,
我们要先做下实验验证下24M的主频,目前PCB没有预留外部晶振,需要改板子,先用内部再验证看看是否OK,
STC8G1k 的MCU以前做验证是不行,STC32G还没有做低温用24M的实验测试,

神农鼎 发表于 2023-6-9 16:20:00

串口通信:
1, 如果假定每次都对,那你就错的离谱;
2, 你假定他肯定有错,你就对了;
3, 有错,通知重发就行了
还有烧录时选择不调频率用STC出厂时校准的频率


避免淘宝玩具串口工具引来新的误差


jacksonjim 发表于 2023-6-9 17:32:02

神农鼎 发表于 2023-6-9 16:20
串口通信:
1, 如果假定每次都对,那你就错的离谱;
2, 你假定他肯定有错,你就对了;


目前,按常规来测试验证,不是说假定,毕竟晶振有关于温漂,目前法做绝对,但是最起码是保存98%以上的正确,因为在低温下做过测试,当时使用STC8G1G08A MCU, 在低温下进行测验,发了多次也是一样的出错,发10可能只有一次是对,或是更加高的错误率,明白你们说增加校验,目前程序都是有校验,所以出现数据错乱了,另外最终的上位机控制程序是客户开发,我们自己写的部分,做测试验证起码保证98%以上正确,后面和你们技术支持沟通建议修改了主频后,基本上达到理想的状态,客户也不再反馈类似的问题,所以目前在使用这个STC32G12K128 的MCU 遇到CAN 和 UART 时,就想和你们探讨下更优一处理方式,毕竟客户实际应用的串口也是在专门的定制主板上的,做过相关实验测试过。目前使用环境也是车载上的,但是这些车所到的环境可能在不同温度下,所以客户有要求环境适应性特别严格,我们在做产品时关于这些参数设定也是最好温漂影响尽量小!是吧!

神农鼎 发表于 2023-6-9 18:58:46

如果通信双方的程序都是自己公司开发,就用内部时钟;
如果通信的另外一端是第三方,你从严自己也是对的;

你如何烧录程序的 ? 截个完整的界面我看下
避免淘宝玩具串口工具引来新的误差

jacksonjim 发表于 2023-6-12 08:46:09

神农鼎 发表于 2023-6-9 18:58
如果通信双方的程序都是自己公司开发,就用内部时钟;
如果通信的另外一端是第三方,你从严自己也是对的;




这是现在的开发调试使用的烧录的界面,基本上是默认的,目前还没用24M,后面先按你们建议用24M进行开发,验证


神农鼎 发表于 2023-6-12 09:08:46


jacksonjim 发表于 2023-6-12 09:15:56

神农鼎 发表于 2023-6-12 09:08


谢谢,IRC调节模式,不调节,使用内部预置的频率,我先做测试验证,有问题再和你们反馈下,没问题就按这个方式来{:handshake:}
页: 1 [2]
查看完整版本: 关于CAN 的速率计算问题,根据指定的要求和采样率如何快速计算出 TSG1 TSG2 BRP