找回密码
 立即注册
楼主: 采果农

STC32G的2组CAN模块的缓冲区读写不够快,后续CAN-FD新品建议优化提升

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:10
  • 最近打卡:2025-01-01 20:46:17

2

主题

29

回帖

214

积分

中级会员

积分
214
发表于 2024-4-23 22:45:13 | 显示全部楼层
采*** 发表于 2024-4-23 21:00
帖子第二张图的16us和第张图的6us,你明白看明白什么意思了吗

接收的帧是间隔6秒一帧,发送的帧间隔是>16 ...

是的1ms,在每秒几千帧的网络里,那不是动不动就溢出了
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:55
  • 最近打卡:2025-05-02 08:32:59

717

主题

1万

回帖

1万

积分

管理员

积分
15617
发表于 2024-4-23 22:52:11 | 显示全部楼层
不搞具体技术 N 年了, 不清楚提速为何解决不了
STC32G8K64-42MHz-LQFP48/32

40MHz, 10uS,是 400个时钟
截图202404232250437925.jpg

42MHz, 10uS,是 420个时钟
截图202404232252071995.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:55
  • 最近打卡:2025-05-02 08:32:59

717

主题

1万

回帖

1万

积分

管理员

积分
15617
发表于 2024-4-23 23:00:32 | 显示全部楼层
我下午请乘风关注这个贴的,
暂时提高主频再提高主频,程序优化再优化
直接局部嵌入汇编
截图202404232259127843.jpg

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:10
  • 最近打卡:2025-01-01 20:46:17

2

主题

29

回帖

214

积分

中级会员

积分
214
发表于 2024-4-23 23:05:15 | 显示全部楼层
神*** 发表于 2024-4-23 22:52
不搞具体技术 N 年了, 不清楚提速为何解决不了
STC32G8K64-42MHz-LQFP48/32
跑 40MHz, 10uS,是 400个时钟

因为硬件层的问题啊,如果提速到72M那基本可以满足(还要其他中断能立马解决战斗,来响应这个发送中断),但是这块IC就35M啊。

写软件用不了,不是一味增加主频啊,频率高了,EMC的问题就来了
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:55
  • 最近打卡:2025-05-02 08:32:59

717

主题

1万

回帖

1万

积分

管理员

积分
15617
发表于 2024-4-23 23:08:10 | 显示全部楼层
频率高了,EMC的问题就来了

===这个 STC32G8K64不用担心,跑内部时钟,没问题
       还可以用外部 32768-RTC 自动校准内部高速IRC
       已车用一年以上

尝试下 STC32G8K64跑 42MHz, 局部程序汇编
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:10
  • 最近打卡:2025-01-01 20:46:17

2

主题

29

回帖

214

积分

中级会员

积分
214
发表于 2024-4-23 23:13:51 | 显示全部楼层
神*** 发表于 2024-4-23 22:52
不搞具体技术 N 年了, 不清楚提速为何解决不了
STC32G8K64-42MHz-LQFP48/32
跑 40MHz, 10uS,是 400个时钟

你把他当成水桶加水问题就行了,

接收端就相当于用杯子往桶里倒水,往桶里倒水用的是2个杯子,第一个杯子倒水的时候,第二个杯子已经在装水了,等第一杯水倒完,第二杯水可以马上倒进桶里,第二杯在倒的时候,第一杯在装水。

发送端就相当于把水从桶里舀出来,出水的只有一个杯子,你把第一杯水到外面以后,你得花点时间去桶里装水,装水的这个时间就是那16us.

那你觉得水桶的水会不会溢出。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:55
  • 最近打卡:2025-05-02 08:32:59

717

主题

1万

回帖

1万

积分

管理员

积分
15617
发表于 2024-4-23 23:16:45 | 显示全部楼层
明请乘风帮用 42MHz, 汇编实际跑下,
能否解决你这个500K双CAN的速度问题。

直觉,这速度不是太高啊,明实际测试下,
2个屠龙刀板子就可以做你这个验证了

点评

最近在做一个项目,基本功能就是把CAN2接收到的帧通过CAN1发送出去,中间做点转换。 ----------------------------------------------------------------------------------------------------------------- 没用  详情 回复 发表于 2024-4-24 06:40
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:10
  • 最近打卡:2025-01-01 20:46:17

2

主题

29

回帖

214

积分

中级会员

积分
214
发表于 2024-4-23 23:19:28 | 显示全部楼层
神*** 发表于 2024-4-23 23:08
频率高了,EMC的问题就来了

===这个 STC32G8K64不用担心,跑内部时钟,没问题

跑汇编能不能解决靠你们技术了,我先转其他IC了,CAN这个寄存器毕竟是间接访问的,写入时间翻倍
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:55
  • 最近打卡:2025-05-02 08:32:59

717

主题

1万

回帖

1万

积分

管理员

积分
15617
发表于 2024-4-23 23:21:59 | 显示全部楼层
嵌入部分数据传送的汇编,对大家来说整体还是 C
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:偶尔看看I
  • 打卡总天数:10
  • 最近打卡:2025-01-01 20:46:17

2

主题

29

回帖

214

积分

中级会员

积分
214
发表于 2024-4-23 23:26:02 | 显示全部楼层
神*** 发表于 2024-4-23 23:16
明请乘风帮用 42MHz, 汇编实际跑下,
能否解决你这个500K双CAN的速度问题。

你们就直接无脑发送数据就行,看看两帧数据间隔多少就知道能不能用了
回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-5-2 09:11 , Processed in 0.151312 second(s), 111 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表