Академический Документы
Профессиональный Документы
Культура Документы
µControladores
Diseño
Programación
Simulación
2
Microcomputador de Propósito General
Fabricados
Fabricadospor
por Procesancantidades
Procesan cantidades
empresas establecidas.
empresas establecidas. relativamentegrandes
relativamente grandes
Ejm::
Ejm::PC,
PC,Macintosh...
Macintosh... datos
datos
Desarrollode
Desarrollo de El
Elusuario
usuariorara
raravez
vez
aplicacionescon
aplicaciones con realiza diseño de
realiza diseño de
lenguajesde
lenguajes dealto
altonivel
nivel hardware
hardware
3
Sistema Empotrado
Uno
UnooomásmásµPs µPsoo
µCtrls
µCtrlsson
sonincorpora-
incorpora- Laarquitectura
La arquitecturayy
dos
dos al sistema en
al sistema en programacióndel
programación del
forma tal que el (los)
forma tal que el (los) sistemaes
sistema esdiseñada
diseñada
dispositivo
dispositivo(s)(s)nonoson
son pararealizar
para realizaruna
unatarea
tarea
accesibles
accesibles directa-
directa- específica
específica
mente
mentepor porelelusuario
usuario
del sistema.
del sistema.
Presentantodas
Presentan todaslas
las
características
características Se
Seprograman
programan usando
usando
propiasde
propias deununµC,
µC,
lenguajes
lenguajesdedepropósito
propósito
perotienen
pero tienenpoca
poca
Tablero de automovil específico.
específico.
potenciapara
potencia para
procesardatos.
procesar datos.
4
Sistema Empotrado
•• Se
Se mide
mide la
la presión
presión del
del aceite,
aceite, la
la temperatura
temperatura
del
del agua
agua yy la
la velocidad
velocidad del
del automóvil.
automóvil.
•• Una
Una conexión
conexión al
al distribuidor
distribuidor permite
permite medir
medir
las RPM del
las RPM del motor.
motor.
•• Se
Se controla
controla el
el encendido
encendido yy arranque
arranque
sustituyendo
sustituyendo la
la llave
llave por
por una
una cerradura
cerradura de
de
combinación.
combinación.
•• Comandos
Comandos al
al servofreno
servofreno permite
permite realizar
realizar el
el
control
control de
de navegación
navegación del
del vehículo.
vehículo.
•• Los
Los indicadores
indicadores pueden
pueden usarse
usarse como
como
medidor
medidor de
de velocidad,
velocidad, tacómetro,
tacómetro, oo para
para
presentar
presentar la
la presión
presión del
del aceite
aceite oo la
la
temperatura
temperatura del
del agua,
agua, de
de acuerdo
acuerdo con con la
la
preferencia del conductor.
preferencia del conductor.
•• Es
Es posible
posible usar
usar líneas
líneas de
de los
los puertos
puertos para
para
control
control de
de la
la cadencia
cadencia de
de los
los
limpiaparabrisas
limpiaparabrisas o para retardo de
o para retardo de las
las luces
luces
internas.
internas.
5
Sistema Empotrado Genérico
6
Aplicaciones de Sistemas Empotrados
Control
Controlde
de Robótica
Robótica
procesos
procesos
Sistemasde
Sistemas de
Sistemas
Sistemasdede comunicación,
comunicación,
fabricación
fabricación mando,yy
mando,
control
control
7
µCS para aplicaciones de Medición
Control e Instrumentación
8
Sistema de Control Digital Genérico
controlador
r(t) rk
CAD
Algoritmo de uk
CDA
Control
yk
CAD
y(t) u(t)
9
Sistema de Control Digital Genérico
10
Sistema de Control Digital Genérico
11
Sistema de Control Digital Genérico
La fuente de alimentación.
13
Sistema de Control de Temperatura con µP
14
Sistema de Control de Temperatura con µP
Se requiere:
16
Sistema de Control de Temperatura con µP
17
Sistema de Control de Temperatura con µP
µP
18
Sistema de Control de Temperatura con µP
Mapa de Memoria
FFFFH
17FFH
Puertos de E/S
0FFFH
Memoria de datos
07FFH
Memoria de programa
0000H
19
Sistema de Control de Temperatura con µP
Decodificador de Direcciones
20
Sistema de Control de Temperatura con µP
22
Sistema de Control de Temperatura con µP
23
Sistema de Control de Temperatura con µP
No se muestra:
1.- La etapa analógica de acoplamiento de entrada: amplificador y filtro anti aliasing.
3.- El puerto de comunicación serie, el cual requiere : un UART y circuitos transceptores TTL/RS232.
25
El µControlador
PUERTOS
µP
TIMERS
FLASH RWM
27
El µControlador
28
El µControlador
29
Ejemplo de un Proceso Industrial
BOMBA
VÁLVULA
SENSOR
CONTROLADOR
30
Ejemplo de un Proceso Industrial
31
ON
LM
LA
SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL
+5V C1 X1 C2
cristal
R4 R5 R11
perturbación
220 220 220
22pF 22pF
Ejemplofiltro
de un pasaProceso Industrial
4 MHZ
R10
reset bajo
OSC1
OSC2
47k D2 D3 D4
C5 U1 MANUAL AUTOMÁTICO CONTROLANDO
13 15
µcontrolador
OSC1 OSC1/CLKI RC0/T1OSO/T1CKI KPKIKD
1 16
MCLR MCLR MCLR/VPP RC1/T1OSI/CCP2A
22uF 17
-12V RC2/CCP1
R8 2
RA0/AN0 RC3/SCK/SCL
18
20k U2:A um
3
RA1/AN1 RC4/SDI/SDA
23
+5V
R9 4 24
11
S1 5
RA2/AN2/VREF- RC5/SDO
25
470 RA3/AN3/VREF+ RC6/TX/CK RxD
+5v
OP : ADD 2 6 26
SEL RA4/T0CKI RC7/RX/DT TxD
R6 R7 1 7
ON RA5/AN4/SS/LVDIN
ic=0 3 14 19
y OSC2 RA6/OSC2/CLKO RD0/PSP0 D0
RST 10k 10k RD1/PSP1
20
D1 RL2
B0
33
RB0/INT0 RD2/PSP2
21
D2 D6 +5V/125 ohmios
C3 C4
4
10uF 34 22 1N4148
LM324 B1 RB1/INT1 RD3/PSP3
2.2uF 35 27
B2 RB2/INT2 RD4/PSP4 D4
S1(IN2) 36 28
pantalla LCD
+12V MAN RB3/CCP2B RD5/PSP5
B4
37
RB4 RD6/PSP6
29
SW2 U5:A
38 30
B5 RB5/PGM RD7/PSP7
LCD1 B6
39
RB6/PGC
1 2 BUZ1
40 8
B7 RB7/PGD RE0/RD/AN5 M/A
alarma
RE2/CS/AN7 LA
BUZZER
PIC18F452
V=3.00213
CDA
VDD
VSS
VEE
planta
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
U3
E
V=1.48682
y
5
con PROTEUS
D4 LDAC
R1 H1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
4
D2 SDI
+5V
2 6
D0 CS VREFA - t .p 1 + Tn.p
3 8
man/aut
+5V D1 SCK VOUTA e K. y
1 + Td.p
puerto serie
MCP4921
B1
B2
B0
B4
B5
B6
B7
OP : DELAY
1° ORD : POLY 1
GND
VDD
+2.5v
um
C6 R13
40%
D5 RL1
1
6
2
7
3
8
4
9
5
CONECTADO 10k
U4 D1 W 172DIP-19 SW3
1 0.1uF 3
1k DIODE SEL
PC
C1+ C1- SW-SPST
+5V
11 14
SEL
+5V
2 1k 10k
VS+ TXD
6
VS- KPKIKD
RTS MANUAL MAN
C2+ C2-
C8 C9 CTS C10 R15
0.1uF 0.1uF 0.1uF 200
4 C7 5 MAX232
0.1uF
32
ON
LM
LA
SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL
+5V C1 X1 C2
R4 R5 R11
220 220 220
22pF 22pF
4 MHZ
R10
OSC1
OSC2
47k D2 D3 D4
C5 U1 MANUAL AUTOMÁTICO CONTROLANDO
13 15
OSC1 OSC1/CLKI RC0/T1OSO/T1CKI KPKIKD
1 16
MCLR MCLR MCLR/VPP RC1/T1OSI/CCP2A
22uF 17
-12V RC2/CCP1
R8 2
RA0/AN0 RC3/SCK/SCL
18
20k U2:A um
3
RA1/AN1 RC4/SDI/SDA
23
+5V
R9 4 24
11
S1 5
RA2/AN2/VREF- RC5/SDO
25
470 RA3/AN3/VREF+ RC6/TX/CK RxD
+5v
OP : ADD 2 6 26
SEL RA4/T0CKI RC7/RX/DT TxD
R6 R7 1 7
ON RA5/AN4/SS/LVDIN
ic=0 3 14 19
y OSC2 RA6/OSC2/CLKO RD0/PSP0 D0
RST 10k 10k RD1/PSP1
20
D1 RL2
B0
33
RB0/INT0 RD2/PSP2
21
D2 D6 +5V/125 ohmios
C3 C4
4
10uF 34 22 1N4148
LM324 B1 RB1/INT1 RD3/PSP3
2.2uF 35 27
B2 RB2/INT2 RD4/PSP4 D4
estado
S1(IN2) 36 28
+12V MAN RB3/CCP2B RD5/PSP5
B4
37
RB4 RD6/PSP6
29
SW2 U5:A
38 30
B5 RB5/PGM RD7/PSP7
LCD1 B6
39
RB6/PGC
1 2 BUZ1
40 8
LM018L B7 RB7/PGD RE0/RD/AN5 M/A
9 SW-SPDT
RE1/WR/AN6 LM 7406
10
RE2/CS/AN7 LA
BUZZER
PIC18F452
V=1.99999
VDD
VSS
VEE
u
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
U3
E
V=0.999995
y
5
D4 LDAC
R1 H1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
4
D2 SDI
+5V
2 6
+5V D0 CS VREFA - t.p 1 + Tn.p
3 8 K.
D1 SCK VOUTA e y
1 + Td.p
MCP4921
B1
B2
B0
B4
B5
B6
B7
OP : DELAY
1° ORD : POLY 1
GND
VDD
+2.5v
um
R12
220 +12V +5V
RV1
C6 D5 R13
40%
CONECTADO RL1
1
6
2
7
3
8
4
9
5
10k
U4 D1 W 172DIP-19 SW3
1 0.1uF 3
manual
1k DIODE SEL
C1+ C1- SW-SPST
+5V
SEL
11 14
RxD T1IN T1OUT
12 13
TxD R1OUT R1IN SW1
10
T2IN T2OUT
7
RXD SW1 R14
9
R2OUT R2IN
8
RXD M/A R2 Q1 R3 3.9k
2N3053
+5V
2 TXD
VS+ TXD 1k 10k
6
VS- RTS MANUAL KPKIKD
RTS MANUAL MAN
C2+ C2- CTS
C8 C9 CTS C10 R15
0.1uF 0.1uF 0.1uF 200
4 C7 5 MAX232
0.1uF
33
ON
LM
LA
SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL
+5V C1 X1 C2
R4 R5 R11
220 220 220
22pF 22pF
4 MHZ
R10
OSC1
OSC2
47k D2 D3 D4
C5 U1 MANUAL AUTOMÁTICO CONTROLANDO
13 15
OSC1 OSC1/CLKI RC0/T1OSO/T1CKI KPKIKD
1 16
KpKiKd
MCLR MCLR MCLR/VPP RC1/T1OSI/CCP2A
22uF 17
-12V RC2/CCP1
R8 2
RA0/AN0 RC3/SCK/SCL
18
20k U2:A um
3
RA1/AN1 RC4/SDI/SDA
23
+5V
R9 4 24
11
S1 5
RA2/AN2/VREF- RC5/SDO
25
470 RA3/AN3/VREF+ RC6/TX/CK RxD
+5v
OP : ADD 2 6 26
SEL RA4/T0CKI RC7/RX/DT TxD
R6 R7 1 7
ON RA5/AN4/SS/LVDIN
ic=0 3 14 19
y OSC2 RA6/OSC2/CLKO RD0/PSP0 D0
RST 10k 10k RD1/PSP1
20
D1 RL2
B0
33
RB0/INT0 RD2/PSP2
21
D2 D6 +5V/125 ohmios
C3 C4
4
10uF 34 22 1N4148
LM324 B1 RB1/INT1 RD3/PSP3
2.2uF 35 27
B2 RB2/INT2 RD4/PSP4 D4
S1(IN2) 36 28
+12V MAN RB3/CCP2B RD5/PSP5
B4
37
RB4 RD6/PSP6
29
SW2 U5:A
38 30
B5 RB5/PGM RD7/PSP7
LCD1 B6
39
RB6/PGC
1 2 BUZ1
40 8
LM018L B7 RB7/PGD RE0/RD/AN5 M/A
9 SW-SPDT
RE1/WR/AN6 LM 7406
10
RE2/CS/AN7 LA
BUZZER
PIC18F452
V=1.99999
VDD
VSS
VEE
u
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
U3
E
V=2.92115
y
5
D4 LDAC
R1 H1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
4
+5V D2 SDI
+5V
2 6
D0 CS VREFA - t.p 1 + Tn.p
3 8 K.
D1 SCK VOUTA e y
1 + Td.p
MCP4921
B1
B2
B0
B4
B5
B6
B7
OP : DELAY
1° ORD : POLY 1
GND
VDD
+2.5v
R12 um
KpKiKd
220
+12V +5V
RV1
C6 D5 CONECTADO R13
40%
RL1
1
6
2
7
3
8
4
9
5
10k
U4 D1 W 172DIP-19 SW3
1 0.1uF 3
1k DIODE SEL
C1+ C1- SW-SPST
SEL
+5V
11 14
RxD
12
T1IN T1OUT
13 SW1
TxD R1OUT R1IN RXD
10
T2IN T2OUT
7
SW1 R14
9
R2OUT R2IN
8
TXD RXD M/A R2 Q1 R3 3.9k
2N3053
+5V
2
VS+
6 RTS TXD MANUAL 1k 10k
VS- KPKIKD
CTS RTS MANUAL MAN
C2+ C2-
C8 C9 CTS C10 R15
0.1uF 0.1uF 0.1uF 200
4 C7 5 MAX232
0.1uF
34
ON
LM
LA
SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL
+5V C1 X1 C2
R4 R5 R11
220 220 220
22pF 22pF
4 MHZ
R10
OSC1
OSC2
47k D2 D3 D4
C5 U1 MANUAL AUTOMÁTICO CONTROLANDO
13 15
OSC1 OSC1/CLKI RC0/T1OSO/T1CKI KPKIKD
1 16
MCLR MCLR MCLR/VPP RC1/T1OSI/CCP2A
22uF 17
-12V RC2/CCP1
R8 2
RA0/AN0 RC3/SCK/SCL
18
20k U2:A um
3
RA1/AN1 RC4/SDI/SDA
23
+5V
R9 4 24
11
S1 5
RA2/AN2/VREF- RC5/SDO
25
470 RA3/AN3/VREF+ RC6/TX/CK RxD
+5v
OP : ADD 2 6 26
SEL RA4/T0CKI RC7/RX/DT TxD
R6 R7 1 7
ON RA5/AN4/SS/LVDIN
ic=0 3 14 19
y OSC2 RA6/OSC2/CLKO RD0/PSP0 D0
RST 10k 10k RD1/PSP1
20
D1 RL2
B0
33
RB0/INT0 RD2/PSP2
21
D2 D6 +5V/125 ohmios
C3 C4
4
10uF 34 22 1N4148
LM324 B1 RB1/INT1 RD3/PSP3
2.2uF 35 27
B2 RB2/INT2 RD4/PSP4 D4
S1(IN2) 36 28
+12V MAN RB3/CCP2B RD5/PSP5
B4
37
RB4 RD6/PSP6
29
SW2 U5:A
38 30
B5 RB5/PGM RD7/PSP7
LCD1 B6
39
RB6/PGC
1 2 BUZ1
40 8
LM018L B7 RB7/PGD RE0/RD/AN5 M/A
9 SW-SPDT
RE1/WR/AN6 LM 7406
10
RE2/CS/AN7 LA
BUZZER
PIC18F452
V=1.99999
VDD
VSS
VEE
u
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
U3
E
V=0.999995
y
5
D4 LDAC
R1 H1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
4
D2 SDI
+5V
2 6
D0 CS VREFA - t.p 1 + Tn.p
3 8 K.
+5V D1 SCK VOUTA e y
1 + Td.p
MCP4921
B1
B2
B0
B4
B5
B6
B7
OP : DELAY
1° ORD : POLY 1
GND
VDD
+2.5v
conectado
um
operador
220
RV1
C6 R13
40%
D5 RL1
1
6
2
7
3
8
4
9
5
CONECTADO 10k
U4 D1 W 172DIP-19 SW3
1 0.1uF 3
1k DIODE SEL
C1+ C1- SW-SPST
+5V
11 14
SEL
+5V
2 1k 10k
VS+ TXD
6
VS- KPKIKD
RTS MANUAL MAN
C2+ C2-
C8 C9 CTS C10 R15
0.1uF 0.1uF 0.1uF 200
4 C7 5 MAX232
0.1uF
35
ON
LM
LA
SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL
+5V C1 X1 C2
R4 R5 R11
220 220 220
22pF 22pF
4 MHZ
R10
OSC1
OSC2
47k D2 D3 D4
C5 U1 MANUAL AUTOMÁTICO CONTROLANDO
13 15
OSC1 OSC1/CLKI RC0/T1OSO/T1CKI KPKIKD
1 16
MCLR MCLR MCLR/VPP RC1/T1OSI/CCP2A
22uF 17
-12V RC2/CCP1
R8 2
RA0/AN0 RC3/SCK/SCL
18
20k U2:A um
3
RA1/AN1 RC4/SDI/SDA
23
+5V
R9 4 24
11
S1 5
RA2/AN2/VREF- RC5/SDO
25
470 RA3/AN3/VREF+ RC6/TX/CK RxD
+5v
OP : ADD 2 6 26
SEL RA4/T0CKI RC7/RX/DT TxD
R6 R7 1 7
ON RA5/AN4/SS/LVDIN
ic=0 3 14 19
y OSC2 RA6/OSC2/CLKO RD0/PSP0 D0
RST 10k 10k RD1/PSP1
20
D1 RL2
B0
33
RB0/INT0 RD2/PSP2
21
D2 D6 +5V/125 ohmios
C3 C4
4
10uF 34 22 1N4148
LM324 B1 RB1/INT1 RD3/PSP3
2.2uF 35 27
B2 RB2/INT2 RD4/PSP4 D4
S1(IN2) 36 28
+12V MAN RB3/CCP2B RD5/PSP5
B4
37
RB4 RD6/PSP6
29
SW2 U5:A
38 30
B5 RB5/PGM RD7/PSP7
LCD1 B6
39
RB6/PGC
1 2 BUZ1
40 8
LM018L B7 RB7/PGD RE0/RD/AN5 M/A
9 SW-SPDT
RE1/WR/AN6 LM 7406
10
RE2/CS/AN7 LA
BUZZER
PIC18F452
V=2.73971
VDD
VSS
VEE
u
RW
RS
D0
D1
D2
D3
D4
D5
D6
D7
U3
E
V=1.32202
y
5
D4 LDAC
R1 H1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
4
D2 SDI
+5V
2 6
D0 CS VREFA - t.p 1 + Tn.p
3 8 K.
+5V D1 SCK VOUTA e y
1 + Td.p
MCP4921
B1
B2
B0
B4
B5
B6
B7
OP : DELAY
1° ORD : POLY 1
GND
VDD
+2.5v
um
C6 R13
40%
D5 RL1
1
6
2
7
3
8
4
9
5
CONECTADO 10k
U4 D1 W 172DIP-19 SW3
1 0.1uF 3
1k DIODE SEL
C1+ C1- SW-SPST
+5V
11 14
SEL
+5V
2 1k 10k
VS+ TXD
6
VS- KPKIKD
RTS MANUAL MAN
C2+ C2-
C8 C9 CTS C10 R15
0.1uF 0.1uF 0.1uF 200
4 C7 5 MAX232
0.1uF
36
37
38
Periféricos comunes en µctrl y sus aplicaciones
39
Los Microcontroladores
PIC
40
Los Microcontroladores PIC
41
Los Microcontroladores PIC
42
Los Microcontroladores PIC
La familia de µCtrls PIC ofrece una fácil migración dentro del rango
completo de productos. Los µCtrls PIC son compatibles pin a pin
para dispositivos de igual número de terminales, existiendo además
compatibilidad de código entre las diferentes arquitecturas.
43
Los Microcontroladores PIC
44
Los Microcontroladores PIC
45
Los Microcontroladores PIC
46
Los Microcontroladores PIC
47
Los Microcontroladores PIC
49
Los Microcontroladores PIC
17CXXX 16 16 58 4
Multiplicación por Hardware
18CXXX/18FXXX Rendimiento Alto 32 16 75 2
Multiplicación por Hardware (Con Prioridad)
50
Los Microcontroladores PIC
Serie 16
16F84A
16F877
Serie 18
18F452
51
Los Microcontroladores PIC
Introducción a los
PICs de la Serie 16
52
Los Microcontroladores PIC
53
Los Microcontroladores PIC
El PIC16F84A
54
Los Microcontroladores PIC
PIC16F84A
Es uno de los miembros de mayor éxito de la serie 16. Es presentado
por Microchip como un microcontrolador pequeño, simple y fácil de
programar. Originalmente fue introducido como PIC16C84, siendo el
primer µCtrl con memoria de programa EEPROM. Posteriormente se usó
memoria FLASH en el PIC16F84. Existe una versión PIC16LF84 para
aplicaciones de bajo consumo.
56
Los Microcontroladores PIC
Recursos:
1. µP (CPU) de 8 bits con 35 instrucciones.
58
La CPU del PIC16F84A
59
La CPU del PIC16F84A
60
La CPU del PIC16F84A
En un µP el En un PIC el
resultado se resultado puede
carga en el cargarse en el
acumulador registro W o en un
registro F de la
RAM
61
La CPU del PIC16F84A
El CONJUNTO DE
INSTRUCCIONES DEL
PIC16F84A
62
La CPU del PIC16F84A
63
La CPU del PIC16F84A
64
La CPU del PIC16F84A
65
La CPU del PIC16F84A
66
La CPU del PIC16F84A
68
La CPU del PIC16F84A
70
La CPU del PIC16F84A
El Registro
STATUS
71
La CPU del PIC16F84A
72
La CPU del PIC16F84A
73
La CPU del PIC16F84A
74
La CPU del PIC16F84A
75
La CPU del PIC16F84A
Z: Bit de Cero
76
La CPU del PIC16F84A
77
La CPU del PIC16F84A
Ejemplos de Instrucciones:
78
La CPU del PIC16F84A
;*************************************************************************************
#define SEL_BANCO_0 bcf STATUS,RP0 ; Seleccione banco 0
#define SEL_BANCO_1 bsf STATUS,RP0 ; Seleccione banco 1
#define CERO STATUS,Z ; Prueba bandera de cero
#define CARRY STATUS,C ; Prueba bandera de cero
#define RS PORTA,0 ; Linea RS del LCD
#define RW PORTA,1
#define E PORTA,2 ; Linea enable del LCD
;*************************************************************************************
79
La CPU del PIC16F84A
Ejemplos de Instrucciones:
SEL_BANCO_1
movlw b'00011000’
movwf OPTION_REG
SEL_BANCO_0
btfsc CARRY
btfsc STATUS,C
bcf RS
bsf E
80
La CPU del PIC16F84A
;*************************************************************************************
estado equ 0x03 ; Registro STATUS
puerto_b equ 0x06 ; Puerto B
temp1 equ 0x11 ; Almacenamiento temporal
;*************************************************************************************
Es válido escribir:
bsf estado,5 ; Selecciona banco 1
También:
esp: movf puerto_b,0 ; Leer estado de las válvulas
movwf temp1
xorlw 3 ; ¿Están ambas cerradas?
btfsc estado,2
goto esp ; Ambas cerradas, esperar
movf temp1,0
81
La CPU del PIC16F84A
La Memoria del
PIC16F84A
82
La Memoria del PIC16F84A
Tecnologías de Memoria
RAM Estática (SRAM)
FLASH
83
La Memoria del PIC16F84A
84
La Memoria del PIC16F84A
La Memoria de Programa
85
La Memoria del PIC16F84A
PCL 0x02
PCLATH 0x0A
87
La Memoria del PIC16F84A
88
La Memoria del PIC16F84A
90
La Memoria del PIC16F84A
91
La Memoria del PIC16F84A
Ejemplos de
lectura de
Tabla de Datos
92
La Memoria del PIC16F84A
; Programa principal
…
err call mens ; Mensaje de error
…
;*******************************************************************
; Rutina mensaje
;*******************************************************************
mens clrf despl
mens_1 movlw 0
addwf despl,w
call datos
iorlw 0
btfsc STATUS,2
return
call lcd_dato
incf despl,f
goto mens_1
;*******************************************************************
; Mensaje de error
;*******************************************************************
datos addwf PCL,1
retlw 'E'
retlw 'r'
retlw 'r‘
retlw 'o‘
retlw 'r'
retlw 0x00 93
La Memoria del PIC16F84A
Otro ejemplo
; Programa principal
…
movlw ide ; Carga en W dirección del primer carácter del mensaje ide call
mens ; Presenta mensaje
movlw 0x03 ; Carga 3 en W
call lcd_y2_xw ; Cursor a fila 2 columna 3
movlw nombre
call mens
…
94
La Memoria del PIC16F84A
;*************************************************************
; Presenta mensaje en LCD
; Entrada: Cargar en W (dir inicio de la cadena) ;*******************************************************************
; La cadena debe terminar con cero. ; Escribe texto en LCD
;************************************************************* ;*******************************************************************
mens movwf contdb org 0x200
decf contdb texto addwf PCL,1
movlw 0x02 ;*******************************************************************
movwf PCLATH ; Area de mensajes
xxq movf contdb,0 ;*******************************************************************
call texto
iorlw 0 ide dt "Voltimetro DC",0
btfsc CERO nombre dt "Br. J Salas",0
return
bcf lcd_modo,0
call lcd_enviar
incf contdb,1
goto xxq
95
La Memoria del PIC16F84A
96
La Memoria del PIC16F84A
La Pila o Stack
97
La Memoria del PIC16F84A
Llamada a subrutina
100