Post Go back to editing

aducm355 SRAM settings issue

I have bought EVAL-ADuCM355 evaluation board recently. I have downloaded the keil uVision 5.36 and the examples provided on git repository. I want to try chronoamperometry example M355_ECSns_CapaTest. But I am getting some compiler linker error as below.

Error - .\Objects\M355_ECSns_CapaTest\M355_ECSns_CapaTest.axf: error: L6047U: The size of this image (59232 bytes) exceeds the maximum allowed for this version of the linker

The code has some guideline regarding RAM size as - uint32_t AppBuff[n][APPBUFF_SIZE] __attribute__((section(".ARM.__at_0x20040000"))); // use up to 32K bytes max, compiler linker file must have been modified for this to work !! Use "USER_SRAM_MODE = 2" setting;

I did not understand those meanings. I am using MDK-lite version.
Kindly find the attached images for reference.

Error-

error

Specification-



SRAM settings issue
[edited by: sahilsawant at 1:09 PM (GMT -5) on 4 Jan 2022]
  • Hi,

      Have you done some modifications in the code? Because it shows size as way more than expected.

    Build started: Project: M355_ECSns_CapaTest
    *** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
    Build target 'ADuCM355'
    compiling AD5940Main.c...
    compiling ChronoAmperometric.c...
    compiling main.c...
    compiling retarget.c...
    compiling DioLib.c...
    compiling ClkLib.c...
    compiling ADuCM355Port.c...
    compiling IntLib.c...
    assembling startup_ADuCM355.s...
    compiling ad5940.c...
    compiling RstLib.c...
    compiling system_ADuCM355.c...
    compiling UrtLib.c...
    linking...
    Program Size: Code=25428 RO-data=1352 RW-data=32284 ZI-data=4220
    ".\Objects\M355_ECSns_CapaTest\M355_ECSns_CapaTest.axf" - 0 Error(s), 0 Warning(s).
    Build Time Elapsed: 00:00:26

  • I have not changed the code. It is downloaded from github.

    This time I have changed the compiler version but still got the same output (written below). Did you check using MDK-lite version (32KB size free version)

    Output-

    Build started: Project: M355_ECSns_CapaTest
    *** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARM_Compiler_5.06u6\Bin'
    Build target 'ADuCM355'
    compiling AD5940Main.c...
    compiling ChronoAmperometric.c...
    compiling ClkLib.c...
    compiling DioLib.c...
    compiling retarget.c...
    compiling ADuCM355Port.c...
    compiling main.c...
    assembling startup_ADuCM355.s...
    compiling IntLib.c...
    compiling RstLib.c...
    compiling UrtLib.c...
    compiling ad5940.c...
    compiling system_ADuCM355.c...
    linking...
    .\Objects\M355_ECSns_CapaTest\M355_ECSns_CapaTest.axf: error: L6047U: The size of this image (59080 bytes) exceeds the maximum allowed for this version of the linker
    Finished: 0 information, 0 warning, 0 error and 1 fatal error messages.
    ".\Objects\M355_ECSns_CapaTest\M355_ECSns_CapaTest.axf" - 1 Error(s), 0 Warning(s).
    Target not created.
    Build Time Elapsed: 00:00:02

  • I have not used MDK Lite version.

    Can't use it in my PC.

  • Hello,

    I got the Trial license version from the ARM Keil team for 30 days. Code gets compiled and downloaded successfully. Could you tell me how to increase time duration in the chronoamperometry code?

  • Hi,

     Do you mean reduce the output data rate?

     pAMPCfg->AmpODR = 1;

  • not the output rate, it is duration of pulse

  • Hi,

    Yau can change 

    pAMPCfg->pulseLength = 100; /* Length of voltage pulse in ms */

    in AD5940Main.c file