Mis primeros programas en assembler - Micros Designs
Mis primeros programas en assembler - Micros Designs
Mis primeros programas en assembler - Micros Designs
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Programa completo:<br />
Código<br />
1. ; **** Encabezado ****<br />
2. list p=16F84A<br />
3. #include P16F84A.inc<br />
4. __CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON & _XT_OSC<br />
5. ;**** Definicion de variables ****<br />
6. Led equ 0 ; Definimos Led como el bit cero de un registro,<br />
<strong>en</strong> este caso PORTB.-<br />
7. Pulsador equ 0 ; Definimos Pulsador como el bit 0, <strong>en</strong> este caso<br />
será para PORTA<br />
8. ;**** Configuración de puertos ***<br />
9. Reset<br />
10. org 0x00 ; Aquí comi<strong>en</strong>za el micro.-<br />
11. goto Inicio ; Salto a inicio de mi programa.-<br />
12. org 0x05 ; Orig<strong>en</strong> del código de programa.-<br />
13. Inicio<br />
14. bsf STATUS,RP0 ; Pasamos de Banco 0 a Banco 1.-<br />
15. movlw b'11111' ; Muevo 11111 a W.-<br />
16. movwf TRISA ; Cargo <strong>en</strong> TRISA.-<br />
17. movlw b'11111110'<br />
18. movwf TRISB<br />
19. bcf STATUS,RP0 ; Paso del Banco 1 al Banco 0<br />
20. bcf PORTB,Led ; Comi<strong>en</strong>za apagado.-<br />
21. ;**** Control de Led ****<br />
22. Bucle<br />
23. btfsc PORTA,Pulsador ; Preguntamos si esta <strong>en</strong> 0 lógico.-<br />
24. goto Apagar ; Esta a 1 lógico, Apagamos Led.-<br />
25. bsf PORTB,Led ; Esta a 0 lógico, Enc<strong>en</strong>demos Led.-<br />
26. goto Bucle ; Testeamos nuevam<strong>en</strong>te la condición del<br />
Pulsador.-<br />
27.<br />
28. Apagar<br />
29. bcf PORTB,Led ;Apagamos Led.-<br />
30. goto Bucle ;Testeamos nuevam<strong>en</strong>te la condición del<br />
Pulsador.-<br />
31.<br />
32. End<br />
Autor: Suky Mail: inf.pic.suky@live.com.ar Web: www.micros-designs.com.ar