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.

"RD-195 DC Arc Detection SW Example" can not be compiled

Part Number: TMS320F28033

Tool/software: Code Composer Studio

Hi All,

We have buy the development kits of SM73201-ARC-EV from the TI's disty,we also download the software of RD-195 DC Arc Detection SW

Example from TI's Official Website,we import the 2803x_Arc_Detection_Standalone in the CCS but the 28033_64 Pin Release don't be compiled,

the screenshot as the attachment(our condegen tools is V6.2.4).

  • Hi John,

    It looks like the .text section wont fit in the alloted memory regions. Did you modify the code or make any changes to the project settings?

    Im looking at the pre-built map file that comes with the distribution C:\ti\2803x Arc Detection-1.00.01.00\2803x_Arc_Detection_Standalone\v1_00_01_00\ccs\28033_64 Pin Release\28033_Arc_Detection.map

    .text takes up 0x3E8B words, so if you are using the same CGT (6.2.4) and project settings it should result in the same .text size.
  • Hi Regards,

    I don't know what your mean of the above,can you help to show the screenshot in the attachement,thanks?
  • So if you open file C:\ti\2803x Arc Detection-1.00.01.00\2803x_Arc_Detection_Standalone\v1_00_01_00\ccs\28033_64 Pin Release\28033_Arc_Detection.map you will see the following for the .text sections

    .text.1    0    003f00a0    00000eb8     
                      003f00a0    00000107     rts2800_ml.lib : ll_div.obj (.text)
                      003f01a7    000000e2     IEC60730_F28033_STL.lib : STL_interrupt_test.obj (.text)
                      003f0289    000000d8     rts2800_ml.lib : strtol.obj (.text)
                      003f0361    000000b5                    : strtoul.obj (.text)
                      003f0416    000000aa                    : log.obj (.text)
                      003f04c0    0000009c                    : fd_add.obj (.text)
                      003f055c    0000008b                    : fd_div.obj (.text)
                      003f05e7    00000086     IEC60730_F28033_STL.lib : STL_cpu_test.obj (.text)
                      003f066d    00000083     rts2800_ml.lib : fd_mpy.obj (.text)
                      003f06f0    00000083                    : fs_div.obj (.text)
                      003f0773    00000080     Arc_Detection-F280xx_EEPROM.obj (.text)
                      003f07f3    00000078     rts2800_ml.lib : fs_add.obj (.text)
                      003f086b    0000006e     IEC60730_F28033_STL.lib : STL_type0_sci_test.obj (.text)
                      003f08d9    0000006b     rts2800_ml.lib : sscanf.obj (.text)
                      003f0944    0000005a                    : fs_mpy.obj (.text)
                      003f099e    00000050     IEC60730_F28033_STL.lib : STL_watchdog_test.obj (.text)
                      003f09ee    00000049     Arc_Detection-STL_test_report_timer.obj (.text)
                      003f0a37    00000045     Arc_Detection-STL.obj (.text)
                      003f0a7c    00000044     rts2800_ml.lib : boot.obj (.text)
                      003f0ac0    00000031                    : atoi.obj (.text)
                      003f0af1    0000002f     Arc_Detection-STKOV.obj (.text)
                      003f0b20    0000002f     rts2800_ml.lib : sprintf.obj (.text)
                      003f0b4f    0000002a                    : fd_cmp.obj (.text)
                      003f0b79    0000002a                    : l_div.obj (.text)
                      003f0ba3    00000029                    : fs_tol.obj (.text)
                      003f0bcc    00000028     IEC60730_F28033_STL.lib : STL_pc_test.obj (.text)
                      003f0bf4    00000025     rts2800_ml.lib : fs_toi.obj (.text)
                      003f0c19    00000022                    : i_div.obj (.text)
                      003f0c3b    00000022                    : ll_tofs.obj (.text)
                      003f0c5d    00000021                    : fd_toi.obj (.text)
                      003f0c7e    00000021                    : fs_toul.obj (.text)
                      003f0c9f    00000021                    : memcpy_ff.obj (.text)
                      003f0cc0    00000020     C28x_FixedPoint_Lib.lib : CFFT32_brev.obj (.text)
                      003f0ce0    0000001f     rts2800_ml.lib : fd_tol.obj (.text)
                      003f0cff    0000001e                    : ll_cmp.obj (.text)
                      003f0d1d    0000001d     IEC60730_F28033_STL.lib : STL_clock_fail_detect.obj (.text)
                      003f0d3a    0000001d     rts2800_ml.lib : fs_tou.obj (.text)
                      003f0d57    0000001c     IEC60730_F28033_STL.lib : STL_watchdog_test.obj (.text:retain)
                      003f0d73    0000001c     rts2800_ml.lib : fs_tofd.obj (.text)
                      003f0d8f    0000001c                    : l_tofd.obj (.text)
                      003f0dab    0000001a                    : i_tofs.obj (.text)
                      003f0dc5    00000019                    : args_main.obj (.text)
                      003f0dde    00000019                    : exit.obj (.text)
                      003f0df7    00000019                    : prolog.obj (.text)
                      003f0e10    00000018                    : ll_aox.obj (.text)
                      003f0e28    00000017                    : fs_cmp.obj (.text)
                      003f0e3f    00000017                    : strncmp.obj (.text)
                      003f0e56    00000017                    : strstr.obj (.text)
                      003f0e6d    00000016     Arc_Detection-STL_test_report_timer.obj (.text:retain)
                      003f0e83    00000014     rts2800_ml.lib : frexp.obj (.text)
                      003f0e97    00000014                    : ll_mpy.obj (.text)
                      003f0eab    00000013                    : ul_tofs.obj (.text)
                      003f0ebe    0000000e     C28x_FixedPoint_Lib.lib : FFT32_izero.obj (.text)
                      003f0ecc    0000000e     rts2800_ml.lib : fd_sub.obj (.text)
                      003f0eda    0000000d                    : memccpy.obj (.text)
                      003f0ee7    0000000d                    : memset.obj (.text)
                      003f0ef4    0000000c                    : epilog.obj (.text)
                      003f0f00    0000000b                    : strchr.obj (.text)
                      003f0f0b    0000000b                    : strrchr.obj (.text)
                      003f0f16    0000000b                    : u_div.obj (.text)
                      003f0f21    00000009                    : _lock.obj (.text)
                      003f0f2a    00000009                    : fd_neg.obj (.text)
                      003f0f33    00000008     DSP2803x_CodeStartBranch.obj (.text)
                      003f0f3b    00000008     rts2800_ml.lib : strlen.obj (.text)
                      003f0f43    00000006     Arc_Detection-STL.obj (.text:retain)
                      003f0f49    00000005     Arc_Detection-DevInit_F2803x.obj (.text:retain)
                      003f0f4e    00000005     rts2800_ml.lib : fs_neg.obj (.text)
                      003f0f53    00000005                    : strcpy.obj (.text)
    ...
    
    .text.2    0    003f1024    00000fda     
                      003f1024    0000059d     rts2800_ml.lib : _scanfi.obj (.text)
                      003f15c1    000001e7     Arc_Detection-DevInit_F2803x.obj (.text)
                      003f17a8    00000151     rts2800_ml.lib : strtoll.obj (.text)
                      003f18f9    0000014d                    : strtod.obj (.text)
                      003f1a46    00000129     IEC60730_F28033_STL.lib : STL_utility.obj (.text)
                      003f1b6f    00000001     --HOLE-- [fill = 0]
                      003f1b70    00000125                             : STL_crc_test.obj (.text)
                      003f1c95    00000121     rts2800_ml.lib : strtoull.obj (.text)
                      003f1db6    00000114     Arc_Detection-sciFIFOCOMM.obj (.text)
                      003f1eca    00000108     C28x_FixedPoint_Lib.lib : FFT32_calc.obj (.text)
                      003f1fd2    0000002c     rts2800_ml.lib : ltoa.obj (.text)
    
    .text.3    0    003f2000    00001000     
                      003f2000    000006e4     Arc_Detection-Main.obj (.text)
                      003f26e4    00000644     IEC60730_F28033_STL.lib : STL_isr.obj (.text:retain)
                      003f2d28    000002c7     Arc_Detection-STL_test_report.obj (.text)
                      003f2fef    00000011     Arc_Detection-spiADC.obj (.text)
    
    .text.4    0    003f3000    00000aaa     
                      003f3000    00000924     rts2800_ml.lib : _printfi.obj (.text)
                      003f3924    0000015a                    : strtold.obj (.text)
                      003f3a7e    0000002c     IEC60730_F28033_STL.lib : STL_part_id_test.obj (.text)
    
    ...
    .text.5    0    003f3ab0    0000054f     
                      003f3ab0    0000047a     C28x_ArcDetect_Lib.lib : ArcDetect.obj (.text)
                      003f3f2a    000000d5     IEC60730_F28033_STL.lib : STL_march_test.obj (.text)

    Now if you add up the lengths of each of those subsections its adds up to 0x3e8b(eb8 + fda + 1000 + aaa + 54f). But it looks like when you build the code it is generating a .text section of size 0x43a0. Now in the linker command file

    .text               :>> FLASHE_1 | FLASHE_2 | FLASHF | FLASHG | FLASHH,   PAGE = 0

    .text is assigned to these sections - bascally it will be broken up into 5 chunks and placed into each of these sections. But these memory sections add up to a total of 0x3FFC words. That is why you are getting the error your .text section wont fit. That is why i was asking if you had changed any project properties after importing the project into CCS - or if you get any error or warning messages when you import the project into CCS.

    There is a workaround.It looks like FLASHA might have the additional space required (0x5d9 from the .map file i mentioned above) to fit the code so you could change the .text allocation in the linker command file as follows

    .text               :>> FLASHE_1 | FLASHE_2 | FLASHF | FLASHG | FLASHH | FLASHA,   PAGE = 0

    So now the linker will split it into 6 chunks and it should be able to fit .text

  • Hi Vishal,

    Thanks a lot for your support,we solved this issues according to your profession comments.