matlab转C语言
1.软件版本 matlab R2018a
2.步骤
(1).编写特定功能的matlab代码,以及其测试文件
(2).检查matlab代码的兼容性,确保matlab代码都能转换成C/C++代码(并不是所有的matlab代码都能生成C/C++代码)
(3).生成 .c 文件和mex文件
(4).在C语言编译器中验证生成的 .c 文件
3.详细步骤
3.1 编写matlab代码及其测试文件
1.编写matlab代码
function [c,d] = add(a,b)
for i =1:1:10
c = a + i;
d = b * i;
end
end
2.编写测试文件。类似于Verilog语言里面的testbench,给出输入信号,然后调用matlab的功能函数
clear all;
clc;
close all; x = 8;
y = 17; [m,n] = add(x,y);
3.2 生成步骤
1.在APP菜单栏里面找到matlab coder ,双击打开
2.Entry-Point Function 里面选择matlab的功能函数文件。如果是一个大型工程,只需要把最顶层的文件添加进来。它会自动的添加下面的子文件。下一步

3.这里添加测试文件tb_add。然后点击autodefine input types.系统会自动的为输入变量分配类型,默认是double。也可以手动为输入变量分配类型。需要注意的是需要将matlab的工作路径设置在测试文件所在的路径,不然这一步会提示没定义测试文件。下一步

4.点击check for issues,系统会生成MEX函数。如果功能函数和测试文件有错误或者哪些matlab语句不能转换成C语言,在这一步都会报出来。如果在开始编写matlab功能函数的时候不知道哪些语句无法生成C语言,就先不用管。然后在这一步根据提示进行修改。下一步

5.这一步是配置生成C语言的参数。
1.build type是配置要生成文件的类型,这里选择source code.
2.hardware Board 这一栏选择None select device below.然后根据自己的硬件板,在device 那一栏选择相应的器件。如果没有硬件板,就选择默认的matlab host computer
3.ToolChain,根据自己的C语言编译器进行选择相应的编译器(貌似是这样,不确定)
4.more setting 里面根据自己的需要进行配置,一般可以选择默认配置
5.点击generate

6.下面是生成代码后的界面,至此就算生成成功了

matlab转C语言的更多相关文章
- MATLAB与C语言对比实例:随机数生成
MATLAB与C语言对比实例:随机数生成 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 一.整型随机数生成函数 1.C语言程序 int intrand ...
- Matlab调用C语言函数
Matlab调用C语言函数 如果我有一个用C语言写的函数,实现了一个功能,如一个简单的函数:double add(double x, double y) { return x + y ;}现在我想要在 ...
- matlab和C语言实现最小二乘法
参考:https://blog.csdn.net/zengxiantao1994/article/details/70210662 Matlab代码: N = ; x = [ ]; y = [ ]; ...
- matlab和C语言的break及continue测试
break和continue语句 有两个附加语句可以控制while和for循环:break和continue语句.break语句可以中止循环的执行和跳到end后面的第一句执行,而continue只中止 ...
- Matlab和C语言混合编程,包含目录的设定
如果.c文件不依赖于任何第三方库,那么mex编译很简单,只需要在matlab的命令行输入 mex test.c 即可. 但是如果这个c文件使用了第三方库文件,如opencv.gsl等等,那么就需要更改 ...
- MATLAB和C语言混合编程-----Matlab7.0 编译器设置
(1) mex 命令设置 (a) 运行 Matlab ,在 Matlab 的命令窗口 (Command Window) 键入“ mex -setup ”命令后,按回车键,安装 Matlab 编译器: ...
- C语言与MATLAB接口 编程与实例 李传军编着
罗列一下以前自己学习C语言与MATLAB混编的笔记,顺便复习一遍. <C语言与MATLAB接口 编程与实例 李传军编着>(未看完,目前看到P106) 目录P4-8 ************ ...
- Matlab界面语言切换,自由显示中文或英文语言
Matlab界面语言切换,自由显示中文或英文语言分享给大家,Matlab是一款商业数学软件,广泛使用于算法的开发.数据发现和数值计算等.不同用户对Matlab显示的语言需求也不一样,一用户习惯使用中文 ...
- 接触Matlab10年后的一个总结,随时使用Matlab要掌握的一些要点
不记得上一次写超过20行的matlab程序是什么时候了,大概是2013年吧,那个时候写过2篇文章,实际用到了 一些matlab的内容,超过200行的matlab程序应该要追溯到2011年了,最近为了帮 ...
随机推荐
- SpringBoot2.0 项目异常日志,但不影响运行(待解决)
第一种: 2019-04-17 01:46:33 [INFO] [org.apache.juli.logging.DirectJDKLog:175] - Error parsing HTTP requ ...
- 2. VIM 系列 - 初探vim配置文件
目录 配置文件 .vimrc 基本配置 tab 键设置 热键配置 配置文件 刚安装vim默认配置,功能是很简单的,vim的功能很多是需要配置开启的. .vimrc 使用vim打开配置文件~/.vimr ...
- 【Android Studio安装部署系列】十六、Android studio在layout目录下新建子目录
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 一般用于分类显示不同模块的layout布局文件. 在res/layout文件夹下创建子目录 res/layout鼠标右键——New— ...
- C++11智能指针的深度理解
平时习惯使用cocos2d-x的Ref内存模式,回过头来在控制台项目中觉得c++的智能指针有点生疏,于是便重温一下.首先有请c++智能指针们登场: std::auto_ptr.std::unique_ ...
- Cortex-M 实现互斥操作的三种方法
注:本文仅针对Cortex-M3/4 系列进行讲述. 在传统的ARM处理器架构中,常使用SWP指令来实现锁的读/写原子操作,但从ARM v6开始,读/写访问在独立的两条总线上进行,SWP指令已无法在此 ...
- 前端知识复习: JS选中变色
前端知识复习:JS选中变色 上篇文章 :前端知识复习:Html DIV 图文混排(文字放在图片下边) Js选中图片效果 <!DOCTYPE html> <html xmlns=&qu ...
- 无需***,轻松提速 Github
无需***,轻松提速 Github 众所周知,Github 是全球程序员最喜欢访问的网站之一,但是在国内,会很容易出现一个水土不服的局面 -- 下载不了(稍微大一点中途就报错了),下载速度慢 .... ...
- AI产品的商业模式
AI产品的商业模式 ------------------------------------------------------------------------------------------ ...
- C# 2进制、8进制、10进制、16进制...各种进制间的转换(三) 数值运算和位运算
一.数值运算 各进制的数值计算很简单,把各进制数转换成 十进制数进行计算,然后再转换成原类型即可. 举例 :二进制之间的加法 /// <summary> /// 二进制之间的加法 /// ...
- Flask实战第6天:视图函数Response返回值
视图函数的返回值会被自动转换为一个响应对象,Flask的转换逻辑如下: 如果返回的是一个合法的响应对象,则直接返回 可以使用make_response函数来创建Response对象,这个方法可以设置额 ...