本教程第三讲,主要讲解GUI制作和对python的调用。实现的功能为:点击按钮后,弹出对话框,选择相应的simulink文件,然后自动配置Simulink Configuration 并生成代码,最后自动挑选C和H文件。
一.准备工作

①下载并安装python3,将《Simulink代码生成自动化操作(二)》中的python封装成如下函数,并命名为find_CH_File.py(可以随便命名,但是要与后面导入的命令一致)

一键生成代码 python 怎样用python自动生成python代码_一键生成代码 python

②找到python.exe文件所在的位置,在matlab中运行pyversion+

python.exe文件所在的位置 ,这样我们就能够正常调用python了。

例如:pyversion C:\Programs\Python\python.exe

二.GUI制作

①本次制作只涉及一个按钮的控件,使用GUIDE,拖动一个PushBottm。

一键生成代码 python 怎样用python自动生成python代码_Simulink_02


②增加一个对话框: 用来获取simulink文件的文件名和路径

代码如下:

一键生成代码 python 怎样用python自动生成python代码_python_03


③编写配置Configuration命令:用来自动配置Embedded Coder,详见《Simulink代码生成自动化操作(一)》

代码如下:(这里设置不自动生成和打开report,因为后面要删除文件夹)

一键生成代码 python 怎样用python自动生成python代码_python_04


④编写编译命令:因为GUI的数据空间不在base workspace,直接使用rtwbuild命令会找不到生成的代码,所以这里先使用命令行设置simulink代码生成目录为当前simulink文件所在的目录。又因为这一设置对所有的simulink文件都有效,凡是在simulink界面进行编译,都会生成到这个文件夹。为避免对后续编译造成影响,设置命令行,编译后将设置还原。

代码如下:

一键生成代码 python 怎样用python自动生成python代码_Simulink_05


⑤python文件调用

代码如下:

一键生成代码 python 怎样用python自动生成python代码_python_06


三.总结

将上面③④⑤代码加入②的后面,即可实现本教程的功能。