帮他人发布一下:3000人民币移植一个Linux开源代码到stm32上...

2019-12-15 11:56发布

内容如下:

3000人民币移植一个Linux开源代码到stm32上面。
现有代码量约2000行,代码本身已经在树莓派、Linux电脑等上面正常运行。
代码功能:
      就是源源不断的采集一个音频信号后进行数学运算得到一些信息,然后将信息输出。算法等不用处理,均是现成代码。
程序流程如果不清楚,可以作为协助进行方向性建议。由于C语言不懂,所以代码本身很难看懂,因此外部求助。
个人觉得需要移植的部分是音频adc采集部分(参考程序是读取的电脑声卡或者音频wav文件获得的音频输入信息)和多线程?(多任务?)架构这两部分。

注意:
    为了不瞎忙乎,这里有一个需要事先做的判断工作,那就是:由于涉及到数学运算,而且又是源源不断的实时处理运算,因此要评估stm32是否处理性能足够。
这部分工作可以先做,评估的结论无论是行或者不行均表示200元话费(行则不额外单独支付,包含在总费用中。我想没有哪个网友为了200块立马就给我一个评估结果为性能不够的答案吧:)
音频信息大概是:音频采样率44.1k,立体声(即双声道),两个通道可能分别携带不同的信息,所以运算量应该是增加了一倍,处理不了就降为单声道看看是否可以,也就是说立体声就是两路adc采集信息,单声道就一路adc了。
采集的音频好像是每一位都要进行一次MSK解码运算,评估过程中,如果觉得处理器性能不够,看看是否可以降低adc采样率以满足处理能力。
---------以上截止--------


具体的话,可以这里跟帖或者私信给我代为转交,或者直接给电话各自联系。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
99条回答
hl1200
1楼-- · 2019-12-20 23:59
 精彩回答 2  元偷偷看……
canspider
2楼-- · 2019-12-21 05:35
楼主,给你一个评估结果,用的是STM32F4软件仿真
把附件的工程打开,编译后运行。
dec.zip (1.58 MB, 下载次数: 23) 2018-10-27 11:20 上传 点击文件名下载附件

打开Printf Viewer

result.png (140.25 KB, 下载次数: 0)

下载附件

2018-10-27 11:20 上传





根据仿真的结果,这个代码不做优化很难在STM32上使用
canspider
3楼-- · 2019-12-21 06:36
这个代码看起来复杂,其实稍微分析一下逻辑也很简单
里面的thread相关功能只做了一件事,解码核心解码完毕后通知后台线程输出数据
时间相关的函数主要是显示解码时间,不实现也不影响
alsa在这个代码中只是取音频数据,与解码任何关联
wav文件读取,其实稍微了解wav格式就知道这玩意根本不算事
不过上面这些都是细枝末节,没啥技术含量
重点来了:
这个解码库本身不是针对嵌入式平台写的,所以几乎没什么优化,数据处理也是大块大块的
如果要移植到stm32上,并且有较好的性能,这个解码器的框架需要重构,这需要对这个解码核心有比较深的了解
如果是我做,我先得学会这个解码原理,再根据处理器做深度优化,保守估计的要一个月,你这个价格得再加零我才会考虑
如果是一个熟悉这种解码格式的人,能够省去学习的时间,价格也会更合适。
xfdr
4楼-- · 2019-12-21 11:26
shawn_bu 发表于 2018-10-26 22:48
好巧,我最近帮别人写了一个excel里面的vbs小脚本也是收了3000块钱。代码100行左右。看了一下LZ这个瞬间觉 ...

这么说我做的项目得收3万了
my12doom
5楼-- · 2019-12-21 14:10

test.png (41.87 KB, 下载次数: 0)

下载附件

2018-10-27 12:24 上传



随手拿了个STM32F405测了测试文件中的一个通道,数据放在flash里,未作优化已经能做到实时了(4.3秒24000hz采样率的文件1166ms完成)
canspider
6楼-- · 2019-12-21 15:28
 精彩回答 2  元偷偷看……

一周热门 更多>