Haz una pregunta
  Foros de Electrónica » Diseño digital » Circuitos lógicos combinacionales y secuenciales
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

08/01/2012 #1

Avatar de Daniel Meza

Ordenador casero con uP Z80
Saludos… Este es prácticamente el primer post de un proyecto que hago en el foro; consiste básicamente en un ordenador de 8 bits, si, como aquellos antiguos ordenadores de la antigüedad Spectrum, Atari, Commodore, etc.

Mi idea de llevarlo a cabo fue desde que aprendí a programar el uP Z80, ayá por los inicios del 2009. (Llevaba en la vocacional una materia en la que lo utilizabamos junto con su sistema mínimo para algunas prácticas).

Una vez con el proyecto en mente, comencé a idear lo que deseaba que hiciera mi ordenador: que fuera programable en consola, tuviera una pantalla donde mostrar información, puertos para controlar dispositivos externos, que emitiera aquellas fastidiosas pero melancólicas melodías de los 80’s, que tuviera un teclado alfanumérico, etc; entonces comencé a diseñar el hardware y a empaparme de información relativa al proyecto. Por esas fechas también me uní a este foro donde me encontré con el proyecto del amigo Antiworldx y me animé más a armar el mío.

Fui construyendo el hardware y haciendo pequeñas pruebas de funcionamiento, encender un led por aquí, otro por allá bla, bla; una vez que ingresé a la escuela de nuevo (siendo precisos inicié el proyecto en las vacaciones de fin de año que dan en la escuela) ya no le pude dedicar tanto tiempo al proyecto y poco a poco lo fui dejando de lado, aunado a eso que comencé a trabajar en algunos proyectos de automatización con µC’s.

Volvieron otra vez las vacaciones y desempolvé el ordenador para continuarlo, pero esta vez lo rearmé porque en todo el tiempo que lo abandoné se me ocurrieron más ideas que no compatibilizaban con lo que llevaba armado. Rediseñé un poco el hardware y lo ensamblé en placas “multitrama” (desistí de la idea de armarlo en PCB por el tiempo que implicaba y por las seguras modificaciones que le haría en un futuro), continué haciendo pruebas de software, sufriendo desesperaciones, diseñando nuevas secciones del hardware, etc. Y así es como he ido desarrollando este proyecto a la par de mis conocimientos del tema hasta actualmente.

Dejando atrás un poco de historia que hay detrás de este proyecto, les platicaré de sus características técnicas:

*CPU: Z80
*Frecuencia: 2 MHz
*Memoria: Está dividida en 9 páginas de 32 KB c/u

-Pág 0: 24 KB en ROM para el SO y 8 KB de RAM para el manejo de las rutinas de audio, de gráficos del GLCD y de control de los periféricos.
-Pág 1: 16KB RAM y 16KB en EEPROM para programas y aplicaciones
-Pág 2: 16KB RAM y 16KB en EEPROM para programas y aplicaciones
-Pág 3: 32KB para un cartucho o bien una expansión para una tarjeta de adquisición de datos.
-Págs 4, 5, 6, 7 y 8 con 32 KB c/u pero no están implementadas físicamente, las reservé para una expansión futura.

*Monitor: GLCD 160*80 pixéles o alfanumérico con 20X10 caracteres
*Audio: SN76489 (Como el que se puede hallar en un SEGA Master System)
*Puertos:
-Paralelo con la interfaz PPI 8255
-Serie con la interfaz 8250
*Temporizadores: 3 de 16 bits con el 8254
*Teclado: QWERTY de una laptop IBM L40

Otros datos curiosos es que tiene un circuito especial (ya se utilizaban desde mucho antes) para sobrepasar el límite de 64 KB direccionables por el Z80 con el que se puede direccionar hasta 288 KBytes, buffers en los buses para proteger a la CPU por posibles cortos (más de una ocasión me ocurrieron), tiene además un µC PIC16F84 para gestionar el teclado y su alimentación es gracias a una fuente ATX.

En lo que refiere a la parte del software apenas me encuentro programando el SO pero les contaré los programas que tengo pensado en desarrollar:

*SO TeXON 1.0 Sistema operativo: Programa principal que se encargará de gestionar el acceso a las rutinas de servicio de los periféricos.
*Cuaderno: Algo como un bloc de notas de Windows
*Ensamblador: Es un lenguaje para la programación en consola (Aún no se me ocurre un nombre para él).
*Calculadora: Una calculadora básica sumas, restas, multiplicaciones y divisiones.
*MatPop: Programa de cálculo, gráficas (sencillas) de funciones, y estadísticas de datos.
*µLoop: Programa para crear melodías de 8 bits a base de "samples".
*Juegos: Hasta el momento tengo pensado hacer un “tres en línea” (acá en México se le conoce como gato), tetris, ruleta, pacman, etc…

Y pues es lo principal que les puedo platicar de mi proyecto; seguramente más de uno se preguntará el caso de armar algo tan obsoleto; yo también me lo pregunté; pero no es tanto el armarlo, si no lo que vas aprendiendo a lo largo de su elaboración. En este caso aprendí a solucionar algunos problemas de ruido, interfaces entre familiar lógicas, programación (fue fácil aprenderle a los µC’s) y lo principal “paciencia en desarrollar tus proyectos”.

Finalmente les comparto algunas fotos de los avances del proyecto y los diagramas esquemáticos en ISIS.

Espero que a más de uno le interese el proyecto, es que me he dado cuenta que por el foro casi no se habla de lo que se le conoce como “Retroinformática”, una parte de la electrónica que más llama mi atención.

Saludos y buen año…
08/01/2012 #2


Orale!, te felicito, tengo un buen de Z80 que saque de varias placas de videojuegos, la verdad esto se muy interesante y como dices, para hacer esto hace falta mucha paciencia y dedicacion, oye, yo en la escuela lleve en la clase de micros el 8031 de intel y llos programas los metiamos en una memoria paralela eeprom 28c64, sabes o de casualidas tienes algun software para programarla, en la escuela lo tenia pero por algun accidente de disco duro se me perdio este programa. saludos y felicidades
08/01/2012 #3

Avatar de Daniel Meza

Gracias... software ahy muchos, pero más que el software necesitas saber el modelo de tu programador y sobre eso buscar el softaware que lo controla. En mi caso uso uno como esté.
08/01/2012 #4

Avatar de Scooter

Seguro que no te has aburrido. Enhorabuena por el trabajo.

trons dijo: Ver Mensaje
Orale!, te felicito, tengo un buen de Z80 que saque de varias placas de videojuegos, la verdad esto se muy interesante y como dices, para hacer esto hace falta mucha paciencia y dedicacion, oye, yo en la escuela lleve en la clase de micros el 8031 de intel y llos programas los metiamos en una memoria paralela eeprom 28c64, sabes o de casualidas tienes algun software para programarla, en la escuela lo tenia pero por algun accidente de disco duro se me perdio este programa. saludos y felicidades
Busca un derivado con flash o haz alguno de los inventos de memoria compartida para ejecutar en ram y un bootloader en eeprom.
09/01/2012 #5


excelente trabajo,.,.,. se nota la dedicación y calidad con lo que lo ha logrado,.., felicidades
09/01/2012 #6

Avatar de NarXEh

Buenas!

sinceramente me parece fantastico tu proyecto, es mas, debo confesarte que yo tengo una idea muy similar a la tuya (desde hace ya muchos años) de crearme mi propia pc/consola integrada hecha por mi solo que con algunas variantes (utilizar un JK3 que corre a 32Mhz, un sistema de cartuchos con memorias sd y una salida a TV utilizando unos integrados que consigo cerca).Desgraciadamente todavia no los puedo realizar por falta de conocimientos pero la verdad que me encanto tu proyecto.

solo tengo una duda... con que programa se abren los archivos que contienen el rar ?

Ojala sigas con esa iniciativa que me parece muy buena.

saludos!
09/01/2012 #7

Avatar de Daniel Meza

Muchas gracias por sus comentarios... me parece buena tu idea Narhex (de hecho yo quería utilizar una tele común como pantalla pero igualmente debido a mis escasos conocimientos del tema lo dejé de lado).

solo tengo una duda... con que programa se abren los archivos que contienen el rar ?
Con Isis de Proteus, son los diagramas de interconexión del ordenador, por si alguien se anima a armar algo semejante o le puedan servir.
Saludos y nuevamente gracias
09/01/2012 #8

Avatar de solaris8

aca hay algunas cosas interesantes desde soft a diagramas de la sinclair y la tk90,manuales del z80/z81, algo de enzamblador.... de esos años.....
espero les sirva ....
ahh, muy buen tema

http://wos.meulie.net/pub/sinclair/technical-docs/
10/01/2012 #9

Avatar de NarXEh

Buenas!

Daniel Meza dijo: Ver Mensaje
Muchas gracias por sus comentarios... me parece buena tu idea Narhex (de hecho yo quería utilizar una tele común como pantalla pero igualmente debido a mis escasos conocimientos del tema lo dejé de lado).
Claro... despues si lo encuentro pienso subir un documento que explica como hacer eso.

en cuanto a la pagina que porpuso solaris8 me parece muy buena, yo tenia una guardada por ahi voy a ver si la encuentro y la posteo.

saludos
22/01/2012 #10

Avatar de Daniel Meza

aca hay algunas cosas interesantes desde soft a diagramas de la sinclair y la tk90,manuales del z80/z81, algo de enzamblador.... de esos años.....
espero les sirva ....
He revisado los links y vaya que tienen excelente información.. muchas gracias

Claro... despues si lo encuentro pienso subir un documento que explica como hacer eso.
Te estaré muy agradecido
23/01/2012 #11

Avatar de NarXEh

Buenas!

Ahi me acorde de ponerte el documento, gracias por hacemer acordar contestando

Ahora voy a editar... para buscar los otros integrados que talvez te ayuden a hacer algo util

saludos!

p.d.: el integrado es el LM1889 fijate si te sirve o se puede hacer algo, lo utilizaban los spectrum creo
Archivos Adjuntos
Tipo de Archivo: pdf Generador de patrones de video.pdf (577,2 KB (Kilobytes), 96 visitas)
07/03/2012 #12

Avatar de nietzche

buscaba algo como una computadora analogica y un enlace llevo a otro, asi que aqui usaste la glcd, jejeje, esta bueno el proyecto, a mi me gustaria hacer algo con un pic32 o algo asi, que estudias, se ve que tienes buenas bases.
07/03/2012 #13

Avatar de chclau

Realmente, te felicito. Se ve excelente
07/03/2012 #14

Avatar de Daniel Meza

Muchas gracias amigos... contestando a Nietzche, estudio actualmente Ingeniería en comunicaciónes y eléctrónica en ESIME del Poli... pero el gusto por todo este rollo de la electrónica comenzó cuando cursé Sistemas digitales en la vocacional.
08/03/2012 #15

Avatar de nietzche

A ke bien, se podria decir ke eres de la competenvia kajaja
08/03/2012 #16

Avatar de cox

Daniel te felicito por el proyecto se lo ve muy bueno!!

lo unico que tengo para decirte es que eres un maleducado por llamar "fastidiosas" a las melodias de los 80's.. siempre hablando de los 8 bits, claro esta..

Saludos!!
08/03/2012 #17

Avatar de Daniel Meza

A ke bien, se podria decir ke eres de la competenvia kajaja
¿UNAM? Considere ser PUMA alguna vez... solo que esta carrera me llamó más la atención, ¿que carrera estudias tu?...

lo unico que tengo para decirte es que eres un maleducado por llamar "fastidiosas" a las melodias de los 80's.. siempre hablando de los 8 bits, claro esta..
jaja... pues lo digo por lo que algunas personas me han dicho que así les parecen... en lo personal, me encantan; considerando que soy de los 90's para acá y de pequeño no tuve alguna de esas consolas...
08/03/2012 #18

Avatar de nietzche

jajaja seee, pues estudio Ingenieria mecanica-electrica en la facultad de estudios superiores aragon, la carrera esta buena pero los maestros pateticos, casi la mayoria de todos pero en fin , esa facultad me decepciono un poco pero ahora creo me ya mejoro, la carrera ya ni existe la separaron en 3: industrial mecanica y electrica electronica, yo sey del ultima area y con pre especializacion en sistemas digitales, asi ke ok.
08/03/2012 #19

Avatar de Daniel Meza

Entiendo... coincidencia pero mi hermano estudia también allí pero la carrera de Diseño industrial.

la carrera esta buena pero los maestros pateticos
Comienzo a creer que en México la mayoría de las universidades son así.

En fin, creo que no hay mejor remedio que buscarle por cuenta propia... así es como he ido haciendo de conocimiento
08/03/2012 #20


Excelente proyecto!
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Circuitos lógicos combinacionales y secuenciales

Compuertas, flips flops, registros, PLDs, codificadores, contadores, multiplexores, ...

Cerrar
Foros de Electrónica » Diseño digital » Circuitos lógicos combinacionales y secuenciales

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.