I built the Open Programmer about a year ago, and it served me well with several PIC projects, after using a serial zapper for years. Now I wanted to experiment with the ATmega328, so I built the AVR adapter and I have some strange issues. I have no experience with AVR chips, and don't know the 'default' behavior when new.
First I checked all connections and everything seems ok.
- I have two different AVR chips. One marked 'ATmega328P-PU', one 'ATmega328P U' (both literally) They responded somewhat differently:
|Chip marking||ID||Lock||FUSE||FUSE High||FUSE Extra|
The 328P-PU program area is read as random data, and different each read gives different values, giving the impression that the data is floating.
The 328P U program area seems to have code (boot loader?) at the end (from 0x3e00 and up. Which could explain the 0xCF in the lock bits.
-Is this normal behavior for new chips? (i.e. can the unprogrammed area give random readouts?)
-The '328P U' marking seems suspicious. I found no reference to this version. Anyone?
-The oscilloscope shows minor overshoots on the signals from the chips (about 0.2V). I don't think this has any influence on things though. The ground connections seem Ok.
-According to the datasheet, AVCC should be connected. On the AVR adapter PCB it isn't. Problematic?
-The adapter circuit shows a jumper for use with 20-pin devices on the 28-pin sockets. The PCB doesn't have that.