找回密码
 立即注册
查看: 229|回复: 6

ADPCM音频编解码,遇到问题了

[复制链接]

39

主题

177

回帖

1209

积分

金牌会员

积分
1209
发表于 2026-4-30 11:29:06 | 显示全部楼层 |阅读模式
想用CAN 总线传输双向对讲音频。采样率8K .采用ADPCM 压缩。用8点1K正弦波测试。波形不定期扭动。
如果直接播放无压缩的。波形非常稳定。只要经过编解码。(通过CAN总线接收也是,现在在本地测试编解码)
波形就出行不定期扭动。定时器中断125us。单片机STC32F12K128。主频24M .通过P34通过PWM 两阶滤波接示波器
。数据采集是通过DMA (采集音频和5路数据),在125us定时器中断定期取12位音频数值。
编码是将12位左移4位。解码复原。卡了很多天不知道什么原因?
编解码不定期扭动 (10.35 KB, 下载次数: 14) 定时器直接播放正常 (2.59 KB, 下载次数: 10)
回复

使用道具 举报 送花

39

主题

177

回帖

1209

积分

金牌会员

积分
1209
 楼主| 发表于 2026-4-30 11:34:03 | 显示全部楼层
下面的波形是正常不经过解压缩。通过CAN总线也是正常。CAN总线500K ,定时器32MS 发送一次。采集双缓冲。32毫秒刚好256字节,压缩后128字节。和5路数据一块发送。(主机和从机通过乒乓发送)大概需要8毫秒左右。从机收到信号后,被动发送自己的数据(同样数据)。这样保证任何时候总线都是一个设备发送。这样一个32毫周期互发信号时间绰绰有余。
回复

使用道具 举报 送花

已绑定手机

7

主题

411

回帖

6596

积分

论坛元老

积分
6596
发表于 2026-4-30 14:22:38 | 显示全部楼层
大概就是缺了1ms的波形?大概就是8个采样点?传输占用4字节?
每一个CAN数据包传输多少字节的音频数据?
万一某一包发送失败、然后重发是否会影响波形?
压缩、解压算法耗时多少?
上代码瞧瞧呗。
回复

使用道具 举报 送花

39

主题

177

回帖

1209

积分

金牌会员

积分
1209
 楼主| 发表于 2026-4-30 19:30:23 | 显示全部楼层
压缩后每一帧发送8个字节的音频数据。如果不压缩。刚好发送256/8=32帧。压缩后发送16帧。不压缩单向接收出来波形很完整。
但是感觉带宽压力大。代码稍后上 没在这个电脑上
回复

使用道具 举报 送花

39

主题

177

回帖

1209

积分

金牌会员

积分
1209
 楼主| 发表于 2026-5-5 23:47:01 | 显示全部楼层
不简单 总算是能够双向对讲了。现在是声音有点失真。但是双向对讲没有任何问题。明天吧采样率提高到15K 试一试。
回复

使用道具 举报 送花

865

主题

1万

回帖

2万

积分

管理员

积分
25104
发表于 2026-5-6 09:59:51 | 显示全部楼层
能否改成 STC32G144K246-LQFP64 / 100 来测试推进,
CAN-FD/CAN 有 DMA 支持。
我们好请内部人员一起来看,
STC32F12K52系列是前期研发样品,早已不推荐




截图202605061001297793.jpg
回复

使用道具 举报 送花

39

主题

177

回帖

1209

积分

金牌会员

积分
1209
 楼主| 发表于 2026-5-6 14:19:23 | 显示全部楼层
神*** 发表于 2026-5-6 09:59
能否改成 STC32G144K246-LQFP64 / 100 来测试推进,
CAN-FD/CAN 有 DMA 支持。
我们好请内部人员一起来看, ...

我先看看这个芯片的资料。另外测试至少需要做两个同样的板子。
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-9-22 11:34 , Processed in 0.073243 second(s), 72 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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