使用Simulink模型化编写程序,并演示如何与底层配合的例子
最近学习Simulink模型化编程,写下最近的总结总结分成两方面:介绍简要的编程模型,
1.定标加法运算;
2.如何定义全局变量;
3.如何与单片机底层程序配合;
上传自己建的两个文件;
打开.m文件,GetFromMDL=12;这个就好比是单片机读取到的温度传感器的数值,并在这里初始化为12摄氏度;
GetFromADC是定义好的全局变量,单片机底层程序读取的AD值存在这个变量里
同时,这两个值做个加法后输出。
注意将.mdl文件的配置:File----Model Properties----Model Properties----PreLoadFcn处填写:TestDM.m,
并在Matlab命令窗口输入:run('C:\test\TestDeclare.m'),将C:\test\换成你的目标文件夹。
文件夹名最好不要有中文。.m和.mdl最好在一个文件夹下。
生成代码时注意配置:
1.solver
2.Hardware
3.Code Generation及report
配置好后,点击Build即可,会显示生成的代码。如何调用。在生成main函数里写的很清楚了。
自己写的main函数,把生成的main函数的有用不封粘贴过来,
同时,把生成的TestDM.c和.h文件添加到自己的工程下即可。 来瞧瞧,看帖回复时钟美德 看到,留个脚印 mark,最近也在看 楼主能仔细讲讲吗?网上找不到教程阿?我很感兴趣! edaworld 发表于 2014-12-24 07:39
楼主能仔细讲讲吗?网上找不到教程阿?我很感兴趣!
硬件底层驱动不变,ADC/IO/串口读取状态信息
simulink编写算法,与底层函数接口为:全局变量(不支持函数形参传递)
全局变量用DatastoreMemory定义,并ExportedAsGlobal,这样声场的C代码包含了变量的定义
通过以上两步,建立了底层与应用层(算法)的接口,
并可以两层分离开,并分别实现各自的功能 感谢LZ分享,请问LZ入门是看的基于模型的设计那本书吗? 感谢分享,后面也计划深入研究一下的 823032003 发表于 2015-1-2 10:08
感谢LZ分享,请问LZ入门是看的基于模型的设计那本书吗?
我看过一个教程,见附件。
不过需要用什么上网查更快
tcw_xny 发表于 2015-1-2 13:40
我看过一个教程,见附件。
不过需要用什么上网查更快
谢谢分享,现在汽车电子这块自动代码生成很火 接触了matlab一段时间了,刚发现还有这么神奇的功能 看贴回复是好人
学习下!刚好开始学习 sumulink不是做仿真的吗? chaojikoushuige 发表于 2016-4-12 18:34
sumulink不是做仿真的吗?
也可以生成代码。你可以去研究下Arduino Mega2560的simulink编程方法,挺有意思的。
http://www.mathworks.com/matlabcentral/fileexchange/35641-simulink-support-package-for-arduino-mega-2560-hardware--r2012a- tcw_xny 发表于 2016-4-15 10:40
也可以生成代码。你可以去研究下Arduino Mega2560的simulink编程方法,挺有意思的。
http://www.mathwork ...
谢谢,我自己琢磨下 谢谢分享,看帖回复{:lol:}
页:
[1]