elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  ASM (Moderador: Eternal Idol)
| | | |-+  retardo en interrupcion por escritura en EEPROM
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: retardo en interrupcion por escritura en EEPROM  (Leído 2,584 veces)
antareZ

Desconectado Desconectado

Mensajes: 1


Ver Perfil
retardo en interrupcion por escritura en EEPROM
« en: 15 Octubre 2016, 04:40 am »

hola ! tengo una duda y espero que me puedan ayudar ! hice un codigo en asm que pone en estado de bajo consumo a un pic en este caso (16f887) cuando esta en este estado debe entrar la interrupción escribiendo un dato en la memoria EEPROM sacando del estado de bajo consumo al pic

el codigo funciona lo tengo simulado en proteus el problema es al llevarlo ala practica en fisico a los  4Mhz del pic  ,en el codigo puse dos leds en el portB uno que me indica que el pic esta en sleep y otro que me indica cuando se realizo la escritura, debido ala velocidad de con se que guarda el dato el led que esta en RB0 que me indica la escritura no se llega a  apreciar cuando prende y es ahí donde necesito meter un retardo use libreria y probe en todos lados un retardo de 500ms y de 1 seg pero no funciona ayudenme porfavor
recien comienzo en el lenguaje ensamblador y hay muchas cosas que no entiendo  :-[
si es algo muy facil o tonto no se burlen soy novato  :xD
Código:
list p=16f887
    
    #include<p16f887.inc>
    __CONFIG _CONFIG1, _FOSC_INTRC_NOCLKOUT & _WDTE_OFF & _PWRTE_ON & _MCLRE_ON & _CP_ON & _CPD_OFF & _BOREN_OFF & _IESO_OFF & _FCMEN_OFF & _LVP_OFF
    
  

 direc EQU 0x01
 dato EQU 0x0C
       
ORG 0X00

goto inicio

ORG 0X04

goto rut_eeprom

ORG 0X05


inicio
bsf STATUS,RP1
bsf STATUS,RP0

bcf INTCON,GIE
bsf INTCON,EEIE
bsf EECON1,WREN
movlw direc
bcf STATUS, RP0  
movwf EEADR
movlw h'88'
movwf EEDATA


bcf STATUS,RP1  
bcf STATUS,RP0
bsf STATUS,RP0
clrf TRISB
movlw h'55'
bsf STATUS,RP1


movwf EECON2
MOVLW h'AA'
movwf EECON2
bsf EECON1,WR
bsf INTCON,GIE

bcf STATUS,RP1
bcf STATUS,RP0
clrf PORTB

bsf PORTB,0
bsf PORTB,1
sleep
fin goto fin

rut_eeprom  ;interrupcion

bsf STATUS,RP1
bcf STATUS, RP0
movf EEDATA,W
bsf STATUS,RP0
bcf EECON1,EEIF
bsf EECON1,RD
bcf STATUS, RP0  
subwf EEDATA,W
btfss STATUS,Z
goto erro
bcf STATUS,RP1
bcf STATUS,RP0

bsf PORTB,1

erro
Retfie
#include <RETARDOS.INC>
END


« Última modificación: 16 Octubre 2016, 06:56 am por antareZ » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
interrupcion 13h,02h
ASM
AYLASER 1 4,018 Último mensaje 27 Mayo 2010, 10:16 am
por Eternal Idol
PC que actúa con retardo ...!!!
Windows
4971231 4 3,838 Último mensaje 21 Septiembre 2011, 01:29 am
por hitori batusai
Retardo sostenido unos segundos tras una pulsación
Electrónica
quico5 2 3,795 Último mensaje 29 Enero 2012, 22:39 pm
por quico5
retardo en borrar y crear carpetas y otros elementos
Windows
hdarko 0 1,779 Último mensaje 29 Abril 2014, 12:40 pm
por hdarko
Ayuda retardo timer1
ASM
torsello 0 1,983 Último mensaje 29 Septiembre 2014, 06:32 am
por torsello
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines