昨天试了一下新功能,简单写下流程吧~ 1. 如之前没有进行过编译,先mex -setup命令进行编译器设置 2. 待生成代码的的m文件需要做一点修改,即在function...定义之后加一句 %#codegen 如 function y=bianhuan(x) %#codegen 3. 之后点击 file----new----code generation project 新建文件名后显示界面:左边是overview, 右边是build 进入overview选项卡,add file 处添加bianhuan.m,此时自动出现未定义变量的下拉菜单,此时需通过define by example 进行定义 4. 最后进入build界面,可以生成mex 函数,c代码,或者可执行程序 当然在命令行输入命令也可以完成以上操作 matlab支持400多个m函数的转换,函数列表: http://www.mathworks.com/help/toolbox/eml/ug/bq1h2z7-11.html 但是有的函数的转换有限制,如 eye()函数,转换时变量必须是实型非负整常数 若有定义 N=3; eye(N) 貌似将无法生成c代码 这也是需要改进的地方吧~ |
22 条回复
我是从学校内网上下的,能不能从其他地方下还不太清楚啊~ |
看卡卡你 支持一下 |
你该去找吴老师要正版的安装。这样遇到一些技术问题的时候,可以直接打MathWorks北京的技术支持热线获取技术支持。 另外,关于M文件生成C代码,主要应用到两个方面, 一,你有现成的用M语言实现的成熟算法,如果想把这些算法实现到单片机或者DSP等处理器上,可以使用Embedded Coder将M代码变成C代码。 二,如果你要设计的算法里会用到大量的矩阵运算,那么你可以借助于MATLAB处理矩阵运算的能力,用M语言编写算法,再通过Embedded Coder实现为C代码。 除了上述两种情况之外,我个人倒是建议尽量使用Simulink/Stateflow建模实现。 |
恩,谢谢您的建议! 我准备了解一下stateflow,有问题多向您请教! |
好的!期待您的到来~~ |
matlab 2010a肿么办? |
Powered by Discuz! X3.4
© 2001-2024