micro control adores pics i-luis urdaneta

100
Diseño Programación Simulación Por Luis D. Urdaneta G. Sistemas de µControlado res

Upload: luis-d-urdaneta-g

Post on 04-Apr-2015

187 views

Category:

Documents


2 download

DESCRIPTION

Microcontroladores PIC ILuis Urdaneta

TRANSCRIPT

Page 1: Micro Control Adores PICs I-Luis Urdaneta

Diseño

Programación

Simulación

Diseño

Programación

Simulación

Por Luis D. Urdaneta G.

Sistemas de µControlad

ores

Page 2: Micro Control Adores PICs I-Luis Urdaneta

Sistemas empotradosµCs de propósito general

2

Page 3: Micro Control Adores PICs I-Luis Urdaneta

Desarrollo de aplicaciones con lenguajes de alto nivel

Desarrollo de aplicaciones con lenguajes de alto nivel

El usuario rara vez realiza diseño de hardware

El usuario rara vez realiza diseño de hardware

Procesan cantidades relativamente grandes datos

Procesan cantidades relativamente grandes datos

Fabricados por empresas establecidas. Ejm:: PC, Macintosh...

Fabricados por empresas establecidas. Ejm:: PC, Macintosh...

Microcomputador de Propósito General

3

Page 4: Micro Control Adores PICs I-Luis Urdaneta

Sistema Empotrado

Uno o más µPs o µCtrls son incorpora-dos al sistema en forma tal que el (los) dispositivo (s) no son accesibles directa-mente por el usuario del sistema.

Uno o más µPs o µCtrls son incorpora-dos al sistema en forma tal que el (los) dispositivo (s) no son accesibles directa-mente por el usuario del sistema.

Presentan todas las características propias de un µC, pero tienen poca potencia para procesar datos.

Presentan todas las características propias de un µC, pero tienen poca potencia para procesar datos.

La arquitectura y programación del sistema es diseñada para realizar una tarea específica

La arquitectura y programación del sistema es diseñada para realizar una tarea específica

Se programan usando lenguajes de propósito específico.

Se programan usando lenguajes de propósito específico.Tablero de automovil

4

Page 5: Micro Control Adores PICs I-Luis Urdaneta

Sistema Empotrado

5

• Se mide la presión del aceite, la temperatura del agua y la velocidad del automóvil.

• Una conexión al distribuidor permite medir las RPM del motor.

• Se controla el encendido y arranque sustituyendo la llave por una cerradura de combinación.

• Comandos al servofreno permite realizar el control de navegación del vehículo.

• Los indicadores pueden usarse como medidor de velocidad, tacómetro, o para presentar la presión del aceite o la temperatura del agua, de acuerdo con la preferencia del conductor.

• Es posible usar líneas de los puertos para control de la cadencia de los limpiaparabrisas o para retardo de las luces internas.

• Se mide la presión del aceite, la temperatura del agua y la velocidad del automóvil.

• Una conexión al distribuidor permite medir las RPM del motor.

• Se controla el encendido y arranque sustituyendo la llave por una cerradura de combinación.

• Comandos al servofreno permite realizar el control de navegación del vehículo.

• Los indicadores pueden usarse como medidor de velocidad, tacómetro, o para presentar la presión del aceite o la temperatura del agua, de acuerdo con la preferencia del conductor.

• Es posible usar líneas de los puertos para control de la cadencia de los limpiaparabrisas o para retardo de las luces internas.

Page 6: Micro Control Adores PICs I-Luis Urdaneta

Sistema Empotrado Genérico

6

Page 7: Micro Control Adores PICs I-Luis Urdaneta

Aplicaciones de Sistemas Empotrados

7

APLICACIONES

Control deprocesosControl deprocesos

Sistemas de fabricaciónSistemas de fabricación

Sistemas decomunicación, mando, ycontrol

Sistemas decomunicación, mando, ycontrol

AutomatismosAutomatismos

RobóticaRobótica

Equipos del hogar

Equipos del hogar

Sistemas Empotrados

Page 8: Micro Control Adores PICs I-Luis Urdaneta

8

µCS para aplicaciones de Medición Control e Instrumentación

µCS para aplicaciones de Medición Control e Instrumentación

Page 9: Micro Control Adores PICs I-Luis Urdaneta

9

Sistema de Control Digital Genérico

r(t)

CAD

Algoritmo deControl

CDA

Sensor ActuadorPlanta

y(t) u(t)

CAD

controlador

uk

yk

rk

Page 10: Micro Control Adores PICs I-Luis Urdaneta

10

Sistema de Control Digital Genérico

Para realizar el controlador digital con un µP, el sistema empotrado resultante debe

disponer de:

Page 11: Micro Control Adores PICs I-Luis Urdaneta

11

Sistema de Control Digital Genérico

Page 12: Micro Control Adores PICs I-Luis Urdaneta

12

Sistema de Control Digital Genérico

Un microprocesador responsable del procesamiento.

Un generador de reloj y un circuito de reset.

Memoria EPROM y RWM para almacenar el programa y los resultados de los cálculos.

Un puerto de entrada para que el µP reciba señales desde el ex- terior.

Un convertidor analógico-digital para convertir a formato bina- rio las variables externas de naturaleza analógica. El conversor A/D procesa la salida y(t) y la señal r(t) de referencia.

Page 13: Micro Control Adores PICs I-Luis Urdaneta

13

Sistema de Control Digital Genérico

Al menos un puerto de salida para que el µP envíe señales al sistema controlado.

Un convertidor digital-analógico para tornar en una tensión análoga, la señal digital de control uk emitida por el µP.

La fuente de alimentación.

Page 14: Micro Control Adores PICs I-Luis Urdaneta

14

Sistema de Control de Temperatura con µP

Page 15: Micro Control Adores PICs I-Luis Urdaneta

15

Sistema de Control de Temperatura con µP

Adquirir datos de la temperatura en 8 puntos de un proceso.

Calcular la temperatura promedio.

Retornar este valor al proceso como información analógica.

Debe existir un canal serie para comunicación con un PC.

Page 16: Micro Control Adores PICs I-Luis Urdaneta

16

Sistema de Control de Temperatura con µP

Se requiere:

1. Un Microprocesador de 8 bits (Z80, 8085,...)2. 2 K de memoria EPROM. (2716)3. Algo de memoria RWM. (6116 o de menor

capacidad)4. Un PPI 8255 (24 líneas E/S)

Page 17: Micro Control Adores PICs I-Luis Urdaneta

17

Sistema de Control de Temperatura con µP

Page 18: Micro Control Adores PICs I-Luis Urdaneta

18

Sistema de Control de Temperatura con µP

µP

Unidad Central de Procesamiento

Page 19: Micro Control Adores PICs I-Luis Urdaneta

19

Sistema de Control de Temperatura con µP

0000H

07FFH

0FFFH

17FFH

FFFFH

Memoria de programa

Memoria de datos

Puertos de E/S

Mapa de Memoria

Page 20: Micro Control Adores PICs I-Luis Urdaneta

20

Sistema de Control de Temperatura con µP

Decodificador de Direcciones

Page 21: Micro Control Adores PICs I-Luis Urdaneta

21

Sistema de Control de Temperatura con µP

Sección de Memoria y E/S

Page 22: Micro Control Adores PICs I-Luis Urdaneta

22

Sistema de Control de Temperatura con µP

Page 23: Micro Control Adores PICs I-Luis Urdaneta

23

Sistema de Control de Temperatura con µP

Page 24: Micro Control Adores PICs I-Luis Urdaneta

24

No se muestra:

1.- La etapa analógica de acoplamiento de entrada: amplificador y filtro anti aliasing.

2.- La etapa de salida de potencia.

3.- El puerto de comunicación serie, el cual requiere : un UART y circuitos transceptores TTL/RS232.

4.-Si se necesita presentación local de la temperatura usando una pantalla incandescente o de cristal líquido ,debe añadirse líneas de E/S para el control de la presentación.

Sistema de Control de Temperatura con µP

Page 25: Micro Control Adores PICs I-Luis Urdaneta

25

Sistema de Control de Temperatura con µP

Los componentes y la organización del µC se mantiene invariable en cualquier

aplicación de medición, instrumentación y control.

Para simplificar el diseño, aumentar la fiabilidad y disminuir los costos de

desarrollo de las aplicaciones, lo componentes del µC se integran en

el interior del encapsulado.

Page 26: Micro Control Adores PICs I-Luis Urdaneta

26

El µControlador

PUERTOS

RWMFLASH

µP

El dispositivo resultado de la integración de recursos se denomina µControlador.

TIMERS

Page 27: Micro Control Adores PICs I-Luis Urdaneta

27

El µControlador

Page 28: Micro Control Adores PICs I-Luis Urdaneta

28

El µControlador

Un microcontrolador es un µC monopastilla, dirigido a operar en ambiente industrial.

A diferencia del microprocesador, el cual es diseñado para un amplio espectro de aplicaciones, los µCtrls se diseñan para aplicaciones específicas.

Estos tienden a incluir todos periféricos de la sección del computador del sistema empotrado.

Page 29: Micro Control Adores PICs I-Luis Urdaneta

29

El µControlador

Un microcontrolador es un µC monopastilla, dirigido a operar en ambiente industrial.

A diferencia del microprocesador, el cual es diseñado para un amplio espectro de aplicaciones, los µCtrls se diseñan para aplicaciones específicas.

Estos tienden a incluir todos periféricos de la sección del computador del sistema empotrado.

Page 30: Micro Control Adores PICs I-Luis Urdaneta

30

Ejemplo de un Proceso Industrial

BOMBA

CONTROLADOR

SENSORVÁLVULA

Page 31: Micro Control Adores PICs I-Luis Urdaneta

31

Ejemplo de un Proceso Industrial

Page 32: Micro Control Adores PICs I-Luis Urdaneta

32

Ejemplo de un Proceso Industrial

Simulación del Sistema con

PROTEUS

ic=0

1 + Tn.p

1 + Td.pK.

H1

1° ORD : POLY 1

yV=

3.0

021

3

- t .pe

R1

OP : DELAY

MCLR/VPP1

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA3/AN3/VREF+5

RA4/T0CKI6

RA5/AN4/SS/LVDIN7

RE0/RD/AN58

RE1/WR/AN69

RE2/CS/AN710

OSC1/CLKI13

RA6/OSC2/CLKO14

RC0/T1OSO/T1CKI15

RC2/CCP117

RC3/SCK/SCL18

RD0/PSP019

RD1/PSP120

RD2/PSP221

RD3/PSP322

RD4/PSP427

RD5/PSP528

RD6/PSP629

RD7/PSP730

RC4/SDI/SDA23

RC5/SDO24

RC6/TX/CK25

RC7/RX/DT26

RB0/INT033

RB1/INT134

RB2/INT235

RB3/CCP2B36

RB437

RB5/PGM38

RB6/PGC39

RB7/PGD40

RC1/T1OSI/CCP2A16

U1

PIC18F452

X1

4 MHZ

OS

C1

OSC2

OS

C2

OSC1MCLR

uV=1.48682

y

y

40%

RV1

1k

+2.5v

MAN

+5

v

RxDTxD

RxDTxD

RL1W172DIP-19

Q12N3053

+12V

D1

DIODE

R2

1k

R3

10k +5

V

MAN

R4220

R5220

LALM

D2MANUAL

M/ALMLA

3

21

411

U2:A

LM324

R6

10k

R7

10k

C410uF

C5

22uF

GN

DV

DD

M/ASW1

MANUAL

D7

14D

613

D5

12D

411

D3

10D

29

D1

8D

07

E6

RW

5R

S4

VS

S1

VD

D2

VE

E3

LCD1LM018L

B0

B2

B1

B7

B6

B5

B4

B7B6B5B4

B0B1B2

R820k

C32.2uF

T1IN11

R1OUT12

T2IN10

R2OUT9

T1OUT14

R1IN13

T2OUT7

R2IN8

C2+

4

C2-

5

C1+

1

C1-

3

VS+2

VS-6

U4

MAX232C7

0.1uF

C6

0.1uF

C80.1uF

1 6 2 7 3 8 4 9 5

RXD

RTS

TXD

CTSC90.1uF

C1

22pF

C2

22pF

RST

R9470

R1047k

MCLR

D4CONTROLANDO

R11220

ON

+5V

ON

D3AUTOMÁTICO

um

SCK3

CS2

SDI4

LDAC5

VOUTA8

VREFA6

U3

MCP4921

+5

V

D0D1D2

D4

D4D2D0D1

+12V

-12V

um

SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL

+5V

RL2+5V/125 ohmios

1 2

U5:A

7406

SW2

SW-SPDT

D61N4148

SEL

SW3

SW-SPST

R1310k

SEL

+5V

R143.9k

+5

V

KPKIKD

KPKIKD

C100.1uF

R15200

S1OP : ADD

S1(IN2)

BUZ1

BUZZER

R12220

+5VS

EL

D5 CONECTADO

32

µcontrolador

cristal

reset filtro pasa bajo

pantalla LCD

alarma

plantaCDA

man/autpuerto serie

PC

perturbación

Page 33: Micro Control Adores PICs I-Luis Urdaneta

333333

ic=0

1 + Tn.p

1 + Td.pK.

H1

1° ORD : POLY 1

yV=

1.9

999

9

- t .pe

R1

OP : DELAY

MCLR/VPP1

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA3/AN3/VREF+5

RA4/T0CKI6

RA5/AN4/SS/LVDIN7

RE0/RD/AN58

RE1/WR/AN69

RE2/CS/AN710

OSC1/CLKI13

RA6/OSC2/CLKO14

RC0/T1OSO/T1CKI15

RC2/CCP117

RC3/SCK/SCL18

RD0/PSP019

RD1/PSP120

RD2/PSP221

RD3/PSP322

RD4/PSP427

RD5/PSP528

RD6/PSP629

RD7/PSP730

RC4/SDI/SDA23

RC5/SDO24

RC6/TX/CK25

RC7/RX/DT26

RB0/INT033

RB1/INT134

RB2/INT235

RB3/CCP2B36

RB437

RB5/PGM38

RB6/PGC39

RB7/PGD40

RC1/T1OSI/CCP2A16

U1

PIC18F452

X1

4 MHZ

OS

C1

OSC2

OS

C2

OSC1MCLR

uV=0.999995

y

y

40%

RV1

1k

+2.5v

MAN

+5

v

RxDTxD

RxDTxD

RL1W172DIP-19

Q12N3053

+12V

D1

DIODE

R2

1k

R3

10k +5

V

MAN

R4220

R5220

LALM

D2MANUAL

M/ALMLA

3

21

411

U2:A

LM324

R6

10k

R7

10k

C410uF

C5

22uF

GN

DV

DD

M/ASW1

MANUAL

D7

14D

613

D5

12D

411

D3

10D

29

D1

8D

07

E6

RW

5R

S4

VS

S1

VD

D2

VE

E3

LCD1LM018L

B0

B2

B1

B7

B6

B5

B4

B7B6B5B4

B0B1B2

R820k

C32.2uF

T1IN11

R1OUT12

T2IN10

R2OUT9

T1OUT14

R1IN13

T2OUT7

R2IN8

C2+

4

C2-

5

C1+

1

C1-

3

VS+2

VS-6

U4

MAX232C7

0.1uF

C6

0.1uF

C80.1uF

1 6 2 7 3 8 4 9 5

RXD

RTS

TXD

CTSC90.1uF

C1

22pF

C2

22pF

RST

R9470

R1047k

MCLR

D4CONTROLANDO

R11220

ON

+5V

ON

D3AUTOMÁTICO

um

SCK3

CS2

SDI4

LDAC5

VOUTA8

VREFA6

U3

MCP4921

+5

V

D0D1D2

D4

D4D2D0D1

+12V

-12V

um

SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL

+5V

RL2+5V/125 ohmios

1 2

U5:A

7406

SW2

SW-SPDT

D61N4148

SEL

SW3

SW-SPST

R1310k

SEL

+5V

R143.9k

+5

V

KPKIKD

KPKIKD

C100.1uF

R15200

S1OP : ADD

S1(IN2)

BUZ1

BUZZER

SW1

MANUAL

RXD

RTS

TXD

CTS

R12220

+5V

SE

L

D5 CONECTADO

manual

estado

Page 34: Micro Control Adores PICs I-Luis Urdaneta

34343434

ic=0

1 + Tn.p

1 + Td.pK.

H1

1° ORD : POLY 1

yV=

1.9

999

9

- t .pe

R1

OP : DELAY

MCLR/VPP1

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA3/AN3/VREF+5

RA4/T0CKI6

RA5/AN4/SS/LVDIN7

RE0/RD/AN58

RE1/WR/AN69

RE2/CS/AN710

OSC1/CLKI13

RA6/OSC2/CLKO14

RC0/T1OSO/T1CKI15

RC2/CCP117

RC3/SCK/SCL18

RD0/PSP019

RD1/PSP120

RD2/PSP221

RD3/PSP322

RD4/PSP427

RD5/PSP528

RD6/PSP629

RD7/PSP730

RC4/SDI/SDA23

RC5/SDO24

RC6/TX/CK25

RC7/RX/DT26

RB0/INT033

RB1/INT134

RB2/INT235

RB3/CCP2B36

RB437

RB5/PGM38

RB6/PGC39

RB7/PGD40

RC1/T1OSI/CCP2A16

U1

PIC18F452

X1

4 MHZ

OS

C1

OSC2

OS

C2

OSC1MCLR

uV=2.92115

y

y

40%

RV1

1k

+2.5v

MAN

+5

v

RxDTxD

RxDTxD

RL1W172DIP-19

Q12N3053

+12V

D1

DIODE

R2

1k

R3

10k +5

V

MAN

R4220

R5220

LALM

D2MANUAL

M/ALMLA

3

21

411

U2:A

LM324

R6

10k

R7

10k

C410uF

C5

22uF

GN

DV

DD

M/ASW1

MANUAL

D7

14D

613

D5

12D

411

D3

10D

29

D1

8D

07

E6

RW

5R

S4

VS

S1

VD

D2

VE

E3

LCD1LM018L

B0

B2

B1

B7

B6

B5

B4

B7B6B5B4

B0B1B2

R820k

C32.2uF

T1IN11

R1OUT12

T2IN10

R2OUT9

T1OUT14

R1IN13

T2OUT7

R2IN8

C2+

4

C2-

5

C1+

1

C1-

3

VS+2

VS-6

U4

MAX232C7

0.1uF

C6

0.1uF

C80.1uF

1 6 2 7 3 8 4 9 5

RXD

RTS

TXD

CTSC90.1uF

C1

22pF

C2

22pF

RST

R9470

R1047k

MCLR

D4CONTROLANDO

R11220

ON

+5V

ON

D3AUTOMÁTICO

um

SCK3

CS2

SDI4

LDAC5

VOUTA8

VREFA6

U3

MCP4921

+5

V

D0D1D2

D4

D4D2D0D1

+12V

-12V

um

SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL

+5V

RL2+5V/125 ohmios

1 2

U5:A

7406

SW2

SW-SPDT

D61N4148

SEL

SW3

SW-SPST

R1310k

SEL

+5V

R143.9k

+5

V

KPKIKD

KPKIKD

C100.1uF

R15200

S1OP : ADD

S1(IN2)

BUZ1

BUZZER

SW1

MANUAL

RXD

RTS

TXD

CTS

R12220

+5V

SE

L

D5 CONECTADO

KpKiKd

KpKiKd

Page 35: Micro Control Adores PICs I-Luis Urdaneta

3535353535

ic=0

1 + Tn.p

1 + Td.pK.

H1

1° ORD : POLY 1

yV=

1.9

999

9

- t .pe

R1

OP : DELAY

MCLR/VPP1

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA3/AN3/VREF+5

RA4/T0CKI6

RA5/AN4/SS/LVDIN7

RE0/RD/AN58

RE1/WR/AN69

RE2/CS/AN710

OSC1/CLKI13

RA6/OSC2/CLKO14

RC0/T1OSO/T1CKI15

RC2/CCP117

RC3/SCK/SCL18

RD0/PSP019

RD1/PSP120

RD2/PSP221

RD3/PSP322

RD4/PSP427

RD5/PSP528

RD6/PSP629

RD7/PSP730

RC4/SDI/SDA23

RC5/SDO24

RC6/TX/CK25

RC7/RX/DT26

RB0/INT033

RB1/INT134

RB2/INT235

RB3/CCP2B36

RB437

RB5/PGM38

RB6/PGC39

RB7/PGD40

RC1/T1OSI/CCP2A16

U1

PIC18F452

X1

4 MHZ

OS

C1

OSC2

OS

C2

OSC1MCLR

uV=0.999995

y

y

40%

RV1

1k

+2.5v

MAN

+5

v

RxDTxD

RxDTxD

RL1W172DIP-19

Q12N3053

+12V

D1

DIODE

R2

1k

R3

10k +5

V

MAN

R4220

R5220

LALM

D2MANUAL

M/ALMLA

3

21

411

U2:A

LM324

R6

10k

R7

10k

C410uF

C5

22uF

GN

DV

DD

M/ASW1

MANUAL

D7

14D

613

D5

12D

411

D3

10D

29

D1

8D

07

E6

RW

5R

S4

VS

S1

VD

D2

VE

E3

LCD1LM018L

B0

B2

B1

B7

B6

B5

B4

B7B6B5B4

B0B1B2

R820k

C32.2uF

T1IN11

R1OUT12

T2IN10

R2OUT9

T1OUT14

R1IN13

T2OUT7

R2IN8

C2+

4

C2-

5

C1+

1

C1-

3

VS+2

VS-6

U4

MAX232C7

0.1uF

C6

0.1uF

C80.1uF

1 6 2 7 3 8 4 9 5

RXD

RTS

TXD

CTSC90.1uF

C1

22pF

C2

22pF

RST

R9470

R1047k

MCLR

D4CONTROLANDO

R11220

ON

+5V

ON

D3AUTOMÁTICO

um

SCK3

CS2

SDI4

LDAC5

VOUTA8

VREFA6

U3

MCP4921

+5

V

D0D1D2

D4

D4D2D0D1

+12V

-12V

um

SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL

+5V

RL2+5V/125 ohmios

1 2

U5:A

7406

SW2

SW-SPDT

D61N4148

SEL

SW3

SW-SPST

R1310k

SEL

+5V

R143.9k

+5

V

KPKIKD

KPKIKD

C100.1uF

R15200

S1OP : ADD

S1(IN2)

BUZ1

BUZZER

R12220

+5VS

EL

D5 CONECTADO

operadorconectado

Page 36: Micro Control Adores PICs I-Luis Urdaneta

363636363636

ic=0

1 + Tn.p

1 + Td.pK.

H1

1° ORD : POLY 1

yV=

2.7

397

1

- t .pe

R1

OP : DELAY

MCLR/VPP1

RA0/AN02

RA1/AN13

RA2/AN2/VREF-4

RA3/AN3/VREF+5

RA4/T0CKI6

RA5/AN4/SS/LVDIN7

RE0/RD/AN58

RE1/WR/AN69

RE2/CS/AN710

OSC1/CLKI13

RA6/OSC2/CLKO14

RC0/T1OSO/T1CKI15

RC2/CCP117

RC3/SCK/SCL18

RD0/PSP019

RD1/PSP120

RD2/PSP221

RD3/PSP322

RD4/PSP427

RD5/PSP528

RD6/PSP629

RD7/PSP730

RC4/SDI/SDA23

RC5/SDO24

RC6/TX/CK25

RC7/RX/DT26

RB0/INT033

RB1/INT134

RB2/INT235

RB3/CCP2B36

RB437

RB5/PGM38

RB6/PGC39

RB7/PGD40

RC1/T1OSI/CCP2A16

U1

PIC18F452

X1

4 MHZ

OS

C1

OSC2

OS

C2

OSC1MCLR

uV=1.32202

y

y

40%

RV1

1k

+2.5v

MAN

+5

v

RxDTxD

RxDTxD

RL1W172DIP-19

Q12N3053

+12V

D1

DIODE

R2

1k

R3

10k +5

V

MAN

R4220

R5220

LALM

D2MANUAL

M/ALMLA

3

21

411

U2:A

LM324

R6

10k

R7

10k

C410uF

C5

22uF

GN

DV

DD

M/ASW1

MANUAL

D7

14D

613

D5

12D

411

D3

10D

29

D1

8D

07

E6

RW

5R

S4

VS

S1

VD

D2

VE

E3

LCD1LM018L

B0

B2

B1

B7

B6

B5

B4

B7B6B5B4

B0B1B2

R820k

C32.2uF

T1IN11

R1OUT12

T2IN10

R2OUT9

T1OUT14

R1IN13

T2OUT7

R2IN8

C2+

4

C2-

5

C1+

1

C1-

3

VS+2

VS-6

U4

MAX232C7

0.1uF

C6

0.1uF

C80.1uF

1 6 2 7 3 8 4 9 5

RXD

RTS

TXD

CTSC90.1uF

C1

22pF

C2

22pF

RST

R9470

R1047k

MCLR

D4CONTROLANDO

R11220

ON

+5V

ON

D3AUTOMÁTICO

um

SCK3

CS2

SDI4

LDAC5

VOUTA8

VREFA6

U3

MCP4921

+5

V

D0D1D2

D4

D4D2D0D1

+12V

-12V

um

SISTEMA DE SUPERVISIÓN Y CONTROL DIGITAL

+5V

RL2+5V/125 ohmios

1 2

U5:A

7406

SW2

SW-SPDT

D61N4148

SEL

SW3

SW-SPST

R1310k

SEL

+5V

R143.9k

+5

V

KPKIKD

KPKIKD

C100.1uF

R15200

S1OP : ADD

S1(IN2)

BUZ1

BUZZER

R12220

+5VS

EL

D5 CONECTADO

Page 37: Micro Control Adores PICs I-Luis Urdaneta

373737373737

Page 38: Micro Control Adores PICs I-Luis Urdaneta

383838383838

Page 39: Micro Control Adores PICs I-Luis Urdaneta

393939393939

Periféricos comunes en µctrl y sus aplicaciones

Control de presión de aire

FUNCIÓN AUTOMÓVIL CONSUMIDOR PERIFÉRICOS

CPU 4-8 BITS Radio Audio Teclado

CPU 16 BITS Sistemas ABS   Controlador de disco

CPU 32 BITS Control de motores Controlador inteligente de disco

EEPROM Odometro Programación de televisores Configuración de modem

TIMERSControl de inyec- ción de gasolina

Velocidad de obturador de cámaras

Codificador de ejes en ratones ópticos

SERIE ASINCRÓNICO

Comunicación en el auto Comunicación en alarmas Lazo RS232 con modem

SERIE SINCRÓNICO

Controlador de luces

Comunicación entre componentes

Reloj de tiempo real en PC

CADSensor de temperatura en

termostato de AAVoltaje de la batería en

laptops

E/S PARALELA Tablero indicador Panel frontal de VCR Estado de teclados

Page 40: Micro Control Adores PICs I-Luis Urdaneta

404040404040

Los Microcontroladore

s PIC

Page 41: Micro Control Adores PICs I-Luis Urdaneta

414141414141

Los Microcontroladores PIC

Microchip Technology se presenta como el proveedor principal de microcontroladores y dispositivos análogos dirigidos al desarrollo de sistemas empotrados para uso doméstico e industrial. Ofrece µCtrls con el desempeño necesario para aplicaciones basadas en µCtrls de 4, 8 y 16 bits. Recientemente incursiona en el campo de los procesadores digitales de señal.

Los µCtrls PIC están disponibles en encapsulados desde a 6 a 80 terminales y ofrecen la mejor relación costo/desempeño en la industria. Las opciones de memoria de programa en el chip son diversas: FLASH, OTP, ROM y sin ROM, lo cual asegura la existencia de un PIC para cada aplicación.

Page 42: Micro Control Adores PICs I-Luis Urdaneta

424242424242

Los Microcontroladores PIC

Page 43: Micro Control Adores PICs I-Luis Urdaneta

434343434343

Los Microcontroladores PIC

Microchip ofrece más de 290 tipos de microcontroladores y puede proveer soluciones para aplicaciones en todo el rango de 8 bits.

El costo bajo, la presencia de memoria FLASH, el reducido número de instrucciones, la disponibilidad de herramientas de bajo costo para desarrollo de programas y una excelente y completa documentación, hacen que estos dispositivos sean excelentes para un curso introductorio de sistemas empotrados.

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.

Page 44: Micro Control Adores PICs I-Luis Urdaneta

444444444444

Los Microcontroladores PIC

Los µCtrls PIC están diseñados con una arquitectura Harvard modificada y un conjunto de instrucciones RISC, lo cual permite una migración fácil desde dispositivos de 6 hasta 80 pines y desde memorias de programa de 384 bytes hasta 128 Kbytes.

Page 45: Micro Control Adores PICs I-Luis Urdaneta

454545454545

Los Microcontroladores PIC

Organización de la memoria interna

Los buses de direcciones y de datos de la CPU deben estar conectados a todas las áreas de memoria en el interior del microcontrolador.

Existen dos estructuras generales para interconectar el µP y la memoria, éstas son:

Arquitectura Von Neumann

Arquitectura Harvard

Page 46: Micro Control Adores PICs I-Luis Urdaneta

464646464646

Los Microcontroladores PIC

(a) Arquitectura Von Neumann (b) Arquitectura Harvard

Page 47: Micro Control Adores PICs I-Luis Urdaneta

474747474747

Los Microcontroladores PIC

La Arquitectura Von Neumann es simple y flexible al no distinguir entre datos y código y puede ser dividida sin condiciones entre secciones de programa y de datos.

Una desventaja es que al compartirse el único bus entre todas las áreas de memoria, el ancho del bus es común, independientemente que un área maneje palabras largas y otra trata con palabras de menor número de bits.

También si la CPU interactúa con la memoria de programa por ejemplo, las áreas de memoria restantes deben estar deshabilitadas

Page 48: Micro Control Adores PICs I-Luis Urdaneta

484848484848

Los Microcontroladores PIC

La Arquitectura Harvard es de hardware más complejo pero permite que al ser distintos, los buses de datos pueden ser de diferentes tamaños de acuerdo con el tipo de información que se transfiere en el área de memoria correspondiente. Por ejemplo se puede tener una palabra de instrucción de 14 bits y una palabra de datos de 8 bits. Se puede tener acceso simultáneo a la memoria de programa y a la de datos, incrementándose la velocidad de ejecución del programa

Presenta cierta dificultad para el acceso a datos que residan en la memoria de código. Es usual que la memoria de programa contenga tablas que deban ser tratadas como datos.

Page 49: Micro Control Adores PICs I-Luis Urdaneta

494949494949

Los Microcontroladores PIC

Microcontroladores PIC de 8 bits

Estos dispositivos se presentan dentro de tres categorías de productos:

Arquitectura de Línea Base: Palabra de Programa de 12 bits.

Arquitectura de Línea Intermedia: Palabra de Programa de 14 bits

Arquitectura de Rendimiento Máximo: Palabra de Programa de 16 bits

Cada categoría ofrece una variedad de opciones para satisfacer las especificaciones de cualquier aplicación.

Page 50: Micro Control Adores PICs I-Luis Urdaneta

505050505050

Los Microcontroladores PIC

Familias de µControladores PIC de 8 bits

Familia Arquitectura Tamaño Pila (Palabras)

Tamaño de Palabra de Instrucción (Bits)

Número de Instrucciones

Vectores de Interrupción

10F200//12CXXX/12FXXX

Línea Base 2 12 ó 14 33 Ninguno

16C5XX/16F5XX Línea Base 2 12 33 Ninguno

16CXXX/16FXXX Línea Intermedia 8 14 35 1

17CXXX 16 16 58Multiplicación por Hardware

4

18CXXX/18FXXX Rendimiento Alto 32 16 75Multiplicación por Hardware

2(Con Prioridad)

Page 51: Micro Control Adores PICs I-Luis Urdaneta

515151515151

Los Microcontroladores PIC

Microcontroladores a usar en ejemplos:

Serie 16

16F84A

16F877Serie 18

18F452

Page 52: Micro Control Adores PICs I-Luis Urdaneta

525252525252

Los Microcontroladores PIC

Introducción a los

PICs de la Serie 16

Page 53: Micro Control Adores PICs I-Luis Urdaneta

535353535353

Los Microcontroladores PIC

Algunos Miembros de la Serie 16

Page 54: Micro Control Adores PICs I-Luis Urdaneta

545454545454

Los Microcontroladores PIC

El PIC16F84A

Page 55: Micro Control Adores PICs I-Luis Urdaneta

555555555555

Los Microcontroladores PIC

PIC16F84AEs 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.

Es un dispositivo fabricado con tecnología CMOS y presentados en diferentes encapsulados y versiones. Por ejemplo la versión A del PIC16F84 puede operar a 20 MHZ, en lugar de a 10 MHZ y el código PIC16F84A-04P (PIC16F84A-04P) identifica al modelo de 4 MHZ.

En la practica, este µCtrl puede considerarse desde el punto de vista funcional como un subconjunto de chips más avanzados como el PIC16F873.

Page 56: Micro Control Adores PICs I-Luis Urdaneta

565656565656

Distribución de terminales y Entradas y Salidas del PIC16F84A

Page 57: Micro Control Adores PICs I-Luis Urdaneta

575757575757

Recursos:1. µP (CPU) de 8 bits con 35 instrucciones.

2. Memoria de Programa FLASH de 1Kbytes de 14 bits.

3. Memoria de Datos:SRAM 68 x 8EEPROM 64 x 8

4. Contador/Temporizador de 8 bits con Pre-escalador.

5. 13 líneas de E/S programables por bit.

Algunos terminales están multiplexados con otras funciones del µCtrl:

• Entrada de Interrupción Externa.• Interrupción por cambios en el Puerto B.• Entrada de Reloj del Timer 0.

Los Microcontroladores PIC

Page 58: Micro Control Adores PICs I-Luis Urdaneta

585858585858

Organización del PIC16F84A

Page 59: Micro Control Adores PICs I-Luis Urdaneta

595959595959

La CPU del PIC16F84A

Page 60: Micro Control Adores PICs I-Luis Urdaneta

606060606060

La CPU del PIC16F84A

Page 61: Micro Control Adores PICs I-Luis Urdaneta

616161616161

La CPU del PIC16F84A

En un µP el resultado se carga en el acumulador

En un PIC el resultado puede cargarse en el registro W o en un registro F de la RAM

Page 62: Micro Control Adores PICs I-Luis Urdaneta

626262626262

La CPU del PIC16F84A

El CONJUNTO DE INSTRUCCIONES DEL

PIC16F84A

Page 63: Micro Control Adores PICs I-Luis Urdaneta

636363636363

La CPU del PIC16F84A

Page 64: Micro Control Adores PICs I-Luis Urdaneta

646464646464

La CPU del PIC16F84A

Page 65: Micro Control Adores PICs I-Luis Urdaneta

656565656565

La CPU del PIC16F84A

Dependiendo del ensamblador, puede usarse

MOVLW d’255’ ; carga 255 en W (Sistema Decimal) MOVLW 0xFF ; carga 255 en W (Sistema Hexadecimal)

Page 66: Micro Control Adores PICs I-Luis Urdaneta

666666666666

La CPU del PIC16F84A

Page 67: Micro Control Adores PICs I-Luis Urdaneta

676767676767

La CPU del PIC16F84A

Operandos de la ALU y lugar de carga del resultado de una operación

Page 68: Micro Control Adores PICs I-Luis Urdaneta

686868686868

La CPU del PIC16F84A

addlw k ; k desde la instrucción

movwf 0x20 ; por direccionamiento directo.

; segundo operando desde la dirección 0x20 de RAM

En las instrucciones de la ALU siempre un operando está en el acumulador. El segundo operando se obtiene:

Page 69: Micro Control Adores PICs I-Luis Urdaneta

696969696969

La CPU del PIC16F84A

; Ejemplo de direccionamiento indirecto. Cargar con el valor 67, ocho posiciones de la memoria de datos, a partir de la dirección 32.

inicio movlw 0x20 ; iniciar apuntador movwf FSR ; a memoria de datos

prox movlw 0x43 ; valor a cargar en RAMmovwf INDF ; cargar valorincf FSR ; apuntador = apuntador +1btfss FSR,3 ; ¿listo?goto prox ; no, cargar siguiente

Ejemplo de segundo operando de la ALU en forma indirecta

addwf INDF ; direccionamiento indirecto. ; segundo operando desde la dirección

; de RAM que indique el registro FSR ; (38)

Page 70: Micro Control Adores PICs I-Luis Urdaneta

707070707070

La CPU del PIC16F84A

¿Quién indica donde se almacena el resultado?

movwf 0x34 ; la instrucción en forma implícita, en W

xorwf 0x34,0 ; el bit ‘d’ de la instrucción, en W

xorwf 0x34,1 ; el bit ‘d’ de la instrucción, en 0x34

xorwf 0x34 ; el bit ‘d’ de la instrucción, en 0x34

addlw 0x34 ; instrucción con literal, en W

Page 71: Micro Control Adores PICs I-Luis Urdaneta

717171717171

La CPU del PIC16F84A

El Registro STATUS

Page 72: Micro Control Adores PICs I-Luis Urdaneta

727272727272

La CPU del PIC16F84A

El Registro STATUS contiene:

El estado aritmético de la ALU

Las causas del RESET y

Bits de selección para la memoria de datos

Page 73: Micro Control Adores PICs I-Luis Urdaneta

737373737373

CDCZPDTORP0RP1IRP

Sin uso Acarreo

Fin de Temporización

Bajo Consumo

Acarreo de Dígito

RP1 RP0 Selección 0 0 Banco 0 (00H-7FH) 0 1 Banco 1 (80H-FFH)

Cero

La CPU del PIC16F84A

Page 74: Micro Control Adores PICs I-Luis Urdaneta

747474747474

La CPU del PIC16F84A

IRP: Register Bank Select BitBit de selección de banco de registros en direccionamiento indirecto. No se usa en el PIC16F84A y debe mantenerse en cero.

RP1-RP0: Register Bank Select Bit

Bits de selección de banco de registros en direccionamiento directo.

RP1 RP0 Selección 0 0 Banco 0 (00H-7FH) 0 1 Banco 1 (80H-FFH)

Page 75: Micro Control Adores PICs I-Luis Urdaneta

757575757575

La CPU del PIC16F84A

TO: Time Out Bit

1: Al conectarse la alimentación o ejecutarse la instrucción CLRWDT o SLEEP.

0: Al desbordarse el Perro guardián.

PD: Power Down Bit

1: Al conectarse la alimentación o ejecutarse la instrucción CLRWDT.

0: Al Ejecutarse la instrucción SLEEP.

Page 76: Micro Control Adores PICs I-Luis Urdaneta

767676767676

La CPU del PIC16F84A

Z: Bit de Cero

1: El resultado de una operación aritmética o lógica es cero.

0: El resultado de una operación aritmética o lógica es distinto de cero.

DC: Digit Carry /Borrow

1: Cuando ocurre un acarreo desde el bit 3 del resultado.

0: No ocurre un acarreo desde el bit 3 del resultado.

Page 77: Micro Control Adores PICs I-Luis Urdaneta

777777777777

La CPU del PIC16F84A

C: Digit Carry /Borrow

1: Cuando ocurre un acarreo desde el bit 7 del resultado.

0: No ocurre un acarreo desde el bit 7 del resultado.

Durante instrucciones de rotación, este bit es cargado con el bit de mayor o de menor orden del registro fuente

Tanto DC como el bit C indican (negadas) la ocurrencia de un préstamo durante operaciones de resta.

Page 78: Micro Control Adores PICs I-Luis Urdaneta

787878787878

La CPU del PIC16F84A

Ejemplos de Instrucciones:

clrfw ; El registro W a ceroclrf status ; Selecciona el banco 0clrf porta ; Líneas del puerto A en cerobsf status,RP0 ; Selecciona el banco 1bsf status,5 ; Selecciona el banco 1bcf status,RP0 ; Selecciona el banco 0

Page 79: Micro Control Adores PICs I-Luis Urdaneta

797979797979

La CPU del PIC16F84A

Ejemplos de directivas de ensamblador:

;*************************************************************************************#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;*************************************************************************************

Page 80: Micro Control Adores PICs I-Luis Urdaneta

808080808080

La CPU del PIC16F84A

Ejemplos de Instrucciones:

SEL_BANCO_1 movlw b'00011000’

movwf OPTION_REG SEL_BANCO_0

btfsc CARRYbtfsc STATUS,C

bcf RS bsf E

Page 81: Micro Control Adores PICs I-Luis Urdaneta

818181818181

La CPU del PIC16F84A

Ejemplos de directivas de ensamblador:

;*************************************************************************************estado equ 0x03 ; Registro STATUS puerto_b equ 0x06 ; Puerto Btemp1 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 temp1xorlw 3 ; ¿Están ambas cerradas? btfsc estado,2goto esp ; Ambas cerradas, esperar movf temp1,0

Page 82: Micro Control Adores PICs I-Luis Urdaneta

828282828282

La CPU del PIC16F84A

La Memoria del PIC16F84A

Page 83: Micro Control Adores PICs I-Luis Urdaneta

838383838383

La Memoria del PIC16F84A

Tecnologías de Memoria

RAM Estática (SRAM)

EPROM (Erasable Programmable Read Only Memory)

EEPROM (Electrically Erasable Programmable Read Only Memory)

FLASH

Page 84: Micro Control Adores PICs I-Luis Urdaneta

848484848484

La Memoria del PIC16F84A

Existen cuatro áreas de memoria en el PIC16F84A con funciones y modos de acceso particulares.

FUNCIÓN TECNOLOGÍA TAMAÑO VOLÁTIL/NO VOLÁTIL

ESPECIFICACIÓN

Memoria de Programa

FLASH 1K x 14 bits No Volátil Hasta 10000 ciclos de borrado/escritura

Memoria de Datos

(Registros de Archivo f)

SRAM 68 Bytes Volátil Conserva datos para voltajes de

alimentación por debajo de 1.5V

Memoria de Datos

(EEPROM)

EEPROM 64 Bytes No Volátil Hasta 10000000 ciclos de borrado/escritura

Pila (Stack) SRAM 8 x 13 bits Volátil

Page 85: Micro Control Adores PICs I-Luis Urdaneta

858585858585

La Memoria del PIC16F84A

La Memoria de Programa

Page 86: Micro Control Adores PICs I-Luis Urdaneta

868686868686

La Memoria del PIC16F84A

Con los 13 bits del contador de programa (PC) se podría tener acceso a 8 Kbytes de memoria FLASH, en el rango:

0000H-1FFFH

Como sólo se incluye 1Kbyte de memoria de código, durante el acceso a la memoria FLASH se ignoran los 3 bits de mayor peso del PC.

Esto implica que apuntar a la dirección 27H es igual que hacerlo a :

427H, 827H, C27H, 1027H, 1427H o a la 1C27H

Page 87: Micro Control Adores PICs I-Luis Urdaneta

878787878787

La Memoria del PIC16F84A

Al igual que todos los registros de funciones espe-ciales SFR que controlan la operación del microcon--trolador, el contador de programa PC está realizado sobre dos posiciones de la memoria RAM. Esta son

PCL 0x02

PCLATH 0x0A

Page 88: Micro Control Adores PICs I-Luis Urdaneta

888888888888

La Memoria del PIC16F84A

En las instrucciones GOTO y CALL de la gama media los 11 bits de menos peso del PC provienen del código de la instrucción y los otros 2 de los bits PCLATH <4 :3>

Page 89: Micro Control Adores PICs I-Luis Urdaneta

898989898989

La Memoria del PIC16F84A

Con los 11 bits que se cargan en el PC desde el código de las instrucciones GOTO y CALL, se puede tener acceso a toda la memoria de programa (1K) del PIC16F84.

Los bits restantes PC< 12 :11> tienen la misión de apuntar una de cuatro páginas del mapa de memoria de programa y, en los modelos de PIC que tienen más de una página, dichos bits proceden de PCLATH<4 :3>

Page 90: Micro Control Adores PICs I-Luis Urdaneta

909090909090

La Memoria del PIC16F84A

Cuando se escribe en el PC como resultado de una operación de la ALU, (Ejem. movwflos 8 bits de menos peso del PC residen en el registro PCL. Los bits de más peso, PC< 12 :8>, residen en los 5 bits de menos peso del registro PCLATH.

Page 91: Micro Control Adores PICs I-Luis Urdaneta

919191919191

La Memoria del PIC16F84A

Lo anterior es importante cuando se realiza lecturas de tablas de datos almacenadas en la FLASH. Los PICs no tienen instrucciones para direccionamiento indirecto de la memoria de programa.

En tal caso debe garantizarse que toda la tabla esté contenida en un bloque de memoria de 256 bytes. De 0x00-0xFF, 0x100-0x1FF…

Page 92: Micro Control Adores PICs I-Luis Urdaneta

929292929292

La Memoria del PIC16F84A

Ejemplos de lectura de

Tabla de Datos

Page 93: Micro Control Adores PICs I-Luis Urdaneta

939393939393

La Memoria del PIC16F84A

; Programa principal…err call mens ; Mensaje de error…;*******************************************************************; Rutina mensaje;******************************************************************* mens clrf desplmens_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

Page 94: Micro Control Adores PICs I-Luis Urdaneta

949494949494

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…

Page 95: Micro Control Adores PICs I-Luis Urdaneta

959595959595

La Memoria del PIC16F84A

;*************************************************************; Presenta mensaje en LCD; Entrada: Cargar en W (dir inicio de la cadena); La cadena debe terminar con cero. ;*************************************************************mens movwf contdb

decf contdbmovlw 0x02movwf PCLATH

xxq movf contdb,0call textoiorlw 0

btfsc CERO return

bcf lcd_modo,0call lcd_enviarincf contdb,1goto xxq

;*******************************************************************; Escribe texto en LCD;*******************************************************************

org 0x200texto addwf PCL,1;*******************************************************************; Area de mensajes;*******************************************************************

ide dt "Voltimetro DC",0nombre dt "Br. J Salas",0

Page 96: Micro Control Adores PICs I-Luis Urdaneta

969696969696

La Memoria del PIC16F84A

Instrucciones que usan la PILA

call k Llamada a subrutina

return Retorno desde subrutina

retlw Retorno con valor cargado en W

retfie Retorno desde interrupción

Page 97: Micro Control Adores PICs I-Luis Urdaneta

979797979797

La Memoria del PIC16F84A

La Pila o Stack

Page 98: Micro Control Adores PICs I-Luis Urdaneta

989898989898

La Memoria del PIC16F84A

Llamada a subrutina

Las direcciones mostradas no corresponden a la memoria de programa del PIC16F84A

Page 99: Micro Control Adores PICs I-Luis Urdaneta

999999999999

La Memoria del PIC16F84A

Subrutinas Anidadas y Niveles de la Pila

Las direcciones mostradas no corresponden a la memoria de programa del PIC16F84A

Page 100: Micro Control Adores PICs I-Luis Urdaneta

100100100100100100

La Memoria del PIC16F84A

Los PICs no tienen instrucciones PUSH ni POP para acceso a la pila.

No existe un bit que indique cuando se desborda la pila.