2012-04-11 09:39 AM
I wonder if someone could help me.
I recently have developed my own PCB board. I've soldered all the components, and now I want to starting downloading some firmware to the uC (STM32F407ZG - LQFP144pin). For my surprise I can't connect my programmer to the uC via JTAG. I've contact my programer/ IDE supplier and after some check procedure we concluded that the programmer is OK and that it can't connect with my uC. I've double checked all connections, and power supply. Everything seems to be OK. I have analysed the board and the schematic, and the power supply pins and, JTAG pins are well connected. I've also measured 1.29V on the VCAP1 and VCAP2 pin. But I can't comunicate with the device. At this time, I would like to check if the uC is dead or alive, but I don't know how to procedure. Do someone know if there is some pins where I can read a signal to check if the device is alive? I thought that the VCAP pin could be a start, but even with the 1.29V the device don't communicate with the programmer. I've also turned the boot0 On and OFF (to enter in system memory). But the device don't react. I've also turned the PDR_ON pin ON and OFF. And the device don't react. Thank you all, Best regards, A.Paiva2012-04-11 12:58 PM
I've designed my board based on the STM32F4Discovery and the STM320G-Eval board,
what about layout? e.g. are the traces to decoupling caps < 1cm? 4, 6 or 8 layers? Erik2012-04-11 01:14 PM
Clive1, what about the 1.29V on the VCAP pin? What kind of conclusions can we take?
I hadn't planned on pulling out the multi-meter, but VCAP1 and VCAP2 on a STM32F4-Discovery are at 1.275V, into a 2u2 tant. So the value you have doesn't appear unreasonable.2012-04-11 01:34 PM
Yes they are less than 1cm. Only one or two traces are a little greater than 1cm.
I've only two layers. The power supply seems to be cleaned. Regards, A.Paiva2012-04-11 01:45 PM
I hadn't planned on pulling out the multi-meter, but VCAP1 and VCAP2 on a STM32F4-Discovery are at 1.275V, into a 2u2 tant. So the value you have doesn't appear unreasonable.
I'm sorry if I made you pull the multi-meter out. I thought you did know that the voltage on this pins was between 1.1 and 1.3V. :( Sorry. My conclusions is that the internal regulator is working. But does it mean that the device is alive?
2012-04-11 01:59 PM
Regulators usually just work, so insanely high or low output would be indicative of a problem, also excessive heat output from the part.
Absent a clock in a synchronous part, JTAG or the system loader aren't going anywhere. Chances of HSI not working strike me as pretty slim. There is not any magic output or chirp to look for. Check the static state of the JTAG pins. Check also, on a scope, the NRST signal, if this is LOW or actively driven by any external circuits, the device will also go nowhere. After the supplies, this would be critical. Have you tried poking the USARTs in RealTerm or something similar where you can see/control what's coming in/out of the part in loader mode?2012-04-11 02:21 PM
Absent a clock in a synchronous part, JTAG or the system loader aren't going anywhere. Chances of HSI not working strike me as pretty slim.
I had measured the voltage on each pin of the JTAG connector:
Pin1, Pin2 (Power Supply) – 3.3V;
Pin 4, 6, 8, 10, 12, 14, 16, 18, 20 (GND) – 0V;
Pin 3 (NTRST) – 3.3V;
Pin 5 (TDI) – 3.3V;
Pin 7 (TMS) – 0V;
Pin 9 (TCK) – 0V;
Pin 11 (RTCK) – 0V;
Pin 13 (TDO) – 0V;
Pin 15 (RST) – 3.3V;
Pin 17, Pin 19 – 0V;
But I can't find any conclusion to it.
Check also, on a scope, the NRST signal, if this is LOW or actively driven by any external circuits, the device will also go nowhere. After the supplies, this would be critical.
I have any external driver for the NRST signal. I'm using a single push-button with a resistor.
Have you tried poking the USARTs in RealTerm or something similar where you can see/control what's coming in/out of the part in loader mode?
I've remmaped the USART pins to other pins, so I can't send data to the device trough the USART. But I will see in a scope If I can read data from the standard TX pin. Thank you for your suggestion.
2012-04-11 03:24 PM
I've remmaped the USART pins to other pins, so I can't send data to the device trough the USART. But I will see in a scope If I can read data from the standard TX pin.
Well that certainly does make things more complicated for you. You need to be able to Send data in the RX pin, and see what comes out of TX, I'd recommend focusing on USART3. Either PC.11/PC.10 or PB.11/PB.10 Not escaping these pins will make production programming of your board significantly more difficult and expensive.See this document for specific requirements. Pay very specific attention to the pins which are configured as outputs, and how these may conflict with how you might be using them in your design.
2012-04-12 10:48 AM
Thanks Clive for your help.
The document you provided, helped me! After a day looking for the fault, I found that the JTAG interface don't like the TVS diodes that I've choiced. Thank you Clive1 and Erik! Best Regards, Almerindo Paiva2012-04-13 08:29 AM
Hi,
Does someone know what does ''Cannot find debug component from ROM table'' mean? My IDE recognize the device, but when I try to connect to the target, it indicate this messages. What's now wrong? Best regards, A. Paiva2012-04-13 08:45 AM
I have no direct answer, but I'm fairly sure you will keep getting 'mysteries' running this processor without a solid ground plane
Erik