PSIM软件中使用PIL功能实现软硬件联合调试

  PSIM软件中有一个PIL模块,可以实现在仿真的过程中程序在硬件芯片上执行,然后执行结果直接输出到PSIM仿真软件中。在PSIM软件操作手册中有一个控制buck电路的例子。
在这里插入图片描述
这个PLL BLOCK模块中的算法是直接在硬件DSP芯片上运行,而其他功率控制部分使用软件仿真。
在这里插入图片描述
通过这个功能就能很方便在仿真软件上验证DSP芯片的算法是否正确了。
  下面将PSIM中PIL模块使用方法总结一下:
首先新建一个文件夹存放仿真文件,路径中不要有中文。
在这里插入图片描述
然后新建一个PSIM仿真文件,仿真控制设置如下:

在这里插入图片描述
选择用到的硬件芯片,我这里使用的是28335
在这里插入图片描述
接下来开始搭建仿真电路,这里搭建一个简单的IO口输入输出电路。在工具栏中依次选择元件—SimCoder—DSP时钟、硬件结构设置、数字输入、数字输出。
在这里插入图片描述
在这里插入图片描述

配置如下
DSP外部晶振30M,时钟150M,这个和硬件设置一样。
在这里插入图片描述

GPIO12/13引脚设置为输入,GPIO67/68设置为输出。
在这里插入图片描述
IO口设置完成之后,点右上角锁定按钮。
在这里插入图片描述

接下来设置输入输出模块
在这里插入图片描述

在这里插入图片描述
接下来开始连线
在这里插入图片描述
两个输入口分别接5k和10k的方波,将第一个口输入的方波取反之后输出,第二个方波直接输出。此时可以仿真查看一下波形。
在这里插入图片描述
通过输出波形可以看到仿真没有问题,保存仿真文件为led。然后再工具栏选择仿真—生成代码
在这里插入图片描述
此时在工程所在文件夹下就生成了一个led(C code)的文件夹,里面就是需要用到的代码。

在这里插入图片描述
复制这个文件夹并粘贴,重命名为led_PIL(C code)
在这里插入图片描述
然后将led仿真文件也复制一份,重命名为led_PIL
在这里插入图片描述
打开led_PIL仿真文件,框选IO输入输出模块,选择停用,或者直接将这部分电路删除也行。
在这里插入图片描述
接下来在工具栏选择元件—控制电路—PIL模块—PIL模块
在这里插入图片描述
设置模块输入输出口为2个
在这里插入图片描述

在这里插入图片描述
然后将输入输出口连接到电路中,相当于用这个PIL模块,替换刚才的输入输出模块。
在这里插入图片描述
接下来开始编译代码,打开CCS软件。在工具栏选择Project—Import Legacy CCSv3.3 Projects…,用3.3版本的格式导入刚才生成的代码。

在这里插入图片描述
工程路径选择仿真文件目录下的led_PIL(C code)文件夹中的led.prt文件,然后点击下一步。
在这里插入图片描述
点击finish
在这里插入图片描述
此时会弹出一个对话框,点OK
在这里插入图片描述
此时led工程就打开了。
在这里插入图片描述
接下来生成工程的配置文件,在led文件夹上单击鼠标右键选择new—Target Configuration File
在这里插入图片描述
修改配置文件名称,点击finish
在这里插入图片描述
接下来选择仿真器型号,芯片信号,然后再右边点击保存按钮。
在这里插入图片描述
再下来打开led.c文件
在这里插入图片描述
  Task函数的代码实现的功能就是将第一个输入信号取反后输出,将第二个输入信号直接输出。在硬件电路中是4个信号,而在代码中只有三个信号,那是由于第二个IO的输入输出信号是一样的,系统生成代码的时候输入输出就使用了一个信号。

  下面需要修改代码,将输入输出变量定义到外面,设置为全局变量。然后将输入信号的读取屏蔽掉,仿真的时候fDIN1和fDIN1_1的值由仿真软件直接设置,所以不需要读取命令。
在这里插入图片描述
编译代码,用的ccs版本为6.1.3,此版本的编译器不会报错。
在这里插入图片描述
有的编译器会报下面的错误。使用ccs8.3和ccs12.7版本编译都会出现这个错误。
在这里插入图片描述
解决方法为在工程文件上led上单击鼠标右键选择Properties
在这里插入图片描述
然后在General----Product 选项中将 XDAIS选项前面的对钩去掉。
在这里插入图片描述
此时再编译就不会出现这个错误了。这里顺便说一下在General—Project中有个芯片型号选择的,这里千万不能选。
在这里插入图片描述
如果选择了之后,代码编译就会出现几十个错误。当时手贱选择了一次型号,结果出现各种错误,最后发现是这里设置型号引起的。
编译完成之后,就可以在仿真文件里面添加编译生成的文件了。
在led_PIL仿真文件中双击PIL模块,打开设置对话框。
在这里插入图片描述

选择目标配置文件
在这里插入图片描述
选择生成的代码
在这里插入图片描述
设置输入输出信号名称
在这里插入图片描述

输入输出的信号名称要和代码中的变量名称一致,接下来配置PSIM仿真软件,工具栏选项----设置路径
在这里插入图片描述
查询路径里面选择ccs编译器安装的路径
在这里插入图片描述
C模块路径选择生成的c代码所在的路径,设置完成之后保存并关闭窗口。
在这里插入图片描述
设置完成之后就可以仿真代码了,单击仿真按钮。过一会会弹出一个对话框。
在这里插入图片描述
弹出的这个对话框不能关
在这里插入图片描述
电压探头上右键选择实时图形窗口

在这里插入图片描述
在仿真的过程就可以实时查看到输出的波形了
在这里插入图片描述
在这里插入图片描述

仿真结束后查看波形
在这里插入图片描述
输出口GPIO67/68在开发板上连接的是LED指示灯,所以当软件仿真的时候,开发板上的指示灯也会闪烁。

在这里插入图片描述
在这里插入图片描述

PSIM联合仿真

仿真文件下载地址 https://download.csdn.net/download/qq_20222919/89319051

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值