Hello wonderful wealth of information forum which has helped me so much, I have a question about an Atmega to ask.
Wrote a big code and burned it onto an atmega88. Used up 7kB of the flash so decided to upgrade to the Atmega168 to get those 16kB. I bought a DIP version of the Atmega168 called the Atmega168A-20PU. Using AVR Studios 4, I changed in the config to Atmega168A, compiled the old code, ID verified the device using STK500, and burned the program into the micro. The code executed until it hit the "sei();" line then it began outputting a messed up UART message. I looked through my code a thousand times and couldn't figure out why it didn't work when I executed the "sei();"
Even though the chip says Atmega168A on the DIP version, I changed the configuration to regular old Atmega168 just experimenting, recompiled and reburned. The program then executed perfectly enough (although I have found other bugginess in the code that wasn't there when the program is burned into an Atmega88).
Why do I have to tell AVR Studio 4 that an Atmega168A is an Atmega168 to get the interrupts to somewhat work correctly???