MATLAB到C的转换

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

算法优化第五部分:算法的C语言转化算法优化基于前面的Matlab算法处理基于前面的Matlab算法处理,结果虽然准确,但不能智能实现。故尝试将算法转成C语言移植到硬件上去运行。移植到硬件上去运行。如右图所示的函数,是使用Script脚本创建的一个函数。将之前的复杂的算法反复对比生成的C语言进行了优化。复杂的算法反复对生成的语言进行了优化输入是X矩阵,用到C语言里可以用一个数组来实现。Matlab到C的转化(1)Matlab到C的转化(1)Mtlb文件夹下的文件lttt文件是用来验证Matlab源文件准备Matlab文件夹下的文件,result.txt文件是用来验证,matlab函数优化后的运算结果是否准确而设置的。Matlab到C的转化(2)到的转化输入mex-setup输入y选择1,因为keil可使用这种模式的c确认Matlab到C的转化(3)Matlab到C的转化(3)在命令窗口输入“coder”弹出如图的对话框输入一个工程名字同在命令窗口输入coder弹出如图的对话框,输入个工程名字,同时确认路径是否与源文件在同一文件夹下(尽是为了查看方便)。然后在MATLAB的右侧显示matlabCoderC/C++窗口。Matlab到C的转化(4)Matlab到C的转化(4)在设置的工程下面添加要转换的.m源文件Matlab到C的转化(5)Matlab到C的转化(5)对源文件的输入进行设置。因为.m的源文件中X是一个一维矩阵,但到C里我将输入给函数进行FFT我将输入给函数进行FFT运算的数组长度256,所以我在此将其定死。同时要注意MATLAB里默同时要注意MATLAB里默认的是DOUBLE类型的数据,关于DOUBLE型的数据在STM32里运行是很困据在STM32里运行是很困难的,对此我把这里的数据类型定义为single型,生成C语言是float型的变生成C语言是float型的变量。Matlab到C的转化(6)Matlab到C的转化(6)在“Build”里选择要生成的目标文件的类型,这里我选C/C++静态库文的类型,这里我选C/C++静态库文件。Matlab到C的转化(7)Matlab到C的转化(7)这里进行一些其他的参数的设置。Matlab到C的转化(8)Matlab到C的转化(8)设置好后点击Build,生成后的界面。Matlab到C的转化(9)Matlab到C的转化(9)最终生成的C文件及相关头文件。算法移植到STM32里运行算法移植到STM32里运行

1 / 11
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功