Part Number:TMS320F28388D
如题
Yale Li:
能否描述一下无法烧录程序的具体现象,比如CCS的报错信息这些
Part Number:TMS320F28388D
如题
能否描述一下无法烧录程序的具体现象,比如CCS的报错信息这些
Part Number:TMS320F28035
项目中使用28035的TZINT中断在ISR中做过流保护。初始化TZ模块的时候设置TZCLR为0xFFFF,清除所有TZ标志。
但是发现只要一使能TZ中断,马上就会触发TZ事件,此时TZFLG寄存器不为0,这时候再次向TZCLR写入0xFFFF清除TZ标志以后正常。
如果不使能TZ中断,TZFLG也不会置位。整个过程中TZ1-TZ3三个管脚都是高电平,实际上并没有TZ事件。
请问应该如何初始化TZ模块才能保证无误触发TZ事件和中断?
我找到一个类似的问题:TMS320F28075: TZ interrupt without source? – C2000 microcontrollers forum – C2000︎ microcontrollers – TI E2E support forums
Xiao Dong 说:整个过程中TZ1-TZ3三个管脚都是高电平,实际上并没有TZ事件。
最好是用示波器抓一下波形,排除尖峰之类的干扰因素;
如果实在找不出原因,可以在初始化ePWM模块之前失能总中断,使能TZ中断前后都向TZCLR写入0xFFFF,TZ中断成功初始化之后再使能总中断。
Part Number:TMS320F28379D
28379D的adc采样和dac模拟输出能在一个工程下一起使用吗 ,就比如c2000例程中的adc_ex2_soc_epwm和buffdac_sine_cpu01可以合并成一个工程一起使用吗
可以
Part Number:TMS320F28035
在10us周期的中断中,对一个50Hz周期的正弦波采样,计算有效值,但是加了下面的采样代码,就有莫名其妙的问题,比如影响通信等;这些代码有问题吗?
interrupt void isr()
{//10US
EPwm6Regs.ETCLR.bit.INT = 1; // Clear INT flag for this timer
PieCtrlRegs.PIEACK.all = PIEACK_GROUP3; // Acknowledge this int to receive more int from group 3
if(bACSamplyFinish == 0)
{//10us
TimCount200us++;
if(TimCount200us >= 20)
{//200us
TimCount200us = 0;
u16AcIbAdc = AdcMirror.ADCRESULT3;
u16AcIcAdc = AdcMirror.ADCRESULT4;
g_u32AcIbAdc[ACSamplyCount] = u16AcIbAdc ;
g_u32AcIbAdc[ACSamplyCount] =u16AcIcAdc ;
ACSamplyCount++;
if(ACSamplyCount >= 100)
{//20ms
bACSamplyFinish = 1;
ACSamplyCount = 0;
}
}
}
代码中并没有耗时的操作,问题似乎不在这里。
注释掉下面这行试试看问题有没有改善
bACSamplyFinish = 1;
,
这行是为了采样一个周期就开始计算有效值;我刚才用示波器抓过,加了这段代码,至少需要0.65us的时间
,
zhou harry 说:但是加了下面的采样代码,
这里指的是哪一部分?
,
整个
if(bACSamplyFinish == 0){//10us
………………….
}
,
AdcMirror.ADCRESULT3这个参数是什么?
Part Number:TMS320F28377DOther Parts Discussed in Thread:C2000WARE
最近在调试串口,用dsp的串口和Fpga通讯,现在测试是将dsp28337d(wt)的串口直接通过fpga的引脚引出,但是无论如何配置串口,都没有数据输出,已排除fpga至硬件的串口问题。
参考例程,修改代码如下:
…
发送函数:
IO的配置检查了,应该硬件端口测试过,但是就是没有数据发出来。请大家帮忙分析一下。
参考一下TI的例程:C:\ti\c2000\C2000Ware_5_01_00_00\device_support\f2837xd\examples\cpu1\sci_echoback
Part Number:TMS320F28335
想请问一下ecap检测上升沿和下降沿可以通过软件的方式实现错误脉冲(比如信号尖刺)的排除吗?硬件电路上已经添加了电容,但是发现方波信号上还是有比较大的尖刺,导致ecap检测到的信号不正确。
eCAP没有,GPIO输入有。请看一下sprui07_TMS320x2833x, TMS320x2823x Technical Reference Manual 1.4.4 Input Qualification
,
好的,非常感谢!
,
客气了~
Part Number:TMS320F28377DOther Parts Discussed in Thread:C2000WARE, CONTROLSUITE
在编译官方提供的can例程时,报错Unrecognized COMPILER!
双击跳转usblib.h
大佬们有解决办法吗
查看下工程属性中的编译器选项,看是不是TI c2000的编译器。
,
是C2000的编译器
,
你使用的CCS版本是什么?C2000ware版本是什么?编译的是哪个例程?
,
CCS12.5.0
例程是来自controlsuite:D:\controlsuite\controlSUITE\device_support\F2837xD\v210\F2837xD_examples_Cpu1\can_external_transmit下的
直接从安装文件夹里将例程复制出来到自己建立的377模板文件夹下的,未安装C2000ware
,
直接在CCS中点击导入工程试试:
,
controlsuite提供的例程不是完整的CCS工程,如何导入呢
,
点击上图的按钮,搜索你上面发的路径就可以了
,
好的,感谢帮助!
使用c2000 编译的遇到的问题,编译器版本 LTS 22.6.1
定义两个变量,一个是结构体数组,一个是结构体里成员是数组,用sizeof 测试二者大小一样 都是 99,但 TEST1 就可以指定到.cfgdata段,TEST2 会报内存空间size不够,请问这是为什么?
cmd文件如下
我认为应该是结构体在存储时是需要地址对其原因,也就是说,虽然你这里size of 的值是一样的,但在实际存储变量的过程中实际需要的空间可能会更大。
可以参考下这个博客:
C/C++ sizeof函数解析——解决sizeof求结构体大小的问题_sizeof结构体数组-CSDN博客
Part Number:TMS320F280039C
不可调
Part Number:TMS320F280039C
如下图所示,TZ低电平触发后,PWM会立即封波,但我想等待一个完整脉冲发完后,也就是一个周期结束后,再封波。软件需要怎么配置?
从ePWM模块的角度来说,是不能的,TZ的动作都是立即执行;
从整个器件来说,可以使用CLB自己来做相关的逻辑。