TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320F280039C: BIN文件升级后无法进入CLA

jian qin阅读(56)

Part Number:TMS320F280039C

"${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/ofd2000" "${CG_TOOL_ROOT}/bin/hex2000" "${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"

生成的BIN文件升级完成后,无法进入CLA;hex文件升级后CLA运行正常;这是啥情况?

Alice:

您好,

     “ CCE_INSTALL_ROOT” —–应该是CCS_INSTALL_ROOT, 是您笔误了吗?

     6.1. Creating and Managing Projects — Code Composer Studio 12.8.0 Documentation

    这个帖子讨论了在CCS12生成bin文件的问题,请参考。

    TMS320F28388D: bin file not generated by CCS12 – C2000 microcontrollers forum – C2000Tm︎ microcontrollers – TI E2E support forums

TMS320F28035: 用XDS100v3烧录程序出现(Error -233 @ 0x0)是怎么回事??

Sean Zhang阅读(82)

Part Number:TMS320F28035

 这个错误指的是什么,应该怎么解决

Lydia:

您好,

看您这个报错,有可能是JTAG损坏。

有没有试过更换其他jtag测试一下?

您可以参考一下这个链接的说明:software-dl.ti.com/…/ccsv7_debugging_jtag_connectivity_issues.html

TMS320F28379D: 如何调用InstaSPIN-FOC解决方案

Yan jinjin阅读(88)

Part Number:TMS320F28379DOther Parts Discussed in Thread:C2000WARE, LAUNCHXL-F280039C, LAUNCHXL-F280025C, LAUNCHXL-F2800137, BOOSTXL-DRV8323RS

想使用的FAST软件编码的无传感器FOC解决方案实现零速获取初始位置,所以想问FAST算法库如何调用

Vivian Gao:

您好

可以参考下方手册的讲解。

www.ti.com/…/spruhj1i.pdf

,

Yan jinjin:

您好,我没有在该文档中看到28379D应用InstaSPIN-FOC的相关介绍,只有以下三种芯片,C:\ti\c2000\C2000Ware_MotorControl_SDK_5_02_00_00\solutions\universal_motorcontrol_lab文件夹中只有f28002x、f28003x、、f280013x、f280015x,没有28379D,请问哪里有28379D的lab?

3.3.1 Importing and Configuring ProjectThe example lab is a universal project that has support for various TI EVM motor driver kits that can be used in conjunction with the F280025C, F280039C, or F2800137 C2000 MCU devices. The user can run different TI EVM kits by setting the build configurations and properties of the lab project. In the following sections, the LAUNCHXL-F280025C, LAUNCHXL-F280039C, or LAUNCHXL-F2800137 is used in combination with the BOOSTXL-DRV8323RS lab to show how to import and run the example lab on this kit.1. Import the project within CCS by clicking "Project" ➔"Import CCS Projects…", and then click "Browse…" button to select search directory at:a. F28002x based lab:<install_location>\solutions\universal_motorcontrol_lab\f28002x\ccs\motor_control\ to select the "universal_motorcontrol_lab_f28002x" project.b. F28003x based lab:<install_location>\solutions\universal_motorcontrol_lab\f28003x\ccs\motor_control\ to select the "universal_motorcontrol_lab_f28003x" project.c. F280013x based lab:<install_location>\solutions\universal_motorcontrol_lab\f280013x\ccs\motor_control\ to select the "universal_motorcontrol_lab_f280013x" project.

,

Vivian Gao:

您好

在您的新贴中回复,本贴关闭。

TMS320F28377D: 使用EMIF1与FPGA通讯,芯片异常发烫

Eruroraito阅读(64)

Part Number:TMS320F28377D

使用的是EMIF1接口与FPGA IO口直连,PIN脚仅使用7地址位、16数据位、REN、CS2、CLK,在与FPGA通讯过程,FPGA与DSP芯片均会发热异常。

如果FPGA处理一下,在CS高(数据无效)期间,将FPGA的16个数据口置为高阻态,FPGA与DSP芯片都发热正常,如果在CS高(数据无效)期间,将FPGA的16个数据口置为低电平,FPGA与DSP芯片均会发热异常。

在整个交互过程,DSP只读取数据,理论下数据口都应该是输入模式的,为何改变下FPGA的IO口空闲状态发热就正常了呢?是不是哪里需要配置EMIF数据口空闲状态?

附上,EMIF配置及读取数据代码。

void InitEMIF(void)
{EALLOW;//// Grab EMIF1 For CPU1//Emif1ConfigRegs.EMIF1MSEL.all = 0x93A5CE71;////Disable Access Protection (CPU_FETCH/CPU_WR/DMA_WR)//Emif1ConfigRegs.EMIF1ACCPROT0.all = 0x0;//// Commit the configuration related to protection. Till this bit remains set// content of EMIF1ACCPROT0 register can't be changed.//Emif1ConfigRegs.EMIF1COMMIT.all = 0x1;//// Lock the configuration so that EMIF1COMMIT register can't be// changed any more.//Emif1ConfigRegs.EMIF1LOCK.all = 0x1;EDIS;////Configure GPIO pins for EMIF1//
//Uint16 i;

//for (i=28; i<=52; i++)
//{
//if ((i != 42) && (i != 43)&& (i != 28)&& (i != 43))
//{
//GPIO_SetupPinMux(i,0,2);
//}
//}
//for (i=63; i<=87; i++)
//{
//if (i != 84)
//{
//GPIO_SetupPinMux(i,0,2);
//}
//}GPIO_SetupPinMux(30,0,2);GPIO_SetupPinMux(34,0,2);GPIO_SetupPinMux(37,0,2);GPIO_SetupPinMux(38,0,2);GPIO_SetupPinMux(39,0,2);GPIO_SetupPinMux(40,0,2);GPIO_SetupPinMux(41,0,2);GPIO_SetupPinMux(44,0,2);GPIO_SetupPinMux(45,0,2);GPIO_SetupPinMux(46,0,2);GPIO_SetupPinMux(47,0,2);GPIO_SetupPinMux(69,0,2);GPIO_SetupPinMux(70,0,2);GPIO_SetupPinMux(71,0,2);GPIO_SetupPinMux(72,0,2);GPIO_SetupPinMux(73,0,2);GPIO_SetupPinMux(74,0,2);GPIO_SetupPinMux(75,0,2);GPIO_SetupPinMux(76,0,2);GPIO_SetupPinMux(77,0,2);GPIO_SetupPinMux(78,0,2);GPIO_SetupPinMux(79,0,2);GPIO_SetupPinMux(80,0,2);GPIO_SetupPinMux(81,0,2);GPIO_SetupPinMux(82,0,2);GPIO_SetupPinMux(83,0,2);GPIO_SetupPinMux(85,0,2);

//GPIO_SetupPinMux(88,0,3);
//GPIO_SetupPinMux(89,0,3);
//GPIO_SetupPinMux(90,0,3);
//GPIO_SetupPinMux(91,0,3);////setup async mode and enable pull-ups for Data pins//
//for (i=69; i<=85; i++)
//{
//if (i != 84)
//{
//GPIO_SetupPinOptions(i,0,0x31); // GPIO_ASYNC||GPIO_PULLUP
//}
//}GPIO_SetupPinOptions(69,0,0x31);GPIO_SetupPinOptions(70,0,0x31);GPIO_SetupPinOptions(71,0,0x31);GPIO_SetupPinOptions(72,0,0x31);GPIO_SetupPinOptions(73,0,0x31);GPIO_SetupPinOptions(74,0,0x31);GPIO_SetupPinOptions(75,0,0x31);GPIO_SetupPinOptions(76,0,0x31);GPIO_SetupPinOptions(77,0,0x31);GPIO_SetupPinOptions(78,0,0x31);GPIO_SetupPinOptions(79,0,0x31);GPIO_SetupPinOptions(80,0,0x31);GPIO_SetupPinOptions(81,0,0x31);GPIO_SetupPinOptions(82,0,0x31);GPIO_SetupPinOptions(83,0,0x31);GPIO_SetupPinOptions(85,0,0x31);////Configure the access timing for CS2 space//Emif1Regs.ASYNC_CS2_CR.all =  (  EMIF_ASYNC_ASIZE_16| // 16Bit Memory// InterfaceEMIF_ASYNC_TA_1| // Turn Around time// of 2 Emif ClockEMIF_ASYNC_RHOLD_1| // Read Hold time// of 1 Emif ClockEMIF_ASYNC_RSTROBE_1| // Read Strobe time// of 1 Emif ClockEMIF_ASYNC_RSETUP_1| // Read Setup time// of 1 Emif ClockEMIF_ASYNC_WHOLD_1| // Write Hold time// of 1 Emif ClockEMIF_ASYNC_WSTROBE_1| // Write Strobe time// of 1 Emif ClockEMIF_ASYNC_WSETUP_1| // Write Setup time// of 1 Emif ClockEMIF_ASYNC_EW_DISABLE  | // Extended Wait// Disable.EMIF_ASYNC_SS_DISABLE// Strobe Select Mode// Disable.);
}
#pragma DATA_SECTION(CpuToCla1ADCBuffer,"CpuToCla1MsgRAM");
volatile Uint32 CpuToCla1ADCBuffer[MEM_BUFFER_SIZE];

#define MEM_BUFFER_SIZE22Uint16 temp=0;Uint16 *dst;Uint16 *src;dst = (Uint16 *)CpuToCla1ADCBuffer;src = (Uint16 *)ASRAM_CS2_START_ADDR;for(temp=0;temp<MEM_BUFFER_SIZE*2;temp++){*dst++ = *src++;}

Alice:

您好,

     与FPGA进行数据传输使用”Asynchronous Interface“接口模式,

     可使用下面文档中”EMIF Configuration Tool“配置。

     Design and Usage Guidelines for the C2000 External Memory Interface (EMIF) (Rev. A) (ti.com)

,

Eruroraito:

您好,

我使用的是”Asynchronous Interface“接口模式。

,

Alice:

您好,

   如果数据传输过程都会发热的话,就是存在过流了。

   MCU这边的接口设置和驱动,请参考 emif_ex1_16bit_asram (ti.com)。

TMS320F28379D: 如何调用FAST算法库

Yan jinjin阅读(83)

Part Number:TMS320F28379DOther Parts Discussed in Thread:C2000WARE

如题

Alice:

您好,

     请参考c2000ware中的“FPUfastRTS”文件夹内 Examples (ti.com)下有CCS的示例工程。

     类似问题帖子请参考。     

     (+) TMS320F280039C-Q1: FAST库 – C2000Tm︎ 微控制器论坛 – C2000 微控制器 – E2ETm 设计支持 (ti.com)

,

Yan jinjin:

您好,感谢回复,这边是想使用的FAST软件编码的无传感器FOC解决方案,自动识别所需的电机参数并提供以下电机反馈信号:磁通 (F)、磁通角度 (A)、电机轴转速 (S) 和扭矩 (T)。

,

Alice:

您好,

      请下载C2000Ware_MotorControl_SDK,

      使用请参考InstaSPIN-FOCTm 和 InstaSPIN-MOTIONTm (Rev. I)      

,

Yan jinjin:

您好,感谢回复,我试一下

TMS320F280025C: 280025控制的光伏逆变器,前级使用BOOST,200V升400V,20A电流,请问使用同步整流还是二极管合适?

jiangtao zhou阅读(57)

Part Number:TMS320F280025C

280025在组串式光伏逆变器中应用很多,在此求问TI电力电子的老师,望解惑。

Links:

在追求高效、高功率密度和长期运行经济性的光伏逆变器设计中,同步整流通常是更优的选择。而在成本敏感或设计要求相对简单的应用中,二极管整流则更为合适。

TRANSLATE with x

English

Arabic
Hebrew
Polish

Bulgarian
Hindi
Portuguese

Catalan
Hmong Daw
Romanian

Chinese Simplified
Hungarian
Russian

Chinese Traditional
Indonesian
Slovak

Czech
Italian
Slovenian

Danish
Japanese
Spanish

Dutch
Klingon
Swedish

English
Korean
Thai

Estonian
Latvian
Turkish

Finnish
Lithuanian
Ukrainian

French
Malay
Urdu

German
Maltese
Vietnamese

Greek
Norwegian
Welsh

Haitian Creole
Persian

TRANSLATE with

COPY THE URL BELOW

Back

EMBED THE SNIPPET BELOW IN YOUR SITE

Enable collaborative features and customize widget: Bing Webmaster Portal
Back

TMS320F28386D: 关于CAN模块的使用和ID滤波

jing980814阅读(87)

Part Number:TMS320F28386DOther Parts Discussed in Thread:C2000WARE

想请教一下,关于can模块的设置可以使用官方提供的函数

CAN_setupMessageObject(uint32_t base, uint32_t objID, uint32_t msgID,
                       CAN_MsgFrameType frame, CAN_MsgObjType msgType,
                       uint32_t msgIDMask, uint32_t flags, uint16_t msgLen);
以 CAN_setupMessageObject(CANA_BASE, 0x0015, 0x0020, CAN_MSG_FRAME_STD, CAN_MSG_OBJ_TYPE_RX, 0xFFFFFFFF, CAN_MSG_OBJ_NO_FLAGS, 8)为例

用0x0015的邮箱接收ID为0x0020的CAN数据帧,滤波ID为0xFFFFFFFF
这里设置的CAN_MSG_OBJ_NO_FLAGS表示既不触发中断,也不会使用滤波,那是否表示任何数据都可以被0x0015这个邮箱接收呢?即使msgIDMask全为1或者全为0
该位同样可以设置为CAN_MSG_OBJ_USE_ID_FILTER,像请教一下,如果设置为了CAN_MSG_OBJ_USE_ID_FILTER又表示啥意思呢?是否意味着msgIDMask对应位为1的位置必须与数据帧ID0x0020对应上,该数据才可以被接收呢?
我理解在flags未设置滤波的情况下,msgIDMask为0或者1不会对数据的接收有任何影响;当flags设置为采用滤波的时候,msgIDMask为1的位表示需要匹配,即此时数据ID相应位相同的数据才可以被CAN模块收到,而msgIDMask为0的位表示不采用滤波,因此数据ID对应位0或者1均不影响数据的接收。不知道这种理解方式是否正确?
感谢指教。
Alice:

您好,

      您的理解正确,CAN_setupMessageObject这个函数在can.c (ti.com)中定义。

      在c2000ware 中有CAN示例代码,请参考 can_ex8_mask (ti.com)

      

,

jing980814:

感谢您的回复

手册和这个案例我之前也查看过了,理解了如果使能了滤波功能,那就必须要相应位匹配的数据才能被接收。

但对于不使能滤波,此时的Mask ID是0还是1有何影响与不同?

,

Alice:

您好,

     

     为1的话,是用于滤波使用;为0,就忽略其设置。

,

jing980814:

感谢回复!

为0表示忽略其设置:这意思是接收任何ID的数据帧,还是只接受ID完全匹配的数据帧呢?

,

Alice:

您好,      

    接收通过“acceptance filtering”匹配的ID。

    

     请参考TRM “30.11.6 Acceptance Filtering of Received Messages”内容。

    TMS320F2838x Real-Time Microcontrollers With Connectivity Manager TRM (Rev. F)      

TMS320F28335: CCSTUDIO-THEIA 与 CCSTUDIO什么区别?

HGLzbj阅读(99)

Part Number:TMS320F28335Other Parts Discussed in Thread:CCSTUDIO

CCSTUDIO-THEIA 与 CCSTUDIO什么区别?

Taylor:

您好,

CCSTUDIO-THEIA是基于Theia框架的,而CCSTUDIO是基于Eclipse框架的。

Code Composer Studio 将从 Eclipse 应用框架过渡到更现代的 Theia 框架。Code Composer Studio Theia 现适用于大多数器件,并会在后续每个版本中逐渐添加更多功能。计划基于 Eclipse 的最终版本预计为 CCS 12.8。

© 2024 TI中文支持网   网站地图 鲁ICP备2022002796号-1