¿Existen procesadores poderosos que sean amigables para los aficionados? [cerrado]

8

Ok, tengo un proyecto que quiero crear pero requeriría un poco de potencia de procesamiento. Lo más poderoso que he visto hasta ahora ha sido el ATMega1284P . Realmente por potencia quiero decir que necesito memoria de programa y RAM, no MIP sin procesar.

¿Hay algo más por ahí que sea amigable para los aficionados?

Por aficionado amigable me refiero a no tener que tener máquinas costosas para soldarlo (estaciones de retrabajo, etc.). También, por supuesto, ser capaz de comprar solo un par de ellos sin gastar un brazo y una pierna. Y, por supuesto, tener compiladores disponibles gratuitamente y otras herramientas de software.

Mi proyecto es construir una calculadora pequeña (portátil) con capacidades gráficas simples y posiblemente algunas capacidades de programación limitadas.

Earlz
fuente
44
¿Puedes dar más información sobre tu proyecto? Flash externo y RAM están disponibles si solo necesita más memoria. Además, ¿qué significa "hobbyist friendly" para ti? ¿Le preocupa el paquete físico, la cadena de herramientas, el costo, la complejidad del programa, la complejidad periférica y / o algo más?
Kevin Vermeer
Si define a los aficionados a los aficionados como 'en el paquete DIP': la serie PIC32 tiene muchos chips empaquetados DIP. ejemplo: PIC32MX250F128B 128kB Flash, 32 kB RAM, 40 MHz.
Wouter van Ooijen
La pregunta no puede responderse sin que nos diga cuánta RAM y Flash necesita. Incluso entonces, es básicamente una pregunta de recomendación de producto.
Dmitry Grigoryev

Respuestas:

9

Las tarjetas ARM de bajo costo como LPCXpresso y mbed son fáciles de usar y le brindarán mucho más rendimiento.

Leon Heller
fuente
Terminé yendo con mbed. Su concepto de compilador en línea es un poco extraño, pero trabajar de inmediato es algo que me gusta mucho. Además, las especificaciones de mbed son un buen paso adelante respecto a Arduino junto con dejar a explorar la arquitectura ARM (que he estado queriendo hacer desde hace tiempo).
Earlz
5

Echa un vistazo a algo de la familia OMAP.

Gumstix ?

Beagleboard ?

pingswept
fuente
2
No consideraría a Gumstix como el hobby más amigable. Los conectores pequeños y OE no son exactamente fáciles de usar para las personas. :-)
akohlsmith
Los conectores pequeños son definitivamente un dolor, pero con una placa de conexión, creo que son bastante buenos. Personalmente, creo que tomaría el Beagleboard sobre un Gumstix.
pingswept
Por cierto, solo por curiosidad, ¿por qué es tan difícil encontrar tableros potentes que sean fáciles de usar? ¿Es solo que a medida que aumenta la potencia, aumenta la complejidad? ¿O la mayoría de los aficionados son demasiado pobres para poder pagar tablas más caras, por lo que a ninguno de los vendedores le importa la facilidad de uso?
pingswept
66
@pingswept: estaba considerando la misma pregunta y llegué a la conclusión de que los micros más potentes son inútiles sin la complejidad para ejercer la funcionalidad. Es como la historia de "Si le das una galleta a un mouse": si le das mucha memoria a un diseñador de procesadores, él querrá muchos periféricos que lo acompañen. Si le das muchos periféricos, querrá un NVIC y DMA para que los acompañe. Si le das DMA y un NVIC, querrá muchos pines para ejercitarlos. Si le das muchos alfileres, querrá un buen paquete de lanzamiento.
Kevin Vermeer
1
Además, "Potente" nunca significa lo mismo para todos. Esta pregunta es sobre la disponibilidad de un micro de 8 bits con grandes cantidades de memoria. Tal vez el OP tiene un uso, pero un micro de 32 bits más rápido con más complejidad para acompañar esa memoria es útil para más personas.
Kevin Vermeer
4

Dependiendo de los detalles de su proyecto, podría sugerir el NSLU2 "Slug", que es un procesador ARM, registrando 133 o 266 Mhz.

Eso le brinda una placa muy pequeña (integrada) y algunos puertos USB e incluso uno o dos puertos seriales (UART plus MAX232).

Puede escribir su aplicación para que se ejecute en Linux, compilarla con GCC, etc.

Brad Hein
fuente
Y use la calculadora de precisión "bc" incorporada =) y un teclado USB para la entrada del usuario, y una pantalla LCD USB para el búfer de cuadros. ¡Hmm, Slug tiene todo lo que necesitas!
Brad Hein el
4

Hélice de paralaje. Núcleos paralelos de 8-32 bits y soporte VGA integrado.

Sería muy fácil construir una calculadora gráfica programable usando este procesador. El chip está en una configuración DIP de 40 pines y hay varias placas de prototipos disponibles, varias de las cuales tienen hardware de soporte para video, teclado y mouse incorporado.

DixieGeek
fuente
2

Muchos procesadores / microcontroladores admiten memoria externa.

Por ejemplo, el AVR XMega puede admitir varios MiB de SDRAM externa para el almacenamiento de datos (no se puede ejecutar desde el bus externo). (Existe una limitación de GCC de punteros de 16 bits para AVR-GCC).

Muchos ARM también tienen buses externos: LPC2478, piezas de luminaria, serie AT91SAM.

Yann Ramin
fuente
2

Proyecto genial! Supongo que su elección de procesador (y la razón por la que necesita memoria externa) dependerá de cómo defina "capacidades gráficas simples" y "capacidad de programación limitada".

Deténgase y considere que la calculadora TI-83 tiene un procesador de 6 MHz, usa 8 KB de RAM para las funciones del sistema (24 KB es gratis para los programas de usuario) y tiene 512 KB de Flash con un chip Flash externo de 2 MB en las ediciones especiales "Silver". Ejecuta un sistema operativo patentado y tiene soporte para más funciones matemáticas de las que he oído hablar o utilizado, así como la programación en 4 idiomas. Su ATMega1284 tiene 16 KB de RAM y 128 KB de Flash. ¿Crees que vas a generar suficiente código para llenar esos 128 KB, dado que TI solo usó aproximadamente tres veces más? Lo dudo.

Si solo desea utilizar una pantalla LCD de caracteres y una matriz de LED para graficar con funciones matemáticas básicas (Botones 0-9, variables x e y, + - * /% =, y algún tipo de almacenamiento), entonces un ATMega o Arduino es Más que adecuado para sus necesidades.

Si, por otro lado, desea ejecutar un TFT en color con Linux incorporado, secuencias de comandos / programación en bash, lua o cualquier lenguaje de programación que elija, graficar con gnuplot e ingresar todo en un mini teclado / teclado numérico, entonces usted debería mirar chip más potente. Definitivamente, elija 32 bits si desea lidiar con grandes números y si desea direccionar mucha memoria. La mayoría de estos chips (recomiendo ARM) vienen en paquetes QFP. ¡Pero no tenga miedo! No necesita máquinas costosas para soldar un dispositivo [LT] QFP o PLCC: solo una mano firme, una punta fina y una técnica decente serán adecuadas. Ah, y un tablero bien hecho con máscara de soldadura. Sin embargo, muchos paneles de desarrollo se adaptarán bien a este proyecto.

Puede comprar estas fichas en singles por $ 2 a $ 15, dependiendo de las opciones que desee. Además, muchos fabricantes enviarán muestras si lo solicita, ¡con la esperanza de que compre miles una vez que todos tomen el ACT y SAT en una calculadora EARLZ-9000!

Kevin Vermeer
fuente
¿Puedes dar algunos lugares específicos para comprar chips ARM? Parece que no puedo encontrar muchos procesadores ARM fuera de las placas de desarrollo. Y sí, creo que tengo que trabajar en mis habilidades de soldadura SMD entonces :)
Earlz
Y también creo que llevaré este proyecto por etapas. Al principio solo me preocuparé por lo básico con AVR y tal, eventualmente creo que sería bueno expandirme a un sistema más poderoso a través de ARM
Earlz
@earlz re: su primer comentario: cualquier lugar que venda micros venderá productos ARM: Digikey, Mouser, Newark, Arrow, Allied, Future, sparkfun ... Solo nombre a su distribuidor. Es importante comprender que ARM no fabrica ningún chip físico, fabrica IP, que luego vende a un fabricante de chips (Atmel, TI, etc.) que fabrica un microcontrolador compatible con ARM. Para seleccionar un chip, primero elija su núcleo (ARM7, ARM9, Cortex M3, etc.), luego vaya a un distribuidor y vea qué opciones tienen los fabricantes.
Kevin Vermeer
@earlz re: tu segundo comentario - Esto depende de tu enfoque. Su propuesta AVR -> ARM es una buena idea si desea escribir C puro para el código de su aplicación, y luego simplemente escribir una capa de abstracción de hardware para cada procesador. No utilizará todas las capacidades de ARM de esta manera, pero está bien. Sin embargo, los enfoques AVR y Linux embebido son fundamentalmente diferentes. Si espera ir a Linux integrado, le sugiero que compre un kit de desarrollo con una interfaz de pantalla y teclado (esto podría ser una placa o teclado secundario AVR), y luego la segunda etapa sería hacer su propia placa.
Kevin Vermeer
2

Ha recibido una gran cantidad de información excelente sobre microcontroladores, pero si desea simplificar su trabajo en el extremo de la pantalla, puede echar un vistazo a algunas pantallas LCD que facilitan el diseño de la GUI y la visualización de gráficos. Aunque no he usado sus funciones gráficas antes, he usado los LCD de Amulet Technologies (tanto monocromáticos como en color) y estoy muy satisfecho con lo fácil que es usarlo en combinación con un pequeño microcontrolador. Solo tiene que implementar su protocolo serie RS232, que es bastante simple.

Dave
fuente
1

Depende de su definición de "poderoso", por supuesto. Personalmente, he visto a los procesadores Propeller hacer cosas increíbles, y soy parcial con la mayoría de las variantes ARM, aunque nuevamente, la definición de "poderoso" necesita ser evaluada. :-)

Los procesadores de 32 bits están en todas partes y vienen en paquetes relativamente fáciles de usar (PQFP con plomo, etc.) ¿Qué está tratando de hacer?

akohlsmith
fuente
1

Bifferboard?

http://sites.google.com/site/bifferboard/

    * CPU de 150MHz, conjunto de instrucciones Intel 486SX, MMU.
    * Consumo de energía de 1 vatio (200mA a 5v)
    * 68 mm x 28 mm x 21 mm (peso 28 g)
    * 32MB SDRAM / 8MB Flash
    * OHCI / EHCI USB 2.0
    * 10/100 ethernet
    * Consola en serie 115200 baudios (se puede usar como 2 GPIO)
    * JTAG de 4 pines (se puede usar como GPIO)
    * 2 GPIO permanentes (1 LED, 1 botón)
    * Linux 2.6.32.16
    * Suministrado previamente flasheado con OpenWrt
    * 35 GBP cada uno 
Gran ola
fuente
Para los lectores posteriores, "35 libras cada uno" es el costo, no el peso. Es un poco más de $ 60 US para llevarlo a los Estados al tipo de cambio actual.
Kevin Vermeer
Je, de alguna manera estos han subido de precio ahora a 69 libras, o alrededor de $ 90 USD
Earlz