I wanted to buy my Arduinos from Digikey to save money and download the AVR by myself. But when I got on, there are 2 Atmega328s?
One is ATMEGA328P-PU and the other is ATMEGA328-PU. They all have the same specs. But one is cheaper by $1. I'm wandering are they the same or is there some little difference that will make me regret buying the cheaper one.
Note how one has an extra P after the 328 and costs more by a dollar. This is probably referring to more stringent standards that it meets. Oftentimes popular ICs will be produced with different qualities. Some meet manufacturing standards, other meet automotive, medical or aerospace. Usually this means that the IC can operate under colder/hotter climates, deal with slightly larger over-current or somehow function better under less favorable circumstances. Dig through the data-sheets to see what exactly makes one better. PS for the average hobbyist these extra functions are usually redundant.
Just remebered P stands for Power. It deals with consumption of power under different clock cycles/states. Go to page 320 and 321 of the data sheet to see the comparison. The …328P… consumes less power in idle, powerdown and active power modes (max current consumption is lower). You don’t need the P series because the small power savings are usless when you consider that you are using an arduino. These power savings would only come into affect if your circuit was designed for energy efficient operation. (What I’m saying is Arduino is a power waster b/c it’s made for begginers and so a better ATMEGA won’t help).
You might want to consider getting one with the bootloader
SparkFun has one ($5 + shipping) and you can find it other places also. If you really want to save $ and not spring for a programmer then you want the bootloader already loaded. This assumes that you really want it to be Arduino compatible. Your post is a little confusing because you say you want to buy Arduinos and then download AVR (assume you meand AVR Studio ?? which is different that the Arduino IDE). Anyway, if you are going to program it with serial data from the Arduino IDE, you might look at that option.