Cart New Account Login

HomeAbout usProductsSupportForumsBlogCustomer Service

search inside this forum
search inside all forums
Can't read memory while part is running
Alexander F. Mar 19, 2019 at 05:24 PM (17:24 hours)
Staff: Gilbert Y.

  • Hi,

    Recently when flashing, I'm getting these errors:

    PE-ERROR: Warning. Can't read registers while part is running.
    PE-ERROR: Warning. Can't read memory while part is running.

    Generally, when this happens, programming fails. It seems a bit inconsistent.

    Is this possibly related to a bug in the Multilink?




    Comments

  • I saw some other posts where this issue was believed to be related to hardware (JTAG cable, etc), so I'm trying to rule out any hardware issues in our system right now. 

    Observations:
    1) I just tried with another JTAG cable - still not working.
    2) Our JTAG cable is about 30cm
    3) We have programmed successfully with this cable many times
    4) Multilink Universal power-indicator light is illuminated, showing that the target is powered

    I'm seeing a pretty wide variety of error messages every time I flash. Once, I saw this:

    Error Setting Hardware BP @ee42
    Warning - Not all breakpoints could be written.
    UsageFault: A divide by zero error has occurred.
    UsageFault: An unaligned access error has occurred.
    UsageFault: A coprocessor access error has occurred. The coprocessor is disabled or not present.
    UsageFault: An integrity check error has occurred on EXC_RETURN.
    UsageFault: An instruction executed with an invalid EPSR.T or EPSR.IT field.
    UsageFault: The processor has attempted to execute an undefined instruction.
    BusFault: A bus fault has occurred during lazy floating-point state preservation. Possible location: 0xFFFFFFFF.
    BusFault: A bus fault has occurred on exception entry. Possible location: 0xFFFFFFFF.
    BusFault: A bus fault has occurred on exception return. Possible location: 0xFFFFFFFF.
    BusFault: An imprecise (asynchronous) data access error has occurred. Possible location: 0xFFFFFFFF.
    BusFault: A precise (synchronous) data access error has occurred. Possible location: 0xFFFFFFFF.
    BusFault: A bus fault has occurred during instruction prefetching. Possible location: 0xFFFFFFFF.
    MemManage: Fault occurred during floating-point lazy state preservation. Possible location: 0xFFFFFFFF.
    MemManage: Stacking for an exception entry has caused one or more access violations. Possible location: 0xFFFFFFFF.
    MemManage: Unstacking for an exception return has caused one or more access violations. Possible location: 0xFFFFFFFF.
    MemManage: The processor attempted a load or store at a location that does not permit the operation. Possible location: 0xFFFFFFFF.
    MemManage: The processor attempted an instruction fetch from a location that does not permit execution. Possible location: 0xFFFFFFFF.
    HardFault: A fault has been escalated to a hard fault.
    HardFault: A BusFault has occurred on a vector table read during exception processing.
    Error removing BP @ee42
    PE-ERROR: Warning. Can't read memory while part is running. @ffffffff (4 bytes)
    PE-ERROR: Warning. Can't read memory while part is running. @ffffffff (4 bytes)


    In another instance, I saw this:

    Connection from "127.0.0.1" via 127.0.0.1. Connection from port "56291" to 6224
    Connection from "127.0.0.1" via 127.0.0.1. Connection from port "56292" to 7224
    Telnet server running on 127.0.0.1:51794
    Searching for FreeRTOS Kernel Symbols...
    pxCurrentTCB not found. FreeRTOS analysis not enabled.
    Copyright 2018 P&E Microcomputer Systems,Inc.
    Command Line :C:\Freescale\KDS_v3\eclipse\plugins\com.pemicro.debug.gdbjtag.pne_4.0.1.201902201948\win32\pegdbserver_console -device=NXP_K2x_K21FX512M12 -startserver -singlesession -serverport=7224 -gdbmiport=6224 -interface=USBMULTILINK -speed=3000 -resx

    CMD>RE

    Initializing.
    Target has been RESET and is active.
    CMD>CM C:\Freescale\KDS_v3\eclipse\plugins\com.pemicro.debug.gdbjtag.pne_4.0.1.201902201948\win32\gdi\P&E\supportFiles_ARM\NXP\K2x\freescale_k21fx512m12_pflash_dflash_eeprom.arp

    Initializing.

    Error loading .ARP file : C:\Freescale\KDS_v3\eclipse\plugins\com.pemicro.debug.gdbjtag.pne_4.0.1.201902201948\win32\gdi\P&E\supportFiles_ARM\NXP\K2x\freescale_k21fx512m12_pflash_dflash_eeprom.arp. Set PC and Run Error.
    Error loading programming algorithm - load aborted.
    Error occured during Flash programming.

    Device is secured. Erasing ...

  • Ok, more observations:

    * I tried the PEMicro Kinetis Recovery Utility. It appeared to succeed, but flash programming is still failing.

    * This entire issue occurred right after a failed attempt to program, where power was lost during programming. It's possible the MCU has invalid program memory.

  • More observations: 

    * I swapped the older green Multilink Universal that I was using initially with a newer blue one. The new Multilink works right away.

    So maybe we just had a dead Multilink, although this whole issue seems somewhat intermittent, so I'm not sure that it's related to the Multilink.

  • Hi Alexader,

    I'm glad that you were still able to use a different Multilink to resolve your issue. Have you tried updating your older MultiLink firmware? In a typical installation, you can find the update tool in C:\PEmicro\multilink_universal\PEFirmwareConfig.exe.

    Depending on how long ago you installed this software, you might want to run a new installer to update the latest firmwares on your computer. The installer can be found at the following link under "USB Multilink Universal (and FX) Resource CD"

    https://www.pemicro.com/products/product_viewDetails.cfm?product_id=15320168&productTab=3

    Regards,
    Gilbert Y.

  • Thanks, I will try updating with the latest firmware if we run into this issue again.

Add comment


   Want to comment? Please login or create a new PEmicro account.







© 2021 P&E Microcomputer Systems Inc.
Website Terms of Use and Sales Agreement