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.
50. ;**** Rutina de servicio de Interrupcion ****<br />
51. ;**** Interrupcion por Comparador Analogico****<br />
52. ISR<br />
53. btfss PIR1,CMIF ; Interrupcion por Comparador?<br />
54. retfie ; No, salimos de interrupcion.-<br />
55. btfss CMCON,C1OUT ; Consultamos estado del comparador.-<br />
56. goto Fin_ISR ; Si es 0 salimos de interrupcion.-<br />
57. call Alarma ; Si es 1, indicamos una alarma.-<br />
58. Fin_ISR<br />
59. movf CMCON,f ; Operacion de lectura.-<br />
60. bcf PIR1,CMIF ; Limpiamos bandera.-<br />
61. retfie<br />
62. ;..............................................<br />
63. ;**** Rutinas ****<br />
64. Alarma<br />
65. movlw 0x0A ; Hacemos titilar 10 veces el Led.-<br />
66. movwf Loop<br />
67. bsf Led<br />
68. call Demora_150ms<br />
69. bcf Led<br />
70. call Demora_150ms<br />
71. decfsz Loop<br />
72. goto $-5<br />
73. return<br />
74. ;**** Demora ****<br />
75. Demora_150ms<br />
76. movlw 0xFF ;<br />
77. movwf Contador1 ; Iniciamos contador1.-<br />
78. Repeticion1<br />
79. movlw 0xC3 ;<br />
80. movwf Contador2 ; Iniciamos contador2<br />
81. Repeticion2<br />
82. decfsz Contador2,1 ; Decrem<strong>en</strong>ta Contador2 y si es 0 sale.-<br />
83. goto Repeticion2 ; Si no es 0 repetimos ciclo.-<br />
84. decfsz Contador1,1 ; Decrem<strong>en</strong>ta Contador1.-<br />
85. goto Repeticion1 ; Si no es cero repetimos ciclo.-<br />
86. return ; Regresa de la subrutina.-<br />
87. ;.................................................<br />
88. <strong>en</strong>d<br />
Módulo CCP<br />
Introducción<br />
Los microcontroladores PIC16F628A/648A dispon<strong>en</strong> de un modulo de Captura/Comparación/PWM que <strong>en</strong><br />
conjunto con los temporizadores, permite realizar <strong>en</strong> forma s<strong>en</strong>cilla las tareas de medición de tiempo y<br />
frecu<strong>en</strong>cia, y g<strong>en</strong>eración de señales digitales.<br />
El modulo CCP ti<strong>en</strong>e 3 modos de funcionami<strong>en</strong>to, que se describ<strong>en</strong> a continuación:<br />
Modo captura: Permite capturar el valor que ti<strong>en</strong>e <strong>en</strong> registro TMR1 cuando ocurre un ev<strong>en</strong>to<br />
especial <strong>en</strong> la terminal RB3/CCP1.<br />
Modo comparación: Permite comparar el valor de 16 bits del TMR1 con un valor previam<strong>en</strong>te<br />
definido <strong>en</strong> los registros CCPRL1H y CCPR1L<br />
Autor: Suky Mail: inf.pic.suky@live.com.ar Web: www.micros-designs.com.ar