For the last few months I've been working on a project that used an STM32F030 microcontroller. Due to a shortage of GPIO I've had to use the SW debug pins for other functions. Until recently this wasn't a problem, since I just made sure to hook up the reset line from the ST-linkV2 and set it up as 'connect under reset'.

In the last few days I've been unable to reprogram the board though, all of a sudden it just started saying 'no target detected' any time I try to program it from Keil uVision.

I thought at first it may just be the ST-link that was playing up, so I tried a couple of others with no avail. Similar situation with multiple other target boards. Then I thought maybe something I had done accidentally in software, but nothing should really stop it from resetting itself and being able to program..?

The only way I've found I can reprogram them is if I pull the Boot0 line high, then power the uC up, and proceed to program. This is a total pain though since it means retrofitting every board I have with a boot0-high jumper.

Does anyone know what's going on here that might be stopping my programming this system the way I always have in the past?

| improve this question | | | | |
  • \$\begingroup\$ You might try using ST's own utility for driving the ST-link, at least to see if you can get the chip erased. Typically this can even work with manually grounding the reset during the first part of the process. Another thing that can help in the future is to try to write your program with a short delay before re-purposing the SWD lines. \$\endgroup\$ – Chris Stratton Jul 28 '16 at 14:25
  • \$\begingroup\$ Note to other members: There is a parallel thread for the same question on ST's STM32 forum >here< which might receive different / interesting suggestions & answers. \$\endgroup\$ – SamGibson Jul 28 '16 at 17:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.