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.

CIO error

when my program running on a ezdsp5535 on css5.5 hits a printf function I get the following error message.

 

Invalid CIO command (10) in the CIO buffer at address (0x238) was not recognized. Please check the device and program memory maps

if I use puts the program continues on  I have increase the memory names in the .cmd file to look as follows

.text       >> DARAM0 | DARAM1 | DARAM2 | DARAM3 | DARAM4 | DARAM5 | DARAM6 | DARAM7

Do you know why this is happening

  • "Invalid CIO command" means that the buffer used to communicate C I/O between the debugger and the RTS library has become corrupted.  There are many ways this buffer could become corrupted, so I cannot suggest a fix.  To analyze this problem, we would need a complete test case that reproduces the problem.

  • what code would you need to duplicate this problem if I swap out the generic 5535.cmd file with the sample LED lnkx.cmd it works fine with the LED2 program that I have written from scratch.  The error only occurrs with the 5535.cmd file in the project  should i send you the 5535.cmd for eval would this help if not what file would be of assistance.

     

    thanks

    JEFF

  • Please send the executable object file and the linker map file (linker option --map_file=file.txt).

    Also, what are you using to load and run the executable?  Are you using the standalone simulator load55?  Are you using the CCS debugger?  What version?  Are you using the simulator or hardware?

  • /******************************************************************************/
    /* LNKX.CMD - COMMAND FILE FOR LINKING C PROGRAMS IN LARGE/HUGE MEMORY MODEL  */
    /*                                                                            */
    /* Usage:                                                                     */
    /*  cl55 <src files> -z -o<out file> -m<map file> lnkx.cmd -l<RTS library>   */
    /*                                                                            */
    /* Description: This file is a sample command file that can be used for       */
    /*              linking programs built with the C Compiler.  Use it as a      */
    /*              guideline; you  may want to change the allocation scheme      */
    /*              according to the size of your program and the memory layout   */
    /*              of your target system.                                        */
    /*                                                                            */
    /*   Notes: (1) You must specify the directory in which <RTS library> is      */
    /*              located.  Either add a "-i<directory>" line to this file      */
    /*              file, or use the system environment variable C55X_C_DIR to    */
    /*              specify a search path for the libraries.                      */
    /*                                                                            */
    /******************************************************************************/
    
    -stack    0x2000      /* Primary stack size   */
    -sysstack 0x1000      /* Secondary stack size */
    -heap     0x2000      /* Heap area size       */
    
    -c                    /* Use C linking conventions: auto-init vars at runtime */
    -u _Reset             /* Force load of reset interrupt handler                */
    
    /* SPECIFY THE SYSTEM MEMORY MAP */
    
    MEMORY
    {
     PAGE 0:  /* ---- Unified Program/Data Address Space ---- */
    
      MMR    (RWIX): origin = 0x000000, length = 0x0000c0  /* MMRs */
      DARAM0 (RWIX): origin = 0x0000c0, length = 0x00ff40  /*  64KB - MMRs */
      SARAM0 (RWIX): origin = 0x010000, length = 0x010000  /*  64KB */
      SARAM1 (RWIX): origin = 0x020000, length = 0x020000  /* 128KB */
      SARAM2 (RWIX): origin = 0x040000, length = 0x00FE00  /*  64KB */
      VECS   (RWIX): origin = 0x04FE00, length = 0x000200  /*  512B */
      PDROM   (RIX): origin = 0xff8000, length = 0x008000  /*  32KB */
    
     PAGE 2:  /* -------- 64K-word I/O Address Space -------- */
    
      IOPORT (RWI) : origin = 0x000000, length = 0x020000
    }
     
    /* SPECIFY THE SECTIONS ALLOCATION INTO MEMORY */
    
    SECTIONS
    {
       .text     >> SARAM1|SARAM2|SARAM0  /* Code                        */
    
       /* Both stacks must be on same physical memory page               */
       .stack    >  DARAM0                /* Primary system stack        */
       .sysstack >  DARAM0                /* Secondary system stack      */
    
       .data     >> DARAM0|SARAM0|SARAM1  /* Initialized vars            */
       .bss      >> DARAM0|SARAM0|SARAM1  /* Global & static vars        */
       .const    >> DARAM0|SARAM0|SARAM1  /* Constant data               */
       .sysmem   >  DARAM0|SARAM0|SARAM1  /* Dynamic memory (malloc)     */
       .switch   >  SARAM2                /* Switch statement tables     */
       .cinit    >  SARAM2                /* Auto-initialization tables  */
       .pinit    >  SARAM2                /* Initialization fn tables    */
       .cio      >  SARAM2                /* C I/O buffers               */
       .args     >  SARAM2                /* Arguments to main()         */
    
        vectors  >  VECS                  /* Interrupt vectors           */
    
       .ioport   >  IOPORT PAGE 2         /* Global & static ioport vars */
    }
    
    /****************************************************************************/
    /*  C5535.cmd                                                               */
    /*  Copyright (c) 2012  Texas Instruments Incorporated                      */
    /*  Author: Rafael de Souza                                                 */
    /*                                                                          */
    /*    Description: This file is a sample linker command file that can be    */
    /*                 used for linking programs built with the C compiler and  */
    /*                 running the resulting .out file on a C5535.              */
    /*                 Use it as a guideline.  You will want to                 */
    /*                 change the memory layout to match your specific          */
    /*                 target system.  You may want to change the allocation    */
    /*                 scheme according to the size of your program.            */
    /*                                                                          */
    /****************************************************************************/
    
    MEMORY
    {
        MMR:     o = 0x000000  l = 0x0000c0  /* 192B Memory Mapped Registers */
        DARAM0:  o = 0x0000C0  l = 0x001F40  /* 8kB Dual Access RAM 0 */
        DARAM1:  o = 0x002000  l = 0x002000  /* 8kB Dual Access RAM 1 */
        DARAM2:  o = 0x004000  l = 0x002000  /* 8kB Dual Access RAM 2 */
        DARAM3:  o = 0x006000  l = 0x002000  /* 8kB Dual Access RAM 3 */  
        DARAM4:  o = 0x008000  l = 0x002000  /* 8kB Dual Access RAM 4 */
        DARAM5:  o = 0x00A000  l = 0x002000  /* 8kB Dual Access RAM 5 */
        DARAM6:  o = 0x00C000  l = 0x002000  /* 8kB Dual Access RAM 6 */
        DARAM7:  o = 0x00E000  l = 0x002000  /* 8kB Dual Access RAM 7 */
      
        SARAM0:   o = 0x010000  l = 0x002000  /* 8kB Single Access RAM 0 */
        SARAM1:   o = 0x012000  l = 0x002000  /* 8kB Single Access RAM 1 */
        SARAM2:   o = 0x014000  l = 0x002000  /* 8kB Single Access RAM 2 */
        SARAM3:   o = 0x016000  l = 0x002000  /* 8kB Single Access RAM 3 */  
        SARAM4:   o = 0x018000  l = 0x002000  /* 8kB Single Access RAM 4 */
        SARAM5:   o = 0x01A000  l = 0x002000  /* 8kB Single Access RAM 5 */
        SARAM6:   o = 0x01C000  l = 0x002000  /* 8kB Single Access RAM 6 */
        SARAM7:   o = 0x01E000  l = 0x002000  /* 8kB Single Access RAM 7 */
        SARAM8:   o = 0x020000  l = 0x002000  /* 8kB Single Access RAM 8 */
        SARAM9:   o = 0x022000  l = 0x002000  /* 8kB Single Access RAM 9 */
        SARAM10:  o = 0x024000  l = 0x002000  /* 8kB Single Access RAM 10 */
        SARAM11:  o = 0x026000  l = 0x002000  /* 8kB Single Access RAM 11 */  
        SARAM12:  o = 0x028000  l = 0x002000  /* 8kB Single Access RAM 12 */
        SARAM13:  o = 0x02A000  l = 0x002000  /* 8kB Single Access RAM 13 */
        SARAM14:  o = 0x02C000  l = 0x002000  /* 8kB Single Access RAM 14 */
        SARAM15:  o = 0x02E000  l = 0x002000  /* 8kB Single Access RAM 15 */
        SARAM16:  o = 0x030000  l = 0x002000  /* 8kB Single Access RAM 16 */
        SARAM17:  o = 0x032000  l = 0x002000  /* 8kB Single Access RAM 17 */
        SARAM18:  o = 0x034000  l = 0x002000  /* 8kB Single Access RAM 18 */
        SARAM19:  o = 0x036000  l = 0x002000  /* 8kB Single Access RAM 19 */  
        SARAM20:  o = 0x038000  l = 0x002000  /* 8kB Single Access RAM 20 */
        SARAM21:  o = 0x03A000  l = 0x002000  /* 8kB Single Access RAM 21 */
        SARAM22:  o = 0x03C000  l = 0x002000  /* 8kB Single Access RAM 22 */
        SARAM23:  o = 0x03E000  l = 0x002000  /* 8kB Single Access RAM 23 */
        SARAM24:  o = 0x040000  l = 0x002000  /* 8kB Single Access RAM 24 */
        SARAM25:  o = 0x042000  l = 0x002000  /* 8kB Single Access RAM 25 */
        SARAM26:  o = 0x044000  l = 0x002000  /* 8kB Single Access RAM 26 */
        SARAM27:  o = 0x046000  l = 0x002000  /* 8kB Single Access RAM 27 */  
        SARAM28:  o = 0x048000  l = 0x002000  /* 8kB Single Access RAM 28 */
        SARAM29:  o = 0x04A000  l = 0x002000  /* 8kB Single Access RAM 29 */
        SARAM30:  o = 0x04C000  l = 0x002000  /* 8kB Single Access RAM 30 */
        SARAM31:  o = 0x04E000  l = 0x002000  /* 8kB Single Access RAM 31 */
                        
        ROM:     o = 0xFE0000  l = 0x01FF00  /* 128kB ROM (MPNMC=0) or CS5 (MPNMC=1) */
        VECS:    o = 0xFFFF00  l = 0x000100  /* reset vector */
    }                   
                        
    SECTIONS            
    {                   
        vectors (NOLOAD) >  VECS  /* If MPNMC = 1, remove the NOLOAD directive */
        .cinit         >  DARAM0
        .text         >>  DARAM0 | DARAM1 | DARAM2 | DARAM3 | DARAM4 | DARAM5 | DARAM6 | DARAM7
        .stack         >  DARAM0
        .sysstack      >  DARAM0
        .sysmem        >  DARAM4
        .data          >  DARAM4
        .cio           >  DARAM0
        .bss           >  DARAM5
        .const         >  DARAM0
    }
    
    ******************************************************************************
                  TMS320C55x Linker PC v4.4.1                      
    ******************************************************************************
    >> Linked Thu Nov 28 21:32:09 2013
    
    OUTPUT FILE NAME:   <LED2.out>
    ENTRY POINT SYMBOL: "_c_int00"  address: 00005525
    
    
    MEMORY CONFIGURATION
    
             name            origin    length      used     unused   attr    fill
                            (bytes)   (bytes)    (bytes)   (bytes)
    ----------------------  --------  ---------  --------  --------  ----  --------
      MMR                   00000000   000000c0  00000000  000000c0  RWIX
      DARAM0                000000c0   00001f40  00001f3d  00000003  RWIX
      DARAM1                00002000   00002000  00001fff  00000001  RWIX
      DARAM2                00004000   00002000  00001645  000009bb  RWIX
      DARAM3                00006000   00002000  00000000  00002000  RWIX
      DARAM4                00008000   00002000  00000400  00001c00  RWIX
      DARAM5                0000a000   00002000  000004dc  00001b24  RWIX
      DARAM6                0000c000   00002000  00000000  00002000  RWIX
      DARAM7                0000e000   00002000  00000000  00002000  RWIX
      SARAM0                00010000   00002000  00000000  00002000  RWIX
      SARAM1                00012000   00002000  00000000  00002000  RWIX
      SARAM2                00014000   00002000  00000000  00002000  RWIX
      SARAM3                00016000   00002000  00000000  00002000  RWIX
      SARAM4                00018000   00002000  00000000  00002000  RWIX
      SARAM5                0001a000   00002000  00000000  00002000  RWIX
      SARAM6                0001c000   00002000  00000000  00002000  RWIX
      SARAM7                0001e000   00002000  00000000  00002000  RWIX
      SARAM8                00020000   00002000  00000000  00002000  RWIX
      SARAM9                00022000   00002000  00000000  00002000  RWIX
      SARAM10               00024000   00002000  00000000  00002000  RWIX
      SARAM11               00026000   00002000  00000000  00002000  RWIX
      SARAM12               00028000   00002000  00000000  00002000  RWIX
      SARAM13               0002a000   00002000  00000000  00002000  RWIX
      SARAM14               0002c000   00002000  00000000  00002000  RWIX
      SARAM15               0002e000   00002000  00000000  00002000  RWIX
      SARAM16               00030000   00002000  00000000  00002000  RWIX
      SARAM17               00032000   00002000  00000000  00002000  RWIX
      SARAM18               00034000   00002000  00000000  00002000  RWIX
      SARAM19               00036000   00002000  00000000  00002000  RWIX
      SARAM20               00038000   00002000  00000000  00002000  RWIX
      SARAM21               0003a000   00002000  00000000  00002000  RWIX
      SARAM22               0003c000   00002000  00000000  00002000  RWIX
      SARAM23               0003e000   00002000  00000000  00002000  RWIX
      SARAM24               00040000   00002000  00000000  00002000  RWIX
      SARAM25               00042000   00002000  00000000  00002000  RWIX
      SARAM26               00044000   00002000  00000000  00002000  RWIX
      SARAM27               00046000   00002000  00000000  00002000  RWIX
      SARAM28               00048000   00002000  00000000  00002000  RWIX
      SARAM29               0004a000   00002000  00000000  00002000  RWIX
      SARAM30               0004c000   00002000  00000000  00002000  RWIX
      SARAM31               0004e000   00002000  00000000  00002000  RWIX
      ROM                   00fe0000   0001ff00  00000000  0001ff00  RWIX
      VECS                  00ffff00   00000100  00000100  00000000  RWIX
    
    
    SECTION ALLOCATION MAP
    (Addresses surrounded by []'s are displayed for convenience only!)
    
    output                                                          attributes/
    section   page  orgn(bytes) orgn(words) len(bytes) len(words)   input sections
    --------  ----  ----------- ----------- ---------- ----------   --------------
    .const       0   [ 000000c0 ]  00000060          *   000001d6   
                     [ 000000c0 ]  00000060          *   00000101   rts55x.lib : ctype.obj (.const:__ctypes_)
                     [ 000002c2 ]  00000161          *   00000001   --HOLE-- [fill = 0]
                     [ 000002c4 ]  00000162          *   0000005b   main.obj (.const:.string)
                     [ 0000037a ]  000001bd          *   00000001   --HOLE-- [fill = 0]
                     [ 0000037c ]  000001be          *   0000003c   led_test.obj (.const:.string)
                     [ 000003f4 ]  000001fa          *   00000024   rts55x.lib : _printfi.obj (.const:.string)
                     [ 0000043c ]  0000021e          *   0000000c              : _printfi.obj (.const)
                     [ 00000454 ]  0000022a          *   00000008              : divd.obj (.const:_initial_approx$1)
                     [ 00000464 ]  00000232          *   00000002              : fputs.obj (.const:.string)
                     [ 00000468 ]  00000234          *   00000002              : fltlid.obj (.const)
    
    .text.1      0     0000046c  [ 00000236 ] 00000003          *   
                       0000046c  [ 00000236 ] 00000002          *   rts55x.lib : vectors.obj (.text)
                       0000046e  [ 00000237 ] 00000001          *   --HOLE-- [fill = 20]
    
    .cio         0   [ 00000470 ]  00000238          *   00000120   UNINITIALIZED
                     [ 00000470 ]  00000238          *   00000120   rts55x.lib : trgmsg.obj (.cio)
    
    .stack       0   [ 000006b0 ]  00000358          *   00000100   UNINITIALIZED
                     [ 000006b0 ]  00000358          *   00000100   --HOLE--
    
    .sysstack 
    *            0   [ 000008b0 ]  00000458          *   00000100   UNINITIALIZED
                     [ 000008b0 ]  00000458          *   00000100   --HOLE--
    
    .cinit       0   [ 00000ab0 ]  00000558          *   00000078   
                     [ 00000ab0 ]  00000558          *   0000002d   rts55x.lib : lowlev.obj (.cinit)
                     [ 00000b0a ]  00000585          *   0000002a              : defs.obj (.cinit)
                     [ 00000b5e ]  000005af          *   0000000a              : _lock.obj (.cinit)
                     [ 00000b72 ]  000005b9          *   0000000a              : exit.obj (.cinit)
                     [ 00000b86 ]  000005c3          *   00000004   main.obj (.cinit)
                     [ 00000b8e ]  000005c7          *   00000004   rts55x.lib : fopen.obj (.cinit)
                     [ 00000b96 ]  000005cb          *   00000004              : memory.obj (.cinit)
                     [ 00000b9e ]  000005cf          *   00000001   --HOLE-- [fill = 0]
    
    .text.2      0     00000ba0  [ 000005d0 ] 0000145e          *   
                       00000ba0  [ 000005d0 ] 0000068d          *   cslVC5505.lib : csl_gpio.obj (.text)
                       0000122d  [ 00000916+] 00000543          *   rts55x.lib : lowlev.obj (.text)
                       00001770  [ 00000bb8 ] 00000528          *              : trgdrv.obj (.text)
                       00001c98  [ 00000e4c ] 0000027f          *              : fopen.obj (.text)
                       00001f17  [ 00000f8b+] 000000e6          *              : setvbuf.obj (.text)
                       00001ffd  [ 00000ffe ] 00000001          *   --HOLE-- [fill = 20]
    
    .text.3      0     00002000  [ 00001000 ] 00001fff          *   
                       00002000  [ 00001000 ] 000015a4          *   rts55x.lib : _printfi.obj (.text)
                       000035a4  [ 00001ad2 ] 000004b5          *              : memory.obj (.text)
                       00003a59  [ 00001d2c+] 000003cc          *              : divd.obj (.text)
                       00003e25  [ 00001f12+] 00000163          *              : fputs.obj (.text)
                       00003f88  [ 00001fc4 ] 00000076          *              : frcmpyd.obj (.text)
                       00003ffe  [ 00001fff ] 00000001          *   --HOLE-- [fill = 20]
    
    .text.4      0     00004000  [ 00002000 ] 00001645          *   
                       00004000  [ 00002000 ] 0000025e          *   rts55x.lib : llmpy.obj (.text)
                       0000425e  [ 0000212f ] 0000025a          *              : addd.obj (.text)
                       000044b8  [ 0000225c ] 000001ea          *              : cmpd.obj (.text)
                       000046a2  [ 00002351 ] 000001e7          *   ezdsp5535bsl.lib : ezdsp5535_led.obj (.text)
                       00004889  [ 00002444+] 0000014c          *   rts55x.lib : mpyd.obj (.text)
                       000049d5  [ 000024ea+] 000000dd          *              : _io_perm.obj (.text)
                       00004ab2  [ 00002559 ] 000000c2          *              : fflush.obj (.text)
                       00004b74  [ 000025ba ] 000000ba          *              : trgmsg.obj (.text:CIO_breakpoint)
                       00004c2e  [ 00002617 ] 000000a7          *   led_test.obj (.text)
                       00004cd5  [ 0000266a+] 000000a6          *   rts55x.lib : fputc.obj (.text)
                       00004d7b  [ 000026bd+] 000000a1          *              : divul.obj (.text)
                       00004e1c  [ 0000270e ] 00000087          *   ezdsp5535bsl.lib : ezdsp5535_gpio.obj (.text)
                       00004ea3  [ 00002751+] 0000007d          *   rts55x.lib : ltoa.obj (.text)
                       00004f20  [ 00002790 ] 0000007b          *              : fclose.obj (.text)
                       00004f9b  [ 000027cd+] 00000073          *              : frcmpyd_div.obj (.text)
                       0000500e  [ 00002807 ] 00000072          *              : remul.obj (.text)
                       00005080  [ 00002840 ] 0000006f          *              : fixdli.obj (.text)
                       000050ef  [ 00002877+] 0000006d          *              : trgmsg.obj (.text)
                       0000515c  [ 000028ae ] 0000006b          *              : fseek.obj (.text)
                       000051c7  [ 000028e3+] 00000067          *              : fltlid.obj (.text)
                       0000522e  [ 00002917 ] 0000005c          *              : atoi.obj (.text)
                       0000528a  [ 00002945 ] 00000054          *   ezdsp5535bsl.lib : ezdsp5535.obj (.text)
                       000052de  [ 0000296f ] 00000050          *   rts55x.lib : printf.obj (.text)
                       0000532e  [ 00002997 ] 0000004f          *   main.obj (.text)
                       0000537d  [ 000029be+] 0000004d          *   rts55x.lib : autoinit.obj (.text)
                       000053ca  [ 000029e5 ] 0000004b          *              : args_main.obj (.text)
                       00005415  [ 00002a0a+] 0000004b          *              : remli.obj (.text)
                       00005460  [ 00002a30 ] 00000048          *              : divli.obj (.text)
                       000054a8  [ 00002a54 ] 0000003f          *              : memcpy.obj (.text)
                       000054e7  [ 00002a73+] 0000003e          *              : exit.obj (.text)
                       00005525  [ 00002a92+] 00000034          *              : boot.obj (.text)
                       00005559  [ 00002aac+] 0000002a          *              : fixdi.obj (.text)
                       00005583  [ 00002ac1+] 0000002a          *              : udiv.obj (.text)
                       000055ad  [ 00002ad6+] 00000023          *              : memccpy.obj (.text)
                       000055d0  [ 00002ae8 ] 0000001a          *              : isinf.obj (.text)
                       000055ea  [ 00002af5 ] 00000014          *              : subd.obj (.text)
                       000055fe  [ 00002aff ] 00000013          *              : lmpy.obj (.text)
                       00005611  [ 00002b08+] 00000012          *              : _lock.obj (.text)
                       00005623  [ 00002b11+] 00000010          *              : negd.obj (.text)
                       00005633  [ 00002b19+] 0000000a          *              : remove.obj (.text)
                       0000563d  [ 00002b1e+] 00000007          *              : exit.obj (.text:CIO_breakpoint)
                       00005644  [ 00002b22 ] 00000001          *   --HOLE-- [fill = 20]
    
    .sysmem      0   [ 00008000 ]  00004000          *   00000200   UNINITIALIZED
                     [ 00008000 ]  00004000          *   00000200   --HOLE--
    
    .data        0   [ 00008000 ]  00004000          *   00000000   UNINITIALIZED
    
    .bss         0   [ 0000a000 ]  00005000          *   0000026e   UNINITIALIZED
                     [ 0000a000 ]  00005000          *   00000119   rts55x.lib : defs.obj (.bss)
                     [ 0000a232 ]  00005119          *   000000d0              : trgdrv.obj (.bss)
                     [ 0000a3d2 ]  000051e9          *   00000001   main.obj (.bss)
                     [ 0000a3d4 ]  000051ea          *   00000071   rts55x.lib : lowlev.obj (.bss)
                     [ 0000a4b6 ]  0000525b          *   00000001              : fopen.obj (.bss)
                     [ 0000a4b8 ]  0000525c          *   00000006              : memory.obj (.bss)
                     [ 0000a4c4 ]  00005262          *   00000004   ezdsp5535bsl.lib : ezdsp5535_gpio.obj (.bss)
                     [ 0000a4cc ]  00005266          *   00000004   rts55x.lib : _lock.obj (.bss)
                     [ 0000a4d4 ]  0000526a          *   00000004              : exit.obj (.bss)
    
    vectors      0     00ffff00  [ 007fff80 ] 00000100          *   NOLOAD SECTION
                       00ffff00  [ 007fff80 ] 00000100          *   rts55x.lib : vectors.obj (vectors)
    
    
    GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name 
    
    abs. value/
    byte addr   word addr   name
    ---------   ---------   ----
    00000002                $TI_capability$C5500$CallingConvention
    00000002                $TI_capability$C5500$MemoryModel
    00000001                $TI_capability_requires_rev3
                00005000    .bss
                00004000    .data
    ffffffff                .text
    0000563e                C$$EXIT
    00004c29                C$$IO$$
    000055fe                I$$LMPY
    00005583                I$$UDIV
    00005598                I$$UMOD
    00004e85                _EZDSP5535_GPIO_getInput
    00004e1c                _EZDSP5535_GPIO_init
    00004e47                _EZDSP5535_GPIO_setDirection
    00004e6b                _EZDSP5535_GPIO_setOutput
    000046d8                _EZDSP5535_LED_getall
    000046a2                _EZDSP5535_LED_init
    000047cd                _EZDSP5535_LED_off
    00004798                _EZDSP5535_LED_on
    0000472a                _EZDSP5535_LED_setall
    00004800                _EZDSP5535_LED_toggle
    0000485b                _EZDSP5535_XF_get
    00004850                _EZDSP5535_XF_off
    00004845                _EZDSP5535_XF_on
    0000486a                _EZDSP5535_XF_toggle
    000052d0                _EZDSP5535_init
    0000528a                _EZDSP5535_wait
    000052be                _EZDSP5535_waitusec
    0000108b                _GPIO_clearInt
    00000be4                _GPIO_close
    00000c08                _GPIO_config
    00000e3b                _GPIO_configBit
    00000f83                _GPIO_disableInt
    00001001                _GPIO_enableInt
    00000c8d                _GPIO_getConfig
    00000ba0                _GPIO_open
    00000d15                _GPIO_read
    0000119e                _GPIO_reset
    00001117                _GPIO_statusBit
    00000d98                _GPIO_write
                00005262    _GpioObj
    00001c3a                _HOSTclock
    00001bcf                _HOSTclose
    00001b1a                _HOSTlseek
    00001a7b                _HOSTopen
    000019ee                _HOSTread
    00001940                _HOSTrename
    000018e2                _HOSTtime
    00001878                _HOSTunlink
    000017eb                _HOSTwrite
    00ffff00                _Reset
    0000532e                _StopTest
                000051e9    _TestFail
                00000238    __CIOBUF_
                00000458    __STACK_END
    00000200                __STACK_SIZE
    00000400                __SYSMEM_SIZE
    00000200                __SYSSTACK_SIZE
    00000001                __TI_args_main
    ffffffff                ___binit__
                00005000    ___bss__
    ffffffff                ___c_args__
                00000558    ___cinit__
                00004000    ___data__
                00004000    ___edata__
                0000526e    ___end__
    ffffffff                ___etext__
    000055d0                ___isinf
    ffffffff                ___pinit__
    ffffffff                ___text__
    0000425e                __addd
    000053ca                __args_main
    00001db9                __cleanup
                0000526a    __cleanup_ptr
    0000464a                __cmpd
                00000060    __ctypes_
    00003a59                __divd
    00005460                __divli
    00004229                __divlli
    00005583                __divu
    00004d7b                __divul
    00004135                __divull
    00004ab2                __doflush
                0000526c    __dtors_ptr
    00004616                __eqld
    00005559                __fixdi
    00005080                __fixdli
    000051c7                __fltlid
    00003f88                __frcmpyd
    00004f9b                __frcmpyd_div
                00005118    __ft_end
                00005000    __ftable
    000045cc                __geqd
    00004581                __gtrd
    00004534                __leqd
                00005266    __lock
    000044ec                __lssd
    00004889                __mpyd
    000055fe                __mpyli
    0000407d                __mpylli
    00005623                __negd
    000044b8                __neqd
    00005621                __nop
    00003362                __printfi
    00004a55                __rd_ok
    00005619                __register_lock
    00005611                __register_unlock
    00005415                __remli
    0000404e                __remlli
    00005598                __remu
    0000500e                __remul
    00004000                __remull
                00000358    __stack
    000055ea                __subd
                00004000    __sys_memory
                00000458    __sysstack
                00005078    __tmpnams
                00005268    __unlock
    000049d5                __wrt_ok
    0000563d                _abort
    00001680                _add_device
    0000522e                _atoi
    0000537d                _auto_init
    00005525                _c_int00
    00003a33                _calloc
    00003a2b                _chkheap
    0000160d                _close
    000054e7                _exit
    00004f20                _fclose
    00004b1b                _fflush
    00001604                _find_registered_device
    00001edc                _fopen
    00004cd5                _fputc
    00003e25                _fputs
    000035a4                _free
    000039d5                _free_memory
    00001e13                _freopen
    0000515c                _fseek
    00001770                _getenv
                00005264    _hGpio
    00004c2e                _led_test
    0000159e                _lseek
    00004ea3                _ltoa
    00005330                _main
    000036d5                _malloc
    0000397b                _max_free
    000055ad                _memccpy
    000054a8                _memcpy
    00003670                _minit
    000014df                _open
    000052de                _printf
    00004cd5                _putc
    00004d6c                _putchar
    00003f5a                _puts
    00001431                _read
    000050ef                _readmsg
    000037ca                _realloc
    00005633                _remove
    000013fb                _remove_device
    000013a2                _rename
    00001f17                _setvbuf
    0000136f                _unlink
    0000122d                _write
    00004b74                _writemsg
    ffffffff                binit
                00000558    cinit
                00004000    edata
                0000526e    end
    ffffffff                etext
    ffffffff                pinit
    
    
    GLOBAL SYMBOLS: SORTED BY Symbol Address 
    
    abs. value/
    byte addr   word addr   name
    ---------   ---------   ----
    00000001                $TI_capability_requires_rev3
    00000001                __TI_args_main
    00000002                $TI_capability$C5500$CallingConvention
    00000002                $TI_capability$C5500$MemoryModel
                00000060    __ctypes_
    00000200                __STACK_SIZE
    00000200                __SYSSTACK_SIZE
    00000400                __SYSMEM_SIZE
                00000238    __CIOBUF_
                00000358    __stack
                00000458    __STACK_END
                00000458    __sysstack
                00000558    ___cinit__
                00000558    cinit
    00000ba0                _GPIO_open
    00000be4                _GPIO_close
    00000c08                _GPIO_config
    00000c8d                _GPIO_getConfig
    00000d15                _GPIO_read
    00000d98                _GPIO_write
    00000e3b                _GPIO_configBit
    00000f83                _GPIO_disableInt
    00001001                _GPIO_enableInt
    0000108b                _GPIO_clearInt
    00001117                _GPIO_statusBit
    0000119e                _GPIO_reset
    0000122d                _write
    0000136f                _unlink
    000013a2                _rename
    000013fb                _remove_device
    00001431                _read
    000014df                _open
    0000159e                _lseek
    00001604                _find_registered_device
    0000160d                _close
    00001680                _add_device
    00001770                _getenv
    000017eb                _HOSTwrite
    00001878                _HOSTunlink
    000018e2                _HOSTtime
    00001940                _HOSTrename
    000019ee                _HOSTread
    00001a7b                _HOSTopen
    00001b1a                _HOSTlseek
    00001bcf                _HOSTclose
    00001c3a                _HOSTclock
    00001db9                __cleanup
    00001e13                _freopen
    00001edc                _fopen
    00001f17                _setvbuf
    00003362                __printfi
    000035a4                _free
    00003670                _minit
    000036d5                _malloc
    000037ca                _realloc
    0000397b                _max_free
    000039d5                _free_memory
    00003a2b                _chkheap
    00003a33                _calloc
    00003a59                __divd
    00003e25                _fputs
    00003f5a                _puts
    00003f88                __frcmpyd
    00004000                __remull
    0000404e                __remlli
    0000407d                __mpylli
    00004135                __divull
    00004229                __divlli
    0000425e                __addd
    000044b8                __neqd
    000044ec                __lssd
    00004534                __leqd
    00004581                __gtrd
    000045cc                __geqd
    00004616                __eqld
    0000464a                __cmpd
    000046a2                _EZDSP5535_LED_init
    000046d8                _EZDSP5535_LED_getall
    0000472a                _EZDSP5535_LED_setall
    00004798                _EZDSP5535_LED_on
    000047cd                _EZDSP5535_LED_off
    00004800                _EZDSP5535_LED_toggle
    00004845                _EZDSP5535_XF_on
    00004850                _EZDSP5535_XF_off
    0000485b                _EZDSP5535_XF_get
    0000486a                _EZDSP5535_XF_toggle
    00004889                __mpyd
    000049d5                __wrt_ok
    00004a55                __rd_ok
    00004ab2                __doflush
    00004b1b                _fflush
    00004b74                _writemsg
    00004c29                C$$IO$$
    00004c2e                _led_test
    00004cd5                _fputc
    00004cd5                _putc
    00004d6c                _putchar
    00004d7b                __divul
    00004e1c                _EZDSP5535_GPIO_init
    00004e47                _EZDSP5535_GPIO_setDirection
    00004e6b                _EZDSP5535_GPIO_setOutput
    00004e85                _EZDSP5535_GPIO_getInput
    00004ea3                _ltoa
    00004f20                _fclose
    00004f9b                __frcmpyd_div
    0000500e                __remul
    00005080                __fixdli
    000050ef                _readmsg
    0000515c                _fseek
    000051c7                __fltlid
    0000522e                _atoi
    0000528a                _EZDSP5535_wait
    000052be                _EZDSP5535_waitusec
    000052d0                _EZDSP5535_init
    000052de                _printf
    0000532e                _StopTest
    00005330                _main
    0000537d                _auto_init
    000053ca                __args_main
    00005415                __remli
    00005460                __divli
    000054a8                _memcpy
    000054e7                _exit
    00005525                _c_int00
    00005559                __fixdi
    00005583                I$$UDIV
    00005583                __divu
    00005598                I$$UMOD
    00005598                __remu
    000055ad                _memccpy
    000055d0                ___isinf
    000055ea                __subd
    000055fe                I$$LMPY
    000055fe                __mpyli
    00005611                __register_unlock
    00005619                __register_lock
    00005621                __nop
    00005623                __negd
    00005633                _remove
    0000563d                _abort
    0000563e                C$$EXIT
                00004000    .data
                00004000    ___data__
                00004000    ___edata__
                00004000    __sys_memory
                00004000    edata
                00005000    .bss
                00005000    ___bss__
                00005000    __ftable
                00005078    __tmpnams
                00005118    __ft_end
                000051e9    _TestFail
                00005262    _GpioObj
                00005264    _hGpio
                00005266    __lock
                00005268    __unlock
                0000526a    __cleanup_ptr
                0000526c    __dtors_ptr
                0000526e    ___end__
                0000526e    end
    00ffff00                _Reset
    ffffffff                .text
    ffffffff                ___binit__
    ffffffff                ___c_args__
    ffffffff                ___etext__
    ffffffff                ___pinit__
    ffffffff                ___text__
    ffffffff                binit
    ffffffff                etext
    ffffffff                pinit
    
    [170 symbols]
    

    Archaeologist,

     

    Currently I have included the following files the map file and the linker files were change from .cmd to .txt so that i could upload them.

    I'm using CSS 5.50Code developer studio from TI.  I'm using the  XDS100v2 emulator and the ezdsp5535 hardware board.   So there is no simulator, the debugger is the version in CSS 5.50  I could not find the debugger version in the program but I assume it is current with CCS version 5.50 and yes I'm using it. If there is anything else that you need,  let me know and if I'm missing file please be specific as to which file you are requesting .  Thanks in advance

     

    Jeff

  • I really need the executable object file, which will probably be named LED2.out

  • 3073.led2.txt

     

    Thanks for being specific I'm still learing the name of the files  Here is LED2.TXT  you will need to change the extension to read the LED2.OUT Since it will not let me upload the file as a .out  Let me know if you need any other information thank you very much

    JEFF

  • I'm having trouble running the test case.  I do not have C5535 hardware, so I have to use the simulator.  The simulator is trying to use the RESET vector at 0xffff00, but C5535.cmd defines the "vectors" section as NOLOAD, which means it won't actually be loaded to the device, and will be corrupt.  When I try to run, it never makes it out of the RESET vector.  I forced CCS to set the PC to _c_int00 as desired, but then I run to the point where it asks the user to toggle the LED, and I can't do that in this simulator.

    Does your program successfully print anything to the console window before you get the "CIO error"?

    Could you adjust your test case to avoid waiting for the LED toggle, rebuild it, and send me the executable and map files?

  • Yes the program prints one printf function in the led_test.c program but thats after I change the first printf to a puts

    the following is the code where the first light is toggled it is in csl_gpio.c   

    /* Lower Sixteen GPIO Pin - 0 to 15 GPIO pin */

            pin = pinNum;

            CSL_FINSR (hGpio->baseAddr->IOOUTDATA1,pin,pin,buffer);

        }

    The CIO error occurs on the last printf in the main.c after all leds have been toggled.

     

    else

        {

           

    /* Upper Sixteen 16 to 31 GPIO Pin              */

            pin = pinNum - CSL_GPIO_PIN16;

            CSL_FINSR(hGpio->baseAddr->IOOUTDATA2,pin,pin,buffer);

        }

       

    return CSL_SOK;

    {View:http://e2e.ti.com/cfs-file.ashx/__key/communityserver-discussions-components-files/343/3857.led2.txt] 

     

    checked the date of the map file and it did not change to todays date I hope it is current if not let me know how to update the map to the current date. enclose you will find the map file.  thanks for your help

    I have included the map file I hope it helps

    Regards,

     

    Jeff

  • Just a note you might want to try to find the difference between the lnkx.cmd and the c5535.cmd it might shed some light. it is just a suggesting. the lnkx.cmd does cause a cio error

     

    Best, regards,

    Jeff

  • Correction lnkx.cmd doesn't cause a cio error when executing a printf command 

  • I still haven't been able to get my hands on an eZdsp5535, so I can't run the executable object file (led2.out) that you sent earlier.  I could try to analyze this more quickly if you could send me the source code for your program.  I would also need to know which libraries you are using and what your command-line options are.

    Alternatively, if you could comment out the part of your program that waits for the LEDs to be pressed and see if the problem persists, that would speed up analysis.  If it does persist, send me that executable object file (led2.out).

    Regarding the linker command files, they are radically different, but I don't see anything weird except the NOLOAD declaration in C5535.cmd, which I cannot explain.  I don't know if there is something weird about eZdsp5535, but the fact that you are able to get any C I/O at all suggests that this isn't a problem for you.

  • 1) go to the spectrum digital website and down load  ezdsp5535z_bsl_c.zip  this is the library to the LED2 program

    2) you will need to import the library using the import elcipse option

    3) Create a new CSS project with a new target file for XDSv2100 emulator the c5535.cmd will be created automatically

    4) insert the main.c that I have uploaded and the led_test.c to create the final project  you should be able to compile and link  oh yeah you need to set the properties  type 5515  memory large   bit size 32

    that pretty much it I hope it helps. I have provide a paint picture of the stucture of the program and library

    regards,

     

    Jeff

    {\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fnil Consolas;}{\f1\fswiss\fcharset0 Arial;}}
    {\colortbl ;\red63\green127\blue95;\red127\green0\blue85;\red0\green0\blue0;\red42\green0\blue255;\red0\green80\blue50;\red100\green40\blue128;}
    {\*\generator Msftedit 5.41.21.2509;}\viewkind4\uc1\pard\cf1\f0\fs20 //////////////////////////////////////////////////////////////////////////////\cf0\par
    \cf1 // * File name: main.c\cf0\par
    \cf1 // *\cf0\par
    \cf1 // * Description:  Main function.\cf0\par
    \cf1 // *\cf0\par
    \cf1 // * Copyright (C) 2011 Texas Instruments Incorporated - http://www.ti.com/\cf0\par
    \cf1 // * Copyright (C) 2011 Spectrum Digital, Incorporated\cf0\par
    \cf1 // *\cf0\par
    \cf1 // *\cf0\par
    \cf1 // *  Redistribution and use in source and binary forms, with or without\cf0\par
    \cf1 // *  modification, are permitted provided that the following conditions\cf0\par
    \cf1 // *  are met:\cf0\par
    \cf1 // *\cf0\par
    \cf1 // *    Redistributions of source code must retain the above copyright\cf0\par
    \cf1 // *    notice, this list of conditions and the following disclaimer.\cf0\par
    \cf1 // *\cf0\par
    \cf1 // *    Redistributions in binary form must reproduce the above copyright\cf0\par
    \cf1 // *    notice, this list of conditions and the following disclaimer in the\cf0\par
    \cf1 // *    documentation and/or other materials provided with the\cf0\par
    \cf1 // *    distribution.\cf0\par
    \cf1 // *\cf0\par
    \cf1 // *    Neither the name of Texas Instruments Incorporated nor the names of\cf0\par
    \cf1 // *    its contributors may be used to endorse or promote products derived\cf0\par
    \cf1 // *    from this software without specific prior written permission.\cf0\par
    \cf1 // *\cf0\par
    \cf1 // *  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\cf0\par
    \cf1 // *  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\cf0\par
    \cf1 // *  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\cf0\par
    \cf1 // *  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\cf0\par
    \cf1 // *  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\cf0\par
    \cf1 // *  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\cf0\par
    \cf1 // *  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\cf0\par
    \cf1 // *  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\cf0\par
    \cf1 // *  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\cf0\par
    \cf1 // *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\cf0\par
    \cf1 // *  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\cf0\par
    \cf1 // *\cf0\par
    \cf1 //////////////////////////////////////////////////////////////////////////////\cf0\par
    \par
    \cf2\b #include\cf3\b0  \cf4 "stdio.h"\cf0\par
    \cf2\b #include\cf3\b0  \cf4 "ezdsp5535.h"\cf0\par
    \par
    \cf2\b extern\cf3\b0  \cf5 Int16\cf3  \b led_test\b0 ( );\cf0\par
    \par
    \cf2\b int\cf3\b0   TestFail    = (\cf2\b int\cf3\b0 )-1;\cf0\par
    \par
    \cf2\b void\cf3\b0  \b StopTest\b0 ()\cf0\par
    \cf3\{\cf0\par
    \cf3     \cf1 //SW_BREAKPOINT;\cf0\par
    \cf3     \cf2\b return\cf3\b0 ;\cf0\par
    \cf3\}\cf0\par
    \par
    \cf1 /*\cf0\par
    \cf1  *\cf0\par
    \cf1  *  main( )\cf0\par
    \cf1  *\cf0\par
    \cf1  */\cf0\par
    \cf2\b void\cf3\b0  \b main\b0 ( \cf2\b void\cf3\b0  )\cf0\par
    \cf3\{\cf0\par
    \cf3     \cf1 /* Initialize BSL */\cf0\par
    \cf3     \cf6\b EZDSP5535_init\cf3\b0 ( );\cf0\par
    \par
    \cf3     \cf1 /* Display test ID */\cf0\par
    \cf3     \cf6\b puts\cf3\b0 (\cf4 "Testing LEDs..."\cf3 );\cf0\par
    \par
    \cf3     \cf1 /* Call test function */\cf0\par
    \cf3     TestFail = led_test( );\cf0\par
    \par
    \cf3     \cf1 /* Check for test fail */\cf0\par
    \cf3     \cf2\b if\cf3\b0  ( TestFail != 0 )\cf0\par
    \cf3     \{\cf0\par
    \cf3         \cf1 /* Print error message */\cf0\par
    \cf3         \cf6\b printf\cf3\b0 ( \cf4 "     FAIL... error code %d... quitting\\n"\cf3 );\cf0\par
    \cf3     \}\cf0\par
    \cf3     \cf2\b else\cf0\b0\par
    \cf3     \{\cf0\par
    \cf3         \cf1 /* Print pass message */\cf0\par
    \cf3         \cf6\b printf\cf3\b0 ( \cf4 "    PASS\\n"\cf3  );\cf0\par
    \cf3         \cf6\b printf\cf3\b0 ( \cf4 "\\n***ALL Tests Passed***\\n"\cf3  );\cf0\par
    \cf3     \}\cf0\par
    \par
    \cf3     StopTest();\cf0\par
    \cf3\}\cf0\par
    \f1\par
    }
    

  • I am about to write a large program that utilizes the ezdsp5535 and it is my concern that I will be running into CIO errors that might be real and might not be by using the standard C5535.cmd that comes with a new project.  This why we need to resolve this problem.   It first start with changing the .text >> and now it is show up during runtime.  Therefore I asking  you guys to try to figure out why the c5535.cmd is causing the CIO error.  It will definitely help for future programming and programs that utilize the ezdsp5535.  Thanks in advance.

    Regards,

    JEFF

  • Jeff,

    I was able to locate a C5535 eZdsp USB kit and loaded your LED2.out file to it and ran it.
    I saw the following message printed in the console and there was no "invalid CIO command" message:

    Testing LEDs...
    User LED tests toggles each of the four user LEDs 3 times
       PASS

    I'm not sure if the .out file you attached here is the non-working one or the one you were able to get working by using a different .cmd file. Could you please double-check that and let us know?

    As an additional step, I could try re-creating the entire project using the steps you described, however I can't seem to download led_test.c, and main.c appears to be in a strange format. Could you upload those files again, or better yet, zip up your entire project folder and attach it here, so I can just unzip and import the project into CCS.

  • Thats great that you got it to run with no CIO error I just want to make one point when I run the debugger it starts in break mode it just stop on the first line of code and I don't know why when I hit resume or f5 i get the cio error very weird.   I have zip up the project and I hope you can download it.

    thanks

    Jeff2476.LED2.zip.zip

  • One more note :   if you notice in the led2.out is does not execute the last printf function this is where a cio error occurs

    either in the first printf or the last I changed the first printf to a put and i was able to execute the program it doesn't get a cio error in the printf that are in the middle of led_test.c this is very weird.

     

    Jeff

  • Thank you for attaching the project. I still couldn't see the CIO error, however when I built your project with c5535.cmd and ran it, I did not see any printf messages coming out on the console either. If I linked with lnkx.cmd instead I was able to get the messages to print correctly on the console.

    The issue is due to insufficient stack and heap sizes. If you notice in lnkx.cmd, the stack and heap sizes are set at the top of the file (which over-ride the default sizes set under Project Properties->Build->C5500 Linker->Basic Options) , however in c5535.cmd they are not specifically set so they use the default sizes, which in this case, is not sufficient for printf to work.

    I am attaching a slightly modified c5535.cmd file (renamed to .txt) which works for me. Please give this a try and let us know if it works for you.

    Note that as you use more C I/O in your code, you may need to increase stack and heap sizes still further. Please see this wiki page for more info: http://processors.wiki.ti.com/index.php/Tips_for_using_printf

    /****************************************************************************/
    /*  C5535.cmd                                                               */
    /*  Copyright (c) 2012  Texas Instruments Incorporated                      */
    /*  Author: Rafael de Souza                                                 */
    /*                                                                          */
    /*    Description: This file is a sample linker command file that can be    */
    /*                 used for linking programs built with the C compiler and  */
    /*                 running the resulting .out file on a C5535.              */
    /*                 Use it as a guideline.  You will want to                 */
    /*                 change the memory layout to match your specific          */
    /*                 target system.  You may want to change the allocation    */
    /*                 scheme according to the size of your program.            */
    /*                                                                          */
    /****************************************************************************/
    -stack    0x2000
    -sysstack 0x1000
    -heap     0x2000
    
    MEMORY
    {
        MMR:     o = 0x000000  l = 0x0000c0  /* 192B Memory Mapped Registers */
        DARAM0:  o = 0x0000C0  l = 0x001F40  /* 8kB Dual Access RAM 0 */
        DARAM1:  o = 0x002000  l = 0x002000  /* 8kB Dual Access RAM 1 */
        DARAM2:  o = 0x004000  l = 0x002000  /* 8kB Dual Access RAM 2 */
        DARAM3:  o = 0x006000  l = 0x002000  /* 8kB Dual Access RAM 3 */  
        DARAM4:  o = 0x008000  l = 0x002000  /* 8kB Dual Access RAM 4 */
        DARAM5:  o = 0x00A000  l = 0x002000  /* 8kB Dual Access RAM 5 */
        DARAM6:  o = 0x00C000  l = 0x002000  /* 8kB Dual Access RAM 6 */
        DARAM7:  o = 0x00E000  l = 0x002000  /* 8kB Dual Access RAM 7 */
      
        SARAM0:   o = 0x010000  l = 0x002000  /* 8kB Single Access RAM 0 */
        SARAM1:   o = 0x012000  l = 0x002000  /* 8kB Single Access RAM 1 */
        SARAM2:   o = 0x014000  l = 0x002000  /* 8kB Single Access RAM 2 */
        SARAM3:   o = 0x016000  l = 0x002000  /* 8kB Single Access RAM 3 */  
        SARAM4:   o = 0x018000  l = 0x002000  /* 8kB Single Access RAM 4 */
        SARAM5:   o = 0x01A000  l = 0x002000  /* 8kB Single Access RAM 5 */
        SARAM6:   o = 0x01C000  l = 0x002000  /* 8kB Single Access RAM 6 */
        SARAM7:   o = 0x01E000  l = 0x002000  /* 8kB Single Access RAM 7 */
        SARAM8:   o = 0x020000  l = 0x002000  /* 8kB Single Access RAM 8 */
        SARAM9:   o = 0x022000  l = 0x002000  /* 8kB Single Access RAM 9 */
        SARAM10:  o = 0x024000  l = 0x002000  /* 8kB Single Access RAM 10 */
        SARAM11:  o = 0x026000  l = 0x002000  /* 8kB Single Access RAM 11 */  
        SARAM12:  o = 0x028000  l = 0x002000  /* 8kB Single Access RAM 12 */
        SARAM13:  o = 0x02A000  l = 0x002000  /* 8kB Single Access RAM 13 */
        SARAM14:  o = 0x02C000  l = 0x002000  /* 8kB Single Access RAM 14 */
        SARAM15:  o = 0x02E000  l = 0x002000  /* 8kB Single Access RAM 15 */
        SARAM16:  o = 0x030000  l = 0x002000  /* 8kB Single Access RAM 16 */
        SARAM17:  o = 0x032000  l = 0x002000  /* 8kB Single Access RAM 17 */
        SARAM18:  o = 0x034000  l = 0x002000  /* 8kB Single Access RAM 18 */
        SARAM19:  o = 0x036000  l = 0x002000  /* 8kB Single Access RAM 19 */  
        SARAM20:  o = 0x038000  l = 0x002000  /* 8kB Single Access RAM 20 */
        SARAM21:  o = 0x03A000  l = 0x002000  /* 8kB Single Access RAM 21 */
        SARAM22:  o = 0x03C000  l = 0x002000  /* 8kB Single Access RAM 22 */
        SARAM23:  o = 0x03E000  l = 0x002000  /* 8kB Single Access RAM 23 */
        SARAM24:  o = 0x040000  l = 0x002000  /* 8kB Single Access RAM 24 */
        SARAM25:  o = 0x042000  l = 0x002000  /* 8kB Single Access RAM 25 */
        SARAM26:  o = 0x044000  l = 0x002000  /* 8kB Single Access RAM 26 */
        SARAM27:  o = 0x046000  l = 0x002000  /* 8kB Single Access RAM 27 */  
        SARAM28:  o = 0x048000  l = 0x002000  /* 8kB Single Access RAM 28 */
        SARAM29:  o = 0x04A000  l = 0x002000  /* 8kB Single Access RAM 29 */
        SARAM30:  o = 0x04C000  l = 0x002000  /* 8kB Single Access RAM 30 */
        SARAM31:  o = 0x04E000  l = 0x002000  /* 8kB Single Access RAM 31 */
                        
        ROM:     o = 0xFE0000  l = 0x01FF00  /* 128kB ROM (MPNMC=0) or CS5 (MPNMC=1) */
        VECS:    o = 0xFFFF00  l = 0x000100  /* reset vector */
    }                   
                        
    SECTIONS            
    {                   
        vectors (NOLOAD) >  VECS  /* If MPNMC = 1, remove the NOLOAD directive */
        .cinit         >  DARAM0
        .text         >>  DARAM0 | DARAM1 | DARAM2 | DARAM3 | DARAM4 | DARAM5 | DARAM6 | DARAM7
        .stack         >  DARAM1
        .sysstack      >  DARAM0
        .sysmem        >  DARAM3
        .data          >  DARAM4
        .cio           >  DARAM0
        .bss           >  DARAM5
        .const         >  DARAM0
    }
    

     

  • Guys,

    My Led2 program is now working without any CIO problems.  thank you for the additional information that allow the program to run ( heap size , stack etc)  But I do have to asked this question and I don't mean any disrespect to you guys or the developers of CSS but this is a small program and it should be transparent but I'm glad I ran into now because the program that i plan to write would have run into this problem for sure.  thanks again for all your efforts in get a ezdsp 5535 usb stick and running the test I know it takes alot of time to do this and thanks for  the wiki article in increasing the stack sysstack and heap.

    best regards,

    Jeff

     

     

  • Jeff Moran said:
    but this is a small program

    That's a common misconception.  Any program that performs C I/O is not small, when considered in light of the usual embedded programming standards.  This wiki article talks about that.

    Thanks and regards,

    -George

  • George,

     

    thanks for the wiki article will definitely read and thanks for the heads up about C I/O.

     

    Best Regards,

    Jeff