This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
从ti买的HV_Solar_DC_DC模块,把工程载入后发现有很多问题,缺少很多头文件,请问这个给的工程是完整的吗?
Hank Zhao 你好,我又从新按照controlsuite的路径从新添加了一遍工程,但是还有很多错误
第一个主要错误是缺少这四个文件。
Severity and Description Path Resource Location Creation Time Id
[E1000] Include/Copy file not found or opened HV_Solar_DC_DC HV_Solar_DC_DC-DPL-ISR.asm line 18 1386316407728 246
.include "ADCDRV_1ch.asm"
.include "PWMDRV_1ch_UpDwnCnt.asm"
.include "PWMDRV_LLC_ComplPairDB.asm"
.include "CNTL_2P2Z.asm"
.include "MATH_EMAVG.asm"
第二个主要错误是
Severity and Description Path Resource Location Creation Time Id
[E0002] Invalid mnemonic specification HV_Solar_DC_DC HV_Solar_DC_DC-DPL-ISR.asm line 166 1386316407735 263
ADCDRV_1ch_INIT 1 ; IL
ADCDRV_1ch_INIT 2 ; Vb
ADCDRV_1ch_INIT 3 ; Vp
ADCDRV_1ch_INIT 4 ; Ics
CNTL_2P2Z_INIT 2
CNTL_2P2Z_INIT 1
MATH_EMAVG_INIT 1
MATH_EMAVG_INIT 2
PWMDRV_1ch_UpDwnCnt_INIT 1 ; PWM1A
PWMDRV_1ch_UpDwnCnt_INIT 2 ; PWM2A
PWMDRV_1ch_UpDwnCnt_INIT 4 ; PWM4A
;PWMDRV_LLC_ComplPairDB_INIT 3 ;
第三个是
Severity and Description Path Resource Location Creation Time Id
could not open source file "PeripheralHeaderIncludes.h" HV_Solar_DC_DC HV_Solar_DC_DC_DevInit_F2803x.c line 7 1386316407738 279
#include "PeripheralHeaderIncludes.h" 头文件打不开。
第一个错误还是因为还是你没把头文件路径改过来,正确的路径是这个"..\controlSUITE\libs\app_libs\digital_power\f2803x_v3.3\asm",先把所有路径都改过了,再编译试试。
我按照你说的已经更改路径了,之前的错误没有了,但是还有三个文件有错误。
第一个是HV_Solar_DC_DC-DPL-ISR.asm文件中构建3的如下错误
Severity and Description Path Resource Location Creation Time Id
[E0009] Missing struct/union member or tag HV_Solar_DC_DC HV_Solar_DC_DC-DPL-ISR.asm line 232 1386336800800 501
第二个是
Severity and Description Path Resource Location Creation Time Id
gmake: *** No rule to make target `C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/development_kits/~SupportFiles/source/SciCommsGui.c', needed by `SciCommsGui.obj'. HV_Solar_DC_DC Unknown 1386336800802 506
请问这怎么解决
你好,注意工程中打叹号的源文件,当你双击这些文件的时候都打不开。这些源文件的路径也是错误的,先根据CCS的错误提示找到这些源文件及库文件的路径,然后删除工程中的带叹号的文件,将正确的源文件通过“add file”添加到工程中。
**** Build of configuration F2803x_FLASH for project HV_Solar_DC_DC ****
C:\ti\ccsv4\utils\gmake\gmake -k all
'Building file: ../HV_Solar_DC_DC-DPL-ISR.asm'
'Invoking: Compiler'
"C:/ti/ccsv4/tools/compiler/c2000/bin/cl2000" --cmd_file="" -v28 -mt -ml -g --define="_DEBUG" --define="FLASH" --define="LARGE_MODEL" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-DPL-ISR.asm" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-Main.c" --include_path="C:/ti/ccsv4/tools/compiler/c2000/include" --include_path="C:/ti/controlSUITE/libs/app_libs/digital_power/f2803x_v3.3/asm" --include_path="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/head" --diag_warning=225 --preproc_with_compile --preproc_dependency="HV_Solar_DC_DC-DPL-ISR.pp" "../HV_Solar_DC_DC-DPL-ISR.asm"
error: option --cmd_file is missing its parameter 'filename'
gmake: *** [HV_Solar_DC_DC-DPL-ISR.obj] Error 1
'Building file: ../HV_Solar_DC_DC-Main.c'
'Invoking: Compiler'
"C:/ti/ccsv4/tools/compiler/c2000/bin/cl2000" --cmd_file="" -v28 -mt -ml -g --define="_DEBUG" --define="FLASH" --define="LARGE_MODEL" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-DPL-ISR.asm" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-Main.c" --include_path="C:/ti/ccsv4/tools/compiler/c2000/include" --include_path="C:/ti/controlSUITE/libs/app_libs/digital_power/f2803x_v3.3/asm" --include_path="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/head" --diag_warning=225 --preproc_with_compile --preproc_dependency="HV_Solar_DC_DC-Main.pp" "../HV_Solar_DC_DC-Main.c"
error: option --cmd_file is missing its parameter 'filename'
gmake: *** [HV_Solar_DC_DC-Main.obj] Error 1
'Building file: ../HV_Solar_DC_DC_DevInit_F2803x.c'
'Invoking: Compiler'
"C:/ti/ccsv4/tools/compiler/c2000/bin/cl2000" --cmd_file="" -v28 -mt -ml -g --define="_DEBUG" --define="FLASH" --define="LARGE_MODEL" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-DPL-ISR.asm" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-Main.c" --include_path="C:/ti/ccsv4/tools/compiler/c2000/include" --include_path="C:/ti/controlSUITE/libs/app_libs/digital_power/f2803x_v3.3/asm" --include_path="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/head" --diag_warning=225 --preproc_with_compile --preproc_dependency="HV_Solar_DC_DC_DevInit_F2803x.pp" "../HV_Solar_DC_DC_DevInit_F2803x.c"
error: option --cmd_file is missing its parameter 'filename'
gmake: *** [HV_Solar_DC_DC_DevInit_F2803x.obj] Error 1
'Building file: ../SolarHv_DCDC-Lin.c'
'Invoking: Compiler'
"C:/ti/ccsv4/tools/compiler/c2000/bin/cl2000" --cmd_file="" -v28 -mt -ml -g --define="_DEBUG" --define="FLASH" --define="LARGE_MODEL" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-DPL-ISR.asm" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-Main.c" --include_path="C:/ti/ccsv4/tools/compiler/c2000/include" --include_path="C:/ti/controlSUITE/libs/app_libs/digital_power/f2803x_v3.3/asm" --include_path="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/head" --diag_warning=225 --preproc_with_compile --preproc_dependency="SolarHv_DCDC-Lin.pp" "../SolarHv_DCDC-Lin.c"
error: option --cmd_file is missing its parameter 'filename'
gmake: *** [SolarHv_DCDC-Lin.obj] Error 1
'Building file: ../delay.c'
'Invoking: Compiler'
"C:/ti/ccsv4/tools/compiler/c2000/bin/cl2000" --cmd_file="" -v28 -mt -ml -g --define="_DEBUG" --define="FLASH" --define="LARGE_MODEL" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-DPL-ISR.asm" --preinclude="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/HV_Solar_DC_DC-Main.c" --include_path="C:/ti/ccsv4/tools/compiler/c2000/include" --include_path="C:/ti/controlSUITE/libs/app_libs/digital_power/f2803x_v3.3/asm" --include_path="C:/ti/controlSUITE/development_kits/HV_SOLAR_DC_DC/Solar_DCDC_MPPT_v1.0/Solar_DCDC_MPPT_v1.0/Solar_DC_DC_F2803x/head" --diag_warning=225 --preproc_with_compile --preproc_dependency="delay.pp" "../delay.c"
error: option --cmd_file is missing its parameter 'filename'
gmake: *** [delay.obj] Error 1
gmake: Target `all' not remade because of errors.
Build complete for project HV_Solar_DC_DC
我删除了带感叹号的文件,从新添加了新文件,编译没有错误,但是console里面是这样,无法生成obj文件。
我已经按照你的工程把我缺少的文件添加进去了,但是编译还是报错
error: option --cmd_file is missing its parameter 'filename'
gmake: *** [SolarHv_DCDC-Lin.obj] Error 1
gmake: Target `all' not remade because of errors.
error: option --cmd_file is missing its parameter 'filename'
gmake: *** [PWM_ComplPairDB_Cnf.obj] Error 1
error: option --cmd_file is missing its parameter 'filename'
gmake: *** [PWM_1ch_UpDwnCnt_Cnf.obj] Error 1
后来我发现我的IQmath文件打开是这样的
是不是这个函数库文件的问题导致的?我也是从controlsuite里面找到的这个文件。
你好,SciCommsGui.c已放在附件中,请查收,其路径为:controlSUITE\development_kits\~SupportFiles\source
//============================================================================ //============================================================================ // // FILE: SciCommsGui.c // // TITLE: GP Comms kernel as an interface to external GUI // // Version: 22 April 2009 - Release 1.2 - Internal Release (BRL) //============================================================================ //============================================================================ #include "PeripheralHeaderIncludes.h" #define PktSize 6 #define CmdNumber 16 #define MAX_CMD_NUM 8 // Function prototypes for Command RECEIVE State machine // ------------------------------------------------------------ void GetCmdByte(void); void EchoCmdByte(void); void GetSizeByte(void); void EchoSizeByte(void); void GetDataByte(void); void EchoDataByte(void); void PackWord(void); void PackArray(void); void CmdInterpreter(void); // Function prototypes for Command Interpreter and dispatcher // ------------------------------------------------------------ void LifePulseTsk(void); // 0 void TextSet(void); // 1 void ButtonSet(void); // 2 void SliderSet(void); // 3 void VariableGet(void); // 4 void ArrayGet(void); // 5 void DataGet(void); // 6 void SpareTsk07(void); // 7 void SpareTsk08(void); // 8 void SendData(void); // Variable declarations void (*RcvTaskPointer)(void); // State pointer for Command Packet Receive void (*CmdDispatcher[CmdNumber])(void); // Array of pointers to Function (i.e. tasks) extern int *varSetTxtList[]; extern int *varSetBtnList[]; extern int *varSetSldrList[]; extern int *varGetList[]; extern int *arrayGetList[]; extern int *dataGetList[]; extern int16 CommsOKflg, SerialCommsTimer; Uint16 LowByteFlag, SendTaskPtr; Uint16 RxChar, RxWord; Uint16 CmdPacket[PktSize]; Uint16 TaskDoneFlag, NumWords, wordsLeftToGet; Uint16 dataOut; int16 *memDataPtr; int16 RcvTskPtrShdw; // for debug int16 delayer; int16 MemGetPtr; Uint32 MemGetAddress; int16 MemGetAmount; Uint32 Temp; void SCIA_Init() { // Note: Assumes Clocks to SCIA are turned on in InitSysCtrl() // Note: Assumes GPIO pins for SCIA are configured to Primary function int j = 0; SciaRegs.SCICCR.all =0x0007; // 1 stop bit, No loopback // No parity,8 char bits, // async mode, idle-line protocol SciaRegs.SCICTL1.all =0x0003; // enable TX, RX, internal SCICLK, // Disable RX ERR, SLEEP, TXWAKE SciaRegs.SCICTL2.all =0x0003; SciaRegs.SCICTL2.bit.TXINTENA =0; SciaRegs.SCICTL2.bit.RXBKINTENA =0; SciaRegs.SCIHBAUD =0x0000; #if DSP2833x_DEVICE_H //SciaRegs.SCILBAUD = 0x0079; // 79h = 38.4Kbaud @ LSPCLK = 150/4 MHz SciaRegs.SCILBAUD = 0x0050; // 50h = 57.6Kbaud @ LSPCLK = 150 /4 MHz //SciaRegs.SCILBAUD = 0x0028; // 28h = 115.2Kbaud @ LSPCLK = 150/4 MHz #elif DSP2802x_DEVICE_H || DSP2803x_DEVICE_H //SciaRegs.SCILBAUD = 0x0031; // 31h = 38.4Kbaud @ LSPCLK = 60/4 MHz SciaRegs.SCILBAUD = 0x0020; // 20h = 57.6Kbaud @ LSPCLK = 60/4 MHz //SciaRegs.SCILBAUD = 0x0010; // 10h = 115.2Kbaud @ LSPCLK = 60/4 MHz #else // F280x or F2804x //SciaRegs.SCILBAUD =0x00A2; // A2h = 19.2Kbaud @ LSPCLK = 100/4 MHz //SciaRegs.SCILBAUD =0x0050; // 50h = 38.4Kbaud @ LSPCLK = 100/4 MHz SciaRegs.SCILBAUD = 0x0035; // 35h = 57.6Kbaud @ LSPCLK = 100/4 MHz //SciaRegs.SCILBAUD = 0x001B; // 1Bh = 115.2Kbaud @ LSPCLK = 100/4 MHz #endif SciaRegs.SCICTL1.all =0x0023; // Relinquish SCI from Reset //SciaRegs.SCIFFTX.all=0xE040; // ENable FIFO enhancement SciaRegs.SCIFFTX.all=0x8040; // DISable FIFO enhancement SciaRegs.SCIFFRX.all=0x204f; SciaRegs.SCIFFCT.all=0x0; SciaRegs.SCIPRI.bit.SOFT=0x0; SciaRegs.SCIPRI.bit.FREE=0x1; RcvTaskPointer = &GetCmdByte; // Initialize the CmdPacket Rcv Handler state machine ptr RcvTskPtrShdw = 1; // DEBUG SendTaskPtr = 0; // Init to 1st state LowByteFlag = 1; // Start with LSB during Byte-to-Word packing dataOut = 0; *memDataPtr = 0; RcvTskPtrShdw = 0; // for debug delayer = 0; MemGetPtr = 0; MemGetAddress = 0x00000000; MemGetAmount = 0; // clear Command Packet for (j=0; j<PktSize; j++) { CmdPacket[j] = 0x0; } j=0; // init all dispatch Tasks CmdDispatcher[0] = LifePulseTsk; CmdDispatcher[1] = TextSet; CmdDispatcher[2] = ButtonSet; CmdDispatcher[3] = SliderSet; CmdDispatcher[4] = VariableGet; CmdDispatcher[5] = ArrayGet; CmdDispatcher[6] = DataGet; CmdDispatcher[7] = SpareTsk07; CmdDispatcher[8] = SpareTsk08; } //=========================================================== // Host Command RECEIVE and DISPATCH State Machine //=========================================================== //======== SM Entry Point ================= void SerialHostComms() { (*RcvTaskPointer)(); // Call routine pointed to by state pointer } //========================================= void GetCmdByte(void) // Task 1 { if (SciaRegs.SCIRXST.bit.RXRDY == 1) // check if a char has been received { RxChar = SciaRegs.SCIRXBUF.all; RcvTaskPointer = &EchoCmdByte; // point to next state SerialCommsTimer = 0; //RcvTskPtrShdw = 2; // DEBUG EchoCmdByte(); } else if (SciaRegs.SCIRXST.bit.BRKDT == 1 || SerialCommsTimer > 2500) //~2 s timeout { // If break detected or serialport times out, reset SCI //--- Needed by some serialports when code is run with an emulator SciaRegs.SCICCR.all =0x0007; // 1 stop bit, No loopback // No parity,8 char bits, // async mode, idle-line protocol SciaRegs.SCICTL1.all =0x0003; // enable TX, RX, internal SCICLK, // Disable RX ERR, SLEEP, TXWAKE SciaRegs.SCICTL2.all =0x0000; SciaRegs.SCICTL1.all =0x0023; // Relinquish SCI from Reset asm(" RPT#8 || NOP"); //--- SendTaskPtr = 0; // Init to 1st state SerialCommsTimer = 0; CommsOKflg = 0; RcvTaskPointer = &GetCmdByte; // go back and wait for new CMD } } void EchoCmdByte(void) // Task 2 { if(SciaRegs.SCICTL2.bit.TXRDY == 1) // is TXBUF empty ?, i.e. TXRDY = 1 { SciaRegs.SCITXBUF=RxChar; // if yes, echo back the received char CmdPacket[0] = RxChar; RcvTaskPointer = &GetSizeByte; //RcvTskPtrShdw = 3; // DEBUG //RcvTaskPointer = &GetCmdByte; // Un-comment for simple echo test SerialCommsTimer = 0; // Reset Time-out timer } } void GetSizeByte(void) // Task 3 { if (SciaRegs.SCIRXST.bit.RXRDY == 1) // check if a char has been received { RxChar = SciaRegs.SCIRXBUF.all; RcvTaskPointer = &EchoSizeByte; // point to next state //RcvTskPtrShdw = 4; // DEBUG EchoSizeByte(); } else if (SerialCommsTimer > 1000) // 1000*1mS = 1.0 sec timeout { CommsOKflg = 0; RcvTaskPointer = &GetCmdByte; // Abort, go back wait for new CMD SerialCommsTimer = 0; } } void EchoSizeByte(void) // Task 4 { if(SciaRegs.SCICTL2.bit.TXRDY == 1) // is TXBUF empty ?, i.e. TXRDY = 1 { SciaRegs.SCITXBUF=RxChar; // if yes, echo back the received char CmdPacket[1] = RxChar; RcvTaskPointer = &GetDataByte; //RcvTskPtrShdw = 5; // DEBUG //RcvTaskPointer = &GetCmdByte; // Un-comment for Test SerialCommsTimer = 0; // Reset Time-out timer } } void GetDataByte(void) // Task 5 { if (SciaRegs.SCIRXST.bit.RXRDY == 1) // check if a char has been received { RxChar = SciaRegs.SCIRXBUF.all; RcvTaskPointer = &EchoDataByte; // point to next state //RcvTskPtrShdw = 6; // DEBUG EchoDataByte(); } else if (SerialCommsTimer > 500) // 1000*1mS = 1 sec timeout { CommsOKflg = 0; RcvTaskPointer = &GetCmdByte; // Abort, go back wait for new CMD SerialCommsTimer = 0; } } void EchoDataByte(void) // Task 6 { if(SciaRegs.SCICTL2.bit.TXRDY == 1) // is TXBUF empty ?, i.e. TXRDY = 1 { SciaRegs.SCITXBUF=RxChar; // if yes, echo back the received char RcvTaskPointer = &PackWord; //RcvTskPtrShdw = 7; // DEBUG } } void PackWord(void) // expects LSB first then MSB // Task 7 { if(LowByteFlag == 1) { RxWord = RxChar; LowByteFlag = 0; RcvTaskPointer = &GetDataByte; //RcvTskPtrShdw = 5; // DEBUG GetDataByte(); } else { RxWord = RxWord | (RxChar<<8); LowByteFlag = 1; CmdPacket[2] = RxWord; // store data in packet RcvTaskPointer = &CmdInterpreter; //RcvTskPtrShdw = 8; // DEBUG TaskDoneFlag = 0; // indicate new task underway } } void CmdInterpreter(void) // Task 8 { if (TaskDoneFlag == 0) { (*CmdDispatcher[ CmdPacket[0] ] )(); // dispatch Task } // Incase Task never finishes if (SerialCommsTimer > 2500) // 2500*1mS = 2.5 sec timeout { CommsOKflg = 0; RcvTaskPointer = &GetCmdByte; // Abort, go back wait for new CMD SerialCommsTimer = 0; } if (TaskDoneFlag == 1) { RcvTaskPointer = &GetCmdByte; //RcvTskPtrShdw = 1; // DEBUG } } //=========================================================== // Slave Tasks commanded by Host //=========================================================== void LifePulseTsk(void) // CmdPacket[0] = 0 { if (CmdPacket[2]==0x0000 && CmdPacket[1]==0x00) //LED2-ON { #if DSP2802x_DEVICE GpioDataRegs.GPASET.bit.GPIO12=1; #else GpioDataRegs.GPASET.bit.GPIO31=1; #endif } if (CmdPacket[2]==0x0001 && CmdPacket[1]==0x00) //LED2-OFF { #if DSP2802x_DEVICE GpioDataRegs.GPACLEAR.bit.GPIO12=1; #else GpioDataRegs.GPACLEAR.bit.GPIO31=1; #endif } if (CmdPacket[2]==0x0002 && CmdPacket[1]==0x00) //LED2-Toggle { #if DSP2802x_DEVICE GpioDataRegs.GPATOGGLE.bit.GPIO12=1; #else GpioDataRegs.GPATOGGLE.bit.GPIO31=1; #endif } CommsOKflg = 1; SerialCommsTimer = 0; TaskDoneFlag = 1; } //----------------------------------------------------------- void TextSet(void) // CmdPacket[0] = 1 { *varSetTxtList[CmdPacket[1]] = CmdPacket[2]; TaskDoneFlag = 1; // indicate Task execution is complete } //----------------------------------------------------------- void ButtonSet(void) // CmdPacket[0] = 2 { *varSetBtnList[CmdPacket[1]] = CmdPacket[2]; TaskDoneFlag = 1; // indicate Task execution is complete } //----------------------------------------------------------- void SliderSet(void) // CmdPacket[0] = 3 { *varSetSldrList[CmdPacket[1]] = CmdPacket[2]; TaskDoneFlag = 1; // indicate Task execution is complete } //----------------------------------------------------------- void VariableGet(void) // CmdPacket[0] = 4 { SendData(); } //----------------------------------------------------------- //Send a Uint16 array one element at a time void ArrayGet(void) // CmdPacket[0] = 5 { SendData(); } //----------------------------------------------------------- void DataGet(void) // CmdPacket[0] = 6 { switch(MemGetPtr) { case 0: MemGetAddress = CmdPacket[2]; MemGetPtr = 1; wordsLeftToGet = 1; SendTaskPtr = 1; TaskDoneFlag = 1; break; case 1: Temp = CmdPacket[2]; MemGetAddress = MemGetAddress + (Temp<<16); memDataPtr = (int16*)MemGetAddress; dataOut = *memDataPtr; SendData(); if(TaskDoneFlag == 1) { MemGetPtr = 0; } break; } //TaskDoneFlag = 1; // indicate Task execution is complete } //----------------------------------------------------------- void SpareTsk07(void) // CmdPacket[0] = 7 { TaskDoneFlag = 1; // indicate Task execution is complete } //----------------------------------------------------------- void SpareTsk08(void) // CmdPacket[0] = 8 { TaskDoneFlag = 1; // indicate Task execution is complete } //----------------------------------------------------------- void SendData(void) { switch(SendTaskPtr) { case 0: //initialization if(CmdPacket[0] == 0x04) { memDataPtr = (int16 *) varGetList[CmdPacket[1]]; } else { memDataPtr = (int16 *) arrayGetList[CmdPacket[1]]; } dataOut = *memDataPtr; wordsLeftToGet = CmdPacket[2]; //Note that case 0 rolls into case 1 (no break) case 1: //send LSB if(wordsLeftToGet > 0) { if (SciaRegs.SCICTL2.bit.TXRDY == 1) { SciaRegs.SCITXBUF = dataOut & 0x000000FF; SendTaskPtr = 2; } else { TaskDoneFlag = TaskDoneFlag; break; } } else { SendTaskPtr = 0; TaskDoneFlag = 1; break; } case 2: //send MSB if (SciaRegs.SCICTL2.bit.TXRDY == 1) { SciaRegs.SCITXBUF = (dataOut>>8 & 0x000000FF); memDataPtr = memDataPtr + 1; dataOut = *memDataPtr; wordsLeftToGet = wordsLeftToGet - 1; SendTaskPtr = 1; } break; } }
终于编译通过了,非常感谢Hank zhao 的耐心解答。最后总结起来之前的问题是因为我的头文件路径好多没有添加正确,还有就是这个SciCommsGui.c文件我添加的是DC/AC的,所以一直报错。再次感谢Hank zhao。
您好,我正在学习ti的HV_Solar_DC_DC开发板,我从controlsuit中给的这个实例导入到ccs5.3,出现了三个错误您能帮我解决看一下吗?
谢谢!
老师你好,现在正在准备学习太阳能微型逆变器的开发板,由于先前购买设备的师兄离开了,所以一些资料不是完整的了。所以我问下在哪能够下载这个套件的完整资料和相关程序及软件。谢谢
请在以下地址下载并安装controlsuite:http://www.ti.com/tool/CONTROLSUITE?keyMatch=controlsuite&tisearch=Search-EN-Everything ,太阳能微逆套件的资料和例程可以在安装后的以下路径找到:C:\ti\controlSUITE\development_kits\TMDSSOLARUINVKIT_v100
老师你好,头文件路径已经添加好,现在问题是工程中带有感叹号的源文件找不到,例如HV_Solar_DC_DC工程中的ADC_SOC_Cnf.c,双击后提示Error retrieving content description for resource '/HV_Solar_DC_DC/ADC_SOC_Cnf.c'。但是我没搜索到文件ADC_SOC_Cnf.c,希望老师指点一下。谢谢!