El arduino mega es el mas potente de la familia arduino, pero si es para empezar, te recomiendo también el arduino uno, salvo que tengas proyectos grandes en mente.
En cuanto a si leonardo o el uno, no sabria decirte, pero no se si todas las shied antiguas son compatibles con el leonardo, mira este articulo entero:
Conclusion.
I really like the Leonardo, I love the USB keyboard and mouse emulation and the neat PCB layout. I also like that it is cheaper than an Uno, and has the following advantages:
More PWM pins
More digital pins full stop
Separate I2C pins (A4 and A5 are not dual purpose on Leonardo)
A second hardware serial port
So, what did I dislike?
Not much really - in theory, an advantage of the Uno is that if you destroy the ATmega328, you can replace it with a new one.
http://www.doctormonk.com/2012/10/ardui ... o-uno.html
También podrias mirar el Mbed, que es bastante potente y pequeño para todo lo q trae, tiene como nucleo un ARM m3 a 96Mhz y 32kb de ram, se programa en c/c++ y supongo que permitirá el acceso a bajo nivel.
http://mbed.org/handbook/mbed-NXP-LPC1768Dependiendo de lo que busques, puede tener algún inconveniente:
* Se programa con un compilador web, aunque los usuarios en los foros están desarrollando uno offline, pero por otro lado, permite mas fácilmente compartir los códigos con los demás usuarios. Hay muchas librerías disponibles, y abiertas, que puedes modificar a tu gusto o proponerle los cambios al autor.
*Si ves una imagen del Mbed, te darás cuenta que si quieres ponerle algo, tienes que pincharlo en una protoboard para pinchar ahí los cables, salvo que te compres alguna placa hecha, o lo compres junto con el robot M3pi. pero se alimenta por Usb.
* Todo te lo vas a encontrar en ingles eso si xd.
*Mas caro que arduino
El Mbed lo use temporalmente, y me gusto muchísimo.
No estoy seguro, pero también puedes conseguir un microcontrolador como el pic, mediante samples, al menos tenia entendido que antes se podían pedir, ahora no tengo ni idea.
Saludos