![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DSP学习笔记
文章平均质量分 89
记录在DSP芯片学习过程中遇到的问题及相关解决方法
嵌入式@hxydj
这个作者很懒,什么都没留下…
展开
-
在PSIM中使用PIL功能和CCS软件进行联合调试
当仿真软件中输出口高低电平变化的时候,用示波器观察DSP芯片的GPIO64口,可以发现这个图IO的高低电平变化和PSIM中看到的高低电平是同步的。搭建一个PSIM仿真,这里搭建的功能是,使用一个正弦波发生器输出一个正弦波,然后使用ADC采样功能采样正弦波,如果采样值小于0.3V就IO口就输出一个高电平,否则就输出一个低电平。将代码的局部声明修改为全局声明,同时屏蔽掉读取ADC采样值这行代码,再联合仿真中ADC的采样将不需要从实际硬件的IO口读取,而是直接从PSIM仿真软件中获取。代码修改完成之后编译代码。原创 2024-05-20 23:30:00 · 870 阅读 · 0 评论 -
PSIM软件中使用PIL功能实现软硬件联合调试
在硬件电路中是4个信号,而在代码中只有三个信号,那是由于第二个IO的输入输出信号是一样的,系统生成代码的时候输入输出就使用了一个信号。PSIM软件中有一个PIL模块,可以实现在仿真的过程中程序在硬件芯片上执行,然后执行结果直接输出到PSIM仿真软件中。然后将输入信号的读取屏蔽掉,仿真的时候fDIN1和fDIN1_1的值由仿真软件直接设置,所以不需要读取命令。,用3.3版本的格式导入刚才生成的代码。输出口GPIO67/68在开发板上连接的是LED指示灯,所以当软件仿真的时候,开发板上的指示灯也会闪烁。原创 2024-05-17 23:45:00 · 1153 阅读 · 5 评论 -
使用CCS软件查看PID曲线
这是因为取消延时后,图形显示的刷新率太低,不能实时捕获到每个数据,所以直接显示变量的曲线就看不出来细节了,而数组显示比较完整,是因为代码中将过程中的所有数据都先存储到了数组中,然后根据数组中的数据来绘制曲线。这是两种很典型的PID算法,一个位置式,一个增量式。此时又增加了一个显示窗口,但是这两个窗口重叠在了一起,看起来不方便,在窗口标题处按住鼠标左键,拖动窗口,将两个图形显示调节到合适的位置。添加完成之后,将黄色箭头的图标选中,这个是实时刷新功能,这样在代码全速运行的时候,就可实时看到变量值在变化。原创 2024-04-17 22:45:00 · 1623 阅读 · 1 评论 -
CCS在线调试时实时修改变量值
在使用CCS调试dsp芯片时,发现CCS软件有一个非常好的功能,在仿真调试的时候可以实时修改代码中变量的值。将数据寄存器展开,LED主要在GPIOC口的64–68,默认情况下端口值都为1,将变量value的值直接修改为11,点亮LED1。开始调试程序,按照上面的方法将变量value的值添加到变量观测窗口,同时也将value的值添加到图形显示中。通过switch语句中的value值控制LED的亮灭,其中LED的端口控制使用宏定义的方式。当value的值修改为11时,可以看到GPIO68的值由1变为了0。原创 2024-04-14 13:45:00 · 1574 阅读 · 0 评论 -
CCS中实时显示ADC采样波形
CCS软件中带有波形显示工具,在调试代码的过程中可以比较方便的将代码中待观测的变量直接用曲线的方式显示出来。下面就演示一下如何在CCS中使用波形显示。这里使用28335芯片,用一个简单的工程来测试。原创 2024-04-14 10:15:00 · 2341 阅读 · 0 评论 -
DSP28335在CCS代码实现Clarke、Park变换及反变换
要进行clarke和park变换,首先要进行三相正弦信号的生成。具体生产方法见上一篇文章。原创 2024-04-13 22:45:00 · 1318 阅读 · 0 评论 -
使用DSP28335在CCS中生成正弦波
为了方便修改参数,将每个周期采样的点数,和总共采样的点数设置为宏定义。修改代码如下。#define PI3.1415926//定义圆周率#define F50//正弦波频率#define TN100//每个周期需要采样的点数#define N500//总共采样的点数,数组大小float sin1;int i;float t;for (i = 0;i < N;i++)将宏定义设置为每个周期采样100个点,总共采样500个点,也就是5个周期。将波形采样点设置为500。原创 2024-04-12 21:15:00 · 2109 阅读 · 0 评论 -
PSIM仿真DSP28335ADC功能并使用SCI串口模块输出曲线
使用的主要模块有ADC模块和SCI模块,通过波形发生器产生一个正弦波,分别送到ADC采样口A0和B0,在送入A0口之前,加了一个限幅器,将最小值限制在0V,最大值限制到3V,然后ADC模块的输出口分别接串口和电压探头,在接电压探头的时候,必须给前面添加一个零阶保持器,否则仿真会报错。将ADC采样通道的A0和B0的存储值添加到观察窗口,旋转开发板上电位器,可以看到检测窗口的值在变。在CCS中将A0通道的采样值用图形显示出来,旋转开发板上的电位器,可以看到A0的值一直在变。原创 2024-01-23 23:00:00 · 1167 阅读 · 0 评论 -
使用PSIM软件生成DSP28335流水灯程序
由于方波发生器的频率设置的非常低,只有10Hz,而仿真时间设置的比较短,只有10ms,所以看不到波形,将仿真文件中的钟表图标双击打开,将仿真时间修改为1秒。接下来给IO口设置输出信号,想让LED按照10Hz的频率闪烁,要产生这个10Hz的信号,就需要使用一个方波发生器。时钟的默认设置是外面晶振30MHz,DSP工作时钟为150MHz,和我的开发板设置一样,所以这里使用默认的就行。接下来好需要放置IO口输出模块。然后将D1到D4口都连接到D0口上,让这几个口的信号一样,然后将没有用到的D5—D7接地,原创 2024-01-22 18:58:20 · 1942 阅读 · 0 评论 -
CCS中静态库lib的生成与调用
详细讲解了在CCS中如何将工程中的相关.c文件封装为静态库.lib文件,并在其他工程中调用此lib静态库。原创 2023-11-30 16:42:00 · 4226 阅读 · 2 评论