En lugar de dar una respuesta directa, voy a sugerir algunos de los pros y los contras de los microcontroladores que ha sugerido.
8051
Un microcontrolador de uso común que se enseña en la mayoría de las universidades de ingeniería.
- ¿Cuál es el mejor instituto de capacitación integrado en Hyderabad?
- ¿Cómo debo comenzar con la programación del microcontrolador 8051? ¿Alguien puede dirigirme a programas 8051 simples?
- ¿Qué es el temporizador de vigilancia en el sistema integrado?
- ¿Cuál es el tamaño de las variables integrales en un controlador de 8 bits, un controlador de 16 bits y un controlador de 32 bits, y depende totalmente de la arquitectura MCU o la arquitectura del compilador?
- ¿Cómo puede un chico de hardware con un conocimiento de software decente de Embedded C & Python conseguir un trabajo en Bangalore?
barato y comúnmente disponible en el mercado.
Está disponible en formato de inmersión de 40 pines que se puede usar fácilmente para construir su circuito en una placa de pruebas o una placa de punto / perf.
Gran cantidad de código disponible en línea.
El desarrollo de software puede hacerse por cualquiera
- Kiel uVision IDE, (Comercial)
- Compilador SDCC Small Device C (fuente abierta)
- AVR Studio (para AT89sxx) (Freeware)
- BASCOM
Programado en C incrustado, básico y ensamblado.
Para programar el chip, tendrá que comprar un programador separado que se pueda conectar a su puerto USB / serie.
Algunos derivados del 8051, como el P89V51, se pueden programar en serie utilizando un puerto serie de PC o un convertidor de USB a serie. Tendrá que construir un pequeño circuito de programación utilizando algunas resistencias y transistores.
La mayoría de los derivados 8051 como P89v51, AT89s51 / 52 no tienen ninguna compilación en ADC .
Entonces, para tratar con señales analógicas, deberá conectar un ADC (generalmente ADC0804 / 0809) para convertir sus señales analógicas a digitales.
Si está utilizando ADC0804 / 0809, deberá conectarlos mediante un bus de paralaje de 8 bits que requerirá 8 + 2 pines de su microcontrolador de 40 pines.
Las series AT89s51 / 52 tampoco tienen un puerto I2C y funciones de temporizador limitadas.
La RAM está limitada a 128/256 bytes.
AVR
La familia de microcontroladores AVR fabricados por ATMEL (ahora Microchip) viene con una amplia gama de opciones en
- Tamaño de la memoria flash,
- Tamaño de memoria RAM,
- EEPROM
- ADC,
- Puertos I2C / SPI,
- USB
- Canales PWM.
También viene en configuraciones DIP de 40 pines y 28 pines que se pueden usar fácilmente para construir su circuito en la placa de pruebas o en la placa punto / perf.
Gran cantidad de código disponible en línea.
Buena y activa comunidad de usuarios en línea, por ejemplo, fanáticos de AVR
El desarrollo de software puede ser realizado por
- AVR Studio (con todas las funciones, desarrollado por ATMEL, es compatible con la mayoría de los programadores / depuradores)
- AVR -GCC (peso ligero, de código abierto, compatible con la mayoría de los chips ATMEL AVR)
- BASCOM (compilador básico)
Programado en Basic, embebido C y ensamblaje.
Para programar el chip, deberá comprar un programador separado que pueda conectarse a su puerto USB
Los programadores ampliamente utilizados son
- USBasp
- USBtinyISP
- Programador / Depuradores fabricados por ATMEL
La mayoría de los chips ATMEL AVR de 8 pines y 40 pines se han incorporado
- ADC de 8 bits,
- Comparadores,
- SPI, I2C,
- Puerto serial
- Memoria Flash (8KB -32KB)
integrado con el chip en sí.
Arduino
Arduino es un entorno de desarrollo basado en microcontrolador ATMEL AVR que viene con una plataforma de hardware (la placa Arduino, por ejemplo: -Arduino Uno)
y un entorno de desarrollo de software, Arduino IDE.
Está programado en un lenguaje basado en C que es fácil para los recién llegados y viene con una amplia gama de bibliotecas para SPI, I2C, Ethernet, etc.
Buena y activa comunidad de usuarios en línea
No se requiere programador externo . La placa de hardware Arduino viene con Bootloader
Desarrollo de software realizado a través de Arduino IDE.
El Arduino Uno viene con un micro controlador ATmega328 de 28 pines con las siguientes características.
- 32 kBytes Flash
- SRAM (kBytes): 2
- EEPROM (Bytes): 1024
- Max. Frecuencia de operación 20 MHz
- CPU AVR de 8 bits
- 23 pines de E / S
- SPI: 2
- TWI (I2C): 1
- UART: 1
- Canales ADC: 8
- Resolución ADC (bits): 10
- Velocidad ADC (ksps): 15
- Comparadores analógicos: 1
- Temperatura. Sensor: sí
Mi sugerencia personal
Es mejor que no use microcontroladores basados en 8051 (AT89s51) para construir su primer proyecto de robot.
Un gran problema es que no tiene ningún periférico incorporado como ADC en 8051, por lo tanto, si planea procesar señales analógicas, primero tendrá que conectar un ADC con 8051, que debe construir y depurar en un tablero o placa de pruebas. .
Pasará mucho tiempo conectando varios periféricos con su 8051 en lugar de construir su robot.
Mi sugerencia personal es utilizar un microcontrolador AVR o una plataforma Arduino al construir su primer robot.
De hecho, te sugiero que uses una plataforma Arduino sobre un microcontrolador AVR (ambos usan microcontroladores AVR).
Una de las razones por las que recomiendo un Arduino es que ya viene con
- un microcontrolador completamente probado,
- cargador de arranque,
- Convertidor USB a serie
- y un IDE fácil de usar con una gran cantidad de bibliotecas.
Esto reduciría significativamente su tiempo de desarrollo y frustración.
La depuración de hardware y software embebido puede ser bastante frustrante.
También es relativamente más barato comprar una placa Arduino y configurar el ide también es bastante fácil