Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

TQFP Atmega328p gets hot and won't let me upload the code

Status
Not open for further replies.

Plecto

Full Member level 5
Full Member level 5
Joined
Jan 4, 2012
Messages
315
Helped
1
Reputation
2
Reaction score
1
Trophy points
1,298
Visit site
Activity points
4,979
Hi. I've used the TQFP atmega328p with my arduino a couple of times without any problems, but this last one is impossible to handle :mad: The circuit is very simple, I have the atmega328p TQFP chip, 16M crystal with two 22pF caps going to ground. I also have a 10k pull-up from the reset pin. Aside from this there are traces going different places (to two different ADC's, a temp sensor and to a LCD module), but none of these are connected. I have two 1uF decoupling caps on the board also. When I first tried it, I just couldn't upload the code (I get avrdude: stk500_getsync(): not in sync: resp=0x00). After testing both this and that I finally replaced the MCU with a brand new one (with a bootloader on it of course). I also tried to upload a code on this chip using a arduino shield I made and this worked fine. After soldering it to my PCB I was happy that I could finally upload my code, but after some seconds, the program stopped and the MCU started heating up! I replaced the chip again with an Atmega328 that I have previously used (which I knew worked), but the problem was still there. When I had the chip de-soldered I ohmed just about everything and I couldn't find any shorts or low impedance paths. I've also checked the PCB layout, made sure there are no shorts between the pins, the right voltages where it should be etc...
 

The chip gets heated only when the supply voltage is higher in my experience.

Try changing power supply..
 

If the chip get heated, 90% the chip is blown off or 10% chance that you are a bit above the margin of the Maximum specified voltage of the device.
Cheers
 

For me, increased micro temperature during power up is related to somehow damaged chip (if everything else on board is OK).
 

I can't see how the supply voltage is too high. First off, the voltage comes from USB and it goes through a regulator after that. Even if the voltage was too high, it wouldn't allow me to use the arduino with the standard DIP28 chip. I have measured it to 5.05V so the supply isn't the issue.

What I thought about was if several of the outputs were shorted to GND or +V (even thought I haven't found such a short), but I guess the outputs of the MCU is current limited? Also, what if I have a faulty crystal that has a higher frequency than what it says on it, can that create heat?

After talking about this issue on the freenode's #electronics chat, people seemed to start thinking that I've bought a bad batch of Atmega's. Thing is that the third chip I tried was taken from another project and the chip worked just fine on that previous project! And I also mentioned that I can burn the bootloader and upload code prior to soldering it to my PCB, the heating and errors occur after it is on the board. I guess I could try yet another chip :p

- - - Updated - - -

I solved it (I think)! While the chip was soldered to the PCB I checked if all the GND and +V pins were connected to the supply, and they were. To my suprice, when inspecting it while the chip was removed, GND pins 3 and 21 were not connected! I then checked Eagle and strangely enough, even though the schematic had wires going to these pins, they weren't actually connected :( I can now upload the code, but I still don't know how this could have been the reason for it heating up though, nor do I know why it needs so many ground pins :p

edit: Never mind, the success was short lived. The same symptoms have started appearing on this chip as well, I can no longer upload any code.

edit: I figured out something. The heating of the last three chips came after I uploaded a code that communicates with an ADC using I2C. I tried to connect the PCB to the arduino and then upload a clean code straight away and it worked, it doesn't heat up if there is no code on the chip. This is somehow caused by trying to use I2C.
 
Last edited:

I would really like to know what to do here :S Is there anything to limit the current if I write I pin LOW and then connect it to +V? If it is, the only reason these chips fail and overheat is because their I2C interface was broken from the factory and I shouldn't be afraid of buying new ones and continue with my projects? If this was somehow caused by me, I really need to figure out what I did because I have all my TQFP projects on a stall now just because of this :(
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top