Go Down

Topic: Atmega328 vs Atmega328p....what are the differences? (Read 15 times) previous topic - next topic

oric_dan

#10
Jan 11, 2013, 09:20 pm Last Edit: Jan 11, 2013, 09:25 pm by oric_dan(333) Reason: 1
Thanks, I looked at the 584 page d/s, and decided it was easier to ask the experts!

BTW, out of stupidity, I bought a couple of the atmega1284-PU chips instead of the
atmega1284P-PU chips, and to burn the bootloader, I found I had to track down the
avrdude.conf file and change to the chip-signature to that for the 1284. Then, it
burned the bootloader ok using the ArduinoISP sketch from a UNO chip.

However, to download sketches into the 1284 bootloader chip using the IDE, I then
had to change avrdude.conf back to the original 1284P chip-signature. Interesting.

Also, thanks for building the Bobuino bootloader. It's much more Arduino
pin-compatible than the others.

CrossRoads

You're welcome. However:
I didn't build the bootloader, I just developed the pinout I wanted.
maniacbug did the software. I had something mangled together for IDE -0023, but the change for 1.0 was more than I was able to figure out.

I think you can copy the 1284P section in avrdude.conf, call it mega1284.
Then do the same in boards.txt, make a new section with new name and call out mega1284 vs mega1284p
Should let you have 2 versions and not have to switch back & forth.
Worth a shot anyway!
Designing & building electrical circuits for over 25 years. Check out the ATMega1284P based Bobuino and other '328P & '1284P creations & offerings at  www.crossroadsfencing.com/BobuinoRev17.
Arduino for Teens available at Amazon.com.

retrolefty

Quote
Also, thanks for building the Bobuino bootloader. It's much more Arduino
pin-compatible than the others.


Again the bootloader used has nothing to do with the pin abstraction defined with the custom pins_arduino.h file used for a modified core. The bootloader used is reflected in the boards.txt entry of a specific board selection and tells the IDE the baudrate used for the bootloader as well as the memory size and the fuse and lock bit values used. The pins_arduino.h file is where one defines the abstracted arduino pin numbers to the physical port.pin numbers of the chip.

Lefty



john1993


Seems the P version has a timer3 that the non P doesn't, that's rather significant. Does manics port define and support timer 3?


that is an error in the datasheets. there is no difference in timers between the two chips.

retrolefty

#14
Jan 11, 2013, 11:03 pm Last Edit: Jan 11, 2013, 11:49 pm by retrolefty Reason: 1


Seems the P version has a timer3 that the non P doesn't, that's rather significant. Does manics port define and support timer 3?


that is an error in the datasheets. there is no difference in timers between the two chips.


I don't think so. I didn't even know there was a non-P version of the 1284 before today, but that latest datasheet showing a non-P chip version avalible is pretty consistent through out that the timer3 (of timer0 through timer3) in not applicable to the non-P chip. Even the front page summary has:

Quote
Peripheral Features
- Two 8-bit Timer/Counters with Separate Prescalers and Compare Modes
- One/two 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode


I take that to mean the 1284P has 2 8 bit timers and 2 16 bit times, where as the non-P has two 8 bit timers but only one 16 bit timer.

You disagree, if so why?

Edit: Interesting, if you look at the cover sheet page of a old data sheet it states:

Quote
• Peripheral Features
- Two 8-bit Timer/Counters with Separate Prescalers and Compare Modes
- One 16-bit Timer/Counter with Separate Prescaler, Compare Mode, and Capture Mode


So comparing the two datasheets ( 8272A-AVR-01/10 Vs  8272D-AVR-05/12 ) it would seem that the 1284P gained a fourth timer rather then the non-P losing a timer it never had. Pretty confusing all in all.
Lefty

Go Up