13.11.2012 Views

Mis primeros programas en assembler - Micros Designs

Mis primeros programas en assembler - Micros Designs

Mis primeros programas en assembler - Micros Designs

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Ahora bi<strong>en</strong>, cuando el PIC arranca se <strong>en</strong>cu<strong>en</strong>tra <strong>en</strong> el Banco 0, TRISA y TRISB se <strong>en</strong>cu<strong>en</strong>tran <strong>en</strong> el Banco 1,<br />

<strong>en</strong>tonces debemos cambiar de Banco. Esto se realiza con el bit RP0 del registro STATUS. Si este se pone un<br />

cero a RP0, estaremos <strong>en</strong> el Banco 0. Si se coloca un uno, estaremos <strong>en</strong> el Banco 1.<br />

Registro W: es el registro más importante que ti<strong>en</strong>e el microcontrolador y es d<strong>en</strong>ominado ACUMULADOR.<br />

Código<br />

1. ;**** Configuración de puertos ***<br />

2. Reset<br />

3. org 0x00 ; Aquí comi<strong>en</strong>za el micro.-<br />

4. goto inicio ; Salto a inicio de mi programa.-<br />

5. org 0x05 ; Orig<strong>en</strong> del código de programa.-<br />

6. Inicio<br />

7. bsf STATUS,RP0 ; Pasamos de Banco 0 a Banco 1.-<br />

8. movlw b'11111' ; Muevo 11111 a W.-<br />

9. movwf TRISA ; Cargo <strong>en</strong> TRISA.-<br />

10. movlw b'11111110'<br />

11. movwf TRISB<br />

12. bcf STATUS,RP0 ; Paso del Banco 1 al Banco 0<br />

13. bcf PORTB,Led ; Comi<strong>en</strong>za apagado.-<br />

Ya configurado nuestro PIC, vamos a realizar la rutina que ejecutara.<br />

Código<br />

1. ;**** Control de Led ****<br />

2. Bucle<br />

3. btfsc PORTA,Pulsador ; Preguntamos si esta <strong>en</strong> 0 logico.-<br />

4. goto Apagar ; Esta a 1 logico, Apagamos Led.-<br />

5. bsf PORTB,Led ; Esta a 0 logico, Enc<strong>en</strong>demos Led.-<br />

6. goto Bucle ; Testeamos nuevam<strong>en</strong>te la condicion del<br />

Pulsador.-<br />

7.<br />

8. Apagar<br />

9. bcf PORTB,Led ;Apagamos Led.-<br />

10. goto Bucle ; Testeamos nuevam<strong>en</strong>te la condicion del Pulsador.-<br />

11.<br />

12. <strong>en</strong>d<br />

Aquí solam<strong>en</strong>te <strong>en</strong> un bucle infinito testeamos continuam<strong>en</strong>te el estado del pulsador, y según su estado se<br />

<strong>en</strong>c<strong>en</strong>derá o apagará el Led.-<br />

Autor: Suky Mail: inf.pic.suky@live.com.ar Web: www.micros-designs.com.ar

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!