ATMega88

Hello! :slight_smile: I am working on a university project and the chips we are given by the university are DIP packages of ATMega 88. I see that these chips are pin- compatible with the 328. My question is: is there any way I can stick an ATMega88 into an Arduino UNO R2 and have it work properly?

Yes. With some “moderate” level complications.
Are you sure you weren’t given 88’s to specifically discourage such actions?

Bet it wouldn't take much. Looks a 168 with 1/2 the memory.
http://www.atmel.com/devices/ATMEGA88.aspx?tab=documents ATmega88/168 datasheet

  • make sure there's an entry for it in avrdude.conf - possibly copy the 168 section, update the signature bytes and memory sizes

  • make a new entry in boards.txt, again copy the 168 section and tweak as needed

  • update pins_arduino.h to call out the new type in a few places

Probably put pins_arduino.h in a new variants folder in the 1.0.1 directory somewhere.

westfw:
Yes. With some "moderate" level complications.
Are you sure you weren't given 88's to specifically discourage such actions?

Absolutely, and also they are recycling some of the parts. We were explicitly prohibited from using the Arduino as a part of our final design, which is fair enough. This is a circuit design exercise as much as anything, so it really wouldn't make sense to include such an expensive component into the design. However, using it as a design tool isnt. The hardware of the Arduino definitely allows us to write different parts of the code at the same time- I'll be developing the motor drivers while someone else is handling the sensing and control, etc. Anyway, we'll research it and give it a try :slight_smile: If I see any of the magic smoke, I'll make sure to report back :stuck_out_tongue:

CrossRoads:
Bet it wouldn't take much. Looks a 168 with 1/2 the memory.
http://www.atmel.com/devices/ATMEGA88.aspx?tab=documents ATmega88/168 datasheet

  • make sure there's an entry for it in avrdude.conf - possibly copy the 168 section, update the signature bytes and memory sizes

  • make a new entry in boards.txt, again copy the 168 section and tweak as needed

  • update pins_arduino.h to call out the new type in a few places

Probably put pins_arduino.h in a new variants folder in the 1.0.1 directory somewhere.

I'll try this out :slight_smile: Thanks a lot :slight_smile: I probably won't need to use any of the ready libraries, though, because we have to write them from scratch anyway.

Thanks again to everyone, I was expecting a firm "NO", but apparently its more of a "maybe", which is definitely good :).

MechaPrime:
Hello! :slight_smile: I am working on a university project and the chips we are given by the university are DIP packages of ATMega 88. I see that these chips are pin- compatible with the 328. My question is: is there any way I can stick an ATMega88 into an Arduino UNO R2 and have it work properly?

Probably...but why? All you gain is a pretty piece of blue circuit board around the chip with some connectors on the edge.

I'd stick the chip in a breadboard and connect your Arduino Uno to it as an ISP programmer. It will work just the same and everybody will be happier.

fungus:
I'd stick the chip in a breadboard and connect your Arduino Uno to it as an ISP programmer. It will work just the same and everybody will be happier.

And you will learn a bit more about the nitty-gritty of how it works. And that's the whole point of the exercise, yeah?

Taking shortcuts you are just shortchanging yourself, in the end.