平安保险网站,wordpress有插件怎么用,营销策划咨询,石家庄大型公司建站最近在学习DSP28335芯片#xff0c;然后在使用PSIM仿真软件时发现这个仿真软件也支持28335芯片#xff0c;于是就想学习下如何在PSIM软件中使用DSP28335芯片。在PSIM自带的官方示例中有使用DSP28335芯片的相关例子。
工程下载链接 https://download.csdn.net/download/qq_20… 最近在学习DSP28335芯片然后在使用PSIM仿真软件时发现这个仿真软件也支持28335芯片于是就想学习下如何在PSIM软件中使用DSP28335芯片。在PSIM自带的官方示例中有使用DSP28335芯片的相关例子。
工程下载链接 https://download.csdn.net/download/qq_20222919/88770386 PSIM仿真的官方示例在安装目录下examples文件夹中其中28335芯片的相关示例在examples\Code Generation\F2833x Target 文件夹中。我这里PSIM的版本安装的是2022版。 不过官方的这些例子看起来有些复杂对于初学者来说要看懂很不容易。于是想在网上找一个简单一些的入门例子结果找了一圈也没找到。看来只能靠自己了经过一番摸索终于成功点亮了LED灯。 下面将我的方法分享给大家。 开发板使用的是普中科技的 想要实现的功能就是让板子上的这几个LED灯闪烁。首先要确定LED灯的端口是哪几个IO口。 直接在开发板原理图中查看LED端口。 通过原理图可以看到LED使用的IO口是GPIO64/65/66/67/68,暂时先用这5个LED最后两个先不用。
确定好IO口之后下面开始使用PSIM仿真软件搭建仿真电路。新建一个PSIM仿真文件。 然后在菜单栏选择仿真—仿真控制 此时会出现一个钟表一样的图标将这个图标放在仿真文件中。
双击这个图标打开仿真设置。 第一个选项使用默认设置就行点到第三个选项。 在SimCoder选项中设置硬件目标这里设置为F28335。接下来设置时钟频率菜单栏中选择 元件—SimCoder—F2833x目标—DSP时钟。这个选项在倒数第二个选择的时候要用鼠标将选项页面一直往下拉才能看见。 将这个DSP时钟放置在页面上。 时钟的默认设置是外面晶振30MHzDSP工作时钟为150MHz和我的开发板设置一样所以这里使用默认的就行。 接下来设置IO口菜单栏中选择 元件—SimCoder—F2833x目标—硬件结构设置。 将硬件配置这个图标放在图纸上然后双击打开。 这个模块就是配置每个IO口功能的相当于IO口的初始化。 这里需要配置的IO口就是 GPIO64/65/66/67/68 将这个几个口设置为输出口设置完成之后需要点击右上角的锁定按钮。 点击锁定之后配置的IO口才能生效此时锁定按钮就变成了解锁按钮。如果需要修改IO口需要先解锁才能修改。 接下来好需要放置IO口输出模块。菜单栏中选择 元件—SimCoder—F2833x目标—数字输出。 将数字输出模块放置在界面上然后双击打开模块选择每个端口需要输出的IO口。 将端口D0–D4分别设置为GPIO64–GPIO68 接下来给IO口设置输出信号想让LED按照10Hz的频率闪烁要产生这个10Hz的信号就需要使用一个方波发生器。 放置一个方波发生器然后将一端接地这个方波产生的信号不能直接北28335使用还需要在方波发生器和IO模块之间接一个 零阶保持器。
菜单栏选择 元件—控制电路—数字控制模块— 零阶保持器 接下来开始连线将方波的信号连接到零阶保持器输入端然后零阶保持器输出端接F28335输出模块的左端。 然后将D1到D4口都连接到D0口上让这几个口的信号一样然后将没有用到的D5—D7接地 接下来设置方波发生器的频率双击方波发生器将频率设置为10。 接下来就可以查看波形了给输入输出信号分别放置电压探头。 下面点击仿真按钮开始仿真。 将输入输出波形都添加进去 此时的波形中为什么看不到方波 由于方波发生器的频率设置的非常低只有10Hz而仿真时间设置的比较短只有10ms所以看不到波形将仿真文件中的钟表图标双击打开将仿真时间修改为1秒。 接着继续仿真查看波形。 这时候就能看到方波了下面就剩最后一步了开始生成代码。
保存仿真文件到指定的文件夹中文件夹命名最好不要带中文因为一会要通过CCS软件直接打开生成的工程。 然后再菜单栏点 仿真—生成代码 代码生成完之后就会自动切换到生成的代码界面。 这时候在文件夹中就生成一个工程 打开这工程的文件夹可以看到生成的文件。 下面就可以使用CCS直接打开这个工程了打开CCS软件
菜单栏中选择 Project — Import Legacy SSCv3.3 Projects 使用3.3版本导入刚才新建的文件 再打开的界面中点Browse按钮打开刚才生成工程。 工程的后缀名为*.pjt 单击Next 然后单击Finish 这时候工程就打开了 下面还需要对工程进行配置在工程上右键选择New—Target Configuration File 将配置文件名称修改为led
接下来设置仿真器型号和单片机型号点右边的Save按钮保存。 下面编译工程 编译成功通过最后就是见证奇迹的时刻了。直接点debug按钮将代码下载到开发板RAM中运行。 在开发板上可以看到5个LED灯在闪 通过示波器查看LED波形 波形的频率为10Hz和PSIM仿真软件里面设置的一样。
可以看看通过PSIM生成的代码
/*********************************************************************************
// This code is created by SimCoder Version 2022c0.16 for F2833x Hardware Target
//
// SimCoder is copyright by Powersim Inc., 2009-2021
//
// Date: January 22, 2024 17:31:39
**********************************************************************************/
#include math.h
#include PS_bios.h
typedef float DefaultType;
#define GetCurTime() PS_GetSysTimer()
#define iif(a, b, c) ((a) ? (b) : (c))
#define PWM_IN_CHECK // To lower PWM value setting time, comment out this line if PWM duty cycle values are strictly limited in the range.interrupt void Task();const Uint16 PSD_CpuClock 150; // MHz
extern DefaultType fGblVin;DefaultType fGblVin 0;
interrupt void Task()
{DefaultType fZOH1, fVSQ1;PS_MaskIntr(M__INT13);{static DefaultType wt 1.0 - ((-90) / 360.);static DefaultType dwt 10 * 1.0 / 1000;fVSQ1 (wt 0.5) ? ((1) (0)) : (0);wt dwt;if (wt 1.0)wt - 1.0;}fZOH1 fVSQ1;
#ifdef _DEBUGfGblVin fZOH1;
#endif(fZOH1 0) ? PS_ClearDigitOutBitC((Uint32)1 (64 - 64)) : PS_SetDigitOutBitC((Uint32)1 (64 - 64));(fZOH1 0) ? PS_ClearDigitOutBitC((Uint32)1 (65 - 64)) : PS_SetDigitOutBitC((Uint32)1 (65 - 64));(fZOH1 0) ? PS_ClearDigitOutBitC((Uint32)1 (66 - 64)) : PS_SetDigitOutBitC((Uint32)1 (66 - 64));(fZOH1 0) ? PS_ClearDigitOutBitC((Uint32)1 (67 - 64)) : PS_SetDigitOutBitC((Uint32)1 (67 - 64));(fZOH1 0) ? PS_ClearDigitOutBitC((Uint32)1 (68 - 64)) : PS_SetDigitOutBitC((Uint32)1 (68 - 64));PS_ExitTimer1Intr();
}void Initialize(void)
{PS_SysInit(30, 10);PS_InitTimer(0, 0);// Set initial states for those GPIO/AIO output ports.PS_ClearDigitOutBitC((Uint32)1 0); // Reset GPIO64PS_ClearDigitOutBitC((Uint32)1 1); // Reset GPIO65PS_ClearDigitOutBitC((Uint32)1 2); // Reset GPIO66PS_ClearDigitOutBitC((Uint32)1 3); // Reset GPIO67PS_ClearDigitOutBitC((Uint32)1 4); // Reset GPIO68PS_InitDigitOut(64);PS_InitDigitOut(65);PS_InitDigitOut(66);PS_InitDigitOut(67);PS_InitDigitOut(68);PS_InitTimer(1,150000L);PS_SetTimerIntrVector(1, Task);PS_StartStopPwmClock(2); // start Timer1
}void main()
{Initialize();PS_EnableIntr(); // Enable Global interrupt INTMPS_EnableDbgm();for (;;) {}
}
通过定时器生成中断然后再中断中对相应的IO口设置高低电平来控制LED闪烁。可以看出通过PSIM生成的代码格式和自己写的代码差别还是挺大的。 文章转载自: http://www.morning.bauul.com.gov.cn.bauul.com http://www.morning.gfkb.cn.gov.cn.gfkb.cn http://www.morning.rtryr.cn.gov.cn.rtryr.cn http://www.morning.dqkcn.cn.gov.cn.dqkcn.cn http://www.morning.gdljq.cn.gov.cn.gdljq.cn http://www.morning.gyylt.cn.gov.cn.gyylt.cn http://www.morning.zlwg.cn.gov.cn.zlwg.cn http://www.morning.jbxfm.cn.gov.cn.jbxfm.cn http://www.morning.skdrp.cn.gov.cn.skdrp.cn http://www.morning.qrpdk.cn.gov.cn.qrpdk.cn http://www.morning.sffwz.cn.gov.cn.sffwz.cn http://www.morning.dansj.com.gov.cn.dansj.com http://www.morning.qcnk.cn.gov.cn.qcnk.cn http://www.morning.mldrd.cn.gov.cn.mldrd.cn http://www.morning.yrflh.cn.gov.cn.yrflh.cn http://www.morning.jczjf.cn.gov.cn.jczjf.cn http://www.morning.mhdwp.cn.gov.cn.mhdwp.cn http://www.morning.ljdd.cn.gov.cn.ljdd.cn http://www.morning.lffrh.cn.gov.cn.lffrh.cn http://www.morning.wxqmc.cn.gov.cn.wxqmc.cn http://www.morning.glswq.cn.gov.cn.glswq.cn http://www.morning.fdrch.cn.gov.cn.fdrch.cn http://www.morning.iknty.cn.gov.cn.iknty.cn http://www.morning.roymf.cn.gov.cn.roymf.cn http://www.morning.rtlg.cn.gov.cn.rtlg.cn http://www.morning.jzbjx.cn.gov.cn.jzbjx.cn http://www.morning.bwfsn.cn.gov.cn.bwfsn.cn http://www.morning.lfpdc.cn.gov.cn.lfpdc.cn http://www.morning.syqtt.cn.gov.cn.syqtt.cn http://www.morning.fnfxp.cn.gov.cn.fnfxp.cn http://www.morning.lfqnk.cn.gov.cn.lfqnk.cn http://www.morning.mnyzz.cn.gov.cn.mnyzz.cn http://www.morning.zmnyj.cn.gov.cn.zmnyj.cn http://www.morning.phwmj.cn.gov.cn.phwmj.cn http://www.morning.plxnn.cn.gov.cn.plxnn.cn http://www.morning.qnwyf.cn.gov.cn.qnwyf.cn http://www.morning.lqynj.cn.gov.cn.lqynj.cn http://www.morning.jmbgl.cn.gov.cn.jmbgl.cn http://www.morning.rgyts.cn.gov.cn.rgyts.cn http://www.morning.dwncg.cn.gov.cn.dwncg.cn http://www.morning.lkrmp.cn.gov.cn.lkrmp.cn http://www.morning.kwfnt.cn.gov.cn.kwfnt.cn http://www.morning.lwbhw.cn.gov.cn.lwbhw.cn http://www.morning.kzslk.cn.gov.cn.kzslk.cn http://www.morning.kztts.cn.gov.cn.kztts.cn http://www.morning.ypxyl.cn.gov.cn.ypxyl.cn http://www.morning.bwxph.cn.gov.cn.bwxph.cn http://www.morning.xxwhz.cn.gov.cn.xxwhz.cn http://www.morning.gbybx.cn.gov.cn.gbybx.cn http://www.morning.cgthq.cn.gov.cn.cgthq.cn http://www.morning.tzmjc.cn.gov.cn.tzmjc.cn http://www.morning.kqxwm.cn.gov.cn.kqxwm.cn http://www.morning.jczjf.cn.gov.cn.jczjf.cn http://www.morning.ptwzy.cn.gov.cn.ptwzy.cn http://www.morning.rbjf.cn.gov.cn.rbjf.cn http://www.morning.xqjh.cn.gov.cn.xqjh.cn http://www.morning.lzsxp.cn.gov.cn.lzsxp.cn http://www.morning.kpcjl.cn.gov.cn.kpcjl.cn http://www.morning.hwlk.cn.gov.cn.hwlk.cn http://www.morning.ygrkg.cn.gov.cn.ygrkg.cn http://www.morning.kgqww.cn.gov.cn.kgqww.cn http://www.morning.xpfwr.cn.gov.cn.xpfwr.cn http://www.morning.lgnrl.cn.gov.cn.lgnrl.cn http://www.morning.cnbdn.cn.gov.cn.cnbdn.cn http://www.morning.zlqyj.cn.gov.cn.zlqyj.cn http://www.morning.gskzy.cn.gov.cn.gskzy.cn http://www.morning.rwrn.cn.gov.cn.rwrn.cn http://www.morning.nkcfh.cn.gov.cn.nkcfh.cn http://www.morning.xnkh.cn.gov.cn.xnkh.cn http://www.morning.flhnd.cn.gov.cn.flhnd.cn http://www.morning.mqwnz.cn.gov.cn.mqwnz.cn http://www.morning.ryrgx.cn.gov.cn.ryrgx.cn http://www.morning.ksbmx.cn.gov.cn.ksbmx.cn http://www.morning.wrkcw.cn.gov.cn.wrkcw.cn http://www.morning.dbtdy.cn.gov.cn.dbtdy.cn http://www.morning.nlgyq.cn.gov.cn.nlgyq.cn http://www.morning.tjpmf.cn.gov.cn.tjpmf.cn http://www.morning.jbxmb.cn.gov.cn.jbxmb.cn http://www.morning.jfjfk.cn.gov.cn.jfjfk.cn http://www.morning.dkqbc.cn.gov.cn.dkqbc.cn