Tabla de contenido:

Robot Brain: construya una computadora de placa única en una noche: 11 pasos
Robot Brain: construya una computadora de placa única en una noche: 11 pasos

Video: Robot Brain: construya una computadora de placa única en una noche: 11 pasos

Video: Robot Brain: construya una computadora de placa única en una noche: 11 pasos
Video: La primer humanoide robot del mundo 🤖😳😱 #robot #robotics #robots #robotandroide #androide #humanoide 2024, Mayo
Anonim
Robot Brain: construye una computadora de placa única en una noche
Robot Brain: construye una computadora de placa única en una noche

¿Se quedó sin memoria en su Picaxe o Arduino? ¿Pero una PC es excesiva para el trabajo? Eche un vistazo a esta computadora de placa única de código abierto que se puede programar en lenguajes como C, Basic, Forth, Pascal o Fortran. Esta placa utiliza circuitos integrados económicos y deliberadamente utiliza chips grandes para que sea fácil de soldar. Utiliza un sistema operativo llamado CPM que se ejecuta en un Z80, que fue popular desde finales de la década de 1970 hasta mediados de la de 1980. Como resultado, hay al menos un gigabyte de software disponible, incluidos lenguajes de programación, programas de hojas de cálculo y procesadores de texto. CPM es un sistema operativo basado en texto y es una versión simple de DOS. Esta placa es perfecta si está construyendo ese robot altamente complejo o sistema de automatización del hogar y sigue encontrando que las computadoras de un solo chip como imágenes, arduinos y atmegas simplemente no tienen el memoria. La tecnología moderna significa que los discos duros y las unidades de disquete pueden existir en chips de memoria únicos, y las computadoras que solían necesitar una fuente de alimentación trifásica ahora se pueden emular en una placa alimentada por baterías. por un grupo de entusiastas amistosos https://groups.google.com.au/group/n8vemBoards son un diseño de código abierto, y puedes construir el tuyo propio o comprar uno a un entusiasta en los EE. UU. a un precio de costo ($ 20). Las Eproms se pueden comprar preprogramadas o puede programar las suyas propias. Juntemos uno y veamos qué puede hacer …

Paso 1: Únase al grupo de Google

Únase al grupo de Google
Únase al grupo de Google

Puede explorar el grupo https://groups.google.com.au/group/n8vem, pero si envía una solicitud para unirse al grupo, puede contribuir a la discusión. Hay una biblioteca de archivos y muchas imágenes de tableros de trabajo. Envié un mensaje al grupo hace unas semanas y pedí unirme. Pedí una tabla y llegó una semana después, lo que es bastante rápido desde los EE. UU. A Australia. Yo no tenía muchas de las partes, así que me dieron la lista de piezas de aquí https://n8vem.googlegroups.com/web/TestPrototype_BOM_PART-LIST.lst?gda=6DMrhVQAAABRoI8ydU505jGCwGWcAnRLVYTZaCdyJias028kLbDjM7mHeIlRNZNuWyWm5kKNAJr2D8gD3ctlIYKczaAghgqdUwk_6Qi3BU8HCN0q6OYwM6JXPqrFQS5SIfKND7QsaYYQuite algunas tiendas tienen las partes, incluyendo Digikey, Jameco y Futurlec. Todos los chips lógicos se especifican como partes LS. LS es un poco de la vieja escuela y los chips consumen más energía y se calientan. Sustituí todos los chips LS por la gama HCT más moderna. Los HCT son directamente compatibles pero usan mucha menos energía. Del mismo modo, opté por un CMOS Z80, un CMOS UART (16C550) y un chip de entrada / salida CMOS (82C55). La placa llegó casi al mismo tiempo que las piezas y llegó el momento de empezar a soldar.

Paso 2: suelde la placa

Soldar la placa
Soldar la placa

Soldar fue bastante fácil y se hizo en una hora y media. Decidí conectar los chips grandes y soldar los chips más pequeños directamente. El mayor problema fue doblar ligeramente todos los pines de chip para que encajaran en la placa. Hay un chip de reloj en tiempo real que no necesitaba, así que lo dejé fuera. Se puede agregar más tarde. También puse un enchufe de CC en mi tablero y un regulador de 5V. Esta placa es tan eficiente que ni siquiera necesita un disipador de calor en el regulador. Lo corrí de una verruga de pared de 9V. El eprom tiene una etiqueta sobre su ventana, de lo contrario podría borrarse si sale al sol. El esquema está aquí https://n8vem.googlegroups.com/web/Printing+TestPrototype- sch. Pero me resultó útil compararlo con mi primera computadora que tenía 8 chips de RAM para obtener 64K. Esta placa tiene medio meg en un solo chip. La CPU es una Z80. El Z80 vino del chip 8080, y el 8080 también generó el 8086, 80286 hasta 80586, que se llamó pentium porque la oficina de patentes dijo que no se podían patentar números. Las instrucciones del código de máquina 8080 en un Z80 todavía existen en las PC modernas.

Paso 3: Programe el Eprom

Programar el Eprom
Programar el Eprom

Si no desea programar una eprom, siempre puede comprar una preprogramada cuando obtenga la placa. Pero pensé que podría usar eproms programados en algunos otros proyectos, así que obtuve un programador y un borrador. Estos solían costar miles. Pero recogí el programador por $ 34, incluido el envío (busque el programador eprom en ebay), y el borrador costaba $ 25, incluido el envío. El programador viene con su propio software y si le dice el número de chip, le da una imagen de cómo insertar el chip y configurar todos los interruptores. Los eproms vienen en blanco, pero programé uno, luego lo borré durante 5 minutos y lo reprogramé, solo para comprobar que todo funcionaba. La imagen completa de la rom está aquí https://n8vem.googlegroups.com/web/ROMIMAGE.zip?gda = 5RkX1kEAAABRoI8ydU505jGCwGWcAnRLTpwShSoH8O7HvxGhdHl1lXeXmbZQXujx0V3ulhJIKNrhtrFcBixfottYTQUy-Muj7WbB0sVAO2HxmgNgtm1PE esto incluye archivos útiles. Es como el disco de instalación de XP, excepto que entra en un chip. Descomprima el archivo, encienda el programador, cargue el archivo.bin y programe el chip. Puede volver a leer los datos para comprobar si se procesaron. El único inconveniente con este programador es que necesita un puerto paralelo. Algunas PC más nuevas no tienen un puerto paralelo. Me construí un cable de extensión de puerto paralelo para no tener que seguir estirando la mano detrás de la PC. Consta de un enchufe IDC D25, una toma IDC D25 y 2 metros de cable plano. Use un tornillo de banco para apretar el enchufe en el conector. El programador willem que compré no muestra todas las configuraciones necesarias para programar una eprom de 1 megabyte. A la izquierda del chip, cerca de la parte inferior, es necesario mover un puente. Sin embargo, la configuración está en el manual, que es un archivo llamado Willem PCB5.0 Manual.html en la sección del manual. Esto tiene muchos más detalles sobre la configuración.

Paso 4: Conecte un cable serial

Conecte un cable serial
Conecte un cable serial

Si regresa al paso 2, puede ver el cable serial en la imagen. Hay tres partes para esto: 1) Mi cable de extensión que viene de la parte posterior de la PC. Este es el cable arcoiris. Lo construí de la misma manera que el cable de extensión de plomo del programador, excepto que este usa un enchufe y un enchufe D9 IDC. Es realmente útil no tener que buscar detrás de la computadora todo el tiempo. El cable de extensión tiene una hembra en un extremo y un macho en el otro. 2) Un módem nulo. Esta es una conexión de mujer a mujer. Obtuve el circuito desde aquí https://www.beyondlogic.org/serial/serial.htm (desplácese hacia abajo un poco). Esencialmente, un módem nulo une los pines 7 y 8, une los pines 1, 4, 6 e intercambia los pines 2 y 3. La conexión de 9 pines se convierte en una conexión de 3 cables: tierra, transmite datos y recibe datos. En cierto modo simplifica RS232.3) Un encabezado de 10 pines en la placa a un conector macho D9. Más sobre esto en la página siguiente. En el esquema, el D9 macho de la izquierda se conecta a la PC. El módem nulo es una conexión hembra a hembra con las conexiones en los enchufes. Podría haber cableado todo esto con muchos menos enchufes, pero usaré el módem nulo en otros proyectos.

Paso 5: Conecte el encabezado en serie

Conecte el encabezado en serie
Conecte el encabezado en serie

El encabezado de la placa está diseñado para ir a un cable plano IDC de 9 vías y luego a un enchufe macho D9. El único truco es que el cabezal de 10 vías está diseñado para admitir un cable plano de 10 vías. Si usa un cable de 9 vías, hay un espacio para el cable que falta. He tomado un primer plano para ayudar a aclarar esto. Si lo conecta correctamente, el pin 1 de la placa va al pin 1 del D9. El pin 5 del D9 debe conectarse a tierra en la placa. Si esos dos están conectados, el resto de los cables también estarán bien.

El cable 1 está a la izquierda de ambas vistas del cable plano. Puede usar cable plano con colores si lo desea. Lo que ensucia el conector IDC es el pegamento termofusible. Probablemente no sea necesario, pero hace que las cosas sean un poco más fuertes.

Paso 6: descargue algún software

Descargar algún software
Descargar algún software

Necesitamos algún software en la placa, y antes de que podamos descargar programas, necesitamos un programa de módem. Usaremos xmodem, que es un estándar que existe desde hace años. Xmodem existe como un programa CPM y existe en muchas formas en programas de PC, como hyperterminal. Entonces podemos usar esto para comunicarnos entre la vieja y la nueva tecnología. Tomemos el archivo hexadecimal de xmodem de aquí: https://n8vem.googlegroups.com/web/xm50_LB1.zip?gda=O2tYn0EAAABRoI8ydU505jGCwGWcAnRL1RQ8Aj5bHZQJ6hxcf7VyVbwBih-m421sWixBuGT y obtendrás dos archivos. Necesitas el que termina en.hex. Ahora tenemos que enviar esto a la pizarra. Necesita un programa de terminal, que emule un monitor y un teclado para esta computadora de placa única. Windows tiene uno llamado hyperterminal que generalmente se esconde en la carpeta de inicio / programas / accesorios. O puede usar hyperterminal private. O Teraterm. O absolutetelnet. O un programa basado en DOS llamado conex. Hay muchos programas de terminal alrededor porque así era como se marcaba en Internet antes de la banda ancha. Encienda el hyperterminal. ¡Le dará tres pantallas y necesita que todos los ajustes sean correctos! Una vez que haya ingresado esto una vez, puede guardar esta sesión y creará un pequeño archivo que termina en.ht. Si luego hace clic en ese archivo (arrástrelo al escritorio para que pueda encontrarlo más tarde), comenzará hiperterminal con todos la configuración correcta Primera pantalla = nombre de la conexión. Llámelo SBC y elija un icono. Segunda pantalla. Configure el puerto de comunicaciones. Mi computadora está predeterminada en COM2 en la pantalla de configuración y debe cambiarse a COM1. Continúe y cambie a COM1. Tercera pantalla. Velocidades de baudios, etc. Establezca los bits por segundo en 9600. 8 Bits de datos. Paridad a Ninguno. Detener bits a 1. Y control de flujo a Ninguno. Probablemente solo necesite cambiar bits por segundo y Control de flujo. Ahora se le presentará la pantalla del terminal. Conecte la placa al puerto serie y enciéndala y debería recibir un mensaje de bienvenida. De lo contrario, ingrese al grupo de Google y solicite ayuda. ¡Ahora es el momento de hablar con la junta!

Paso 7: Descarga Xmodem

Descarga Xmodem
Descarga Xmodem

Si compró el chip ram con respaldo de batería, solo tendrá que hacerlo una vez. De hecho, otros están trabajando para poner esto en el chip eprom, por lo que es posible que no necesite hacerlo en un futuro muy cercano. En el indicador>, escriba h

No escriba nada más. No escriba Enter. Solo una h, ya sea en mayúsculas o minúsculas. El cursor bajará una línea pero no sucederá nada más. Ahora haga clic en la parte superior del programa hiperterminal en el menú Transferir. Haga clic en Enviar archivo de texto. En Nombre de archivo, utilice la función de exploración para encontrar la copia hexadecimal de xmodem que descargó. Se llama XM50LB1. HEX Es posible que deba cambiar la búsqueda predeterminada de *.txt a *.hex para encontrarlo. Haga clic en Aceptar y muchos números aparecerán en la pantalla durante unos 30 segundos. Espere hasta que se detengan. Luego presione la letra c una vez, nuevamente sin ingresar. Espere 2 segundos y estará en CPM con un mensaje A>. Ahora escriba lo siguiente y presione enter: Guardar 40 b: xm.com Ahora escriba B: e ingrese, para cambiar a la unidad B y obtendrá un mensaje B>. Ahora escriba DIR e ingrese, para listar los archivos. Hay tres unidades en esta computadora, A, B y F. Puede ver lo que hay en cada una escribiendo la letra de la unidad, luego dos puntos, luego ingresar y luego DIR. La imagen muestra una captura de pantalla.

Paso 8: obtenga algún software

Coge un poco de software
Coge un poco de software

Existe una gran cantidad de software de CPM. Eghttps://www.loomcom.com/cpm/cpm_cdrom/https://www.gaby.de/ecpmlink.htm Pero intentemos algo simple. Consigamos Básico para sumar un par de números e imprimir la respuesta. Para hacer eso, necesitamos una copia de Basic. Hay muchas copias por ahí, pero vayamos un poco por la tangente y hablemos del simulador de Altair. Este pequeño programa es una emulación completa de una máquina CPM que se ejecuta en una PC. Tiene una gran biblioteca de software, convenientemente empaquetada en porciones del tamaño de un disco, y funciona mucho más rápido que una computadora CPM real, lo cual es muy útil para compilar. El simulador está aquí: https://www.schorn.ch/cpm/intro.phpDescargue el software y descargue como mínimo la imagen de disco CPM2.2, y aproximadamente a la mitad de la página, la imagen básica. Ponlos todos en el mismo directorio. Mientras esté allí, consulte todos los demás idiomas como C Cobal, Fortran, Pascal. Si ejecuta el programa AltairZ80.exe obtendrá una ventana DOS. Si ha descargado el archivo basic.dsk, puede ejecutarlo con el comando Do basic en el simulador. Luego DIR para listar los archivos (que están en la unidad A: y B:) Queremos MBASIC y está en la unidad A. Para copiar esto a un directorio de PC, escriba W MBASIC. COM y esto guardará el archivo en el directorio en el que se encuentra el programa de altair. Puede hacer lo contrario con el comando R que transfiere archivos desde la PC a los discos del simulador de altair. De hecho, si quieres jugar con CPM, esta es una excelente manera de hacerlo sin tener que compilar o comprar nada. Si quieres guardar archivos en el disco virtual, sal del simulador de altair con ctrlE (tecla de control y MI). Esto sale y salva. Si no desea guardar ningún cambio, simplemente cierre la ventana con la X en la esquina superior derecha.

Paso 9: Mueva el archivo MBASIC. COM al tablero

Mueva el archivo MBASIC. COM al tablero
Mueva el archivo MBASIC. COM al tablero

Transfieramos Basic al tablero.

En la sesión de hiperterminal, vaya a la unidad B: y escriba XM R MBASIC. COM y luego ingrese. Esto iniciará el programa xmodem y se quedará allí esperando a que llegue un archivo. Ahora vaya al menú hiperterminal, haga clic en Transferir y luego en Enviar archivo. Busque el archivo MBASIC. COM. En la sección de protocolo, seleccione Xmodem. En hiperterminal es el tercero hacia abajo. Haga clic en enviar y, después de unos segundos, el archivo se ejecutará. Tarda aproximadamente un minuto. Si funciona, debería obtener el indicador B>. Escriba DIR para comprobar que está allí. (Ignore todas las B> en la pantalla; presioné la tecla Intro varias veces accidentalmente)

Paso 10: Ejecute Basic y escriba un programa

Ejecute Basic y escriba un programa
Ejecute Basic y escriba un programa

Ahora podemos ejecutar Basic en la pizarra y escribir un pequeño programa. Por ejemplo, mbasic10 A = 2020 B = 3030 C = A + B40 print "La respuesta es:"; CRUNSave "MYPROG", A Ahora tenemos una computadora en funcionamiento.

Paso 11: compile un programa

Compilar un programa
Compilar un programa

Si se siente realmente interesado, puede compilar un programa. Esto produce un.com (el equivalente a un.exe en una PC). Los archivos com se pueden ejecutar como programas independientes e incluso se pueden configurar para que se ejecuten automáticamente cuando se inicia la placa. Ahora la placa puede funcionar como un controlador independiente, sin necesidad de estar conectada a una PC. La placa N8VEM puede compilar programas en la placa, o puede usar el simulador de altair. Este último es más rápido, pero realmente no importa. Si desea compilar programas, entonces necesita lo siguiente: MBASIC. COM, BRUN. COM L80. COM BCLOAD, BASLIB. REL Y BASCOM. COMC es un poco diferente, pero creo que todavía usa el enlazador L80. Vea la captura de pantalla para saber cómo escribir, compilar y ejecutar un programa. Y estad atentos, porque pronto habrá discos duros, una mini pantalla LCD, una pantalla que usa un viejo monitor vga https://www.tvterminal.de/index.html#english con interfaz de teclado, una unidad flash y entrada y tableros de salida!

Recomendado: