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

TMS320F28388D: CLA中断问题

Part Number:TMS320F28388D

CLA中断对全局变量引用时间相差为什么会这么大?,测试如下两种写法,i = 0;和i = ctrlcla.TADC_Select;,i = ctrlcla.TADC_Select;这种写法会比i=0多费时1.5us,实际控制周期5us,8通道轮询,所以需要用到全局定义,1.5us时间对于5us中断影响太大了。对此有什么好的写法能够解决费时这个问题。(for循环等形式都测试过,只要引用CLA中全局定义的数据好像都会多耗时)

__interrupt void Cla1Task1 ( void )
{
Uint16 i;
GpioDataRegs.GPBSET.bit.GPIO33 = 1;
i = ctrlcla.TADC_Select;
CTRL_Run_exe(&ctrlcla.Channel[i], cla_para.Period,cla_para.Test_flag);
i=i+1;
CTRL_Run_exe(&ctrlcla.Channel[i], cla_para.Period,cla_para.Test_flag);
ctrlcla.TADC_Select=0;
GpioDataRegs.GPBCLEAR.bit.GPIO33 = 1;
}

__interrupt void Cla1Task1 ( void )
{
Uint16 i;
GpioDataRegs.GPBSET.bit.GPIO33 = 1;
i = 0;
CTRL_Run_exe(&ctrlcla.Channel[i], cla_para.Period,cla_para.Test_flag);
i=i+1;
CTRL_Run_exe(&ctrlcla.Channel[i], cla_para.Period,cla_para.Test_flag);
ctrlcla.TADC_Select=0;
GpioDataRegs.GPBCLEAR.bit.GPIO33 = 1;
}

Susan Yang:

DSP应用 说:CLA中断对全局变量引用时间相差为什么会这么大?

请问您的 ctrlcla.TADC_Select 是在何处如何定义的?您是否有反汇编查看一下代码的调用情况?

若是可以,请给出定义的代码或者工程,我们测试一下

,

DSP应用:

//#############################################################################
// \file asin.cla
//
// \briefArc Sine Example
//
//#############################################################################
// $TI Release: F2838x Support Library v3.04.00.00 $
// $Release Date: Fri Feb 12 19:08:49 IST 2021 $
// $Copyright:
// Copyright (C) 2021 Texas Instruments Incorporated - http://www.ti.com/
//
// Redistribution and use in source and binary forms, with or without// modification, are permitted provided that the following conditions// are met:
////Redistributions of source code must retain the above copyright//notice, this list of conditions and the following disclaimer.
////Redistributions in binary form must reproduce the above copyright
//notice, this list of conditions and the following disclaimer in the//documentation and/or other materials provided with the//distribution.
////Neither the name of Texas Instruments Incorporated nor the names of
//its contributors may be used to endorse or promote products derived
//from this software without specific prior written permission.
//// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// $
//#############################################################################//
// Included Files
//
#include "cla_ex1_asin_shared.h"
#include "gpio.h"
typedef struct {int test;
} CNANNEL;
typedef struct
{CNANNEL Channel[8];
} CTRL;
typedef CTRL*CTRL_handle;
typedef CNANNEL *CNANNEL_handle;
float test_a,test_b,test_c;
int num;
CTRL ctrl;
void text(CNANNEL_handle p)
{switch(p->test){case 0://通道1关充放电控制break;case 1://通道1关充放电控制break;case 2://通道1关充放电控制break;case 3://通道1关充放电控制break;default:break;}test_c = test_a*test_b;}
__interrupt void Cla1Task1 ( void )
{////Local Variables//num = 0;GPIO_writePin(33,1);
//GpioDataRegs.GPBSET.bit.GPIO33 = 1;int xTblIdx; //integer valued Table indexfloat A0,A1,A2; //Table coefficientsfloat *entry;float result;int i;////Preprocessing//__mdebugstop();xTblIdx = fVal * TABLE_SIZE_M_1; //convert table index to u16-bitsxTblIdx = xTblIdx * 3; //Table is ordered as 3 32-bit coefficients, the//index points to these triplets, hence the *3*sizeof(float)entry = &CLAasinTable[xTblIdx];A0 = *entry++;A1 = *entry++;A2 = *entry;for(i=num;i!=50;i++){text(&ctrl.Channel[i]);}result = A0 + fVal*(A1 + A2*fVal);////Post processing//if(fVal < 0){result = - result;}fResult = result;
//GpioDataRegs.GPBCLEAR.bit.GPIO33 = 1;GPIO_writePin(33,0);
}interrupt void Cla1Task2 ( void )
{}interrupt void Cla1Task3 ( void )
{}interrupt void Cla1Task4 ( void )
{}interrupt void Cla1Task5 ( void )
{}interrupt void Cla1Task6 ( void )
{}interrupt void Cla1Task7 ( void )
{}interrupt void Cla1Task8 ( void )
{}//
// End of file
//
//###########################################################################
//
// FILE:cla_ex1_asin.c
//
// TITLE:CLA Arcsine Example
//
//! \addtogroup driver_example_list
//! <h1>CLA \f$arcsine(x)\f$ using a lookup table (cla_asin_cpu01)</h1>
//!
//! In this example, Task 1 of the CLA will calculate the arcsine of
//! an input argument in the range (-1.0 to 1.0) using a lookup table.
//!
//! \b Memory \b Allocation \n
//!- CLA1 Math Tables (RAMLS0)
//!- CLAasinTable - Lookup table
//!- CLA1 to CPU Message RAM
//!- fResult - Result of the lookup algorithm
//!- CPU to CLA1 Message RAM
//!- fVal - Sample input to the lookup algorithm
//!
//! \b Watch \b Variables \n
//!- fVal - Argument to task 1
//!- fResult - Result of \f$arcsin(fVal)\f$
//!
//
//###########################################################################
// $TI Release: F2838x Support Library v3.04.00.00 $
// $Release Date: Fri Feb 12 19:08:49 IST 2021 $
// $Copyright:
// Copyright (C) 2021 Texas Instruments Incorporated - http://www.ti.com/
//
// Redistribution and use in source and binary forms, with or without// modification, are permitted provided that the following conditions// are met:
////Redistributions of source code must retain the above copyright//notice, this list of conditions and the following disclaimer.
////Redistributions in binary form must reproduce the above copyright
//notice, this list of conditions and the following disclaimer in the//documentation and/or other materials provided with the//distribution.
////Neither the name of Texas Instruments Incorporated nor the names of
//its contributors may be used to endorse or promote products derived
//from this software without specific prior written permission.
//// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// $
//###########################################################################//
// Included Files
//
#include "driverlib.h"
#include "device.h"
#include "cla_ex1_asin_shared.h"//
// Defines
//
#define WAITSTEPasm(" RPT #255 || NOP")//
// Globals
////
//Task 1 (C) Variables
// NOTE: Do not initialize the Message RAM variables globally, they will be
// reset during the message ram initialization phase in the CLA memory
// configuration routine
//
#ifdef __cplusplus
#pragma DATA_SECTION("CpuToCla1MsgRAM");
float fVal;
#pragma DATA_SECTION("Cla1ToCpuMsgRAM");
float fResult;
#else
#pragma DATA_SECTION(fVal,"CpuToCla1MsgRAM");
float fVal;
#pragma DATA_SECTION(fResult,"Cla1ToCpuMsgRAM");
float fResult;
#endif //__cplusplus
float y[BUFFER_SIZE];//
//Task 2 (C) Variables
////
//Task 3 (C) Variables
////
//Task 4 (C) Variables
////
//Task 5 (C) Variables
////
//Task 6 (C) Variables
////
//Task 7 (C) Variables
////
//Task 8 (C) Variables
////
//Common (C) Variables
//The Exponential table
//
#ifdef __cplusplus
#pragma DATA_SECTION("CLADataLS0")
#else
#pragma DATA_SECTION(CLAasinTable,"CLADataLS0")
#endif //__cplusplus
float CLAasinTable[]={0.0, 1.0, 0.0,0.000000636202, 0.999877862610, 0.007815361896,0.000005099694, 0.999510644409, 0.015647916155,0.000017268312, 0.998895919094, 0.023514960332,0.000041121765, 0.998029615282, 0.031434003631,0.000080794520, 0.996905974725, 0.039422875916,0.000140631089, 0.995517492804, 0.047499840611,0.000225244584, 0.993854840311, 0.055683712914,0.000339579512, 0.991906765146, 0.063993984848,0.000488979852, 0.989659972212, 0.072450958820,0.000679263611, 0.987098979366, 0.081075891529,0.000916805182, 0.984205946802, 0.089891150305,0.001208627040, 0.980960476685, 0.098920384204,0.001562502549, 0.977339379243, 0.108188712551,0.001987071928, 0.973316400729, 0.117722933997,0.002491973784, 0.968861907789, 0.127551759665,0.003087995053, 0.963942521723, 0.137706074532,0.003787242692, 0.958520694794, 0.148219231941,0.004603341138, 0.952554219267, 0.159127386977,0.005551660294, 0.945995657913, 0.170469875522,0.006649579796, 0.938791682505, 0.182289647088,0.007916796475, 0.930882303984, 0.194633761132,0.009375683410, 0.922199974574, 0.207553958472,0.011051710808, 0.912668537890, 0.221107321885,0.012973941175, 0.902201997769, 0.235357042896,0.015175614174, 0.890703070035, 0.250373315541,0.017694840102, 0.878061473098, 0.266234382514,0.020575425537, 0.864151902887, 0.283027765009,0.023867860513, 0.848831624374, 0.300851714968,0.027630504055, 0.831937595031, 0.319816937941,0.031931014547, 0.813283013821, 0.340048646894,0.036848083955, 0.792653161200, 0.361689022958,0.042473551274, 0.769800358920, 0.384900179460,0.048914992206, 0.744437830278, 0.409867752228,0.056298910750, 0.716232177740, 0.436805274317,0.064774696786, 0.684794109766, 0.465959540059,0.074519565699, 0.649666934178, 0.497617226179,0.085744766889, 0.610312179660, 0.532113122767,0.098703445606, 0.566091493186, 0.569840443472,0.113700678529, 0.516243664372, 0.611263845480,0.131106395009, 0.459855210927, 0.656936015611,0.151372169232, 0.395822366759, 0.707518998893,0.175053263659, 0.322801460177, 0.763811905770,0.202837883870, 0.239143420888, 0.826787304376,0.235586468765, 0.142806299514, 0.897639596948,0.274385149825, 0.031236880585, 0.977850174820,0.320619535938, -0.098791845166, 1.069276441800,0.376078169620, -0.251407364538, 1.174275392129,0.443100143614, -0.431959397725, 1.295878193174,0.524789871827, -0.647485610469, 1.438041695773,0.625336471263, -0.907400624736, 1.606018804842,0.750500589935, -1.224540947101, 1.806917563896,0.908377657341, -1.616794995066, 2.050569262035,1.110633894185, -2.109729648039, 2.350920816737,1.374584721437, -2.740985157716, 2.728353889708,1.726848242753, -3.567962877198, 3.213722960014,2.210117561056, -4.682006534082, 3.855770086891,2.896554011854, -6.236312386687, 4.735651038017,3.916505715382, -8.505488022524, 5.997790945975,5.526855868703, -12.026617159136, 7.922628470498,8.298197116322, -17.983705080358, 11.123941286820,13.741706072449, -29.488929624542, 17.203344479111,27.202707817485, -57.466598393615, 31.741016484669,83.158101335898, -171.803399517566, 90.149831709374
};float asin_expected[BUFFER_SIZE]={1.570796, 1.393789, 1.320141, 1.263401, 1.215375,1.172892, 1.134327, 1.098718, 1.065436, 1.034046,1.004232, 0.9757544, 0.9484279, 0.9221048, 0.8966658,0.8720123, 0.8480621, 0.8247454, 0.8020028, 0.7797828,0.7580408, 0.7367374, 0.7158381, 0.6953120, 0.6751316,0.6552721, 0.6357113, 0.6164289, 0.5974064, 0.5786270,0.5600753, 0.5417370, 0.5235988, 0.5056486, 0.4878751,0.4702678, 0.4528166, 0.4355124, 0.4183464, 0.4013104,0.3843968, 0.3675981, 0.3509074, 0.3343180, 0.3178237,0.3014185, 0.2850964, 0.2688521, 0.2526802, 0.2365756,0.2205333, 0.2045484, 0.1886164, 0.1727327, 0.1568929,0.1410927, 0.1253278, 0.1095943, 0.09388787, 0.07820469,0.06254076, 0.04689218, 0.03125509, 0.01562564
};uint16_t pass = 0;
uint16_t fail = 0;//
// Function Prototypes
//
void CLA_runTest(void);
void CLA_configClaMemory(void);
void CLA_initCpu1Cla1(void);
__interrupt void cla1Isr1();
__interrupt void cla1Isr2();
__interrupt void cla1Isr3();
__interrupt void cla1Isr4();
__interrupt void cla1Isr5();
__interrupt void cla1Isr6();
__interrupt void cla1Isr7();
__interrupt void cla1Isr8();//
// Main
//
void main(void)
{//// Intialize device clock and peripherals//Device_init();//// Disable pin locks and enable internal pullups.////Device_initGPIO(); //skipped for this example//// Initialize PIE and clear PIE registers. Disables CPU interrupts//Interrupt_initModule();//// Initialize the PIE vector table with pointers to the shell Interrupt// Service Routines (ISR).//Interrupt_initVectorTable();//// Configure the CLA memory spaces first followed by// the CLA task vectors//GPIO_setPadConfig(33, GPIO_PIN_TYPE_STD);GPIO_setPinConfig(GPIO_33_GPIO33);GPIO_setDirectionMode(33, GPIO_DIR_MODE_OUT);GPIO_setMasterCore(33, GPIO_CORE_CPU1_CLA1);CLA_configClaMemory();CLA_initCpu1Cla1();//// Enable Global Interrupt (INTM) and realtime interrupt (DBGM)//EINT;ERTM;//// Run the test//
//CLA_runTest();for(;;){CLA_forceTasks(CLA1_BASE,CLA_TASKFLAG_1);DEVICE_DELAY_US(10);}
}//
// CLA_runTest - Execute CLA task tests for specified vectors
//
void CLA_runTest(void)
{int16_t i;float error;for(i = 0; i < BUFFER_SIZE; i++){fVal= (float)(BUFFER_SIZE - i)/(float)BUFFER_SIZE;CLA_forceTasks(CLA1_BASE,CLA_TASKFLAG_1);WAITSTEP;y[i] = fResult;error = fabsf(asin_expected[i]-y[i]);if(error < 0.1f){pass++;}else{fail++;}}#if 0CLA_forceTasks(CLA1_BASE,CLA_TASKFLAG_2);WAITSTEP;CLA_forceTasks(CLA1_BASE,CLA_TASKFLAG_3);WAITSTEP;CLA_forceTasks(CLA1_BASE,CLA_TASKFLAG_4);WAITSTEP;CLA_forceTasks(CLA1_BASE,CLA_TASKFLAG_5);WAITSTEP;CLA_forceTasks(CLA1_BASE,CLA_TASKFLAG_6);WAITSTEP;CLA_forceTasks(CLA1_BASE,CLA_TASKFLAG_7);WAITSTEP;CLA_forceTasks(CLA1_BASE,CLA_TASKFLAG_8);WAITSTEP;
#endif
}//
// CLA_configClaMemory - Configure CLA memory sections
//
void CLA_configClaMemory(void)
{extern uint32_t Cla1funcsRunStart, Cla1funcsLoadStart, Cla1funcsLoadSize;EALLOW;#ifdef _FLASH//// Copy over code from FLASH to RAM//memcpy((uint32_t *)&Cla1funcsRunStart, (uint32_t *)&Cla1funcsLoadStart,(uint32_t)&Cla1funcsLoadSize);
#endif //_FLASH//// Initialize and wait for CLA1ToCPUMsgRAM//MemCfg_initSections(MEMCFG_SECT_MSGCLA1TOCPU);while (!MemCfg_getInitStatus(MEMCFG_SECT_MSGCLA1TOCPU)){};//// Initialize and wait for CPUToCLA1MsgRAM//MemCfg_initSections(MEMCFG_SECT_MSGCPUTOCLA1);while (!MemCfg_getInitStatus(MEMCFG_SECT_MSGCPUTOCLA1)){};//// Select LS5RAM to be the programming space for the CLA// First configure the CLA to be the master for LS5 and then// set the space to be a program block//MemCfg_setLSRAMMasterSel(MEMCFG_SECT_LS5,MEMCFG_LSRAMMASTER_CPU_CLA1);MemCfg_setCLAMemType(MEMCFG_SECT_LS5,MEMCFG_CLA_MEM_PROGRAM);//// Next configure LS0RAM and LS1RAM as data spaces for the CLA// First configure the CLA to be the master for LS0(1) and then// set the spaces to be code blocks//MemCfg_setLSRAMMasterSel(MEMCFG_SECT_LS0,MEMCFG_LSRAMMASTER_CPU_CLA1);MemCfg_setCLAMemType(MEMCFG_SECT_LS0, MEMCFG_CLA_MEM_DATA);MemCfg_setLSRAMMasterSel(MEMCFG_SECT_LS1,MEMCFG_LSRAMMASTER_CPU_CLA1);MemCfg_setCLAMemType(MEMCFG_SECT_LS1, MEMCFG_CLA_MEM_DATA);EDIS;
}//
// CLA_initCpu1Cla1 - Initialize CLA1 task vectors and end-of-task interrupts
//
void CLA_initCpu1Cla1(void)
{//// Compute all CLA task vectors// On Type-1 CLAs the MVECT registers accept full 16-bit task addresses as// opposed to offsets used on older Type-0 CLAs//EALLOW;#pragma diag_suppress=770CLA_mapTaskVector(CLA1_BASE,CLA_MVECT_1,(uint16_t)&Cla1Task1);CLA_mapTaskVector(CLA1_BASE,CLA_MVECT_2,(uint16_t)&Cla1Task2);CLA_mapTaskVector(CLA1_BASE,CLA_MVECT_3,(uint16_t)&Cla1Task3);CLA_mapTaskVector(CLA1_BASE,CLA_MVECT_4,(uint16_t)&Cla1Task4);CLA_mapTaskVector(CLA1_BASE,CLA_MVECT_5,(uint16_t)&Cla1Task5);CLA_mapTaskVector(CLA1_BASE,CLA_MVECT_6,(uint16_t)&Cla1Task6);CLA_mapTaskVector(CLA1_BASE,CLA_MVECT_7,(uint16_t)&Cla1Task7);CLA_mapTaskVector(CLA1_BASE,CLA_MVECT_8,(uint16_t)&Cla1Task8);
#pragma diag_warning=770//// Enable the IACK instruction to start a task on CLA in software// for all8 CLA tasks. Also, globally enable all 8 tasks (or a// subset of tasks) by writing to their respective bits in the// MIER register//CLA_enableIACK(CLA1_BASE);CLA_enableTasks(CLA1_BASE, CLA_TASKFLAG_ALL);//// Configure the vectors for the end-of-task interrupt for all// 8 tasks//Interrupt_register(INT_CLA1_1, &cla1Isr1);Interrupt_register(INT_CLA1_2, &cla1Isr2);Interrupt_register(INT_CLA1_3, &cla1Isr3);Interrupt_register(INT_CLA1_4, &cla1Isr4);Interrupt_register(INT_CLA1_5, &cla1Isr5);Interrupt_register(INT_CLA1_6, &cla1Isr6);Interrupt_register(INT_CLA1_7, &cla1Isr7);Interrupt_register(INT_CLA1_8, &cla1Isr8);//// Enable CLA interrupts at the group and subgroup levels//Interrupt_enable(INT_CLA1_1);Interrupt_enable(INT_CLA1_2);Interrupt_enable(INT_CLA1_3);Interrupt_enable(INT_CLA1_4);Interrupt_enable(INT_CLA1_5);Interrupt_enable(INT_CLA1_6);Interrupt_enable(INT_CLA1_7);Interrupt_enable(INT_CLA1_8);
}//
// cla1Isr1 - CLA1 ISR 1
//__interrupt void cla1Isr1 ()
{//// Acknowledge the end-of-task interrupt for task 1//Interrupt_clearACKGroup(INTERRUPT_ACK_GROUP11);//// Uncomment to halt debugger and stop here//// asm(" ESTOP0");
}//
// cla1Isr2 - CLA1 ISR 2
//
__interrupt void cla1Isr2 ()
{asm(" ESTOP0");
}//
// cla1Isr3 - CLA1 ISR 3
//
__interrupt void cla1Isr3 ()
{asm(" ESTOP0");
}//
// cla1Isr4 - CLA1 ISR 4
//
__interrupt void cla1Isr4 ()
{asm(" ESTOP0");
}//
// cla1Isr5 - CLA1 ISR 5
//
__interrupt void cla1Isr5 ()
{asm(" ESTOP0");
}//
// cla1Isr6 - CLA1 ISR 6
//
__interrupt void cla1Isr6 ()
{asm(" ESTOP0");
}//
// cla1Isr7 - CLA1 ISR 7
//
__interrupt void cla1Isr7 ()
{asm(" ESTOP0");
}//
// cla1Isr8 - CLA1 ISR 8
//
__interrupt void cla1Isr8 ()
{//// Acknowledge the end-of-task interrupt for task 8//Interrupt_clearACKGroup(INTERRUPT_ACK_GROUP11);//// Uncomment to halt debugger and stop here//
//asm(" ESTOP0");
}//
// End of file
//

,

DSP应用:

实际工程加密无法发送,改的cla_ex1_asin例程

实际测试相差800ns;

for(i=num;i!=50;i++) { text(&ctrl.Channel[i]); }

for(i=0;i!=50;i++){text(&ctrl.Channel[i]);}

FLASH模式,开优化如下

,

Susan Yang:

DSP应用 说:实际测试相差800ns;

抱歉,由于办公室搬迁原因,示波器等设备没有在原办公室,所以目前不好进行测试

若是您对此问题需要迫切回复的话,请您在英文E2E发帖,谢谢

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/ 

,

DSP应用:

dsp不是有CLOCK测试时间吗,用这个测试也可以

,

Susan Yang:

好的,我会在测试后给您回复

,

DSP应用:

你好,请帮忙回答此问题

,

Susan Yang:

抱歉,之前漏掉了您的回复。由于办公室搬迁原因,板子目前不在后边,所以目前不好进行测试

若是您对此问题需要迫切回复的话,请您在英文E2E发帖,谢谢

e2e.ti.com/…/ 

赞(0)
未经允许不得转载:TI中文支持网 » TMS320F28388D: CLA中断问题
分享到: 更多 (0)