Post Go back to editing

ADuCM360 HardFault

Category: Software

We are Producing a device based on ADuCM360 Microcontroller. We have bought 200 PCs of ADuCM360 from China distributors and mount all of them on PCBs. After programming them I discovered that none of the boards work. after debugging I found out that ADuCM360 stuck in Hardfault exception after reset.

We have been using ADuCM360 for a long time and we haven't had any issue with them until now. Last year we purchased 100 PCs of ADuCM360 and all of them are working correctly.

 

I will describe the problem in detail so you can give me a hint to solve this problem.

 

I use j-link debugger

Keil uVision

and ADuCM360 Evaluation board

 

I programmed the evaluation Board with simple blinker example code.

I start debugging mode and the program execution is stopped at hardfault Handler as shown in picture below.

 

 

 

 

when I searched for caller code of hartfault the device is stopped at address @0x0001FFFC as shown below

 

 

I discovered that on the healthy ADuCM360 this block of flash is not readable by debugger (Address from @ 0x00020000 to @0x00020800). But in the faulty ADuCM360 these addresses have access to write and read.

 

I hope that you can help me find out the reason and solution for this problem.

Thanks

 

 

Parents
  • Hi,

    Is this the exact same code that you have in the previous boards that were working? Have there been any design or software changes?

    How are the target and debugger configured in the project?

    Regards,

    Raquel.

  • Hi Raquel,

    the marking on the newly bought chips is:

    ADuCM360

    BCPZ128

    D30    #1406

    2803615.1

    MALAYZIA

    the marking on the chips we were using so far is:

    ADuCM360

    BCPZ128

    D30    #1503

    3061049.1

    CHINA

    So, it is clear that the only differences between them are the year of production and the country they were made in.

    There has been no design or software change in production. The configuration for debugger is perfectly ok and J-link debugger recognizes the chip and even downloads the program on the chip but after running the program it gives hard fault.

    when i replace the faulty chip (Malaysia) with the one we had from past (China) everything works normally and there is no hard fault anymore. So, I assume that there is something wrong in ADuCM360 chip from Malaysia.

Reply
  • Hi Raquel,

    the marking on the newly bought chips is:

    ADuCM360

    BCPZ128

    D30    #1406

    2803615.1

    MALAYZIA

    the marking on the chips we were using so far is:

    ADuCM360

    BCPZ128

    D30    #1503

    3061049.1

    CHINA

    So, it is clear that the only differences between them are the year of production and the country they were made in.

    There has been no design or software change in production. The configuration for debugger is perfectly ok and J-link debugger recognizes the chip and even downloads the program on the chip but after running the program it gives hard fault.

    when i replace the faulty chip (Malaysia) with the one we had from past (China) everything works normally and there is no hard fault anymore. So, I assume that there is something wrong in ADuCM360 chip from Malaysia.

Children