From the monthly archives:

October 2009

Juegos para el día de muertos (2009)

by Jorge Machin on October 30, 2009 · 0 comments

in Personal, Videojuegos

Este año, mucho trabajo y pocos juegos. Pero aún así siempre hay cinco minutos de vez en cuando para descansar y divertirse persiguiendo fantasmas, brujos y escapar del Lobo (¿?).


Ghostbusters
GhostbustersGhostbustersGhostbustersThe PathThe PathThe PathThe PathThe WitcherThe WitcherThe WitcherThe Witcher

Posts relacionados:

Juegos para el Día de Muertos (2008)
Juegos para el Día de Muertos (2007)

{ 0 comments }

Pues este sería el último post de avances porque por fin lo acabé. Sólo falta hacer las conclusiones y poner a punto los posts teóricos que se publicaron. Esta vez un video de YouTube:

Muchas gracias a mi hermano por musicalizar el video.

Post relacionados:

- Proyecto: Construyendo un CPU con circuitos básicos (Parte 1)

- Asi voy con mi CPU
- Asi voy con mi CPU II

{ 3 comments }

Circuitos integrados TTL para KTechLab

by Jorge Machin on October 19, 2009 · 0 comments

in Electrónica, Linux

Al analizar el diseño de la ALU para mi microprocesador primero construí un prototipo usando KTechLab. Para ello, tuve construir primero los componentes de los circuitos integrados TTL que utilice. En este post pongo mi librería para tenerlos a la mano y por si pueden ser útiles para alguien.

Circuito Descripción Archivo KTechLab
7408 Quadruple 2-Input positive-And Gates 7408.circuit
7432 Quadruple 2-Input positive-Or Gates 7432.circuit
7486 Quadruple 2-Input positive-Exclusive Or Gates 7486.circuit
74138 3-Line to 8-Line Decoders/Demultiplexers 74138.circuit
74151 Data Selector/Multiplexers 74151.circuit
74161 Synchronous 4-Bit Counter 74161.circuit
74163 Synchronous 4-Bit Counter 74163.circuit
74175 Hex/Quadruple D-Type Flip-Flops with Clear 74175.circuit
74283 4-Bit Binary Full Adders with Fast Carry 74283.circuit

Advertencia:

He notado que el programa KTechlab tiene problemas en proyectos con muchos circuitos integrados, por lo que se recomienda usar muy pocos al mismo tiempo.

{ 0 comments }

No sé porque siempre me ha fascinado ver estos aparatitos que tienen leds en la noche y con la luz apagada. ¿Será que el brillo les da un carácter misterioso y frío como el de un viaje en una nave espacial o simplemente me recuerdan esas noches tranquilas junto al arbolito de navidad? Quien sabe, pero podría verlo por horas.

cpunoche
Para mí, es una vista hermosa

Por fin mi "microprocesador" corrió su primer programa que realiza operaciones aritméticas y logicas para incluso sacar datos al puerto de salida. También ya realiza el ciclo sin fin que evita que el programa pierda control y que rota a la derecha los bits del acumulador hasta que desaparecen totalmente después de unos ciclos de reloj. Ya siento que es misión cumplida :) .

Post relacionados:

- Proyecto: Construyendo un CPU con circuitos básicos (Parte 1)
- Asi voy con mi CPU
- Asi voy con mi CPU II

{ 0 comments }

Hola mundo con el PIC16F84A

by Jorge Machin on October 10, 2009 · 2 comments

in Electrónica

Después de jugar con impracticos pero divertidos CPUs demuchos circuitos, ahora es el momento de hacer lo contrario: moverse al mundo de los microcontroladores de un sólo chip. Uno muy interesante por su precio ( alrededor de 40 pesos ), facilidad de encontrar en México y versatilidad es el PIC16F84A. Se pueden hacer proyectos muy interesantes e incluso hay sitios donde enseñan como generar video compuesto o programarlo en lenguaje C y después de conocerlo, podemos pasar a mejores chips como el PIC16F628 o el PIC16F886 que tienen mejor hardware, son compatibles y ¡más baratos!.

Pero empecemos con lo más sencillo.

Hola mundo

Quizás la forma más sencilla de probarlo es configurar al puerto A como de entrada y al puerto B como de salida para enviar el estado del puerto A al puerto B. El programa en ensamblador sería el siguiente:

LIST    P=16C84
    ;P=16f84a
        INCLUDE <p16c84.inc>
    ;INCLUDE <p16f84a.inc>

    ORG 0

configurar
    bsf  STATUS, RP0  ; Cambiamos al banco 1
    clrf    TRISB      ; Todo el puerto B se configura como salida
    movlw   b'00011111'    ; Las líneas del Puerto A se configuran como entradas
    movwf   TRISA
    bcf  STATUS, RP0  ; Regresamos al banco 0

principal

loop

    movf    PORTA,W
    movwf   PORTB
    goto    loop

    END

El diagrama esquemático de las conexiones sería el siguiente:

pic
¡No olvidar poner resistencias de 330 Ohms a los leds!

Para probarlo se puede usar el programa de simulación KTechLab, pero compilando los fuentes indicando que es un pic16c84.

pic16f84a

Una vez que funciona en el simulador, se puede construir en un protoboard:

HolaMundo

Al programar el pic, es necesario configurar que el tipo de Oscilador es de cristal (XT) y al capturar en la memoria es importante no olvidar que las instrucciones son de 14 bits; por lo que ocupan 2 bytes donde el primer byte es la parte de menor peso.

{ 2 comments }