send
Grupo de Telegram
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[ASM] Programando un PIC

  • 2 Respuestas
  • 2296 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado mr.blood

  • *
  • Underc0der
  • Mensajes: 73
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
  • Skype: red_ink@hotmail.es
« en: Mayo 13, 2013, 07:36:57 pm »
Empecemos aportando algo, creo que vine para quedarme :P.

Dejo el programa comentado.

Código: ASM
  1. STATUS    equ       03h ;Definiciones, para no manejar
  2. TRISA     equ       85h ;direcciones todo el rato.
  3. TRISB     equ       86h
  4. PORTA     equ       05h
  5. PORTB     equ       06h
  6. CONTADOR  equ       08h
  7.    
  8.     org 0x0
  9.           bsf       STATUS,5 ;Cambiamos al banco 1
  10.           movlw     0x0 ;Movemos a W 0
  11.           movwf     TRISA ;Todos los puertos A son de salida
  12.           movlw     0x1 ;Movemos a W 1
  13.           movwf     TRISB ;Todos los puertos B son de salida, menos RB0
  14.           bcf       STATUS,5 ;Volvemos al banco 0
  15.  
  16. Inicio    BTFSS     PORTB,0 ;Comprueba si RB0 es 1, si lo es SALTA LA SIGUIENTE INSTRUCCION
  17.           bcf       PORTA,1 ;Envia 0 por la patilla RA1
  18.           BTFSC     PORTB,0 ;Comprueba si RB0 es 0, si lo es SALTA LA SIGUIENTE INSTRUCCION
  19.           call      Parpadeo ;Llama a Parpadeo
  20.           goto      Inicio ;El bucle se repite
  21.  
  22. Parpadeo  call Duerme ;Llama a Duerme para hacer una pausa
  23.           bsf       PORTA,1 ;Envia 1 por la patilla RA1
  24.           call Duerme ;Llama a Duerme para hacer una pausa
  25.           bcf       PORTA,1 ;Envia 0 por la patilla RA1
  26.           call Duerme
  27.           return
  28.  
  29. Duerme    movlw 0x90 ;Mueve a W 0x90
  30.           movwf CONTADOR ;Mueve W a CONTADOR (CONTADOR(08h)=0x90)
  31. Bucle     decfsz CONTADOR,1 ;Decrementa CONTADOR, y si es 0 SALTA LA SIGUIENTE INSTRUCCION
  32.           goto Bucle ;Vuelve a empezar el bucle
  33.           return ;Return
  34.     end ;Fin del programa

Este seria el montaje, dejo la imagen de Proteus, por si a alguien mas le interesa esto ;).


Comento un poco el funcionamiento: Si el boton esta cerrado, el LED parpadea. Si el boton esta abierto, el LED se mantiene apagado.

Sa1uDoS
« Última modificación: Julio 14, 2014, 08:07:23 pm por Expermicid »

Conectado ANTRAX

  • *
  • Administrator
  • Mensajes: 5299
  • Actividad:
    36.67%
  • Reputación 29
  • ANTRAX
    • Ver Perfil
    • Underc0de
    • Email
  • Skype: underc0de.org
  • Twitter: @Underc0de
« Respuesta #1 en: Mayo 13, 2013, 08:24:33 pm »
Pero que buenooooo!!
Viene de 10 bro!
Muchisimas gracias!!


Desconectado Stuxnet

  • *
  • Underc0der
  • Mensajes: 259
  • Actividad:
    0%
  • Reputación 2
    • Ver Perfil
    • Devel Security
  • Twitter: _stuxnet
« Respuesta #2 en: Mayo 13, 2013, 10:30:41 pm »
Otro que se larga de CPH xD

Muy bueno!!!

Gracias.
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login

 

¿Te gustó el post? COMPARTILO!



[ASM] Programando un PIC (Control motor paso a paso)

Iniciado por kal23

Respuestas: 0
Vistas: 6145
Último mensaje Enero 23, 2014, 05:52:00 pm
por kal23
[ASM] Programando un PIC (Conversión Análogo/Digital 8 bits)

Iniciado por kal23

Respuestas: 0
Vistas: 2971
Último mensaje Enero 24, 2014, 06:17:56 pm
por kal23
[ASM] Programando un PIC (Contador 999 con display 7 segmentos)

Iniciado por kal23

Respuestas: 3
Vistas: 9966
Último mensaje Diciembre 11, 2014, 05:54:52 pm
por mauroe83
[ASM] Programando un PIC (Uso de Timer0)

Iniciado por kal23

Respuestas: 0
Vistas: 1543
Último mensaje Enero 24, 2014, 08:20:44 pm
por kal23
[CCS] Programando un PIC (I/O)

Iniciado por kal23

Respuestas: 0
Vistas: 2293
Último mensaje Enero 27, 2014, 07:29:58 pm
por kal23