基于模型开发之代码集成(五)——Le…
来源:互联网 发布:js 调用java代码 编辑:程序博客网 时间:2024/05/21 18:30
下面根据之前讲的LegacyCodeTool再举一个例子:
底层在进行通信时常会遇到一些数据解析或分解情况,可能的函数如下:
test.c
#include "test.h"
void testcan(unsigned char * phval, unsigned char *sg1,unsignedint *sg2,unsigned int *sg3,unsigned int *sg4,unsigned char*sg5)
{
};
test.h
#define ____testcan_H
extern void testcan(unsigned char *phval, unsigned char*sg1,unsigned int *sg2,unsigned int *sg3,unsigned int *sg4,unsignedchar *sg5);
#endif
可以编辑如下m脚本或依次在Matlab中输入下列命令:
testdecode =legacy_code('initialize');
testdecode.OutputFcnSpec = 'void testcan(uint8 u1[8], uint8y1[1],uint16 y2[1],...
testdecode.HeaderFiles ={'test.h'};
testdecode.SourceFiles ={'test.c'};
testdecode.SFunctionName ='testmycode';
%% Create S-function, TLC file, etc.
legacy_code('sfcn_cmex_generate',testdecode);
legacy_code('compile',testdecode)
legacy_code('slblock_generate',testdecode)
%legacy_code('sfcn_tlc_generate',testdecode)
%legacy_code('rtwmakecfg_generate',testdecode)
然后会自动生成相应的slx模型如下:
然后,该模块可以正常用于simulink仿真,可以联合模型和底层代码一起进行仿真验证。
另外输入输出可以可以使用结构体的形式,但是需要事先在h头文件中定义好相应的结构体声明,大家可以自己试验一下,纸上得来终觉浅,绝知此事要躬行。
- 基于模型开发之代码集成(五)——Le…
- 基于模型开发之代码集成(二)——Le…
- 基于模型开发之代码集成(三)——Le…
- 基于模型开发之代码集成(四)——Le…
- 基于模型开发之代码集成——LegacyCodeTool
- 基于模型开发之代码集成(一)
- 基于模型开发过程之变量篇——枚举量…
- 杭电ACM 2045不容易系列之(3)—— LE…
- Java开发代码规范之编程规约(五)——集合处理
- 五、ESP8266 之 UDP (基于LUA开发)
- 基于IDEA的SSH项目之五:集成Hibernate
- 基于OpenCV的火焰检测(五)——两个颜色模型的主分量判据
- J2ME 拼图游戏 快速开发 全过程 之代码祥解(2 )——游戏数据库与游戏模型开发
- 基于Unity3D的并行渲染模型的开发教程(五):Leap Motion
- Windows Socket五种I/O模型——代码全攻略(转)
- Windows Socket五种I/O模型——代码全攻略(转)
- 菜鸟教程之工具使用(五)——JRebel与Windows服务的Tomcat集成
- 持续集成之nexus私服(五)
- Simulink建模之模型的构建风格(二…
- 基于模型开发之代码集成(一)
- 基于模型开发之代码集成(二)——Le…
- 基于模型开发之代码集成(三)——Le…
- 基于模型开发之代码集成(四)——Le…
- 基于模型开发之代码集成(五)——Le…
- [转]SIMULINK与模型覆盖测试
- 抢购应用设计思路
- freescale中的RELOCATE_TO宏…
- 基于模型开发过程之变量篇——枚举量…
- 人生没有过不去的坎
- windows下react-native环境配置
- reactNative中的通知
- 2017年个人目标及计划