Monday, May 21st 2018, 8:59am UTC+2

You are not logged in.

  • Login
  • Register

Hardware: STR912 locked

Dear visitor, welcome to SEGGER Forum. If this is your first visit here, please read the Help. It explains how this page works. You must be registered before you can use all the page's features. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

Rob Luebke

Beginner

Date of registration: Dec 3rd 2007

Posts: 4

1

Wednesday, December 5th 2007, 11:21am

STR912 locked

Hello,

I am using IAR and J-Link with STR912.
So far so good, but every once in a while it seems I "kill" the chip.
I can not connect to the chip again, all I get is a message like "Write memory error @ address 0x00000000, Adaptive clocking timeout."

I already replaced 2 MCUs.
Any clues on what's going on ?
Is there anyway to "revive" the chips ?

Thanks,
Rob

SEGGER - Souhail

Super Moderator

Date of registration: Nov 15th 2007

Posts: 19

2

Thursday, December 6th 2007, 1:51pm

Hi Rob,

I think you have programmed your STR912 with an application that stops the clock, therefore no JTAG-communication with the core.
Even when you reset the core, the code that disables the clock will stop the core again.

With the J-Link software, we deliver an extra tool for the ST STR91x that helps in such cases.

To recover the chip, please follow these steps:
  • Install the latest version from our website. (Segger J-Link download link)
  • Go to JLinkARM install folder (%ProgramFiles%\SEGGER\JLinkARM_Vxxx)
  • If not already done, connect your J-Link to your PC and plug the JTAG cable to your STR91x board.
  • In the installation folder you will a tool called: JLinkSTR91x, double-click this tool
  • A console window will pop up and that verifies that a connection to the STR912 can be established.
  • Hit the enter key and you will see the folowing commands:

    Source code

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    
    Available commands are:
    ----------------------
    showconf 	Show configuration register content
    mem      	Read memory
             	Syntax: mem <Addr>, <NumBytes>
    erase    	Erase sectors (OTP can not be erased)
             	Syntax: erase <lowerbits>, <upperbits>
    setb     	Set the configuration register to bank x (0 and 1 are available)
             	Sytax: setb <int>
    blank    	Blank check all sectors
    q        	Quit
  • To erase the complete flash: type the following:

    Source code

    1
    
    erase ffffffff,ffffffff
  • You will see that the flash will be erased.
  • When finished, you can verify if the flash is blank through typing:

    Source code

    1
    
    blank

    Output will be similar to this one:

    Source code

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    
    Sector 0 (Flash 0): is blank
    Sector 1 (Flash 0): is blank
    Sector 2 (Flash 0): is blank
    Sector 3 (Flash 0): is blank
    Sector 4 (Flash 0): is blank
    Sector 5 (Flash 0): is blank
    Sector 6 (Flash 0): is blank
    Sector 7 (Flash 0): is blank
    Sector 32 (Flash 1): is blank
    Sector 33 (Flash 1): is blank
    Sector 34 (Flash 1): is blank
    Sector 35 (Flash 1): is blank
    Sector 49 (Configuration sector): is blank
    Sector 50 (User-Code): is blank
    Sector 51 (OTP Sector): is not blank
  • Type

    Source code

    1
    
    q
    to quit the application.
  • Now check if you can communicate with the STR91x with the J-Link Commander.
    Check if you can read memory.
Let me know if this helps you out.

Regards,

Souhail

Rob Luebke

Beginner

Date of registration: Dec 3rd 2007

Posts: 4

3

Thursday, December 6th 2007, 10:31pm

STR912 revived

Wow, that was not too hard!
Thanks, it worked and was actually quite simple.
I am back in business and can reprogram my chip.

I never heard about this tool before, so thank you very much for your help.


Cheers,
Rob