It pretty much has to be a 328p. The compiler shipped with the Arduino IDE (windows/mac) doesn't support the 328.
It could be a 328 with a lying bootloader (which is sort-of the recommended way of using a non-P 328 on Arduinos.)
Um. Have you found an actual difference between 328 and 328p that is relevant to ... anything? My (idle, uninformed) speculation has been that 328s are 328Ps that failed to meet the low-current specifications.
westfw wrote:My (idle, uninformed) speculation has been that 328s are 328Ps that failed to meet the low-current specifications.
Tch! What a nasty, cynical idea. But I'm sure you're absolutely right. That's why the versions of CPUs with higher clock rates always made me a little nervous - just how close to edge are they really running?
(it would raise interesting questions about when and how the signature bytes are written in the chip. The 328 and 328p have different signatures, so if my cynical theory is true, they can write the signature rather late in the manufacturing cycle. On the other hand, the 644 and 644a have the SAME signature even thought they're rather drastically different (644 only has one UART!), which implies that they can't easily change signatures.)