Program space in the Arduino

I have worked with Pic18s in the past. The model that I worked with had 32k of flash. I am using the default atMega8. I know that it has a 1/4 of the flash as the Pic but it seems that there is very little space available.

I have done just some if else statements, timer interrupt, an a/d call and a transmit function. I had to change all the math to integer because it could not handle the floats. In my past experience we had 7 order polynomials and used floats extensively with the Pic18. It does not seem that what I am doing should take up this much space.

Any thoughts

What language did you use on the PIC?
Do you know that the latest Arduino board has 16kb of code space?

remember that arduino is an OSS project and it's using the avr-gcc that might not be the most efficient compiler on earth.


It was a C compiler. I have a atMega16 sitting at home but I was hoping to get as much as I could get out of it.

Usually PIC C compilers are commercial products for which you pay good money... while the avr-gcc is free... it's a tradeoff..

atmeg16 is not supported by arduino now but the atmega168 is and that might have enough space for your project