Documentar el codigo, decirle al software que usamos un pic16f84a e Incluir archivo de símbolos
;autor,fecha,descripción
list p=16F84a
#include "p16f84a.inc"
Definir que sucede al hacer reset al pic
org 0
goto init
Definir configuration bits
__CONFIG _FOSC_XT & _WDTE_OFF & _PWRTE_OFF & _CP_OFF
Evitar vector de interrupción y acceder a banco 1 de memoria de datos
org 5
init bsf STATUS,RP0
Definir que es salida a traves de TRISB
bcf TRISB,0
regresamos al banco 0 e ir al inicio de mi ciclo principal
bcf STATUS,RP0
goto start
En ciclo principal cambiar a 1 el bit 0 de Puerto B
start bsf PORTB,0
goto start
Finalizar
END
Evitar vector de interrupción y acceder a banco 1 de memoria de datos
org 5
init bsf STATUS,RP0
Definir que el bit 0 de Puerto B es salida y el bit 0 del puerto A es entrada
bcf TRISB,0
bsf TRISA,0
Regresamos al banco 0 e ir al inicio de mi ciclo principal
bcf STATUS,RP0
goto start
bit 0 del puerto A==0?
start btfsc PORTA,0
Cambiar a 1 el bit 0 de Puerto B
bsf PORTB,0
Si
No
goto start
The instruction cycle (also known as the fetch–decode–execute cycle or simply the fetch-execute cycle) is the cycle which the central processing unit (CPU) follows from boot-up until the computer has shut down in order to process instructions
pg. 22
pg. 23
Capacitor selection for crystal oscillator
pg. 57
Si el reloj principal es de 4 MHz y queremos saber cuanto tiempo emplea en procesarse la instrucción nop, la cual sólo emplea un ciclo de máquina, se emplearía la expresión matemática anterior:
TCY= 4*( 1/Fosc )*Cycles= 4*( 1/( 4*10^6 ) )*1 = 1*10^6 s = 1μs
pg. 36
GOTO?
CICLOS?
primera vuelta (3+2), ultima vuelta(4), vueltas restantes (3)
Cycles=(3*iteraciones)+3
Realizar el programa y simulación que cumpla con lo siguiente:
Realizar el programa y simulación que cumpla con lo siguiente:
2. Con interruptores conectados a las terminales RB0 y RB1 activar los LEDs conectados a las terminales RA0 y RA1 de acuerdo a la Tabla 1.
RB0 | RB1 | RA1 | RA0 |
---|---|---|---|
0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 |
1 | 0 | 1 | 0 |
1 | 1 | 1 | 1 |
Tabla 1
Si PUERTOB==0000 0010:
Puerto A = 0000 0001