Manejo de display 7 segs con p16f84a

Hola que tal gente, espero que anden bien. hace un tiempo empeze a aprender assembler porque me gusta y me interesa. estoy en niveles muy basicos y llegue a hacer un programita muy basico para manejar un display de 7 segmentos. hice el programa y cargue el .hex en el proteus 7.8 donde tengo un entrenador armado con display y todo. el problema viene cuando le doy play al simulador, el display queda siempre en un mismo punto y no cambia segun mi programa. he mirado una y mil veces el programa y no le encuentro errores. tengo miedo que el problema este en proteus.
adjunto el .asm y el .dsn (entrenador del proteus que arme).
el programa basicamente toma valores binarios de 0 a 15 y lo muestra en el display.
si alguien pudiera darme una mano les agradeceria para poder seguir aprendiendo
gracias :)
 

Adjuntos

  • display.rar
    18.9 KB · Visitas: 19
y montaste físicamente el circuito???? realmente nunca me han gustado los simuladores, nada como montar los circuitos en protoboard y probar, corregir y probar de nuevo, algunas cosas no van bien en los simuladores pero físicamente funcionan, porque?? yo no lo se , poco o nada los uso, chauuuuuuuu
 
hola fdesergio! gracias por contestar. fisicamente no monte el circuito porque todavia no tengo el programador para quemar el pic. tenia pensado hacerlo en un tiempo pero por ahora ir probando con el simulador. Lo extraño de todo esto es que vengo haciendo un cursito en youtube sobre los 16f84 del señor piratapch y en el capitulo
da un .asm igualito al mio y lo coloca en proteus y funciona perfectamente. eso es lo extraño. saludos!
 
Sabes... no hay que confiar en todo.

Los pines del F84 (la mayoria de PICs de gama baja y media) se pueden configurar como entrada o salida de señal digital. La configuración se realiza sobre unos registros llamados TRISx (TRISA y TRISB en el F84) que están enteramente relacionados el PORTA y PORTB respectivamente.

El ejemplo del video ya está mal, en realidad seria:

Código:
            bsf     STATUS,RP0
            clrf    TRISB
            movlw   b'00011111'
            movwf   TRISA
            bcf     STATUS,RP0

Busca en el foro que hay cursos de asm

Saludos
 
gracias por responder. si entiendo lo que me dices tu. eso lo note y cambie como decias tu pero igual sigue sin simular lo que yo quiero :/. ensima mi pc no tiene puerto rs232 serie asique voy a tener que buscar otra alternativa para grabar el pic.
 
chicos encontre el problema, resulta que tenia un error en mi codigo, lo revice mil veces y lo pasaba por alto. en la linea

addwf PCL,W

como ven yo ponia w y la suma para hacer el salto indezado me la guardaba en el work. asique fue cambiar esto PCL,W por esto PCL,F y listo!!

muchas gracias por todos y doy por solucionado este tema..
 
Atrás
Arriba