39564c.en.es

393
2006 Microchip Technology Inc. DS39564C PIC18FXX2 Hoja de datos High-Performance, flash mejorado Microcontroladores de 10 bits A / D

Transcript of 39564c.en.es

Page 1: 39564c.en.es

2006 Microchip Technology Inc. DS39564C

PIC18FXX2

Hoja de datos

High-Performance, flash mejorado

Microcontroladores de 10 bits A / D

Page 2: 39564c.en.es

DS39564C-page ii 2006 Microchip Technology Inc.

Noe los siguientes detalles de la función de protección de código en los dispositivos de Microchip:

• Los productos de Microchip cumplir con las especificaciones contenidas en su particular hoja de datos de Microchip.

• Microchip cree que su familia de productos es una de las familias más seguro de su clase en el mercado hoy en día, cuando

se utilizan de la manera prevista y en condiciones normales.

• There son métodos deshonestos y posiblemente ilegales utilizados para violar la función de protección de código. Todos estos

métodos, a nuestro conocimiento, requieren el uso de productos de Microchip de una manera fuera de las especificaciones de

funcionamiento contenidas en hojas de datos de Microchip. Muy probablemente, la persona que lo está involucrado en el robo

de la propiedad intelectual.

• Microchip está dispuesto a trabajar con el cliente que está preocupado por la integridad de su código.

• Neither Microchip ni ningún otro fabricante de semiconductores puede garantizar la seguridad de su código. Código de

confirmación no significa que estamos garantizando el producto como "irrompible".

Bacalaoprotección de correo está en constante evolución. Nosotros en Microchip están comprometidos a mejorar continuamente las

funciones de protección de código de nuestros productos. Los intentos de romper característica de Microchip código de protección

puede ser una violación de la Digital Millennium Copyright Act. Si tales actos permitir el acceso no autorizado a su software o en el

trabajo con derechos, usted puede tener el derecho a pedir la reparación conforme a esa ley.

Información contenida en esta publicación con respecto a las

aplicaciones de dispositivos y similares se proporciona

únicamente para su comodidad y pueden ser reemplazadas

por las actualizaciones. Es su responsabilidad asegurarse de

que su solicitud cumple con sus especificaciones.

MICROCHIP NO HACE NINGUNA REPRESENTACIÓN O

GARANTÍA DE NINGÚN TIPO, YA SEA EXPRESA O

IMPLICADA, escrita u oral, LEGAL O DE OTRO TIPO,

RELACIONADA CON LA INFORMACIÓN, INCLUYENDO

PERO NO LIMITADO A SU CONDICIÓN, CALIDAD,

RENDIMIENTO, COMERCIALIZACIÓN O IDONEIDAD

PARA UN PROPÓSITO.Microchip se exime de toda

responsabilidad que surja de esta información y su uso. El

uso de dispositivos Microchip en la vida de apoyo y / o

aplicaciones de seguridad es bajo riesgo del comprador, y el

comprador se compromete a defender, indemnizar y

mantener indemne a Microchip de cualquier daño,

reclamaciones, demandas o gastos resultantes de dicho uso.

No hay licencias se transmiten, de manera implícita o de otro

modo, bajo ningún derecho de propiedad intelectual

Microchip.

Marcas comerciales

The nombre y el logotipo de Microchip, el logotipo de

Microchip, Accuron, dsPIC, KEELOQ, microIdentificación,

MPLAB, PIC, PICmicro, PICSTART, MATE PRO,

PowerSmart, rfPIC y SmartShunt son marcas registradas de

Microchip Technology Incorporated en EE.UU. y otros

países.

AmpLab, FilterLab, Memory migrables, MXDEV, MXLAB,

SEEVAL, SmartSensor y la compañía de control Embedded

Solutions son marcas registradas de Microchip Technology

Incorporated en los EE.UU.

Analog-para-el-DigitalEdad, Solicitud Maestro, CodeGuard,

dsPICDEM, dsPICDEM.net, dsPICworks, ECAN,

ECONOMONITOR, FanSense, FlexROM, fuzzyLAB,

En circuit Programación Serial, ICSP, ICEPIC, termistor

activo lineal, Mindi, MiWi, MPASM, MPLIB, MPLINK, PICkit,

PICDEM, PICDEM.net, PICLAB, PICtail, PowerCal,

PowerInfo, PowerMate, Powertool, ICE REAL, rfLAB,

rfPICDEM, Select Modo de serie Smart, SmartTel,

Resistencia Total, UNI / O, WiperLock y ZENA son marcas

registradas de Microchip Technology Incorporated en

EE.UU. y otros países.

SQTP es una marca de servicio de Microchip Technology

Incorporated en los EE.UU.

All marcas comerciales mencionadas en este documento

son propiedad de sus respectivas compañías.

© 2006, Microchip Technology Incorporated, Impreso en los

U.S.A., Todos los derechos

reservados. Printed en

papel reciclado.

Microchip recibido ISO/TS-16949: 2002 la certificación de su sede mundial de diseño, y las instalaciones de fabricación de obleas en Chandler y Tempe, Arizona, Gresham, Oregon y Mountain View, California. Procesos de la empresa de sistemas de calidad y

Page 3: 39564c.en.es

2006 Microchip Technology Inc. DS39564C

procedimientos para su PIC ® de 8-bit MCUs, KEELOQ ® dispositivos de código de salto, EEPROM serie, microperipherals, memoria no volátil y productos análogos. Además, el sistema de Microchip de calidad para el diseño y fabricación de sistemas de desarrollo de la norma ISO 9001:2000.

Page 4: 39564c.en.es
Page 5: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 1

PIC18FXX2

28/40-pin Alto Rendimiento mejorado de microcontroladores flash con 10-bit A / D

High Rendimiento RISC CPU:

• C compilador optimizado arquitectura / conjunto de instrucciones

- El código fuente compatible con el PIC16 y

PIC17 conjuntos de instrucciones

• Memoria de programa lineal frente a 32 Kbytes • Memoria de datos Direccionamiento lineal de 1,5 Kbytes

Dispositivo

El Chi-p Programa

Memoria

En-Chip

RAM

(bytes)

Datuna

EEPROM

(bytes) FLASH

(Bytes) Palabra # Single

Instruccións PIC18F242 16K 8192 768 256 PIC18F252 32K 16384 1536 256 PIC18F442 16K 8192 768 256

PIC18F452 32K 16384 1536 256

• Hasta 10 MIPS operación:

- DC - 40. Osc MHz / reloj de entrada

- 4 MHz - 10. Osc MHz / entrada de reloj con PLL activo

• instrucciones de 16 bits de ancho, 8-bit de datos amplia trayectoria

• Los niveles de prioridad de las interrupciones

• 8 x 8 Multiplicador Hardware Single Cycle

PorCaracterísticas ipheral:

• Alta corriente de drenador / surtidor 25 mA/25 mA

• Tres pins interrupción externa

• Timer0 módulo: 8-bit/16-bit temporizador / contador con

8Bits prescaler programable

• módulo Timer1: 16-bit del temporizador / contador

• Timer2 módulo: 8-bit del temporizador /

contador con registro de tiempo de 8-bits

(base de tiempo para PWM)

• timer3 módulo: 16-bit del temporizador / contador

• Oscilador Secundario opción de reloj - Timer1/Timer3

• Dos Capture / Compare / PWM (CCP)

módulos. CCP pines que pueden

configurarse como:

- Captura de entrada: captura es

de 16-bit, max. resolución 6,25

ns (TCY/16)

- Comparar es de 16-bit, max. resolución de 100 ns (TCY)

- Salida PWM: PWM resolución es 1 - a 10-bit,

max. PWM freq. @: 8-bits de resolución = 156

kHz

10-biResolución t = 39 kHz

• Master Serial Port (MSSP) Módulo Síncrono, dos

modos de funcionamiento:

- 3-hilos SPI ™ (compatible con todos los 4 modos SPI) - Master ™ y I2C modo esclavo

Page 6: 39564c.en.es

DS39564C-page2 2006 Microchip Technology Inc.

PorCaracterísticas ipheral (continuación):

• Direccionable módulo USART:

- Compatible con RS-485 y RS-232-

• Puerto Paralelo Esclavo (PSP) módulo

UnAlog Características:

• Compatible 10-bit de analógico a digital del

módulo (A / D) con:

- Tasa de Muestreo rápido

- Conversión disponible durante el sueño

- Linealidad ≤ 1 LSB

• Detección Programable de Baja Tensión (PLVD)

- Soporta interrupción en-Bajo Detección de voltaje

• Programable Brown-out Reset (BOR)

SpeCaracterísticas sociales: Microcontroladores

• 100.000 escritura / borrado ciclo Enhanced FLASH

de programam típico memoria

• 1.000.000 de borrado / escritura de datos EEPROM ciclo

memorándumry

• FLASH / EEPROM de datos de retención:> 40 años

• Auto-reprogramable bajo control de software

• Power-on Reset (POR), Power-up Timer (PWRT)

und Oscilador Start-up Timer (OST)

• Watchdog Timer (WDT) con su propio on-chip

oscilador RC para un funcionamiento fiable

• Protección contra código programable

• Ahorro de energía modo SLEEP

• Opciones seleccionables del oscilador incluyendo:

- Fase 4X bucle de bloqueo (de oscilador primario)

- Oscilador Secundario (32 kHz) reloj de entrada

• Alimentación 5V Single In-Circuit Serial

Programming ™ (ICSP ™) a través de dos

pines

• In-Circuit Debug (ICD) a través de dos pines

CMOS Technology:

• Bajo consumo, alta velocidad FLASH / EEPROM

tecnología

• Diseño totalmente estático

• Amplio rango de voltaje (2.0V a 5.5V)

• Industrial y extendido rangos de temperatura

• Bajo consumo de energía:

- <1,6 mA típico @ 5V, 4 MHz

- 25 μ Una típica 3V @ 32 kHz

- <0,2 μ Una corriente de espera típico

Page 7: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 3

PIC18FXX2

28

27

26

25

24

23

22

21

20

19

18

NC

R

C6/T

X/C

K

RC

5/S

DO

R

C4/S

DI/S

DA

R

D3/P

SP

3

RD

2/P

SP

2

RD

1/P

SP

1

RD

0/P

SP

0

RC

3/S

CK

/SC

L

RC

2/C

CP

1

RC

1/T

1O

SI/C

CP

2 *

22

2

1

20

19

18

17

16

1

5

14

13

1

2

RA

3/A

N3/V

RE

F

+

RA

2/A

N2/V

RE

F

- RA

1/A

N1

RA

0/ A

N0

MC

LR

/

VP

P

RB

7/P

GD

RB

6/P

GC

R

B5/P

GM

RB

4

NC

N

C

44

43

42

41

40

39

38

37

36

35

34

RC

6/T

X/C

K

RC

5/S

DO

RC

4/S

DI/S

DA

RD

3/P

SP

3

RD

2/P

SP

2

RD

1/P

SP

1

RD

0/P

SP

0

RC

3/S

CK

/SC

L

RC

2/C

CP

1

RC

1/T

1O

SI/

CC

P2

*

NC

6

5

4

3

2

1

44

4

3

42

4

1

40

RA

3/

AN

3/V

RE

F

+

RA

2/A

N2/V

RE

F-

RA

1/A

N1

R

A0/ A

N0

M

CLR

/

VP

P N

C

RB

7/P

GD

R

B6/P

GC

R

B5/P

GM

R

B4

NC

Diagramas de pines

PLCC

RA4/ T0CKI

RA5/AN4/SS/LVDIN RE0/RD/AN5

RE1/ W R/AN6 RE2/CS/AN7

VDD

VSS

OSC1/CLKI OSC2/CLKO/RA6

RC0/T1OSO/T1CKI NC

7 8 9 10PIC18F442 11 12PIC18F452 13 14 15 16 17

39 38 37 36 35 34 33 32 31 30 29

RB3/ CCP2 * RB2/ INT2 RB1/ INT1 RB0/ INT0 VDD

VSS

RD7/PSP7 RD6/PSP6 RD5/PSP5 RD4/PSP4 RC7/RX/DT

TQFP

RC7/RX/DT RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7

VSS

VDD

RB0/INT0 RB1/INT1 RB2/INT2

RB3/CCP2 *

1 33

2 32

3 31 4 30

5PIC18F442 29

6 28

7PIC18F452 27 8 26 9 25

1024 11 23

NC RC0/T1OSO/T1CKI OSC2/CLKO/RA6 VSS OSC1/CLKI VDD

RE2/AN7/CS

RE1/AN6/WR

RE0/AN5/RD

RA5/AN4/SS/LVDIN

RA4/T0CKI

* Es el pin RB3 alternativo para la multiplexación pin CCP2.

Page 8: 39564c.en.es

DS39564C-page4 2006 Microchip Technology Inc.

PIC18FXX2

PIC

18F

442

P

IC1

8F

45

2

PIC

18F

24

2

PIC

18F

25

2

Diagramas de pines (Cont. d ')

DIP

MCLR / VPP 1

RA0/ AN0 2

RA1/ AN1 3 RA2/ AN2/VREF-

4

RA3/AN3/VREF + 5

RA4/ T0CKI 6

RA5/AN4/SS/LVDIN 7

RE0 /RD/ AN5 8

RE1/WR/AN6 9

RE2/CS/AN7 10

Enfermedad venéreaD11

VSS 12

OSC1/CLKI 13 OSC2/CLKO/RA6 14

RC0/T1OSO/T1CKI 15

RC1/T1OSI/CCP2 * 16

RC2/CCP1 17

RC3/SCK/SCL 18

RD0/PSP019

RD1/PSP1 20

40 RB7/PGD

39RB6/PGC

38 RB5/PGM

37 RB4

36 RB3/CCP2 *

35 RB2/INT2

34 RB1/INT1

33 RB0/INT0

32VDD

31 VSS

30 RD7/PSP7

29 RD6/PSP6

28 RD5/PSP5

27RD4/ PSP4

26 RC7/RX/DT

25 RC6/TX/CK

24 RC5/SDO

23 RC4/SDI/SDA

22 RD3/PSP3

21 RD2/PSP2

Nota: Pin compatible con 40-pin dispositivos PIC16C7X.

DIP, SOIC

MCLR / VPP 1

RA0 / AN0 2

RA1 / AN1 3

RA2/ AN2/VREF- 4

RA3/ AN3/VREF + 5

RA4/ T0CKI 6

RA5/ AN4/SS/LVDIN 7

VSS 8

OSC1/CLKI 9

OSC2/CLKO/RA6 10

RC0/T1OSO/T1CKI 11

RC1/T1OSI/CCP2 * 12

RC2/CCP1 13

28RB7/PGD

27RB6/PGC

26RB5/PGM

25 RB4

24RB3/CCP2 *

23 RB2/INT2

22 RB1/INT1

21 RB0/INT0

20 VDD

1VSS 9

18 RC7/RX/DT

17 RC6/TX/CK

16 RC5/SDO

RC3/SCK/SCL 14 15 RC4/ SDI / SDA

* Es el pin RB3 alternativo para la multiplexación pin CCP2.

Page 9: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 5

PIC18FXX2

Table de Contenidos

1.0 Vista general del equipo 7

2.0 Configuraciones del oscilador 17

3.0 Reset 25

4.0 Organización de la memoria 35

5.0 FLASH memoria de programa 55

6.0 Datos EEPROM Memoria 65

7.0 8 X 8 Hardware Multiplicador 71

8.0 Interrupciones 73

9.0 I / O Ports 87

10.0 Módulo Timer0 103

11.Módulo 0 Timer1 107

12.0 Timer2 Módulo 111

13.0 timer3 Módulo 113

14.0 Captura / Comparación / PWM (CCP) Módulos 117

15,0 Maestro Synchronous Serial Port (MSSP) Módulo 125

16,0 direccionable universal asíncrono síncrono transmisor receptor (USART) ........................................ ...................... 165

17.0 Compatible 10-bit de analógico a digital (A / D) 181

18.0 Baja Tensión Detectar 189

19.0 Características especiales de la CPU 195

20.0 Resumen Instrucción Set 211

21.0 Desarrollo 253

22.0 Características eléctricas 259

23.0 DC y AC Características Gráficos y cuadros 289

24.0 Packaging 305

Apéndicesx A: Historial de revisiones 313

Apéndicesx B: Diferencias de dispositivos 313

Apéndicesx C: Consideraciones de conversión 314

Apéndicesx D: La migración desde el inicio a los dispositivos mejorados 314

Apéndicesx E: La migración de gama media a dispositivos mejorados 315

ApéndicesF x: La migración de gama alta a dispositivos mejorados 315

Index 317

On-Line Support 327

Reader Respuesta 328

PIC18FXX2 Identificación de Productos 329

Page 10: 39564c.en.es

DS39564C-page6 2006 Microchip Technology Inc.

PIC18FXX2

TO ESTIMADOS CLIENTES

Yot es nuestra intención de proporcionar a nuestros valiosos clientes con la mejor documentación posible para asegurar el uso

exitoso de sus productos Microchip. Para ello, vamos a seguir mejorando nuestras publicaciones para satisfacer mejor sus

necesidades. Nuestras publicaciones serán refinados y mejorados como nuevos volúmenes y actualizaciones se introducen.

Yoi usted tiene alguna pregunta o comentario acerca de esta publicación, por favor comuníquese con el Departamento de

Comunicaciones de Marketing por correo electrónico a [email protected] or fax el Reader Formulario de Respuesta

yon la parte de atrás de esta hoja de datos a (480) 792-4150. Damos las bienvenida a sus comentarios.

La mayoría actual Hoja de Datos

To obtener la versión más actualizada de esta hoja de datos, por favor regístrese en nuestro sitio Web en todo el mundo en:

http://www.microchip.com

You puede determinar la versión de la ficha de datos mediante el examen de su número de la literatura se encuentra en la parte inferior esquina exterior de cada página. El último carácter del número literatura es el número de versión (por ejemplo, DS30000A es la versión A del documento DS30000).

Erratun

Lan fe de erratas, describiendo pequeñas diferencias de funcionamiento de la hoja de datos y soluciones recomendadas, pueden existir para los dispositivos actuales. Como dispositivo / documentación temas sean conocidos por nosotros, vamos a publicar una fe de erratas. La fe de erratas se especificará la revisión de silicio y la revisión del documento al que se aplica.

To Determinar si existe una fe de erratas para un dispositivo en particular, póngase en contacto con uno de los siguientes:

• Sitio Web de Microchip Worldwide; http://www.microchip.com

• local Su oficina de ventas de Microchip (ver última página)

When contacto con una oficina de ventas, por favor, especifique qué dispositivo, la revisión de la hoja de silicio y datos (incluir el número de la literatura) que está utilizando.

Cliente Sistema de Notificación

Register en nuestro sitio web en www.microchip.com to recibir la información más actualizada sobre todos nuestros productos.

Page 11: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 7

PIC18FXX2

NOTAS:

Page 12: 39564c.en.es

DS39564C-page8 2006 Microchip Technology Inc.

PIC18FXX2

10.0 Vista general del equipo

Este documento contiene información específica del

dispositivo para los siguientes dispositivos:

• PIC18F242 • PIC18F442

• PIC18F252 • PIC18F452

Thesdispositivos electrónicos vienen en paquetes de

28-pin y 40/44-pin. Los dispositivos de 28-pin no tiene

un Puerto Paralelo Esclavo (PSP) ejecutado y el

número de analógico a digital (A / D) canales de

entrada del convertidor se reduce a 5. Una visión

general de las características que se muestran en la

Tabla 1-1.

The después de dos figuras son diagramas de

bloques de dispositivos ordenados por número de

pines: 28-pin para la Figura 1-1 y la Figura 1-2 para

40/44-pin. El 28-pin y pinouts 40/44-pin se enumeran

en la Tabla 1-2 y Tabla 1-3, respectivamente.

TABLE 1-1: Características del aparato

Características

PIC18F242 PIC18F252 PIC18F442 PIC18F452

Operating Frecuencia DC - 40 MHz DC - 40 MHz DC - 40 MHz DC - 40 MHz

PrograMemoria m (Bytes) 16K 32K 16K 32K

PrograMemoria m (Instrucciones) 8192 16384 8192 16384

Datuna memoria (bytes) 768 1536 768 1536

Datuna memoria EEPROM (bytes)

256 256 256 256

InterrupciónFuentes camisetas 17 17 18 18

I / O Ports Conexiones A, B, C

Conexiones A, B, C

Puertos A, B, C, D, E

Puertos A, B, C, D, E Tiempors 4 4 4 4

Capture / Compare / PWM Módulos

2 2 2 2

Comunicaciones serie

MSSP,

USART

direccionabl

es

MSSP,

USART

direccionabl

es

MSSP,

USART

direccionabl

es

MSSP,

USART

direccionabl

es Comunicaciones paralelas - - PSP PSP

10-bit analógico a digital del módulo

5 canales de entrada

5 canales de entrada

8 canales de entrada

8 canales de entrada

RESETS (y retrasos)

POR, BOR, REINICIO

Instrucción, Stack

completo,

Stack Underflow

(PWRT, OST)

POR, BOR, REINICIO

Instrucción, pila

completa,

Stack Underflow

(PWRT, OST)

POR, BOR, REINICIO

Instrucción, Stack

completo,

Stack Underflow

(PWRT, OST)

POR, BOR, REINICIO

Instruction, Stack

completo,

Stack Underflow

(PWRT, OST) Programmable baja tensión

Deproteger Vosotross

Vosotross

Vosotross

Vosotross

ProgrammablE Brown-out Restablecer

Sí Vosotross

Sí Vosotross Instrucción Set 75 Instrucciones 75 Instrucciones 75 Instrucciones 75 Instrucciones

Paquetes

28-pin DIP

28-pin SOIC

28-Pin DIP

28-pin SOIC

40-Pin DIP

44-pin PLCC

44-pin TQFP

40-pin DIP

44Pines PLCC

44Pines TQFP

Page 13: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 9

PIC18FXX2

TaPuntero ble

inc / dec lógica

4 BSR

12 4

FSR0

FSR1

FSR2

Bank0, F

12

inc / dec

lógica

Instrucción

Decodificar y Control

Correosw

er-up Tiemp

or Oscyollat

or Iniciar-up Timer Correoswer-on Reajustar Washington

tchdog Timer

Brown-out

Reajustar

Helow Voltaje Programación

In-Circuit Depurador

TIming Generación

WREG 8

FIGURA 1-1: DIAGRAMA DE BLOQUES PIC18F2X2

Bus de Datos <8>

21

8 8 8

21

Datun

pestillo

DatunRAM

Address Latch

CorreosRTLa

RA0/AN0

RA1/AN1

RA2/AN2/VREF

-

RA3/AN3/VREF

+ RA4/T0CKI

Dirección Latch

21 PCLATU PCLATH (2)

12 RA5/AN4/SS/LVDIN

RA6

ProgramMemoria (Up a 2 Mbytes)

PCU PCH P CL Dirección <12>

De retención de datos

Programa Contador

31 Nivel de Pila

16

TLatch poder

Descodificar

OSC2/CLKO

8 ROM Latch

Instrucción Registro

PRODH

8

Prödl

CorreosRTuberculosis

RB1/INT1 RB2/ INT2

RB3/CCP2(1)

RB4

RB5/ PGM RB6/PCG RB7/PGD

OSC1/CLKI

T1OSCI T1OSCO

MCLR

VDD,

VSS

4X PLL

Precision Voltaje

Referencia

3

BIT OP

8

8 x 8 Multiply

8

8

8

ALU <8>

8

PORTC

RC0/T1OSO/T1CKI

RC1/T1OSI/CCP2(1)

RC2/CCP1

RC3/SCK/SCL

RC4/SDI/SDA

RC5/SDO

RC6/TX/CK

RC7/RX/DT

Timer0 Timer1 Timer2 Timer3 A / D Converter

CCP1

CCP2

Maestro

síncrono

Serial Port

Direccionable

USART

Data EEPROM

Nota 1: Opmultiplexación cional de CCP2 de entrada / salida con RB3 está habilitado por la selección de bit de configuración.

2:Thlos bits electrónicos de alto orden de la dirección directa para la RAM son del registro BSR (a excepción de la MOVFF instrucción).

3:Hombrey del propósito general I / O pins son multiplexados con una o más funciones de los módulos periféricos. Las combinaciones de multiplexación dependen del dispositivo.

Page 14: 39564c.en.es

DS39564C-page10 2006 Microchip Technology Inc.

PIC18FXX2

12 4 FSR0 Bank0, F

FSR1 FSR2

inc /

dec lógica

4 BSR

Power-up Timer

Oscyollator

Iniciar-up Timer Power-on Reajustar

Washingtontchdog Tiemp

or Brown-out

Reajustar

Helow Voltaje Programación

In-Circuit Debugger

WREG 8

TPuntero poder

inc / dec lógica

TIming Generación

FIGURA 1-2: DIAGRAMA DE BLOQUES PIC18F4X2

Bus de Datos <8>

21

8 8 8

21

Datun pestillo

DatunRAM (hasta 4K

alcance de la dirección)

Address Latch

PORTLa

RA0/ AN0

RA1/ AN1

RA2/ AN2/VREF-

RA3/AN3/VREF +

RA4/T0CKI

RA5/AN4/SS/LVDI

N

Ad Plantillass Latch

21 PCLATU Ordenador personalMALLA

(2) 12

RA6

ProgramMemoria (Up a 2 Mbytes)

PCU

PCH PCL

Dirección <12>

PORTB

De retención de datos

16

TaLatch ble

PrOGRAMA Contador

31 Nivel de

Pila

RB0/INT0

RB1/INT1 RB2/ INT2

12 RB3/CCP2(1)

RB4

RB5/PGM

RB7/PGD

OSC2/CLKO OSC1/CLKI

T1OSCI T1OSCO

MCLR

VDD,

VSS

8

Instrucció

n Decodificar y Control

4X PLL

Precision Voltaje

Referencia

ROM Latch

Instrucción

Registro

3

BIT OP

8

8

PRODH Prödl

8 x 8 Multiply

8

8

8

ALU <8>

8

POTc

PORTD

PORTE

RC0/T1OSO/T1CKYo RC1/T1OSI/CCP2(1

)

RC2/CCP1

RC3/SCK/SCL

RC4/SDI/SDA

RC5/SDO

RC6/TX/CK

RC7/RX/DT

RD0/ PSP0 RD1/ PSP1

RD2/ PSP2

RD3/ PSP3 RD4/ PSP4

RD5/ PSP5

RD6/ PSP6

RD7/ PSP7

RE0/AN5/RD

RE1/AN6/WR

RE2/AN7/CS

Timer0 Timer1 Timer2 Timer3 A /D Converter

CCP1

CCP2

Mamáster síncrono

Serial puerto

Anunciodres

sable USART

Parallel Puerto Esclavo

Datos de EEPROM

Nota 1: Multiplexación opcional de CCP2 de entrada / salida con RB3 está habilitado por la selección de bit de configuración.

Page 15: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 11

PIC18FXX2

2:Los bits de orden superior de la dirección directa de la RAM son del registro BSR (excepto para el MOVFF entrucción).

3:Muchos de los fines generales de E / S pins son multiplexados con una o más funciones de los módulos periféricos. Las

combinaciones de multiplexación dependen del dispositivo.

Page 16: 39564c.en.es

DS39564C-page12 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 1-2: PIC18F2X2 pinout I / O DESCRIPCIONES

Pin Nombre

Pen el número

Pin

Type

Buffer

Type

Descripción

DIP SOIC

MCLR / VPP

MCLR

VPP

1 1

I

I

ST

ST

Master Clear (entrada) o de programación de alto

voltaje ICSP permitir pin.

Master Clear (Reset) de entrada. Este pin es un activo bajo

RESET para el dispositivo.

Programación ICSP alta tensión permitir pin. NC - - - - ThesE PIN debe dejarse sin conectar.

OSC1/CLKI

OSC1

CLKI

9 9 I

I

ST

CMOS

Oscillator cristal o entrada de reloj externo.

Oscillator cristal o entrada externa de reloj fuente.

ST búfer cuando se configura en modo RC, CMOS

contrario. Reloj externo fuente de entrada. Siempre

asociado con

pin Función OSC1. (Véase relacionados

OSC1/CLKI, alfileres OSC2/CLKO.) OSC2/CLKO/RA6

OSC2

CLKO

RA6

10 10 O

O

Yo/ O

-

-

TTL

Oscillator cristal o de reloj de salida.

Oscillator salida de cristal. Se conecta al

cristal o resonador en modo de oscilador de

cristal.

Yon RC modo, pin OSC2 salidas CLKO que tiene 1/4

ªfrecuencia e de OSC1, y denota la tasa de ciclo de

instrucción.

General Objetivo I / O pin.

RA0/AN0

RA0

AN0

RA1/AN1

RA1

AN1

RA2/AN2/VREF

- RA2

AN2

VREF-

RA3/AN3/VREF

+

RA3

AN3

VREF+

RA4/T0CKI

RA4

T0CKI

RA5/AN4/SS/LVDIN

RA5

AN4

SS

LVDIN

RA6

2

3

4

5

6

7

2

3

4

5

6

7

Yo/

Oh

I

Yo/

Oh

I

Yo/

Oh

I

Yo

Yo/

Oh

I

Yo

Yo/

Oh

I

Yo/

Oh

I

Yo

Yo

TTL

analógi

co

TTL

analógi

co

TTL

analógi

co

analógi

co

TTL

analógi

co

analógi

co

ST /

ST OD

TTL

analógi

co ST

analógi

co

PORTA es un bi-direccional de E / S del puerto.

Digital I / O.

Entrada

analógica 0.

Digital I / O.

Entrada

analógica 1.

Digital I / O.

Entrada

analógica 2.

A / D de referencia de tensión (baja) de entrada.

Digital I / O.

Entrada

analógica 3.

La/ Referencia D Tensión (educación superior) de entrada.

Digital I / O. Abra drenar cuando se configura

como salida. Timer0 entrada de reloj externo.

Digital I / O.

Entrada

analógica 4.

SPI entrada Slave Select.

Helow Voltaje entrada de detección.

Ver el pasador OSC2/CLKO/RA6.

Leyenda: TTL = TTL compatible CMOS de entrada = entrada o salida CMOS compatible

ST = entrada Trigger Schmitt CMOS con niveles de entrada I =

O = P = Potencia de salida

OD = Open Drain (sin diodo P a VDD)

Page 17: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 13

PIC18FXX2

TABLE 1-2: PIC18F2X2 pinout I / O DESCRIPCIONES (CONTINUACIÓN)

Pin Nombre

Pin Número

Pin

Type

Buffer

Type

Descripción

DIP SOIC

RB0/INT0

RB0

INT0

RB1/INT1

RB1

INT1

RB2/INT2

RB2

INT2

RB3/CCP2

RB3

CCP2

RB4

RB5/PGM

RB5

PGM

RB6/PGC

RB6

PGC

RB7/PGD

RB7

PGD

21

22

23

24

25

26

27

28

21

22

23

24

25

26

27

28

Yo/

O

h

I

Yo/

O

h

I

Yo/

O

h

I

Yo/

O I

/ O

Yo/ O

Yo/

O I

/ O

Yo/

O I

/ O

Yo/

O I

/ O

TTL

ST

TTL

ST

TTL

ST

TTL

ST

TTL

TTL

ST

TTL

ST

TTL

ST

PORTB es un bi-direccional de E / S del puerto. PORTB

software puede ser programado para internos débiles pull-

ups en todas las entradas.

Digital I / O.

0 Interrupción externa.

Interrupción externa

1. Digital I / O.

Interrupción externa 2.

Digital I / O.

Entrada Capture2, Compare2 salida, PWM2

salida. Digital I / O.

Enterrupt-al-cambiar pin.

Digital I / O. Interrupción-al-cambiar pin.

Helow Tensión de programación ICSP permitir pin.

Digital I / O. Interrupción-al-cambiar pin.

En-Circuit Debugger y pin ICSP programación del reloj.

Digital I / O. Interrupción-al-cambiar pin.

En-Circuit Debugger y pin ICSP programación de datos. Leyenda: TTL = TTL compatible CMOS de entrada = entrada o salida CMOS compatible

ST = entrada Trigger Schmitt CMOS con niveles de entrada I =

O = P = Potencia de salida

OD = Open Drain (sin diodo P a VDD)

Page 18: 39564c.en.es

DS39564C-page14 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 1-2: PIC18F2X2 pinout I / O DESCRIPCIONES (CONTINUACIÓN)

Pin Nombre

Pen el número

Pin

Type

Buffer

Type

Descripción

DIP SOIC

RC0/T1OSO/T1CKI

RC0

T1OSO

T1CKI

RC1/T1OSI/CCP2

RC1

T1OSI

CCP2

RC2/CCP1

RC2

CCP1

RC3/SCK/SCL

RC3

SCK

SCL

RC4/SDI/SDA

RC4

SDI

SDA

RC5/SDO

RC5

SDO

RC6/TX/CK

RC6

TX

CK

RC7/RX/DT

RC7

RX

DT

11

12

13

14

15

16

17

18

11

12

13

14

15

16

17

18

Yo/

O

O

Yo

Yo

E /

S

de

I /

O

Yo/

O I

/ O

Yo/

O I

/ O

I /

O

Yo

E /

S

de

I /

O

Yo/

O

O

Yo/

O

O I

/ O

Yo

E /

S

de

I /

O

ST

-

ST

ST ST

CMOS

ST

ST

ST

ST

ST

ST

ST

ST

ST

-

ST

-

ST

ST

ST

ST

PORTC es un bi-direccional de E / S del puerto.

Digital I / O.

Timer1 salida del oscilador.

Timer1/Timer3 entrada de reloj

externo.

Digital I / O.

Timer1 oscilador de entrada.

Entrada Capture2, Compare2 salida, PWM2 salida.

Digital I / O.

Capture1 input/Compare1 output/PWM1 salida.

Digital I / O.

Synchronous reloj de entrada / salida serial para el

modo SPI. Entrada de reloj síncrona / salida serial

para el modo I2C

Digital I / O. SPI de entrada de datos. Los datos I2C I / O.

Digital I / O.

SPI salida de datos.

Digital I / O.

Asíncrono USART Transmit.

USART síncrona del reloj (ver relacionada RX / DT).

Digital I / O.

Asíncrono USART recibir.

USART de datos síncronos (ver relacionado TX / CK).

VSS 8, 19 8, 19 P - GReferencia ronda para la lógica y los pines de E / S.

VDD 20 20 P - Positive suministro para los pines lógicos y de I / O.

Leyenda: TTL = TTL compatible CMOS de entrada = entrada o salida CMOS compatible

ST = entrada Trigger Schmitt CMOS con niveles de entrada I =

O = P = Potencia de salida

OD = Open Drain (sin diodo P a VDD)

Page 19: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 15

PIC18FXX2

TABLE 1-3: PIC18F4X2 pinout I / O DESCRIPCIONES

Pin Nombre

Pin Número

Pin

Type

Buffer

Type

Descripción

DIP PLCC TQFP

MCLR / VPP

MCLR

VPP

1 2 18

I

I

ST

ST

Master Clear (entrada) o ICSP alto voltaje

PROGRAMACIÓNg enable pin.

Master Clear (Reset) de entrada. Este pin es un

RESET activa baja en el dispositivo.

Programación ICSP alta tensión permitir pin.

NC - - - Estos pines se debe dejar sin conectar.

OSC1/CLKI

OSC1

CLKI

13 14 30 I

I

ST

CMOS

Oscilacióntor de cristal o entrada de reloj externo.

Oscillator cristal o entrada externa de reloj

fuente. ST búfer cuando se configura en modo

RC, CMOS contrario.

Reloj externo fuente de entrada. Siempre

asociado con pin OSC1 función. (Véase

relacionados OSC1/CLKI, alfileres OSC2/CLKO.)

OSC2/CLKO/RA6

OSC2

CLKO

RA6

14 15 31 O

O

I / O

-

-

TTL

Oscilacióntor de cristal o de reloj de salida.

Oscillator salida de cristal. Se conecta al

cristal o resonador en modo de oscilador de

cristal.

Yon RC modo, OSC2 pasador salidas

CLKO, que tiene 1/4 de la frecuencia de

OSC1 y denota la tasa de ciclo de

instrucción.

GenePropósito ral I / O pin.

RA0/AN0

RA0

AN0

RA1/AN1

RA1

AN1

RA2/AN2/VREF

- RA2

AN2

VREF-

RA3/AN3/VREF

+

RA3 AN3

VREF+

RA4/T0CKI

RA4 T0CKI

RA5/AN4/SS/LVDIN

RA5

AN4

SS

LVDIN

RA6

2

3

4

5

6

7

3

4

5

6

7

8

19

20

21

22

23

24

I /

O I

I /

O I

I /

O I

Yo

I /

O I

Yo

I /

O I

I /

O I

I

I

TTL

analógi

co

TTL

analógi

co

TTL

Analóg

ico

Analóg

ico

TTL

Analóg

ico

Analóg

ico

ST /

ST OD

TTL

ST

analógi

ca

analógi

ca

PORTA es un bi-direccional puerto I / O.

Digital I / O.

Entrada

analógica 0.

Digital I / O.

Entrada

analógica 1.

Digital I / O.

Entrada

analógica 2.

A / D de referencia de tensión (baja) de entrada.

Digital I / O.

Entrada

analógica 3.

A / D de referencia de tensión (alta) de entrada.

Digital I / O. Abra drenar cuando se configura

como salida. Timer0 entrada de reloj externo.

Digital I / O.

Entrada

analógica 4.

SPI entrada Slave Select.

Detección de bajo voltaje

de entrada.

(Véase el pasador OSC2/CLKO/RA6.)

Leyenda: TTL = TTL compatible CMOS de entrada = entrada o salida CMOS compatible

ST = entrada Trigger Schmitt CMOS con niveles de entrada I =

O = P = Potencia de salida

OD = Open Drain (sin diodo P a VDD)

Page 20: 39564c.en.es

DS39564C-page16 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 1-3: PIC18F4X2 pinout I / O DESCRIPCIONES (CONTINUACIÓN)

Pin Nombre

Pin Número

Pin

Type

Buffer

Type

Descripción

DIP PLCC TQFP

RB0/INT0

RB0

INT0

RB1/INT1

RB1

INT1

RB2/INT2

RB2

INT2

RB3/CCP2

RB3

CCP2

RB4

RB5/PGM

RB5

PGM

RB6/PGC

RB6

PGC

RB7/PGD

RB7

PGD

33

34

35

36

37

38

39

40

36

37

38

39

41

42

43

44

8

9

10

11

14

15

16

17

I /

O

I

I /

O

I

I /

O

I

E /

S

E /

S

I / O

E /

S

E /

S

E /

S

E /

S

E /

S

E /

S

TTL

ST

TTL

ST

TTL

ST

TTL

ST

TTL

TTL

ST

TTL

ST

TTL

ST

PORTB es un bi-direccional de E / S del puerto.

PORTB software puede ser programado para

internos débiles pull-ups en todas las entradas.

Digital I / O.

0 Interrupción externa.

Interrupción externa

1. Digital I / O.

Interrupción externa 2.

Digital I / O.

Entrada Capture2, Compare2 salida, PWM2

salida. Digital I / O. Interrupción-al-cambiar pin.

Digital I / O. Interrupción-al-cambiar pin.

Helow Tensión de programación ICSP permitir pin.

Digital I / O. Interrupción-al-cambiar pin.

En-Circuit Debugger y pin ICSP programación

del reloj.

Digital I / O. Interrupción-al-cambiar pin.

En-Circuit Debugger y pin ICSP programación

de datos. Leyenda: TTL = TTL compatible CMOS de entrada = entrada o salida CMOS compatible

ST = entrada Trigger Schmitt CMOS con niveles de entrada I =

O = P = Potencia de salida

OD = Open Drain (sin diodo P a VDD)

Page 21: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 17

PIC18FXX2

TABLE 1-3: PIC18F4X2 pinout I / O DESCRIPCIONES (CONTINUACIÓN)

Pin Nombre

Pin Número

Pin

Type

Buffer

Type

Descripción

DIP PLCC TQFP

RC0/T1OSO/T1CKI

RC0

T1OSO

T1CKI

RC1/T1OSI/CCP2

RC1

T1OSI

CCP2

RC2/CCP1

RC2

CCP1

RC3/SCK/SCL

RC3

SCK

SCL

RC4/SDI/SDA

RC4

SDI

SDA

RC5/SDO

RC5

SDO

RC6/TX/CK

RC6

TX

CK

RC7/RX/DT

RC7

RX

DT

15

16

17

18

23

24

25

26

16

18

19

20

25

26

27

29

32

35

36

37

42

43

44

1

I /

O

O

Yo

I /

O I

/ O

E /

S

E /

S

E /

S

E /

S

I / O

I /

O I

/ O

I /

O

O

I /

O

O I

/ O

I /

O I

/ O

ST

-

ST

ST ST

CMOS

ST

ST

ST

ST

ST

ST

ST

ST

ST

-

ST

-

ST

ST

ST

ST

PORTC es un bi-direccional de E / S del puerto.

Digital I / O.

Timer1 salida del oscilador.

Timer1/Timer3 entrada de reloj

externo.

Digital I / O.

Timer1 oscilador de entrada.

Entrada Capture2, Compare2 salida, PWM2 salida.

Digital I / O.

Capture1 input/Compare1 output/PWM1 salida.

Digital I / O.

Synchentrada ronous reloj serial / salida para

Modo SPI.

Synchentrada ronous reloj serial / salida para

Modo I2C.

Digital I / O.

SPI de

entrada de

datos. Los

datos I2C I /

O.

Digital I / O.

SPI salida de datos.

Digital I / O.

UAsíncrono de transmisión SART.

USART síncrona del reloj (ver relacionada RX / DT).

Digital I / O.

UAsíncrono SART recibir.

USART de datos síncronos (ver relacionado TX / CK).

Leyenda: TTL = TTL compatible CMOS de entrada = entrada o salida CMOS compatible

ST = entrada Trigger Schmitt CMOS con niveles de entrada I =

O = P = Potencia de salida

OD = Open Drain (sin diodo P a VDD)

Page 22: 39564c.en.es

DS39564C-page18 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 1-3: PIC18F4X2 pinout I / O DESCRIPCIONES (CONTINUACIÓN)

Pin Nombre

Pin Número

Pin

Type

Buffer

Type

Descripción

DIP PLCC TQFP

RD0/PSP0

RD1/PSP1

RD2/PSP2

RD3/PSP3

RD4/PSP4

RD5/PSP5

RD6/PSP6

RD7/PSP7

19

20

21

22

27

28

29

30

21

22

23

24

30

31

32

33

38

39

40

41

2

3

4

5

I /

O I

/ O

I /

O I

/ O

I /

O I

/ O

I /

O

I / O

ST

TTL

ST

TTL

ST

TTL

ST

TTL

ST

TTL

ST

TTL

ST

TTL

ST

TTL

PORTD es un bi-direccional puerto I / O, o un puerto

esclavo paralelo (PSP) para la conexión con un

puerto de microprocesador. Estos pernos tienen

buffers de entrada TTL cuando PSP módulo está

habilitado.

Digital I / O.

Parallel Data puerto de

esclavos. Digital I / O.

Parallel Data puerto de esclavos.

Digital I / O.

Parallel Data puerto de

esclavos. Digital I / O.

Parallel Data puerto de esclavos.

Digital I / O.

Parallel Data puerto de

esclavos. Digital I / O.

Parallel Data puerto de esclavos.

Digital I / O.

Parallel Data puerto de

esclavos. Digital I / O.

Parallel Data puerto de esclavos.

RE0/RD/AN5

RE0

RD

AN5

RE1/WR/AN6

RE1

WR

AN6

RE2/CS/AN7

RE2

CS

AN7

8

9

10

9

10

11

25

26

27

I / O

I / O

I / O

ST

TTL

Analógi

ca

ST

TTL

Analógi

ca

ST

TTL

Analógi

ca

PORTE es un bi-direccional de E / S del puerto.

Digital I / O.

Lea el control para el puerto

paralelo esclavo (véase también

WR y los pines CS). Entrada

analógica 5.

Digital I / O.

Writo de control para el puerto paralelo esclavo

(Ver los pins CS y

RD). Entrada

analógica 6.

Digital I / O.

Chip Select para el control del puerto paralelo esclavo

(See relacionada con RD

y WR). Entrada analógica

7.

VSS 12, 31 13, 34 6, 29 P - GReferencia ronda para la lógica y los pines de E / S.

VDD 11, 32 12, 35 7, 28 P - Positive suministro para los pines lógicos y de I / O.

Leyenda: TTL = TTL compatible CMOS de entrada = entrada o salida CMOS compatible

ST = entrada Trigger Schmitt CMOS con niveles de entrada I =

O = P = Potencia de salida

OD = Open Drain (sin diodo P a VDD)

Page 23: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 19

PIC18FXX2

Rangos Probado:

Modo Freq C1 C2

XT 455 kHz

2.0 MHz

4.0 MHz

68 a 100 pF

15 a 68 pF

15 a 68 pF

68 a 100 pF

15 a 68 pF

15 a 68 pF HS 80,0 MHz

16.0 MHz 10 a 68 pF

10 a 22 pF 10 a 68 pF

10 a 22 pF These valores son orientativos diseño único.

See notas que siguen a esta tabla.

Resonadores utilizado:

455 kHz Panasonic EFO-A455K04B ± 00,3% 2,0 MHz Murata Erie CSA2.00MG ± 00,5% 4,0 MHz Murata Erie CSA4.00MG ± 00,5% 8,0 MHz Murata Erie CSA8.00MT ± 00,5% 160,0 MHz

Murata Erie CSA16.00MX ± 00,5% Todos los resonadores utilizados no han incorporado en los condensadores.

R

2,0 OSCONFIGURACIONES oscilador

2.1 Tipos de oscilador

El PIC18FXX2 puede ser operado en ocho modos de

oscilador diferentes. El usuario puede programar tres

Configuraciones de bits (FOSC2, FOSC1 y FOSC0)

para seleccionar uno de los ocho modos:

TABLE 2-1: CAPACITOR DE SELECCIÓN

PARA resonadores de

cerámica

1. LP Helow Power Crystal 2. XT Cristal / Resonador 3. HS Cristal de alta velocidad /

Resonator 4. HS + PLL Cristal de alta velocidad /

Resonador con PLL activado 5. RC External resistencia /

condensador 6. Rcio Resistencia externa / condensador con

YoPin E / S activada 7. CE Reloj externo 8. ECIO Reloj externo con pin I / O

activada

2.2 Oscilador de Cristal / Cerámica

Resonadores

Yon XT, LP, SA o SA + modos oscilador PLL, un

resonador de cristal o de cerámica está conectado a

los OSC1 y OSC2 pins para establecer oscilación. La

Figura 2-1 muestra las conexiones de los pines.

The diseño de oscilador PIC18FXX2 requiere el uso

de un cristal de corte paralelo.

Nota: El uso de un cristal de corte en serie

puede dar una frecuencia fuera de las

especificaciones de los fabricantes de

cristal.

FIGURA 2-1: CRYSTAL / CERAMIC

RESONATOR

OPERACIÓN (HS, XT o

configuración LP)

Nota 1: Una mayor capacitancia aumenta la

estabilidad del oscilador, pero también

aumenta el tiempo de puesta en marcha.

2:When operativo por debajo de 3V VDD, o

cuando se utilizan ciertas resonadores

de cerámica en cualquier tensión, puede

ser necesario el uso de alta ganancia en

modo HS, trate de un resonador de

frecuencia más baja, o cambiar a un

oscilador de cristal.

3:Since cada resonador / cristal tiene sus

propias características, el usuario debe

consultar al fabricante del resonador /

cristal para valores apropiados de los

componentes externos, o verificar el

funcionamiento del oscilador.

C1(1)

OSC1

XTAL

RF

)

A Interno Lógica

(3

C2(1)

(2) S

OSC2

SLEEP

PIC18FXXX

Noe 1: See la Tabla 2-1 y la Tabla 2-2 para los

valores recomendados de C1 y C2.

2:Una resistencia en serie (RS) puede ser requerido para

LaT tira cortada cristales.

3:RF varía con el modo oscilador elegido.

Page 24: 39564c.en.es

DS39564C-page20 2006 Microchip Technology Inc.

PIC18FXX2

Rangos Probado:

Modo Freq C1 C2

LP 32.0 kHz 33 pF 33 pF

200 kHz 15 pF 15 pF

XT 200 kHz 22-68 pF 22-68 pF

10,0 MHz 15 pF 15 pF

40,0 MHz 15 pF 15 pF

HS 40,0 MHz 15 pF 15 pF

80,0 MHz 15-33 pF 15-33 pF

20.0 MHz 15-33 pF 15-33 pF

25.0 MHz 15-33 pF 15-33 pF

These valores son orientativos diseño único.

See notas que siguen a esta tabla.

Cristales usado

32.0 kHz Epson C-001R32.768K-A ± 20 PPM

200 kHz STD XTL 200.000KHz ± 20 PPM

10,0 MHz ECS ECS-10-13-1 ± 50 PPM

40,0 MHz ECS ECS-40-20-1 ± 50 PPM

80,0 MHz EPSOn 8.000m CA-301-C ± 30 PPM

200,0 MHz Epson CA-301-C 20.000m ± 30 PPM

TABLE 2-2: SELECCIÓN DE CONDENSADOR

PARA OSCILADOR DE

CRISTAL

2.3 RC Oscilador

Por el momento las aplicaciones no sensibles, el "RC"

y "Comércio" Opciones de dispositivos ofrecen un

ahorro adicional de costes. La frecuencia del oscilador

RC es una función de la tensión de alimentación, la

resistencia (REXT) y el condensador (CEXT) los

valores y la temperatura de funcionamiento. Además

de esto, la frecuencia del oscilador puede variar de

una unidad a otra debido a variaciones normales de

parámetros de proceso. Además, la diferencia en

capacitancia de bastidor de conductores entre los

tipos de paquete también afectará a la frecuencia de

oscilación, especialmente para valores bajos CEXT.

El usuario también debe tener en cuenta la variación

debido a la tolerancia de los componentes externos

de I y C utilizados. La figura 2-3 muestra cómo la

combinación R / C está conectado.

Yon el modo de oscilador RC, la frecuencia del

oscilador dividida por 4 está disponible en el pin

OSC2. Esta señal puede ser usada para fines de

prueba o para sincronizar la lógica otro.

Nota: Yof la frecuencia del oscilador dividida por

4 señal no se requiere en la aplicación, se

recomienda utilizar el modo rcio para

ahorrar energía.

FIGURA 2-3: MODO RC OSCILLATOR

VDD

Nota 1: Una mayor capacitancia aumenta la

estabilidad del oscilador, pero también

aumenta el tiempo de puesta en marcha.

2:Rs puede ser necesario en modo HS, así

como el modo XT, para evitar

sobrecargas cristales con especificación

de bajo nivel de accionamiento.

REXT

CEXT

VSS

FOSC / 4

OSC1 OSC2/CLKO

Internal

Clock PIC18FXXX

3:Since cada resonador / cristal tiene sus

propias características, el usuario debe

consultar al fabricante del resonador /

cristal para valores apropiados de los

componentes externos., o verificar el

funcionamiento del oscilador.

Lan fuente de reloj externa también puede ser

conectado al pin OSC1 en los modos de HS, XT y LP,

como se muestra en la Figura 2-2.

FIGURA 2-2: OPERACIÓN EXTERNA entrada

de reloj (HS, XT o LP OSC

CONFIGURACIÓN)

Recomvalores recomendadas: 3 kΩ ≤ REXT≤ 100 kΩ

CEXT> 20pF

The Comércio funciones de oscilador modo como el

modo RC, con la salvedad de que el pin OSC2 se

convierte en un adicional de propósito ge-neral I / O

pin. El pin de E / S se convierte en el bit 6 de PORTA

(RA6).

Clock de OSC1

Ext. Sistema PIC18FXXX

Abierto OSC2

Page 25: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 21

PIC18FXX2

MU

X

2.4 Entrada de reloj externo

The CE y modos de ECIO oscilador requieren una

fuente de reloj externa para ser conectada al pin

OSC1. El dispositivo de retroalimentación entre OSC1

y OSC2 está activado

FIGURA 2-5: OPERACIÓN EXTERNA DE

ENTRADA DEL RELOJ

(ECIO CONFIGURACIÓN)

def en estos modos para ahorrar energía. No hay oscilación

Clock de OSC1

tor de arranque tiempo necesario después de un reinicio de encendido o

Ext. Sistema PIC18FXXX

unespués de una recuperación desde el modo SLEEP.

Yon el modo de oscilador CE, la frecuencia del

oscilador dividida por 4 está disponible en el pin

OSC2. Esta señal puede ser usada para fines de

prueba o para sincronizar la lógica otro. La Figura 2-4

muestra las conexiones de patillas para la CE

RA6

2.5 HS / PLL

I /O (OSC2)

Oscilacióntor modo.

FIGURA 2-4: OPERACIÓN EXTERNA DE

ENTRADA DEL RELOJ

(CE CONFIGURACIÓN)

A Phase Locked Loop circuito se proporciona como un programa-

MABLe opción para los usuarios que desean

multiplicar la frecuencia de la señal de oscilador de

cristal de entrada por 4. Para una frecuencia de

entrada de reloj de 10 MHz, la frecuencia del reloj

interno se multiplicará a 40 MHz. Esto es útil para los

clientes que están interesados en debido a los

cristales de alta frecuencia EMI. Clock de OSC1

Ext. Sistema PIC18FXXX The PLL sólo se puede activar cuando el oscilador con-

Figuración pedacitos están programados para el modo HS. Si están

FOSC / 4 OSC2 programad por cualquier otro modo, el PLL no está

habilitado y el reloj del sistema vendrá directamente

de OSC1. The ECIO funciones del oscilador de modo como el modo de CE,

excepciónt que el pin OSC2 adicional se convierte en

un objetivo gene-ral I / O pin. El pin de E / S se

convierte en el bit 6 de PORTA (RA6). La Figura 2-5

muestra las conexiones de los pines para el modo de

oscilador ECIO.

The PLL es uno de los modos de la FOSC <2:00>

URACIÓN config-bits. El modo de oscilador se

especifica durante la programación del dispositivo.

Un temporizador de bloqueo de PLL se utiliza para

asegurar que el PLL se ha cerrado antes de la

ejecución dispositivo se inicia. El temporizador de

bloqueo de PLL tiene un tiempo de espera que se

llama TPLL.

FIGURA 2-6: DIAGRAMA DE BLOQUE PLL

(Configuración de HS poco

Osc Registrarse)

PLL Enable

OSC2

Cristal

Osc

Phase Comparator

FIN

Bucle

Filter

VCO

OSC1

FOUT SYSCLK

Divide por 4

Page 26: 39564c.en.es

DS39564C-page22 2006 Microchip Technology Inc.

PIC18FXX2

MU

X

2.6 Oscilador de funciones de conmutación

Thdispositivos electrónicos PIC18FXX2 incluyen una

característica que permite que la fuente de reloj del

sistema que se conecta desde el oscilador principal a

un suplente fuente de reloj de baja frecuencia. Para

los dispositivos PIC18FXX2, esta fuente alternativa de

reloj es el oscilador Timer1. Si un cristal de baja

frecuencia (32 kHz, por ejemplo) se ha unido a las

Timer1 pins del oscilador y el oscilador Timer1 se ha

activado, el dispositivo puede cambiar a un bajo

consumo Eje-

tion modo. La Figura 2-7 muestra un diagrama de

bloques de las fuentes de reloj del sistema. La función

de conmutación del reloj se activa programando el

oscilador de conmutación de habilitación (OSCSEN)

bit en Register1H configuración en un

'0 '. Conmutación del reloj se desactiva en un

dispositivo de borrado. Vea la Sección 11.0 para más

detalles sobre el Timer1 oscilador. Vea la Sección

19.0 para más detalles registro de configuración.

FIGURA 2-7: FUENTES DE DISPOSITIVOS DE RELOJ

PIC18FXXX

OSC2

OSC1

T1OSO

T1OSI

Main oscilador

DORMIR

TimerUn oscilador

T1OScen oscilador Enable

4 x PLL

TOS

C

TT1P

TOSC / 4

Clock

Fuente

TSCLK

Clock opción

Fuente para otros

módulos

Page 27: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 23

PIC18FXX2

R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

2.6.1 SISTEMA DE RELOJ INTERRUPTOR BIT

Thsistema electrónico reloj conmutación de fuente se

realiza bajo control de software. El reloj del sistema bit

switch, SCS (OSCCON <0>) controla la conmutación

del reloj. Cuando el bit SCS es '0 ', la fuente de reloj

del sistema proviene del oscilador principal que es

seleccionado por la FOSC configura-ción bits en

Register1H configuración. Cuando el bit SCS está

establecido, la fuente de reloj del sistema vendrá del

oscilador Timer1. El bit SCS está desactivada en

todas las formas de RESET.

REGISTRO 2-1: OSCCON REGISTRO

Nota: The oscilador Timer1 debe estar

habilitado y operativo para cambiar la

fuente de reloj del sistema. El oscilador

Timer1 se habilita estableciendo el bit

T1OSCEN en el registro Timer1 control

(T1CON). Si el oscilador Timer1 no está

activada ninguna de escritura en el bit

SCS serán ignorados (bit SCS forzado

borra) y el oscilador principal seguirá

siendo la fuente de reloj del sistema.

U-0-0 U U U-0-0-0 U U U-0-0 R/W-1

- - - - - - - SCS bit 7 bit 0

bit 7-1 Naciones

Unidasimplementado: Leer como 0 bit

'0 ' SCS: SysReloj tem poco

Interruptor

When OSCSEN configuración de bits = '0 'y poco T1OSCEN se establece:

1= Cambiar a Timer1 oscilador / reloj pin

0= Utilizar oscilador primario / reloj pin de entrada

When OSCSEN y T1OSCEN se encuentran en otros estados:

bit es forzado claro

Leyenda:

Page 28: 39564c.en.es

DS39564C-page24 2006 Microchip Technology Inc.

PIC18FXX2

2.6.2 TRANSICIONES OSCILADOR

Thdispositivos electrónicos PIC18FXX2 contienen

circuitos para evitar "interferencias" cuando se cambia

entre las fuentes del oscilador. Esencialmente, el

circuito de espera por ocho bordes ascendentes de la

fuente de reloj que el procesador está cambiando.

Esto asegura que la nueva fuente de reloj es estable y

que su ancho de pulso no será menor que el ancho

más corto de pulso de las dos fuentes de reloj.

La diagrama de tiempos que indica la transición desde

el oscilador principal para el oscilador Timer1 se

muestra en la Figura 2-8. El oscilador Timer1 se

supone que funciona mucho todo el tiempo. Después

de que el bit SCS está establecido, el procesador se

congela en el ciclo siguiente Q1 ocurriendo. Después

de ocho ciclos de sincronización se cuentan desde el

Timer1 oscilador, se reanuda la operación. No hay

retrasos adicionales son necesarios después de los

ciclos de sincronización.

Figura 2-8: Diagrama de tiempos para la transición del OSC1 A TIMER1 OSCILLATOR

T1OSI

OSC1

Q1 Q2 Q3 Q1 Q4

1

TT1P

2

Q1

3 4 5 6 7 8

Tscs

Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1

Reloj interno del sistema

(SCSOSCCON <0>)

PrOGRAMA Contador

TOSC

Ordenador personal

TDLY

PC + 2

PC + 4

Noe 1: Deponer en el reloj interno del sistema es de ocho ciclos del oscilador de sincronización.

The secuencia de eventos que tiene lugar cuando de

conmutación del oscilador Timer1 al oscilador

principal dependerá del modo del oscilador principal.

Además de los ocho ciclos de reloj del oscilador

principal, los retrasos adicionales pueden tener lugar.

Yof del oscilador principal está configurado para un

externo crys-tal (HS, XT, LP), entonces la transición

se llevará a cabo después de un oscilador de puesta

en marcha (TOST) ha ocurrido. Un diagrama de

tiempo, lo que indica la transición de la Timer1

oscilador para el oscilador principal para HS, XT y

modos LP, se muestra en la Figura 2-9.

FIGURA 2-9: TIEMPO DE TRANSICIÓN ENTRE TIMER1 Y OSC1 (HS, XT, LP)

Q3 Q4 Q1 TT1P

Q1 Q2 Q3 Q4 Q1 Q2 Q3

T1OSYo

OSC1

TOST

1 2 3 4 5 6 7 8

TSCS

OSC2

Sistema Interno Reloj

TOSC

(SCS

OSCCON <0>)

PrOGRAMA Contador PC PC + 2

Nota 1: TOST = 1024 TOSC (dibujo no está a escala).

PC + 6

Page 29: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 25

PIC18FXX2

Yof del oscilador principal está configurado para HS-

PLL modo, un oscilador de tiempo de inicio (TOST)

más un PLL adicional de tiempo de espera (TPLL) se

va a producir. El PLL tiempo de espera suele ser

2 ms y permite que el PLL para bloquear la frecuencia

del oscilador principal. Un diagrama de tiempo que

indica la transición desde el oscilador Timer1 al

oscilador principal para HS-PLL modo se muestra en

la figura 2-10.

FIGURA 2-10: TIEMPO DE TRANSICIÓN ENTRE TIMER1 Y OSC1 (HS CON PLL)

Q1 Q4 TT1P Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

T1OSI

OSC1

OSC2

Reloj PLL

TOST

TPLL

TOSC

TSCS

De entrada 1 2 3 4 5 6 7 8

Sistema Interno Reloj

SCS

(OSCCON <0>)

Contador de Programa PC PC + 2

Nota 1: TOST = 1024 TOSC (dibujo no está a escala).

PC + 4

Yof del oscilador principal está configurado en el RC,

rcio, CE o modos de ECIO, no hay ningún oscilador

de puesta en marcha de tiempo de espera. La

operación se reanudará después de ocho ciclos del

oscilador principal han sido contados. Un diagrama de

tiempo, lo que indica la transición desde el oscilador

Timer1 al oscilador principal para RC, rcio, CE y

modos de ECIO, se muestra en la figura 2-11.

FIGURA 2-11: TIEMPO DE TRANSICIÓN ENTRE TIMER1 Y OSC1 (CC, CE)

T1OS

Yo

OSC1

Q3 Q1 Q4

TT1P

TOSC

1 2 3 4 5 6 7 8

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

OSC2

Sistema Interno

Reloj

(SCSOSCCON <0>)

TSCS

PrOGRAMA Contador PC PC + 2

Nota 1: Modo RC Oscilador asumido.

PC + 4

Page 30: 39564c.en.es

DS39564C-page26 2006 Microchip Technology Inc.

PIC18FXX2

2.7 Efectos del modo de suspensión en el

El Chi-p oscilador

When el dispositivo ejecuta un DORMIR instrucción,

los relojes en el chip y el oscilador están apagados y

el dispositivo se lleva a cabo al comienzo de un ciclo

de instrucción (estado Q1). Con el oscilador de

apagado, los OSC1 y OSC2 señales se detendrá

oscilante. Dado que todo el transistor

scorrientes witching se han eliminado, el modo

SLEEP logra el más bajo consumo de corriente del

dispositivo (solamente las corrientes de fuga).

Habilitación de alguna de las funciones en el chip que

operará durante SLEEP aumentará la corriente

consumida durante el sueño. El usuario puede

despertar de su sueño a través de RESET externo,

Reset Watchdog Timer, o por medio de una

interrupción.

TABLE 2-3: OSC1 y OSC2 ESTADOS PIN en modo de reposo

OSC Mode OSC1 Pin OSC2 Pin

RC Resistencia flotante,

externo debe tirar

alto

A nivel lógico bajo

Rcio Resistencia flotante,

externo debe tirar

alto

Configurado como PORTA, bit 6

ECIO Floridaotante

Configurado como PORTA, bit 6 CE Floridaot

ante A nivel

lógico bajo LP, XT y HS Feedback convertidor

deshabilitado, en el nivel

de tensión de reposo

Feedback convertidor

deshabilitado, en el nivel

de tensión de reposo Nota: See la Tabla 3-1, en la "Reset " segundoción, por los tiempos de espera debidos a dormir y MCLR Reset.

2.8 Power-up retrasos

Encienda los retrasos son controlados por dos

temporizadores, para que nadie circuito de RESET

externo es necesario para la mayoría de aplicaciones.

Los retrasos asegurar que el dispositivo se mantiene

en RESET, hasta que la fuente de alimentación y

dispositivo de reloj son estables. Para obtener

información adicional sobre la operación RESET,

consulte la Sección 3.0.

El primer contador de tiempo es el temporizador de

encendido (PWRT), que proporciona opcionalmente

un retardo fijo de 72 ms (nominal) en el arranque

solamente (POR y BOR). El temporizador de segundo

es el oscilador de puesta en marcha del temporizador

(OST), destinado a mantener el chip en RESET hasta

que el oscilador de cristal es estable.

Ingenioh habilitado el PLL (SA / PLL modo de

oscilador), la secuencia de tiempo de espera después

de un Power-on Reset es diferente de otros modos de

oscilador. La secuencia de tiempo de espera es el

siguiente: En primer lugar, la PWRT de tiempo de

espera se invoca después de un retardo de tiempo

POR ha expirado. Entonces, el Oscilador Start-up

Timer (OST) se invoca. Sin embargo, esto todavía no

es una cantidad de tiempo suficiente para permitir que

el PLL para bloquear a altas frecuencias. El

temporizador PWRT se utiliza para proporcionar un

adicional fijo 2 ms (nominal) de tiempo de espera para

permitir que el PLL tiempo suficiente para bloquear la

frecuencia de reloj entrante.

Page 31: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 27

PIC18FXX2

DeteConnecticut Power-on Res

Brown Salida Reset

BORES

30.0 de RESET

El PIC18FXXX distingue entre varios tipos de RESET:

un) Power-on Reset (POR)

b) MCLR Restauración durante la

operación normal c) Reset MCLR durante

el sueño

dWatchdog) Timer (WDT) Reset (durante el

funcionamiento normal)

e) Programable Brown-out Reset (BOR)

f) REINICIO

Instrucción g) Tubo de

escape de Reposición

Total

h) Pila Cambiar Underflow

Mosregistros T no se ven afectados por un RESET.

Su estado es desconocido en POR e inalterada de

todas las restauraciones otro. Los otros registros se

ven obligados a un "estado RESET" en Power-on

Reset, MCLR, Reset WDT, Brown-out Reset, reinicio

MCLR durante el sueño y por la REINICIO

instrucción.

Mosregistros T no se ven afectados por un WDT-

despertador, ya que este es visto como la

reanudación de la normalidad el funcionamiento. Bits

de estado del registro RCON, RI, TO, PD, POR y

BOR, se activa o se desactiva de manera diferente en

diferentes situaciones de RESET, según se indica en

la Tabla 3-2. Estos bits se utilizan en software para

determinar el tipo de RESET. Consulte la tabla 3-3

para obtener una descripción completa de los estados

de RESET de todos los registros.

Un diagrama de bloques simplificado del circuito de

reset on-chip se muestra en la Figura 3-1.

Thelectrónicos mejorados dispositivos MCU tienen un

filtro de ruido MCLR en el trayecto Cambiar MCLR. El

filtro detectar e ignorar pequeños pulsos.

The MCLR pin no se conduce bajo cualquier interno

RESTABLECIMIENTOS, incluyendo el WDT.

FIGURA 3-1: diagrama de bloques simplificado del circuito de rearme ON-CHIP

REINI

CIO Entrucción

Stack

PointePila r completo / Restaurar Underflow

ECambiar Xternal

MCLR

WDT

WDT

SLEEP

VDD

Módulo

Rise VDD

Tiempo muerto Reestablecer

et

S

OSC1

OST / PWRT

OST

10-bit contador de rizado

Chip_Reset

R Q

El chip RC OSC(1)

PWRT

10-bit contador de rizado

Habilitar PWRT

Act vace

OST(2)

Page 32: 39564c.en.es

DS39564C-page28 2006 Microchip Technology Inc.

PIC18FXX2

Noe 1: This es un oscilador separado del oscilador RC del pasador CLKI.

2:See la Tabla 3-1 para las situaciones de tiempo de espera.

Page 33: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 29

PIC18FXX2

3.1 Power-On Reset (POR)

A Power-on reset pulso se genera en el chip cuando

se detecta aumento VDD. Para aprovechar las

ventajas del POR cir-cuitry, sólo empatar el pin MCLR

directamente (oa través de un resistor) a VDD. Esto

eliminará los componentes externos de RC por lo

general se necesitan para crear un retardo de

encendido Reset. Una tasa de incremento mínimo

para VDD se especifica (parámetro D004). Durante un

tiempo lento ascenso, ver Figura 3-2.

When el dispositivo inicia la operación normal (es

decir, sale de la condición RESET), los parámetros

operativos del dispositivo (de voltaje, frecuencia,

temperatura, etc) deben cumplirse para asegurar la

operación. Si estas condiciones no se cumplen, el

dispositivo debe realizarse en RESET hasta que las

condiciones de funcionamiento se cumplen.

FIGURA 3-2: POWER-ON Circuito exterior

RESET (DE VDD LENTO

ENCENDIDO)

VDD

D R

R1 MCLR

CPIC18FXXX

Noe 1: External encendido Circuito de rearme sólo es

necesario si el VDD encendido pendiente es

demasiado lento. El diodo D ayuda a

descargar el condensador rápidamente

cuando los poderes VDD hacia abajo.

2:R <40 kΩ yos recomendado para asegurarse

de que la caída de voltaje a través de R no

viola las especificaciones eléctricas del

dispositivo.

3:R1 = 100Ω a 1 kΩ will limitar cualquier

corriente de flujo-ción en MCLR del

condensador C externo, en caso de MCLR /

VPP pin ruptura debido a descargas

electrostáticas (ESD) o sobretensión

eléctrica (EOS).

3.2 Power-up Timer (PWRT)

The Power-up Timer proporciona un valor nominal fijo

de tiempo de espera (parámetro 33) sólo en el

arranque del POR. El temporizador de encendido

funciona con un oscilador interno RC. El chip se

mantiene en RESET mientras el PWRT está activo. El

retardo de tiempo permite PWRT VDD para alcanzar

un nivel aceptable. Un bit de configuración se

proporciona para habilitar / deshabilitar la PWRT.

The power-up de retardo de tiempo variará de viruta a

viruta debido a VDD, la temperatura y la variación del

proceso. Ver D033 DC parámetros para obtener más

información.

Page 34: 39564c.en.es

DS39564C-page30 2006 Microchip Technology Inc.

PIC18FXX2

3.3 Oscilador Start-up Timer (OST)

ThOscilador electrónico Start-up Timer (OST) ofrece

un ciclo de oscilador de 1024 (a partir de la entrada

OSC1) Retardo tras el retraso es de más PWRT

(parámetro 32). Esto asegura que el oscilador de

cristal o resonador se ha iniciado y estabilizado.

The OST de tiempo de espera se invoca sólo para XT,

LP y los modos del SA, y sólo en Power-on Reset o

despertar de su sueño-.

3.4 PLL Time Lock-out

Ingenioh el PLL activado, la secuencia de tiempo de

espera después de un Power-on Reset es diferente

de otros modos de oscilador. Una porción del

temporizador de encendido se utiliza para pro-vide un

fijo de tiempo de espera que sea suficiente para el

PLL para bloquear la frecuencia del oscilador

principal. Este bloqueo de PLL de tiempo de espera

(TPLL) es típicamente de 2 ms y sigue el oscilador de

tiempo de inicio de salida (OST).

3.5 Brown-out Reset (BOR)

Un poco de configuración, Boren, puede desactivar (si

claro / programada) o habilitar (si está ajustado) el

circuito de reset Brown-out. Si VDD cae por debajo

del parámetro D005 para mayor que el parámetro 35,

la situación brown-out se restablecerá el chip. Un

RESET no se puede producir si VDD cae por debajo

de parámetro D005 por menos de parámetro 35. El

chip se mantendrá en Brown-out Reset hasta que se

eleva por encima de VDD BVDD. Si el temporizador

de encendido está activado, se invoca después se

eleva por encima de VDD BVDD, entonces será

mantener el chip en RESET durante un retardo

adicional (parámetro 33). Si VDD cae por debajo de

BVDD mientras el temporizador de encendido está

funcionando, el chip se regrese a un reinicio Brown-

out y el temporizador de encendido será inicializado.

Una vez que se eleva por encima de VDD BVDD, el

temporizador de encendido se ejecutará el retardo de

tiempo adicional.

3.6 Tiempo de espera de secuencia

On power-up, la secuencia de tiempo de espera es el

siguiente: En primer lugar, PWRT de tiempo de

espera se invoca después del retardo de tiempo POR

ha expirado. Entonces, se activa OST. El total de

tiempo de espera puede variar en función de la

configuración del oscilador y el estado de la PWRT.

Por ejemplo, en el modo de RC con el PWRT

desactivado, no habrá tiempo de espera en absoluto.

Figura 3-3 Figura 3-4 Figura, 3-5, Figura 3-6 y la

Figura 3-7 muestran las secuencias de tiempo de

espera en el encendido.

Since los tiempos de espera se producen a partir del

impulso POR, MCLR si se mantiene baja lo suficiente,

los tiempos de espera expira. Llevar MCLR alta

comenzará la ejecución inmediatamente (Figura 3-5).

Esto es útil para propósitos de prueba o para

sincronizar más de un dispositivo PIC18FXXX

operando en paralelo.

Tcapaz 3-2 muestra las condiciones de reinicio

durante algunos registros de funciones especiales,

mientras que la Tabla 3-3 se muestran las

condiciones de RESET para todos los registros.

Page 35: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 31

PIC18FXX2

Ososcilador

Configuración

(2) Brown-out

Despertar-Up de

suspensión o

interruptor

oscilador

PWRTE = 0

PWRTE = 1

HS con PLL

habilitado(1)

72 ms + 1024 TOSC

+ 2ms

1024 TOSC

+ 2 ms

72 ms(2) + 1024 TOSC

+ 2 ms

1024 TOSC + 2 ms

HS, XT, LP 72 ms + 1024 TOSC 1024 TOSC 72 ms(2) + 1024 TOSC 1024 TOSC

CE 72 ms - 72 ms(2) -

External RC 72 ms - 72 ms(2) -

TABLE 3-1: tiempo de espera en diferentes situaciones

Power-up

NoTE 1: 2 ms es el tiempo nominal necesario para el 4x PLL para bloquear.

2:72 ms es el valor nominal de encendido de retardo del temporizador, si se aplica.

REGISTRO 3-1: BITS RCON REGISTRO Y POSICIONES

R/W-0 U-0 U-0 R/W-1 R-1 R-1 R/W-0 R/W-0

IPEN - - Rhode Island

A PD POR BOR

bit 7 bit 0

Nota 1: Consulte la Sección 4.14 (página 53) para obtener definiciones de bit.

TABLE 3-2: BITS DE ESTADO, su significado y las condiciones de iniciación PARA REGISTRO

RCON

Condición Programa

Contador RCON

Registra

rse

Rhode Island

A

PD

POR

BOR

STKFUL

STKUNF

Power-on reset 0000h 0 a 1

1100 1 1 1 0 0 u u

MCLR Restablecer durante

el funcionamiento normal 0000h 0 - u

uuuu u u u u u u u

Restablecimiento de software

durante el funcionamiento

normal

0000h 0 a 0

uuuu 0 u u u u u u

Stack cero completa durante el

funcionamiento normal 0000h 0 - u

uu11 u u u u u u 1

Stack Cambiar Rebase

durante el funcionamiento

normal

0000h 0 - u

uu11 u u u u u 1 u

MCLR Restablecer durante el sueño

0000h 0 - u

10uu u 1 0 u u u u

WDT Restablecer 0000h 0 - u

01uu 1 0 1 u u u u

WDT Wake-up PC + 2 u - u

00uu u 0 0 u u u u

Brown-out reset 0000h 0 a 1

11u0 1 1 1 1 0 u u

Interrupción de despertar de un sueño

PC + 2(1) u - u

00uu u 1 0 u u u u

Leyenda:u= Sin cambios, x= Desconocido, - = bit sin aplicarse, leído como '0 '

Nota 1: When el despertador se debe a una interrupción y el GIEH o bits Giel se establece, el PC se carga

con el vector de interrupción (0x000008h or0x000018h).

Page 36: 39564c.en.es

DS39564C-page32 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 3-3: CONDICIONES inicialización de todos los registros

Registro

Dispositivos aplicables

Power-on Reset,

reinicio Brown-

out

MRestablece CLR

WDT Restablecer REINICIO

Instrucción Stack

Restablece

DespertarEn

marcha a través de WDT

Interrumpir o Tosu 242 442 252 452 --- 0 0000 --- 0 0000 --- 0 uuuu(3)

TOSH 242 442 252 452 0000 0000 0000 0000 uuuu uuuu(3)

TOSL 242 442 252 452 0000 0000 0000 0000 uuuu uuuu(3)

STKPTR 242 442 252 452 00-0 0000 uu-0 0000 uu-u uuuu(3)

PCLATU 242 442 252 452 --- 0 0000 --- 0 0000 --- U uuuu

PCLATH 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

PCL 242 442 252 452 0000 0000 0000 0000 PC + 2(2)

TBLPTRU 242 442 252 452 - 00 0000 - 00 0000 - Uu uuuu

TBLPTRH 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

TBLPTRL 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

TABLAT 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

PRODH 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

Prödl 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

YoNTCON 242 442 252 452 0000 000X 0000 000U uuuu uuuu(1)

INTCON2 242 442 252 452 -1-1 1111 -1-1 1111 uuuu-u-u(1)

INTCON3 242 442 252 452 11-0 0-00 11-0 0-00 uu-u u-uu(1)

INDF0 242 442 252 452 N / A

N / A

N / A POSTINC0 242 442 252 452 N /

A N / A

N / A POSTDEC0 242 442 252 452 N /

A N / A

N / A PREINC0 242 442 252 452 N /

A N / A

N / A PLUSW0 242 442 252 452 N /

A N / A

N / A FSR0H 242 442 252 452 ---- Xxxx ---- Uuuu ---- Uuuu

FSR0L 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

WREG 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

INDF1 242 442 252 452 N / A

N / A

N / A POSTINC1 242 442 252 452 N /

A N / A

N / A POSTDEC1 242 442 252 452 N /

A N / A

N / A PREINC1 242 442 252 452 N /

A N / A

N / A PLUSW1 242 442 252 452 N /

A N / A

N / A Leyenda:u= Sin cambios, x= Desconocido, -= Bit sin aplicarse, leído como '0 ', q= Valor depende de la condición.

Sombracélulas D indican condiciones no se aplican para el dispositivo designado.

Nota 1: Ene o más bits en los registros INTCONx o Pirx se verá afectada (causar despertar).

2:When el despertador se debe a una interrupción y el bit GIEL o GIEH está establecida, el PC se carga con

el vector de interrupción (0008h or0018h).

3:Wuando el despertador se debe a una interrupción y el bit GIEL o GIEH está establecida, el Tosu, Tosh y TOSL son

actualizard con el valor actual de la PC. El STKPTR se modifica para apuntar a la siguiente

ubicación en la pila de hardware.

4:Consulte la Tabla 3-2 para obtener valor de restablecimiento de la condición específica.

5:Bit 6 de PORTA, LATA, TRISA y están habilitados en ECIO y modos de Comércio oscilador solamente. En

todos los demás

Oscilaciónmodos de Tor, que sean discapacitados y '0 '.

6:Bit 6 de PORTA, TRISA y LATA no están disponibles en todos los dispositivos. Cuando no implementado, se

leen '0 '.

Page 37: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 33

PIC18FXX2

TABLE 3-3: condiciones de inicialización PARA TODOS LOS REGISTROS (CONTINUACIÓN)

Registro

Dispositivos aplicables

Power-on Reset,

reinicio Brown-

out

MRestablece CLR

WDT Restablecer REINICIO

Instrucción Stack

Restablece

DespertarEn

marcha a través de WDT

Interrumpir o FSR1H 242 442 252 452 ---- Xxxx ---- Uuuu ---- Uuuu

FSR1L 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

BSR 242 442 252 452 ---- 0000 ---- 0000 ---- Uuuu

INDF2 242 442 252 452 N / A

N / A

N / A POSTINC2 242 442 252 452 N /

A N / A

N / A POSTDEC2 242 442 252 452 N /

A N / A

N / A PREINC2 242 442 252 452 N /

A N / A

N / A PLUSW2 242 442 252 452 N /

A N / A

N / A FSR2H 242 442 252 452 ---- Xxxx ---- Uuuu ---- Uuuu

FSR2L 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

STATUS 242 442 252 452 --- X xxxx --- U uuuu --- U uuuu

TMR0H 242 442 252 452 0000 0000 uuuu uuuu uuuu uuuu

TMR0L 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

T0CON 242 442 252 452 1111 1111 1111 1111 uuuu uuuu

OSCCON 242 442 252 452 ------- 0 ------- 0 ------- U

LVDCON 242 442 252 452 - 00 0101 - 00 0101 - Uu uuuu

WDTCON 242 442 252 452 ------- 0 ------- 0 ------- U

RCON(4) 242 442 252 452 0 - q 11qq 0 - q qquu u - u qquu

TMR1H 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

TMR1L 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

T1CON 242 442 252 452 0-00 0000 u-uu uuuu u-uu uuuu

TMR2 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

PR2 242 442 252 452 1111 1111 1111 1111 1111 1111

T2CON 242 442 252 452 -000 0000 -000 0000 Uuuu uuu-

SSPBUF 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

SSPADD 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

SSPSTAT 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

SSPCON1 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

SSPCON2 242 442 252 452 0000 0000 0000 0000 uuuu uuuu Leyenda:u= Sin cambios, x= Desconocido, -= Bit sin aplicarse, leído como '0 ', q= Valor depende de la condición.

Sombracélulas D indican condiciones no se aplican para el dispositivo designado.

Nota 1: Ene o más bits en los registros INTCONx o Pirx se verá afectada (causar despertar).

2:When el despertador se debe a una interrupción y el bit GIEL o GIEH está establecida, el PC se carga con

el vector de interrupción (0008h or0018h).

3:Wuando el despertador se debe a una interrupción y el bit GIEL o GIEH está establecida, el Tosu, Tosh y TOSL son

actualizard con el valor actual de la PC. El STKPTR se modifica para apuntar a la siguiente

ubicación en la pila de hardware.

4:Consulte la Tabla 3-2 para obtener valor de restablecimiento de la condición específica.

5:Bit 6 de PORTA, LATA, TRISA y están habilitados en ECIO y modos de Comércio oscilador solamente. En

todos los demás

Oscilaciónmodos de Tor, que sean discapacitados y '0 '.

6:Bit 6 de PORTA, TRISA y LATA no están disponibles en todos los dispositivos. Cuando no implementado, se

leen '0 '.

Page 38: 39564c.en.es

DS39564C-page34 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 3-3: condiciones de inicialización PARA TODOS LOS REGISTROS (CONTINUACIÓN)

Registro

Dispositivos aplicables

Power-on Reset,

reinicio Brown-

out

MRestablece CLR

WDT Restablecer REINICIO

Instrucción Stack

Restablece

DespertarEn

marcha a través de WDT

Interrumpir o ADRESH 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

ADRESL 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

LaDCON0 242 442 252 452 0000 00-0 0000 00-0 uuuu uu-u

LaDCON1 242 442 252 452 00-0000 00-0000 uu - uuuu

CCPR1H 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

CCPR1L 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

CCP1CON 242 442 252 452 - 00 0000 - 00 0000 - Uu uuuu

CCPR2H 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

CCPR2L 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

CCP2CON 242 442 252 452 - 00 0000 - 00 0000 - Uu uuuu

TMR3H 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

TMR3L 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

T3CON 242 442 252 452 0000 0000 uuuu uuuu uuuu uuuu

SPBRG 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

RCREG 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

TXREG 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

TXSTA 242 442 252 452 0000 -010 0000 -010 uuuu uuu-

RCSTA 242 442 252 452 0000 000X 0000 000X uuuu uuuu

EEADR 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

EEDATA 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

EECON1 242 442 252 452 xx-0 x000 uu-0 U000 uu-0 U000

EECON2 242 442 252 452 -------- -------- -------- Leyenda:u= Sin cambios, x= Desconocido, -= Bit sin aplicarse, leído como '0 ', q= Valor depende de la condición.

Sombracélulas D indican condiciones no se aplican para el dispositivo designado.

Nota 1: Ene o más bits en los registros INTCONx o Pirx se verá afectada (causar despertar).

2:When el despertador se debe a una interrupción y el bit GIEL o GIEH está establecida, el PC se carga con

el vector de interrupción (0008h or0018h).

3:Wuando el despertador se debe a una interrupción y el bit GIEL o GIEH está establecida, el Tosu, Tosh y TOSL son

actualizard con el valor actual de la PC. El STKPTR se modifica para apuntar a la siguiente

ubicación en la pila de hardware.

4:Consulte la Tabla 3-2 para obtener valor de restablecimiento de la condición específica.

5:Bit 6 de PORTA, LATA, TRISA y están habilitados en ECIO y modos de Comércio oscilador solamente. En

todos los demás

Oscilaciónmodos de Tor, que sean discapacitados y '0 '.

6:Bit 6 de PORTA, TRISA y LATA no están disponibles en todos los dispositivos. Cuando no implementado, se

leen '0 '.

Page 39: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 35

PIC18FXX2

TABLE 3-3: condiciones de inicialización PARA TODOS LOS REGISTROS (CONTINUACIÓN)

Registro

Dispositivos aplicables

Power-on Reset,

reinicio Brown-

out

MRestablece CLR

WDT Restablecer REINICIO

Instrucción Stack

Restablece

DespertarEn

marcha a través de WDT

Interrumpir o IPR2 242 442 252 452 --- 1 1111 --- 1 1111 --- U uuuu

PIR2 242 442 252 452 --- 0 0000 --- 0 0000 --- U uuuu(1)

PIE2 242 442 252 452 --- 0 0000 --- 0 0000 --- U uuuu

IPR1 242 442 252 452 1111 1111 1111 1111 uuuu uuuu

242 442 252 452 -111 1111 -111 1111 Uuuu uuu- PIR1

242 442 252 452 0000 0000 0000 0000 uuuu uuuu(1)

242 442 252 452 -000 0000 -000 0000 Uuuu uuu-(1)

PIE1 242 442 252 452 0000 0000 0000 0000 uuuu uuuu

242 442 252 452 -000 0000 -000 0000 Uuuu uuu-

TRISE 242 442 252 452 0000 -111 0000 -111 uuuu uuu-

TRISD 242 442 252 452 1111 1111 1111 1111 uuuu uuuu

TRISC 242 442 252 452 1111 1111 1111 1111 uuuu uuuu

TRISB 242 442 252 452 1111 1111 1111 1111 uuuu uuuu

TRISA(5,6) 242 442 252 452 -111 1111(5) -111 1111(5) Uuuu uuu-(5)

Los ÁngelesTE

242 442 252 452 ----- Xxx ----- Uuu ----- Uuu

Los ÁngelesTD

242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

LATC 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

LATB 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

LATLa(5,6) 242 442 252 452 -Xxx xxxx(5) Uuuu uuu-(5) Uuuu uuu-(5)

PORTE 242 442 252 452 ----- 000 ----- 000 ----- Uuu

PORTD 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

PORTC 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

PORTB 242 442 252 452 xxxx xxxx uuuu uuuu uuuu uuuu

PORTA(5,6) 242 442 252 452 X0x-0000(5) -U0u 0000(5) Uuuu uuu-(5)

Leyenda:u= Sin cambios, x= Desconocido, -= Bit sin aplicarse, leído como '0 ', q= Valor depende de la condición.

Sombracélulas D indican condiciones no se aplican para el dispositivo designado.

Nota 1: Ene o más bits en los registros INTCONx o Pirx se verá afectada (causar despertar).

2:When el despertador se debe a una interrupción y el bit GIEL o GIEH está establecida, el PC se carga con

el vector de interrupción (0008h or0018h).

3:Wuando el despertador se debe a una interrupción y el bit GIEL o GIEH está establecida, el Tosu, Tosh y TOSL son

actualizard con el valor actual de la PC. El STKPTR se modifica para apuntar a la siguiente

ubicación en la pila de hardware.

4:Consulte la Tabla 3-2 para obtener valor de restablecimiento de la condición específica.

5:Bit 6 de PORTA, LATA, TRISA y están habilitados en ECIO y modos de Comércio oscilador solamente. En

todos los demás

Oscilaciónmodos de Tor, que sean discapacitados y '0 '.

6:Bit 6 de PORTA, TRISA y LATA no están disponibles en todos los dispositivos. Cuando no implementado, se

leen '0 '.

Page 40: 39564c.en.es

DS39564C-page36 2006 Microchip Technology Inc.

PIC18FXX2

FIGURA 3-3: TIEMPO DE ESPERA EN LA SECUENCIA DE ENCENDIDO (MCLR LIGADA A LA VDD)

VDD

MCLR

INTERNAL POR

TPWRT

PWRT TIEMPO

DE ESPERA

OST TIME-OUT

TOST

INTREINICIAR ERNAL

FIGURA 3-4: TIEMPO DE ESPERA EN LA SECUENCIA DE ENCENDIDO (NO CONDICIONADA A LA VDD MCLR): CASO 1

VDD

MCLR

INTERIOR POR

PWRT TIME-OUT

TIME-OUT OST

TPWRT

TOST

INTREINICIAR ERNAL

FIGURA 3-5: TIEMPO DE ESPERA EN LA SECUENCIA DE ENCENDIDO (MCLR no está atado a VDD): CASO 2

VDD

MCLR

INTERNAL POR

PWRT TIME-OUT

TIME-OUT OST

TPWRT

TOST

INTREINICIAR ERNAL

Page 41: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 37

PIC18FXX2

FIGURA 3-6: tiempo de subida SLOW (MCLR LIGADA A LA VDD)

VDD

MCLR

5V

0V 1 V

INTPOR ERNAL

TPWRT

PWRT TIME-OUT

OST TIME-OUT

TOST

Reset interno

FIGURA 3-7: TIEMPO DE ESPERA EN ORDEN POR W / PLL ENABLED (MCLR LIGADA A LA VDD)

VDD

MCLR

IINTPOR ERNAL

PWRT TIME-OUT

TIME-OUT OST

TPWRT

TOST

TPLL

PLL TIME-OUT

INTREINICIAR ERNAL

Nota: AST = 1024 ciclos de reloj.

TPLL ≈ 2 ms máx. Tres primeras etapas del temporizador PWRT.

Page 42: 39564c.en.es

DS39564C-page38 2006 Microchip Technology Inc.

PIC18FXX2

NOTAS:

Page 43: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 39

PIC18FXX2

40.0 Organización de la memoria

There son tres bloques de memoria mejorada MCU

dispositivos. Estos bloques de memoria son:

• Programa Memoria

• Data RAM

• Data EEPROM

Memoria de datos y programa utilizar buses

separados, lo que permite el acceso simultáneo de

estos bloques.

Información adicional detallada para la memoria de

programa FLASH y EEPROM Los datos se

proporcionan en la Sección 5.0 y la Sección 6.0,

respectivamente.

4.1 Programa de Organización de la memoria

Un contador de programa de 21 bits es capaz de hacer frente a la

2Mbytes espacio de memoria de programa. Acceso a

una ubicación entre la memoria y la ejecuta

físicamente

2Mbytes dirección hará una lectura de todo s '0 '(a NOP

instrucción).

The PIC18F252 PIC18F452 y cada uno tiene 32

Kbytes de memoria FLASH, mientras que el

PIC18F242 y PIC18F442 tiene 16 Kbytes de FLASH.

Esto significa que PIC18FX52 dispositivos pueden

almacenar hasta 16K de instrucciones de una sola

palabra, y PIC18FX42 dispositivos pueden almacenar

hasta

8K de instrucciones de una sola palabra.

ThREINICIAR dirección de correo vector está en

0000h y las direcciones de vectores de interrupción

están en 0008h y 0018h.

Figure 4-1 muestra el mapa de memoria de programa

para PIC18F242/442 dispositivos y la Figura 4-2

muestra el mapa de memoria de programa para

PIC18F252/452 dispositivos.

Page 44: 39564c.en.es

DS39564C-page40 2006 Microchip Technology Inc.

PIC18FXX2

RESET Vector Vector de interrupción de alta prioridad Helow Prioridad de interrupción vectorial

En-Chip Programa de

memoria

Read '0 '

RESET Vector Vector de interrupción de alta prioridad Helow Prioridad de interrupción vectorial

En-Chip

Programa de memoria

Read '0 '

US

er

espacio

de

me

mo

ria

US

er

espacio

de

me

mo

ria

FIGURA 4-1: MAPA DEL PROGRAMA DE

MEMORIAS Y PILA DE

PIC18F442/242

FIGURA 4-2: MAPA DEL PROGRAMA DE

MEMORIAS Y PILA DE

PIC18F452/252

PC <20:00>

CALL, rcall, RETURN21 Retfie, RETLW

Stack Level 1 • • •

StNivel de acuse de recibo 31

PC <20:00>

CALL, rcall, RETURN21 Retfie, RETLW

Stack Level 1 • • •

StNivel de acuse de recibo 31

0000h

0008h

0018h

0000h 0008h

0018h

3FFFh

4000h

7FFFh

8000h

1FFFFFh 200000h

1FFFFFh

200000h

Page 45: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 41

PIC18FXX2

4.2 Ida y Vuelta Stack Dirección

ThRegresar pila dirección permite cualquier

combinación de hasta 31 llamadas de programa y las

interrupciones que se produzcan. El PC (contador de

programa) se inserta en la pila cuando un LLAME

orRcall instruccionesción se ejecuta, o una

interrupción reconocida. El valor de PC se retira la pila

sobre una RETURN, RETLW or un RETFIE

instrucción. PCLATU y PCLATH no se ven afectados

por cualquiera de los REGRESAR o LLAME

instalboroto.

Thpila e opera como una palabra de 31-RAM 21-bit y un

5-Bit puntero de pila, con el puntero de pila inicializa

00000b, después de todo se restablece. No hay RAM

asociada con 00000b puntero de pila. Esto es sólo un

valor de RESET. Durante una LLAME type

instrucciones, causando un empuje en la pila, el

puntero de pila se incrementa y la primera posición de

la RAM a la que apunta el puntero de pila se escribe

con el contenido de la PC. Durante una REEncienda

type instrucciones, causando un estallido de la pila, el

contenido de la posición de la RAM a la que apunta el

STKPTR son transferidos al PC y luego el puntero de

pila se decrementa.

Thespacio e pila no es parte de ninguno de espacio

de programa o datos. El puntero de pila es lectura y

escritura, y la dirección que aparece en la parte

superior de la pila puede ser leído y escrito poder a

través de los registros SFR. Los datos también

pueden ser empujados a, o extrae de la pila con el

reposapiés tope de la pila. Los bits de estado indica si

el puntero de pila está en, o más allá de los 31 niveles

previstos.

4.2.1 TOP-OF-PILA DE ACCESO

Thsuperior e de la pila es de lectura y escritura. Tres

lugares de registro, Tosu, Tosh y TOSL mantener el

contenido de la pila ubicación apuntada por el registro

STKPTR. Esto permite a los usuarios implementar

una pila de software si es necesario. Después de un

LLAMAR, rcall o entrerrumpir, el software puede

leer el valor impulsado por la lectura de la Tosu, Tosh

y registros TOSL. Estos valores se pueden colocar en

un usuario define la pila de software. A la hora del

regreso, el software puede reemplazar el Tosu, Tosh

y TOSL y hacer una devolución.

Thusuario de correo debe desactivar la alarma

mundial bits de habilitación durante este tiempo para

evitar el uso inadvertido de pila.

4.2.2 RETURN puntero de pila

(STKPTR)

The STKPTR registro contiene el valor del puntero de

pila, el bit de estado STKFUL (stack completo), y los

STKUNF (desbordamiento de pila) bits de estado.

Registrarse 4-1 muestra la STKPTR registrarse. El

valor del puntero de pila puede ser

0 a 31. Los incrementos puntero de pila cuando va-

lores se inserta en la pila y disminuye cuando los

valores se extraen de la pila. En RESET, el valor del

puntero de pila será 0. El usuario puede leer y escribir

el valor del puntero de pila. Esta característica puede

ser utilizado por un sistema operativo en tiempo real

para el mantenimiento de retorno de la pila.

After el PC se inserta en la pila 31 veces (sin hacer

estallar todos los valores de la pila), el bit STKFUL se

establece. El bit STKFUL sólo se pueden borrar en

software o por un POR.

The acción que tiene lugar cuando la pila se llena

depende del estado de la STVREN (pila encima del

flujo de habilitación restauración) bit de configuración.

Consulte la Sección 20.0 para una descripción de los

dispositivos de configu-ración bits. Si STVREN se

establece (por defecto), el empuje 31a empujará el

valor (PC + 2) en la pila, establezca el bit STKFUL y

reiniciar el dispositivo. El bit STKFUL permanecerá

ajustado y el puntero de pila se pone a '0 '.

Si STVREN se borra el bit STKFUL se establecerá en el

31st Pulse y el puntero de pila se incrementará a 31.

Cualquier otro empuja no sobrescribirá el empuje 31,

y STKPTR se mantendrá en 31.

When de la pila ha aparecido suficientes veces como

para descargar la pila, el pop siguiente devolverá un

valor de cero a la PC y establece el bit STKUNF,

mientras que el puntero de pila se mantiene en 0. El

bit STKUNF permanece fijo hasta que se borra en el

software o se produce un POR.

Nota: Devolver un valor de cero a la PC en un

desbordamiento tiene el efecto de

vectorización del programa para el vector

de RESET, donde las condiciones de la

chimenea puede ser verificada y las

acciones apropiadas puedan ser

tomadas.

Page 46: 39564c.en.es

DS39564C-page42 2006 Microchip Technology Inc.

PIC18FXX2

REGISTRO 4-1: STKPTR REGISTRO

R/C-0 R/C-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

STKOVF STKUNF - SP4 SP3 SP2 SP1 SP0

bit 7 bit 0

bit 7(1) STKOVF: Stack bit Flag completa

1Stack = se ha llenado o desbordado

0Stack = no se ha llenado o desbordado

bit 6(1) STKUNF: StacRebase por k Flag bit

1= Desbordamiento de pila producido

0= Desbordamiento de pila no se produjo

bit 5 No implementado: Leer como '0 '

bi4-0 t SP4: SP0: Stack bits Pointer Ubicación

Nota 1: Bit 7 y bit 6 sólo se pueden borrar en el software del usuario o por un POR.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

FIGURA 4-3: STACK RETURN DIRECCIÓN Y REGISTROS CORRESPONDIENTES

ASU 0x00

ASH 0x1A

ASL 0x34

Return Stack Dirección

11111 11110 11101

00011

STKPTR <4:00>

00010

Ap de Stack 0x001A34 0x000D58

00010 00001 00000

4.2.3 PUSH E INSTRUCCIONES DE POP

Since-Top de la-Stack (TOS) es de lectura y escritura,

la capacidad de impulsar valores en la pila y tire de

valores de la pila sin alterar el programa normal de

ejecu-ción es una opción deseable. Para empujar el

valor PC actual en la pila, una PUSH instrucción

puede ser ejecutado. Esto incrementa el puntero de

pila y cargar el valor PC actual en la pila. Tosu, TOSH

y TOSL puede entonces ser modificada para colocar

una dirección de retorno en la pila.

Thcapacidad e para tirar de los TOS valoran de la pila

y reemplazarlo con el valor que fue empujado

previamente en la pila, sin perturbar la ejecución

normal, se logra mediante el uso de la POP

instruccionesción. La POP instruc-ción descarta los

TOS actuales decrementando el puntero de pila. El

valor anterior inserta en la pila se convierte en el valor

de TOS.

4.2.4 PILA LLENA / UNDERFLOW RESTABLECIMIENTOS

These restablece están activados programando el bit

de configuración STVREN. Cuando el bit STVREN

está desactivado, condición completo o por defecto se

establece el bit apropiado STKFUL o STKUNF, pero

no causar un reinicio del dispositivo. Cuando el bit

STVREN está habilitada, un desbordamiento total o

establecerá el bit apropiado STKFUL o STKUNF y

luego hacer un reinicio del dispositivo. Los bits

STKFUL o STKUNF sólo se borra el software del

usuario o de una restauración POR.

Page 47: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 43

PIC18FXX2

EXecute INST (PC-2) Fetch INST (PC) EXecute INST (PC)

Fetch INST (PC +2) EXecute INST (PC +2)

Fetch INST (PC +4)

4.3 Pila Registro Rápido

A "rápido retorno de interrupción" opción está

disponible para las interrupciones. Un registro de pila

rápida se proporcionan para los registros de estado, y

WREG BSR y son sólo una en profundidad. La pila no

se puede leer o escribir en él y se carga con el valor

actual del registro correspondiente de los vectores de

procesador para una interrupción. Los valores en los

registros se cargan de nuevo en los regis-tros de

trabajo, si la VUELTA RÁPIDA instrucción se utiliza

para volver de la interrupción.

Una fuente de prioridad de interrupción de alta o baja

impulsará valores en los registros de la pila. Si los dos

interrupciones de prioridad alta y baja están

habilitados, los registros de pila no puede utilizarse

con fiabilidad para las interrupciones de baja

prioridad. Si una alarma de prioridad alta se produce

al servicio de una interrupción de baja prioridad, los

valores de registro de pila almacenados por la baja

prioridad que interrumpen se sobrescribirá.

Yof interrupciones de alta prioridad no se desactivan

durante la baja prioridad interrumpe, los usuarios

deben guardar los registros de claves en software

durante una alarma de prioridad baja.

YoF No se utilizan las interrupciones, la pila de

registro rápido se puede utilizar para restaurar el

estado, WREG y BSR registra al final de una llamada

a subrutina. Para utilizar la pila de registro rápido para

una llamada de subrutina, un LLAMADA RAPIDA

instrucción debe ser ejecutado.

EJEMPLOSe 4-1 muestra un ejemplo de código

fuente que utiliza la pila de registro rápido.

EXAMPLIO 4-1: PILA RÁPIDA REGISTRO

EJEMPLO DE CÓDIGO

CALL SUB1, FAST, STATUS, WREG, BSR

; GUARDARD RÁPIDA EN

REGISTRO

;

STACK

SUB1•

RETURN rápido; VALORES RESTORE SAVED

, YoN RÁPIDA REGISTRO DE

LA PILA

4.4 PCL, PCLATH y PCLATU

The contador de programa (PC) especifica la

dirección de la instrucción para ir a buscar para su

ejecución. El PC es 21-bits de ancho. El byte bajo se

llama el registro PCL. Este reg-tro es lectura y

escritura. El byte alto se llama el registro PCH. Este

registro contiene el PC <15:08> Brocas y no es

directamente legible o escritura. Las actualizaciones

del registro PCH se puede realizar a través del

registro PCLATH. El byte superior se llama PCU. Este

registro contiene el PC <20:16> Brocas y no es

directamente legible o escritura. Las actualizaciones

de la PCU registro puede realizarse por medio del

registro PCLATU.

ThPC e aborda bytes en la memoria de programa.

Para evitar que el PC se convierta desalineada con

las instrucciones de palabra, el LSB de PCL se fija a

un valor de '0 '. Los incrementos de PC por 2 para

hacer frente a instrucciones secuenciales en la

memoria de programa.

TheCALL, rcall, GOTO und instrucciones de

bifurcación del programa escribir en el contador de

programa directamente. Para estas instrucciones, el

contenido de PCLATH y PCLATU no se transfieren al

contador de programa.

Thcontenidos electrónicos de PCLATH y PCLATU

será transferido al contador de programa mediante

una operación que escribe PCL. De manera similar,

los dos bytes superiores del contador de programa se

transfiere a PCLATH y PCLATU por una operación

que lee PCL. Esto es útil para las compensaciones

calculadas en el PC (véase la Sección 4.8.1).

4.5 Reloj Esquema / manual de instrucciones

CYCLe

Thentrada e reloj (de OSC1) está internamente

dividido por cuatro para generar cuatro relojes que no

se solapan en cuadratura, es decir, Q1, Q2, Q3 y Q4.

Internamente, el contador de programa (PC) se

incrementa cada Q1, la instrucción se obtienen de la

memoria del programa y con el seguro en el registro

de instrucción en el 4T. La ins-trucción es

decodificada y ejecutada durante la siguiente a través

de Q1 Q4. Los relojes y el flujo de ejecución de la

instrucción se muestra en la Figura 4-4.

FIGURA 4-4: RELOJ / CICLO DE INSTRUCCIONES

Q1Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

OSC1

Q1

Q2

Q3

Q4

Ordenador personal

OSC2/CLKO

(RC mode)

PC PC 2 PC +4

Page 48: 39564c.en.es

DS39564C-page44 2006 Microchip Technology Inc.

PIC18FXX2

Fase de reloj interno

Page 49: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 45

PIC18FXX2

TCY0 TCY1 TCY2 TCY3 TCY4 TCY5

FETCh 1 Ejecutar 1

FETCh 2 Ejecutar 2

Fetch 3 Ejecutar 3 Fuerzad NOP) FETCh 4 Gripesh

(NOP)

Fetch SUB_1 Ejecutar SUB_1

000000h

000002h

000004h

000006h 0Fh 55h 000008h EFH 03h 00000Ah F0h 00h 00000Ch C1H 23h 00000Eh F4H 56h 000010h

000012h

000014h

4.6 Instrucción de flujo / Pipelining

Lan "ciclo de instrucción" se compone de cuatro ciclos

Q (Q1, Q2, Q3 y Q4). La instrucción de buscar y

ejecutar de tal manera que son canalizados a buscar

toma un ciclo de instrucción, mientras que decodificar

y ejecutar da un ciclo de instrucción. Sin embargo,

debido a la canalización, cada instrucción

efectivamente ejecuta en un ciclo. Si una instrucción

hace que el contador de programa para cambiar (por

ejemplo, GOTO) Entonces dos ciclos se requieren para

completar la instrucción (Ejemplo 4-2).

La F E T C h ciclo comienza con el contador de programa (PC)

incrementing en la Q1.

Yon el ciclo de ejecución, la instrucción descabellada

se enclava en la "Instrucción Register" (IR) en el 1er

trimestre de ciclo. Esta instrucción se decodifica y

ejecuta durante la Q2, Q3, Q4 y ciclos. Memoria de

datos se lee durante Q2 (operando lectura) y escrito

durante Q4 (escritura de destino).

EXAMPLIO 4-2: FLUJO DE INSTRUCCIONES DE DUCTOS

1. MOVLW 55h

2. MOVWF PORTB

3. BRA SUB_1

4. BSF PORTA, Bit3 (

5. Instrucción @ dirección SUB_1

All Instrucción son solo ciclo, con excepción de las bifurcaciones del programa. Estos tienen dos ciclos desde la

extracción de instrucción es "lavado" de la tubería mientras que la nueva instrucción se han recuperado y luego

ejecutado.

4.7 Instrucciones de la memoria de programa

Thmemoria e programa se aborda en bytes.

Instrucciones se almacenan como dos bytes o cuatro

en la memoria del programa. El byte menos

significativo de la palabra de instrucción siempre se

almacena en una ubicación de memoria de programa

con una dirección par (LSB = '0 '). La figura 4-5

muestra un ejemplo de cómo las palabras de

instrucción se almacenan en la memoria de programa.

Para mantener la alineación con los límites de

instrucciones, los incrementos de PC en pasos de 2 y

el LSB siempre aparecerá '0 '(ver Sección 4.4).

TheLLAME undGOTO instrucciones tener un absoluto

programa de dirección de memoria integrado en la

instrucción. Puesto que las instrucciones se

almacenan siempre en la palabra de los límites, los

datos contenidos en la instrucción es una dirección de

palabra. La dirección de palabra se escribe en PC

<20:01>, que accede a la dirección de byte en la

memoria de programa deseado. Instrucción n º 2 de la

Figura 4-5 muestra cómo la instrucción "GOTO

000006h'Está codificada en la memoria de programa.

Las instrucciones del programa de rama que codifican

una dirección de desplazamiento relativo de operar de

la misma manera. El valor de offset almacenado en

una instrucción de repre-senta el número de

instrucciones de la sola palabra que el PC se verá

compensado por. Sección 20,0 da más detalles sobre

el conjunto de instrucciones.

FIGURA 4-5: INSTRUCCIONES EN MEMORIA DEL PROGRAMA

Programa de memoria

BUbicaciones YTE

WorDirección d

LSB = 1 LSB = 0 ↓

Enconstrucción 1:

MOVLW

055h Entrucción 2:

Entrucción 3:

GOTO

MOVFF

000006h

123h, 456h

Page 50: 39564c.en.es

DS39564C-page46 2006 Microchip Technology Inc.

PIC18FXX2

4.7.1 INSTRUCCIONES DE DOS PALABRAS

Los dispositivos tienen cuatro PIC18FXX2 dos

palabras instrucciones: MOVFF, CALL, GOTO

undLFSR. La segunda palabra de estas instrucciones

tiene las 4 MSBs puestos a 1 y es un tipo especial de

NOP instrucción. Los 12 bits inferiores de la segunda

palabra contiene datos para ser usados por la

instrucción. Si la primera palabra de la instrucción es

ejecutado el comando, los datos de la segunda

palabra se accede. Si el

segundad palabra de la instrucción se ejecuta por sí

mismo (la primera palabra se omite), se ejecutará

como un NOP. Esta acción es necesaria cuando la

instrucción de dos palabras es precedida por una

instrucción condicional que cambia el PC. Un ejemplo

pro-grama que muestra este concepto se muestra en

el Ejemplo 4-3. Consulte la Sección 20,0 para más

detalles del conjunto de instrucciones.

EXAMPLIO 4-3: dos palabras INSTRUCCIONES

CASO 1:

Object Código Suente Código

0110 0110 0000 0000 TSTFSZ REG1, es la ubicación RAM 0?

1100 0001 0010 0011 MOVFF REG1, REG2; No, ejecutar 2-canal de instrucción

1111 0100 0101 0110 , Segundo operando contiene la dirección

de REG2 0010 0100 0000 0000 ADDWF Reg3, continúe código

CASO 2:

Object Código Suente Código

0110 0110 0000 0000 TSTFSZ REG1, es la ubicación RAM 0?

1100 0001 0010 0011 MOVFF REG1, REG2; Sí

1111 0100 0101 0110 , Segundo operando se convierte NOP

0010 0100 0000 0000 ADDWF Reg3, continúe código

4.8 tablas de búsqueda

Lookumesas p se implementan dos maneras. Estos son:

• computarizada GOTO

• Lee la tabla

4.8.1 COMPUTARIZADA GOTO

Computarizada GOTO yos consigue añadiendo un

offset al contador de programa (ADDWF PCL).

Una tabla de búsqueda puede estar formado con una

ADDWF PCL instrucción y un grupo de RETLW 0xnn

instrucciones. WREG se carga con un desplazamiento en la tabla antes de ejecutar una llamada a esa mesa. La primera instrucción de la rutina llamada es la

ADDWF PCL instrucción. La siguiente instrucción

ejecutada será uno de los RETLW 0xnn

instrucciones, que devuelve el valor 0xnn to La

función de llamada.

The valor de desplazamiento (valor en WREG)

especifica el número de bytes que el contador de

programa se debe avanzar.

Yon este método, sólo un byte de datos se pueden

almacenar en cada ubicación de la instrucción y la

habitación en la pila la dirección de retorno es

necesario.

Nota: TheADDWF PCL instrucción no actualiza

PCLATH y PCLATU. Una operación de

lectura en PCL must llevar a cabo para

actualizar y PCLATH PCLATU.

Page 51: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 47

PIC18FXX2

4.8.2 TABLA DE LEE / ESCRIBE LA MESA

Un mejor método de almacenamiento de datos en la

memoria de programa permite que 2 bytes de datos

que se almacena en cada ubicación de instrucciones.

Lookup tabla de datos se pueden almacenar dos

bytes por palabra programa mediante el uso de la

tabla se lee y escribe. El puntero de la tabla (TBLPTR)

especifica la dirección del byte y el pestillo de mesa

(TABLAT) contiene los datos que se leen o escriben

en la memoria del programa. Los datos se transfieren

hacia / desde la memoria de programa, un byte a la

vez.

Una descripción de la tabla de lectura / escritura

operación Tabla se muestra en la Sección 3.0.

Page 52: 39564c.en.es

DS39564C-page48 2006 Microchip Technology Inc.

PIC18FXX2

4.9 Organización de la memoria de datos

The memoria de datos se implementa como memoria

RAM estática. Cada registro en la memoria de datos

tiene una dirección de 12-bits, lo que permite hasta

4096 bytes de memoria de datos. Figura 4-6 y la

Figura 4-7 muestran la organización de la memoria de

datos para los dispositivos PIC18FXX2.

The mapa de memoria de datos se divide en un

máximo de 16 bancos que contienen 256 bytes cada

uno. Los menores de 4 bits del Registro de selección

de banco (BSR <03:00>) seleccionar qué banco va a

tener acceso. Los 4 bits superiores de la BSR no se

aplican.

The memoria de datos contiene registros de funciones

especiales (SFR) y los registros de propósito general

(GPR). Los SFRs se utilizan para el control y estado

del controlador y periféricas, mientras que GPRS se

utiliza para el almacenamiento de datos y las

operaciones en el bloc del usuario aplicación. Los

SFR comenzará en la última ubicación de Banco 15

(0xFFF) y se extienden hacia abajo. Cualquier

espacio que queda más allá de los SFRs en el Banco

puede implementarse como GPRS. GPRs empezar

en la primera ubicación de Banco 0 y crecer hacia

arriba. Cualquier lectura de una ubicación sin

aplicarse leerá como '0 's.

Thmemoria e datos completo se puede acceder

directamente o indirectamente. Direccionamiento

directo puede requerir el uso del registro de BSR.

Direccionamiento indirecto requiere el uso de un

archivo Seleccione Register (FSRn) y una

correspondiente indirecto del archivo Operando

(INDFn). Cada FSR tiene un valor de dirección de 12-

bits que se puede utilizar para acceder a cualquier

ubicación en el mapa de memoria de datos sin

bancario.

Thconjunto e instrucción y arquitectura permitir las

operaciones en todos los bancos. Esto puede

conseguirse por el direccionamiento indirecto o por el

uso de la MOVFF instrucción. La MOVFF instrucción

es una instrucción two-word/two-cycle que mueve un

valor de un registro a otro.

To garantizar que los registros de uso común (SFR y

seleccione GPRS) se puede acceder en un solo ciclo,

independientemente de los valores actuales de BSR,

un banco del acceso se implementa. Un segmento de

Banco 0 y un segmento de Banco 15 comprenden la

RAM de acceso. Sección 4,10 proporciona una

descripción detallada de la RAM de acceso.

4.9.1 OBJETIVO GENERAL archivo de

registro

The archivo de registro se puede acceder ya sea

directamente o indirectamente. Direccionamiento

indirecto funciona con un archivo Seleccione Registro

y archivo correspondiente operando indirecto. La

operación de direccionamiento indirecto se muestra

en la Sección 4.12.

Mejorard dispositivos MCU tenga memoria en bancos

en el área de GPR. GPRS no se inicializan por un

reinicio de encendido y no se han modificado en todas

las restauraciones otro.

Los datos RAM está disponible para su uso como

GPR registra por todas las instrucciones. La mitad

superior del Banco 15 (0xF80 a 0xFFF) contiene

SFRs. Todos los demás bancos de memoria de datos

contiene registros GPR, empezando por el banco 0.

4.9.2 registros de funciones especiales

ThRegistros electrónicos de funciones especiales

(SFR) son registros utilizados por la CPU y los

módulos periféricos de control-ling la operación

deseada del dispositivo. Estos regis-tros se

implementan como RAM estática. Una lista de estos

registros se presentan en la Tabla 4-1 y la Tabla 4-2.

ThSFRs electrónicos se pueden clasificar en dos

grupos, aquellos asociados con el "núcleo" y en

aquellos relacionados con las funciones periféricas.

Los registros relacionados con el "núcleo" se

describen en esta sección, mientras que los

relacionados con la operación de las características

periféricos se describen en la sección de esa

característica periférica.

ThSFRs e se distribuyen típicamente entre los

periféricos, cuyas funciones se controlan.

Thlugares e SFR no utilizados serán letra muerta y

lee como '0 's. Consulte la Tabla 4-1 para obtener las

direcciones de los SFR.

Page 53: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 49

PIC18FXX2

FIGURA 4-6: MAPA DE DATOS DE LA MEMORIA DE PIC18F242/442

BSR <3:00>

00h

Denun mapa de memoria

Acceso RAM

000h

=0000

=0001

=0010

Banco 0

Banco 1 Banco 2

FFh

00h

FFh 00h

FFh

GPR

GPR

GPR

07Fh 080h 0FFh 100h

1FFh 200h

2FFh 300h

Accesos Bank

Acceso RAM bajo

00h

7Fh =0011

=1110

Banco 3 a

Banco 14

No

usado Read '00h '

Acceso RAM alto (SFR)

80h

FFh

=1111

When a = 1,

Banco 15

00h

FFh

U Nused

SFR

EFFh F00h F7Fh F80h FFFH

Wéln a = 0,

la BSR se ignora y el

Accesos Bank se utiliza.

Thelectrónicos primeros 128

bytes de RAM son de uso

general (Banco de 0). El

segundo 128 bytes son

registros de funciones

especiales (de Banco 15).

la BSR se utiliza para

especificar la posición de la

RAM que la instrucción usa.

Page 54: 39564c.en.es

DS39564C-page50 2006 Microchip Technology Inc.

PIC18FXX2

FIGURA 4-7: MAPA DE DATOS DE LA MEMORIA DE PIC18F252/452

BSR <3:00>

Mapa de memoria de datos

=0000

=0001

=0010

=0011

=0100

=0101

Banco 0

Banco 1 Banco 2

Banco 3

Bank 4

Bank 5

00h

FFh

00h

FFh

00h

FFh

00h

FFh

00h

FFh

Lal acceso

RAM GPR

GPR

GPR

GPR

GPR

GPR

000h

07Fh 080h 0FFh 100h

1FFh 200h

2FFh 300h

3FFh 400h

4FFh 500h

5FFh 600h

Access Bank

Acceso RAM bajo

Acceso RAM alto (SFR)

00h

7Fh 80h

FFh

=0110

=1110

=1111

When a = 1,

Banco

a 6 Banco

14

Banco

15

00h

FFh

No

usado Leer '00h '

U Nused SFR

EFFh F00h F7Fh F80h FFFh

Wéln a = 0,

la BSR se ignora y el

Accesos Bank se utiliza.

Thelectrónicos primeros 128

bytes de RAM son de uso

general (Banco de 0). El

segundo 128 bytes son

registros de funciones

especiales (de Banco 15).

la BSR se utiliza para

especificar la posición de la

RAM que la instrucción usa.

Page 55: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 51

PIC18FXX2

ASU

ASH

ASL

STKPTR

PCLATU

PCLATH

PCL

TBLPTRU

TBLPTRH

TBLPTRL

TABlat

PRODH

PRodl

YoNTCON

INTCON2

INTCON3

INDF0(3)

POSTINC0(3)

POSTDEC0(3)

PREINC0(3)

PLUSW0(3)

FSR0H

FSR0L

WREG

INDF1(3)

POSTINC1(3)

POSTDEC1(3)

PREINC1(3)

PLUSW1(3)

FSR1H

FSR1L

BSR

INDF2(3)

POSTINC2(3)

POSTDEC2(3)

PREINC2(3)

PLUSW2(3)

FSR2H

FSR2L

ESTADO

TMR0H

TMR0L

T0CON

-

OSCcon

LVDCON

WDTCON

RCON

TMR1H

TMR1L

T1CON

TMR2

PR2

T2CON

SSPBUF

SSPADD

SSPSTAT

SSPCON1

SSPCON2

ADRESH

ADRESL

ADCON0

ADCON1

-

CCPR1H

CCPR1L

CCP1CON

CCPR2H

CCPR2L

CCP2CON

-

-

-

-

-

-

TMR3H

TMR3L

T3CON

-

SPBRG

RCREG

TXREG

TXSTA

RCSTA

-

EEADR

EEDATA

EECON2

EECON1

-

-

-

YoPR2 PIR2

PIE2

IPR1

PIR1

PIE1

-

-

-

-

-

-

TRISE(2)

TRISD(2)

TRISC

TRISB

TRISA

-

-

-

-

TARDE(2)

Los

ÁngelesTD(2) LATC

LATB

LATA

-

-

-

-

PORTE(2)

PORTD(2)

PORTC

PORTB

PORTA

TABLE 4-1: FUNCIÓN ESPECIAL MAPA REGISTRO

Añadirulse Nombre Dirección Nombre Dirección Nombre Dirección Nombre FFFH FDFh FBFh F9Fh

FFEH FDEh FBEh F9Eh FFDh FDDh FBDh F9Dh FFCh FDCH FBCH F9Ch FFBH FDBh FBBh F9Bh FFAh FDAh FBAh F9Ah FF9h FD9h FB9h F99h FF8h FD8h FB8h F98h FF7h FD7h FB7h F97h FF6h FD6h FB6h F96h FF5h FD5h FB5h F95h FF4h FD4h FB4h F94h FF3h FD3h FB3h F93h FF2h FD2h FB2h F92h FF1h FD1h FB1h F91h FF0h FD0h FB0h F90h FEFH FCFh FAFH F8Fh FEEh FCEH FAEh F8Eh FEDH FCDH FADH F8Dh FECh FCCH FACh F8Ch FEBh LFVPO FABH F8Bh Feah FCAh FAAh F8Ah FE9h FC9h FA9h F89h FE8h FC8h FA8h F88h FE7h FC7h FA7h F87h FE6h FC6h FA6H F86h FE5h FC5h FA5H F85h FE4h FC4h FA4H F84h FE3h FC3h FA3h F83h FE2h FC2h FA2h F82h FE1h FC1h FA1h F81h FE0h FC0h FA0h F80h

NoTE 1: Unimplemented registros se leen como '0 '.

2:This registro no está disponible en PIC18F2X2 dispositivos.

3:This no es un registro físico.

Page 56: 39564c.en.es

DS39564C-page52 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 4-2: RESUMEN DE REGISTRO ARCHIVO

Nombre de archivo

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0 Value en

POR, BOR Detalles

en la

página: TOSU - - - Top-of-Stack Byte superior (TOS <20:16>) --- 0

0000 37

TOSH Top-of-Stack Byte High (TOS <15:08>) 0000 0000 37 TOSL Top-of-Stack Low Byte (TOS <07:00>) 0000 0000 37 STKPTR STKFUL STKUNF - Return Stack Pointer 00-0 0000 38 PCLATU - - - Holding Registrar para PC <20:16> --- 0

0000 39

PCLATH Holding Registrar para PC <15:08> 0000 0000 39 PCL PC Mínima Byte (PC <07:00>) 0000 0000 39 TBLPTRU - - bit21(2) PrograMemoria m Tabla Byte Pointer Superior (TBLPTR

<20:16>) - 00 0000 58

TBLPTRH PrograMemoria m Tabla Byte Pointer High (TBLPTR <15:08>) 0000 0000 58 TBLPTRL PrograMemoria m Tabla Byte Pointer Baja (TBLPTR <07:00>) 0000 0000 58 TABLAT PrograMemoria m Tabla Latch 0000 0000 58 PRODH Product Byte Register alta xxxx xxxx 71 Prödl Product Byte Register Low xxxx xxxx 71 ENTCON GIE /

GIEH PEIE / GIEL

TMR0IE ENT0IE RBIE TMR0IF ENT0IF RBIF 0000 000X 75 ENTCON2 RBPU INTEDG0 ENTEDG1 ENTEDG2 - TMR0IP - RBIP -1-1 1111 76 ENTCON3 ENT2IP ENT1IP - INT2IE INT1IE - INT2IF INT1IF 11-0 0-00 77 INDF0 Utilizars de contenido de FSR0 para hacer frente a la memoria de datos - valor de FSR0 no ha

cambiado (no es un registro físico) n

/un 50

POSTINC0 Utilizars de contenido de FSR0 para hacer frente a la memoria de datos - valor de FSR0 post-incrementado (no es un registro físico)

n /un

50 POSTDEC0 Utilizars de contenido de FSR0 para hacer frente a la memoria de datos - valor de FSR0 post-

decrementa (no es un registro físico) n

/un 50

PREINC0 Utilizars de contenido de FSR0 para hacer frente a la memoria de datos - valor de FSR0 pre-incrementado (no es un registro físico)

n /un

50 PLUSW0 Uses contenido de FSR0 para hacer frente a la memoria de datos - valor de FSR0 (no es

un registro físico). Desplazamiento por valor de WREG. n

/un 50

FSR0H - - - - INDIREct Memoria de datos Dirección Pointer 0 Byte Alto

---- 0000 50 FSR0L Indirect Memoria de datos Dirección Pointer 0 Byte Low xxxx xxxx 50 WREG Working Registrarse xxxx xxxx n

/un INDF1 Uses contenido de FSR1 para hacer frente a la memoria de datos - valor de FSR1 no ha cambiado

(no es un registro físico) n / a

50 POSTINC1 Utilizars de contenido de FSR1 para hacer frente a la memoria de datos - valor de FSR1 post-

incrementado (no es un registro físico) n

/un 50

POSTDEC1 Utilizars de contenido de FSR1 para hacer frente a la memoria de datos - valor de FSR1 post-decrementa (no es un registro físico)

n /un

50 PREINC1 Utilizars de contenido de FSR1 para hacer frente a la memoria de datos - valor de FSR1 pre-

incrementado (no es un registro físico) n

/un 50

PLUSW1 Uses contenido de FSR1 para hacer frente a la memoria de datos - valor de FSR1 (no es

un registro físico). Desplazamiento por valor de WREG. n

/un 50

FSR1H - - - - INDIREct memoria de datos de direcciones de puntero 1 Byte Alto

---- 0000 50 FSR1L Indirect Memoria de datos Dirección Pointer 1 Byte Low xxxx xxxx 50 BSR - - - - Bank Seleccione Registro ---- 0000 49 INDF2 Uses contenido de FSR2 para hacer frente a la memoria de datos - valor de FSR2 no ha cambiado

(no es un registro físico) n / a

50 POSTINC2 Utilizars de contenido de FSR2 para hacer frente a la memoria de datos - valor de FSR2 post-

incrementado (no es un registro físico) n

/un 50

POSTDEC2 Utilizars de contenido de FSR2 para hacer frente a la memoria de datos - valor de FSR2 post-decrementa (no es un registro físico)

n /un

50 PREINC2 Utilizars de contenido de FSR2 para hacer frente a la memoria de datos - valor de FSR2 pre-

incrementado (no es un registro físico) n

/un 50

PLUSW2 Uses contenido de FSR2 para hacer frente a la memoria de datos - valor de FSR2 (no es

un registro físico). Desplazamiento por valor de WREG. n

/un 50

FSR2H - - - - INDIREct Memoria de datos Dirección Pointer 2 Byte Alto

---- 0000 50 FSR2L Indirect Memoria de datos Dirección Pointer 2 Byte Low xxxx xxxx 50 STATUS - - - N OV Z DC C --- X

xxxx 52

TMR0H Timer0 Registro High Byte 0000 0000 105 TMR0L Timer0 Registro Low Byte xxxx xxxx 105 T0CON TMR0ON T08BIT T0CS T0SE PSA T0PS2 T0PS1 T0PS0 1111 1111 103 Leyenda:x = Desconocido, u = Sin cambios, - = no implementado, q = Valor depende del estado

Noe 1: RA6 y los bits asociados se configuran como los pines del puerto de Comércio y el modo de oscilador sólo ECIO y '0 'en todos los modos de otro oscilador.

2:Bit 21 de la TBLPTRU permite el acceso a los bits de configuración de dispositivos.

3:Laregistros se y bits están reservados a los PIC18F2X2 dispositivos; siempre mantener estos claros.

Page 57: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 53

PIC18FXX2

TABLE 4-2: RESUMEN REGISTER FILE (CONTINUACIÓN)

Nombre de archivo

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0 Value en

POR, BOR Detalles

en la

página: OsccoN - - - - - - - SCS ------- 0 21 LVDCON - - IRVST LVDEN LVDL3 LVDL2 LVDL1 LVDL0 - 00 0101 191 WDTCON - - - - - - - SWDTE ------- 0 203 RCON IPEN - - RY

o A PD Correos

R BOR 0 a 1

11qq 53, 28, 84

TMR1H Timer1 Registre Byte Alto xxxx xxxx 107 TMR1L Timer1 Registre Byte Low xxxx xxxx 107 T1CON RD16 - T1CKPS1 T1CKPS0 T1OSCEN T1SYNC TMR1CS TMR1ON 0-00 0000 107 TMR2 Timer2 Registre 0000 0000 111 PR2 Timer2 Período de Registro 1111 1111 112 T2CON - Condicione

s de UsoTPS3

Condiciones de UsoTPS2

Condiciones de UsoTPS1

Condiciones de UsoTPS0

TMR2ON T2CKPS1 T2CKPS0 -000 0000 111 SSPBUF SSP Búfer de recepción / transmisión Registrarse xxxx xxxx 125 SSPADD SSDirección P Registro en modo esclavo I2C. SSP Baud Rate Actualizar Registro Maestro en el

modo I2C. 0000 0000 134

SSPSTAT SMP CKE D /La

P S R /W UA BF 0000 0000 126 SSPCON1 WCOL SSPOV SSPEN CKP SSPM3 SSPM2 SSPM1 SSPM0 0000 0000 127 SSPCON2 GCEN ACKSTAT ERCAT AckeN ICEN PEN RSEN SEN 0000 0000 137 ADRESH A /D Resultado Registro Byte Alto xxxx xxxx 187,188 ADRESL A /D Resultado Registro Byte Low xxxx xxxx 187,188 ADCON0 ADCS1 ADCS0 CHS2 CHS1 CHS0 GO /

DONE - ADON 0000 00-0 181

ADCON1 ADFM ADCS2 - - PCFG3 Ordenador personalFG2

PCFG1 Ordenador personalFG0

00-0000 182 CCPR1H Captura / Comparación / PWM Registro1 Byte Alto xxxx xxxx 121, 123 CCPR1L Captura / Comparación / PWM Registro1 Byte Low xxxx xxxx 121, 123 CCP1CON - - DC1B1 DC1B0 CCP1M3 CCP1M2 CCP1M1 CCP1M0 - 00 0000 117 CCPR2H Captura / Comparación / PWM Registro2 Byte Alto xxxx xxxx 121, 123 CCPR2L Captura / Comparación / PWM Registro2 Byte Low xxxx xxxx 121, 123 CCP2CON - - DC2B1 DC2B0 CCP2M3 CCP2M2 CCP2M1 CCP2M0 - 00 0000 117 TMR3H Timer3 Registre Byte Alto xxxx xxxx 113 TMR3L Timer3 Registre Byte Low xxxx xxxx 113 T3CON RD16 T3CCP2 T3CKPS1 T3CKPS0 T3CCP1 T3SYNC TMR3CS TMR3ON 0000 0000 113 SPBRG USART1 generador de velocidad de transmisión 0000 0000 168 RCREG USART1 Recibe Registrarse 0000 0000 175, 178,

180 TXREG USART1 Transmisión Registro 0000 0000 173, 176,

179 TXSTLa RSEC TX9 TXEN SYNC - BRGH TRMT TX9D 0000 -010 166 RCSTLa SPEN RX9 SREN CREN ADDEN FERR REAR RX9D 0000 000X 167 EEADR DatRegistrar una dirección de EEPROM 0000 0000 65, 69 EEDATLa Datun registro de datos EEPROM 0000 0000 69 EECON2 Datuna EEPROM Registro de control 2 (no un registro físico) -------- 65, 69 EECON1 LDED CFGS - GRATIS WRERR WREN WR RD xx-0 x000 66 Leyenda:x = Desconocido, u = Sin cambios, - = no implementado, q = Valor depende del estado

Noe 1: RA6 y los bits asociados se configuran como los pines del puerto de Comércio y el modo de oscilador sólo ECIO y '0 'en todos los modos de otro oscilador.

2:Bit 21 de la TBLPTRU permite el acceso a los bits de configuración de dispositivos.

3:Laregistros se y bits están reservados a los PIC18F2X2 dispositivos; siempre mantener estos claros.

Page 58: 39564c.en.es

DS39564C-page54 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 4-2: RESUMEN DE REGISTRO DE ARCHIVOS (CONTINUACIÓN)

Nombre de archivo

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0 Value en

POR, BOR Detalles

en la

página: Derechos de propiedad intelectual2

- - - EEIP BCLIP LVDIP TMR3IP CCP2IP --- 1

1111 83

PIR2 - - - EEIF BCLIF LVDIF TMR3IF CCP2IF --- 0

0000 79

PIE2 - - - EEIE BCLIE LVDIE TMR3IE CCP2IE --- 0

0000 81

Derechos de propiedad intelectual1

PSPIP(3) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 1111 1111 82 PIR1 PSPIF(3) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 78 PIE1 PSPIE(3) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 80 TRISE(3) IBF OBF IBOV PSPMODE - Datun número de bits de dirección

destinados PORTE 0000 -111 98

TRISD(3) Datun registro de control de dirección para PORTD 1111 1111 96 TRISC Datun registro de control de dirección para PORTC 1111 1111 93 TRISB Datun registro de control de dirección para PORTB 1111 1111 90 TRISLa - TRISA6(1) Datun registro de control de dirección para PORTA -111 1111 87 Los

ÁngelesTE(

3)

- - - - - Read PORTE Latch

Datos, Data Latch Escribir

PORTE

----- Xxx 99

Los

ÁngelesTD(

3)

Read PORTD Latch Datos, Data Latch Escribir PORTD xxxx xxxx 95 Los ÁngelesTC

Read PORTC Latch Datos, Data Latch Escribir PORTC xxxx xxxx 93 Los ÁngelesTuberculosis

Read PORTB Latch Datos, Data Latch Escribir PORTB xxxx xxxx 90 LATLa - LATA6(1) Read PORTA Latch Datos, Data Latch Escribir PORTA(1) -Xxx xxxx 87 PORTE(3) Read pins PORTE, Write Data Latch PORTE ----- 000 99 PORTD(3) Read pins PORTD, Write Data Latch PORTD xxxx xxxx 95 PORTC Read pins PORTC, Write Data Latch PORTC xxxx xxxx 93 PORTuberculosis

Read PORTB pins, Write Data Latch PORTB xxxx xxxx 90 PORTLa - RA6(1) Read pins PORTA, escribir PORTA Latch datos(1) X0x-0000 87 Leyenda:x = Desconocido, u = Sin cambios, - = no implementado, q = Valor depende del estado

Noe 1: RA6 y los bits asociados se configuran como los pines del puerto de Comércio y el modo de oscilador sólo ECIO y '0 'en todos los modos de otro oscilador.

2:Bit 21 de la TBLPTRU permite el acceso a los bits de configuración de dispositivos.

3:Laregistros se y bits están reservados a los PIC18F2X2 dispositivos; siempre mantener estos claros.

Page 59: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 55

PIC18FXX2

4,10 Acceso Banco

The Access Bank es una mejora arquitectónica que

es muy útil para la optimización de código en C

compilador. Las técnicas usadas por el compilador de

C pueden ser también útiles para programas escritos

en el montaje.

Esta región de memoria de datos se puede utilizar para:

• Los valores de cálculo intermedios

• Las variables locales de las subrutinas

• Mayor rapidez contexto ahorro / conmutación de variables

• Variables comunes

• Mayor rapidez en la evaluación / control de SFR (no bancario)

The Access Bank se compone de la parte superior

128 bytes Banco 15 (SFR) y los 128 bytes más bajos

del banco 0. Estas dos secciones se hará referencia a

Access como RAM de alta y Acceso RAM baja,

respectivamente. Figura 4-6 y Figura 4-7 indica las

áreas de memoria RAM de acceso.

Un bit en la palabra de instrucción especifica si la

operación va a tener lugar en el banco especificado

por el registro BSR o en el banco del acceso. Este bit

se representa por la 'a' bit (bit de acceso).

When forzada en el banco del acceso (a = 0), la última

dirección en la RAM de acceso baja es seguida por la

primera dirección de acceso a la RAM de alta. Acceso

RAM máximas Mapas de los registros de funciones

especiales, a fin de que estos registros se puede

acceder sin ningún tipo de gastos de software. Esto

es útil para probar los indicadores de estado y la

modificación de los bits de control.

4,11 Bank Select Register (BSR)

The necesidad de un gran espacio general memoria

propósito dicta un esquema de banca RAM. La

memoria de datos está dividida en dieciséis bancos.

Cuando se utiliza el direccionamiento directo, el BSR

debe estar configurado para el banco deseado.

BSR <3:00> contiene los 4 bits superiores de la

dirección de la RAM 12-bit. El BSR <7:04> bits

siempre aparecerá '0 's, y escribe no tendrá ningún

efecto.

LaMOVLB instrucción se ha proporcionado en el

conjunto de instrucciones para ayudar en la selección

de los bancos.

Yof el banco seleccionado en ese momento no se ha

implementado, cualquier lectura devolverá todo '0 's y

todas las escrituras son ignorados. Los bits del

registro STATUS se establecerá / borrar según sea

apropiado para la instrucción realizada.

Each Banco extiende hasta FFh (256 bytes). Toda la

memoria de datos se implementa como memoria

RAM estática.

LaMOVFF instruction ignora el BSR, ya que las

direcciones de 12-bits están incrustados en la palabra

de instrucción.

Secció4,12 n proporciona una descripción de

dirección indirecta-ción, lo que permite el

direccionamiento lineal del espacio de memoria RAM

entero.

FIGURA 4-8: direccionamiento directo Direccionamiento directo

BSR <3:00> 7

From Opcode(3)0

Selección de Banco(2)Location Seleccionar(3)

00h 01h 0Eh 0Fh

000h

100h

E00h

F00h

Datos Souvenirsria (1)

0FFh 1FFh EFFh FFFH

Noe 1: For archivo de registro de detalle del mapa,

consulte la Tabla 4-1.

Page 60: 39564c.en.es

DS39564C-page56 2006 Microchip Technology Inc.

PIC18FXX2

Bank 0 Banco 1 Banco 14 Banco 15

2:Thpoco acceso electrónico de la instrucción puede ser usado para forzar un reemplazo del banco

seleccionado (BSR <03:00>) para los registros del Banco de acceso.

3:TheMOVFF INSTRUCCIONESn incrusta el entero de 12 bits de la dirección en la instrucción.

Page 61: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 57

PIC18FXX2

4,12 Direccionamiento indirecto, y INDF

FSR Registros

Indirect direccionamiento es un modo de

direccionamiento de datos de memoria, donde la

dirección de memoria de datos en la instrucción no es

fijo. Un registro FSR se utiliza como un puntero a la

ubicación de memoria de datos que debe ser leído o

escrito. Desde este puntero está en la RAM, los

contenidos pueden ser modificados por el programa.

Esto puede ser útil para tablas de datos en la

memoria de datos y para las pilas de software. Figura

4-9 muestra el funcionamiento de direccionamiento

indirecto. Esto demuestra el movimiento del valor de

la dirección de memoria de datos especificado por el

valor del registro FSR.

Indirecabordar t es posible mediante el uso de uno de

los registros INDF. Cualquier instrucción utilizando el

registro INDF realmente accede al registro apuntado

por el Registro Seleccionar Archivo, FSR. Lectura de

la INDF se registra, de forma indirecta (FSR = 0), se

leerá 00h. La escritura en el registro INDF

indirectamente, da lugar a una operación no. El

registro FSR contiene una dirección de 12-bits, que se

muestra en la figura 4-10.

The INDFn registro no es un registro físico. Dirección-

ción INDFn debe dirigirse al registro cuya dirección

está contenida en el registro FSRn (FSRn es un

puntero). Este es el direccionamiento indirecto.

EJEMPLOSe 4-4 muestra un uso simple de

direccionamiento indirecto para borrar la RAM en

Banco1 (ubicaciones 100h-1FFH) en un número

mínimo de instrucciones.

EXAMPLIO 4-4: CÓMO ELIMINAR RAM

(BANK1) USANDO

direccionamiento

indirecto

LFSR FSR0, 0x100;

NEXT CLRF POSTINC0; Clear INDF

, Registrar y

, Inc puntero

BTFS FSR0H, 1; Todo hecho con

; Banco1?

GOTO NEXT, no, claro próxima

CONTINUE; SI, continúe

There son tres registros direccionamiento indirecto.

Para abordar el espacio de memoria de datos

completa (4096 bytes), estos registros son de 12-bit

de ancho. Para almacenar los bits 12-de la

información de direccionamiento, dos registros de 8

bits son necesarios. Estos registros indirectas que

son:

1. FSR0: compuesto por FSR0H: FSR0L

2. FSR1: compuesto por FSR1H: FSR1L

3. FSR2: compuesto por FSR2H:

FSR2L

YoAdemás n, hay registros INDF0, INDF1 y INDF2,

que no se ejecuta físicamente. Leer o escribir en

estos registros se activa indirecta dirección-ción, con

el valor en el correspondiente registro FSR es la

dirección de los datos. Si existe una instrucción

escribe un valor en INDF0, el valor se escribirá en la

dirección apuntada por FSR0H: FSR0L. Una lectura

de INDF1 lee

Page 62: 39564c.en.es

DS39564C-page58 2006 Microchip Technology Inc.

PIC18FXX2

ªe Los datos de la dirección a la que apunta FSR1H:

FSR1L. INDFn se puede utilizar en cualquier parte del

código un operando puede ser utilizado.

Si INDF0, INDF1 o INDF2 se leen indirectamente a

través de un FSR, todo '0 's se leen (bit se pone a

cero). Del mismo modo, si INDF0, INDF1 o INDF2 se

escriben indirectamente, la operación será

equivalente a un NOP instrucción y los bits de estado

no se ven afectados.

OPERACIÓN 4.12.1

Direccionamiento indirecto

Each FSR registro tiene un INDF registro asociado

con él, además de cuatro direcciones de registro

adicionales. Realiza-ción de una operación en una de

estas cinco registros deter-mina cómo el FSR se

modificarán durante el direccionamiento indirecto.

When acceso a los datos se realiza a uno de los cinco

lugares INDFn, la dirección seleccionada configurar el

FSRn registrarse para:

• No hacer nada para FSRn después de un

acceso indirecto (sin cambios) - INDFn

• Auto-decremento FSRn después de un acceso indirecto

(Post-decremento) - POSTDECn

• Auto-incremento FSRn después de un acceso indirecto

(Post-incremento) - POSTINCn

• Auto-incremento FSRn antes de un acceso indirecto

(Pre-incremento) - PREINCn

• Utilice el valor en el registro WREG como

compensación de FSRn. No modifique el valor

de la WREG o el registro FSRn después de un

acceso indirecto (sin cambios) - PLUSWn

Cuando se utiliza el auto-incremento o decremento

auto-turas característi-, el efecto sobre el FSR no se

refleja en el registro STATUS. Por ejemplo, si la

dirección indirecta hace que el FSR igual a '0 ', el bit Z

no se establecerá.

Aumentar o disminuir el FSR afecta a todos los 12

bits. Es decir, cuando se desborda FSRnL de un

incremento, FSRnH será incrementado

automáticamente.

La adición de estas características permite la FSRn

para ser utilizado como un puntero de pila, además de

sus usos para las operaciones de tabla en la memoria

de datos.

Each FSR tiene una dirección asociada con el que se

forma por un acceso indirecto indizada. Cuando un

acceso de datos a esta ubicación INDFn (PLUSWn)

se produce, la FSRn está configurado para añadir el

valor con signo en la WREG regis-tro y el valor en

FSR para formar la dirección antes de un acceso

indirecto. El valor FSR no se cambia.

Yof un registro FSR contiene un valor que apunta a

uno de los INDFn, una lectura indirecta leerá 00h (bit

se pone a cero), mientras que una escritura indirecta

será equivalente a un NOP (Bits de estado no se ven

afectadas).

Yof una operación de direccionamiento indirecto se

realiza en la dirección de destino es una FSRnH o

registro FSRnL, la operación de escritura dominará

las funciones pre o post-increment/decrement.

Page 63: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 59

PIC18FXX2

FIGURA 4-9: FUNCIONAMIENTO direccionamiento indirecto

Entrucción Executed

OpcodDirección e

RAM 0h

FFFH

12

FilDirección de e = acceso de un registro de direccionamiento indirecto

Entrucción Fetched

BSR <3:00> 12 12

4 8

Opcode Archivo FSR

FIGURA 4-10: Direccionamiento indirecto

YoAbordar ndirect

11 FSR registro 0

Location Seleccionar

0000h

Dato

s Memoránd

umry (1)

0FFFh

Noe 1: For archivo de registro de detalle del mapa, consulte la Tabla 4-1.

Page 64: 39564c.en.es

DS39564C-page60 2006 Microchip Technology Inc.

PIC18FXX2

4,13 registro de estado

The registro STATUS, que se muestra Registrarse 4-

2, contiene el estado aritmético de la ALU. El registro

de estado puede ser el destino de cualquier

instrucción, como con cualquier otro registro. Si el

registro de estado es el destino de una instrucción

que afecta a la Z, DC, C, OV, o N bits, entonces la

escritura para estos cinco bits está desactivado. Estos

bits se activa o se desactiva de acuerdo con la lógica

del dispositivo. Por lo tanto, el resultado de una

instrucción con el registro STATUS como destino

puede ser diferente de lo previsto.

For ejemplo, CLRF ESTADO borrará los tres bits

superiores y establecer el bit Z. Esto deja el registro

STATUS como 000U u1uu (Donde u= Sin cambios).

Yot se recomienda, por lo tanto, que sólo BCF, BSF,

swapf, MOVFF undMOVWF instrucciones se utilizan

para alterar el registro de estado, debido a que estas

instrucciones no afectan a la Z, C, DC, OV,

orNbits desde el registro STATUS. Para otras

instrucciones no afectan a los bits de estado, consulte la Tabla 20-2.

Nota: The C y los bits CC operar como pedir

prestado y endeudarse poco dígito

respectivamente, en la resta.

REGISTRO 4-2: Registro de Estado

U-0 U-0 U-0 R / Wx R / Wx R / Wx R / Wx R / Wx

- - - N OV Z Corriente

continua

C

bit 7 bit 0

bit 7-5 No implementado: Leer

como '0 'bit 4 N: Negative bit

Thibit s se usa para la aritmética firmado (2 de complemento). Se indica si el resultado fue

negativo (ALU MSB = 1).

1Resultado = fue negativo

0Resultado = fue positiva

bit 3 OV:Overflow poco

Thibit s se usa para la aritmética firmado (2 de complemento). Se indica un desbordamiento de la

7-bimagnitud t, lo que hace que el bit de signo (bit7) para cambiar de estado.

1= Desbordamiento se produjo en la aritmética con signo (en esta operación aritmética)

0= No hay desbordamiento

bit 2 Z: Zero poco

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 no es cero

bit 1 DC: Digit llevar / tomar prestado poco

ForADDWF, ADDLW, SUBLW,undSUBWF instalboroto

1= A carry-out desde el bit de orden inferior del cuarto resultado se

0= No carry-out de la broca de 4 º orden bajo del resultado

Nota: Para pedir prestado, la polaridad se invierte. Una resta se ejecuta mediante la

adición del complemento a dos del segundo operando. Para rotar (RRF,

RLFInstrucciones), este bit se carga tanto con el bit 4 o bit 3 del registro fuente.

bit 0 C: Carry / borrow bit

ForADDWF, ADDLW, SUBLW, Y SUBWF instalboroto

1= A carry-out desde el bit más significativo del resultado producido

0= No carry-out desde el bit más significativo del resultado producido

Nota: Para pedir prestado, la polaridad se invierte. Una resta se ejecuta mediante la

adición del complemento a dos del segundo operando. Para rotar (RRF,

RLFInstrucciones), este bit se carga, ya sea con el bit de orden alto o bajo de la

fuente de registro.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 65: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 61

PIC18FXX2

4,14 RCON Registrarse

The Perdí Control (RCON) registro contiene bits de

bandera que permiten la diferenciación entre las

fuentes de un dispositivo RE SET. Estos indicadores

incluyen el A, PD, POR, BOR y los bits de RI. Este

registro se puede leer y escribir.

REGISTRO 4-3: RCON REGISTRO

Nota 1: Yof el bit de configuración se establece

Boren

(Brown-out Cambiar habilitado), el bit BOR es

'1'En un Power-on Reset. Después de un

reinicio Brown-out se ha producido, el bit

BOR se borrará, y se debe establecer por

firmware para indicar la aparición de la

próxima Brown-out Reset.

2:Yot se recomienda que el bit POR se

fijará después de un power-on reset se

ha detectado, por lo que después de

restauraciones por encendido puede ser

detectada.

R/W-0 U-0 U-0 R/W-1 R-1 R-1 R/W-0 R/W-0

IPEN - - Rhode Island

A PD POR BOR

bit 7 bit 0

bit 7 IPEN: Prioridad de interrupción Bit de habilitación

1= Habilitar niveles de prioridad de las interrupciones

0= Desactivar los niveles de prioridad de interrupciones (16CXXX modo de compatibilidad)

bit 6-5 No implementado: Leer

como '0 'bit 4 RI: REINICIO

Instrucción poco Flag

1= La REINICIO instrucción no se ha ejecutado 0= La REINICIO instrucción se ejecutó provocando el reinicio del aparato

(Se debe configurar en el software después de un reinicio Brown-out ocurre)

bit 3 A:Watchdog Tiempo de espera Flag bit

1= Después del encendido, CLRWDT instrucción, o DORMIR instbronca

0= A WDT tiempo de espera se produjo

bit 2 PD: Power-down Detección poco Flag

1= Después del encendido o por la CLRWDT instrucción

0= Por ejecución de la DORMIR instrucción

bit 1 POR: Correoswer-bit en Restablecer estado

1= A Power-on Reset no se ha producido

0= A Power-on reset se produjo (Se debe configurar en el software después de un

Power-on reset ocurre)

bit 0 BOR:Brown-out bit Restablecer estado

1= A Cambiar Brown de salida no se ha producido

0= A Cambiar Brown-out se produjo (Se debe configurar en el software después de un

reinicio Brown-out ocurre)

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 66: 39564c.en.es

DS39564C-page62 2006 Microchip Technology Inc.

PIC18FXX2

NOTAS:

Page 67: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 63

PIC18FXX2

50.0 MEMORIA FLASH DEL PROGRAMA

The memoria de programa Flash se puede leer,

escribir, y borrable durante el funcionamiento normal

en el rango VDD entero.

Una lectura de la memoria de programa se ejecuta en

un byte a la vez. Una escritura a la memoria de

programa se ejecuta en bloques de 8 bytes a la vez.

La memoria de programa se borra en bloques de 64

bytes a la vez. Una operación de borrado a granel no

podrán emitirse a partir del código de usuario.

Writing o borrado de la memoria de programa dejará

de ins-trucción obtiene hasta que la operación se ha

completado. La memoria de programa no se puede

acceder durante la escritura o borrado, por lo tanto, no

puede ejecutar código. Un interno de programación

del temporizador termina la memoria del programa,

escribe y borra.

Un valor escrito en la memoria de programa no

necesita ser una instrucción válida. La ejecución de

un programa de localización de memoria que forma

los resultados de instrucción no válida en un NOP.

5.Tabla 1 Tabla Lee y Escribe

Con el fin de leer y escribir la memoria de programa,

hay dos operaciones que permiten que el procesador

para mover bytes entre el espacio de memoria de

programa y la memoria RAM de datos:

• Mesa de lectura (TBLRD)

• Tabla de escritura (TBLWT)

Thprograma de correo espacio de memoria es de 16-

bits de ancho, mientras que el espacio de datos RAM

es de 8-bits de ancho. Tabla Lee y Escribe en la tabla

de datos se mueven entre estos dos espacios de

memoria a través de un registro de 8 bits (TABLAT).

TablLas operaciones de lectura e recuperar datos de la

memoria de programa y lo coloca en el espacio de

datos RAM. La figura 5-1 muestra el funcionamiento

de una mesa de lectura con la memoria de programa

y memoria RAM de datos.

Table Escriba los datos de operaciones de tiendas de

los datos de memoria espacial en la celebración de

los registros en la memoria de programa. El

procedimiento para escribir el contenido de los

titulares regis-tros en la memoria del programa se

detalla en la Sección 5.5,

'"La escritura en la memoria flash de programa". Figura 5-2

shows el funcionamiento de una tabla de escritura con

la memoria de programa y memoria RAM de datos.

Tabloperaciones electrónicas trabajar con entidades de

bytes. Un bloque de tabla que contiene los datos, en

lugar de instrucciones de programa, no se requiere

para ser alineados por palabras. Por lo tanto, un

bloque de tabla puede iniciar y terminar en cualquier

dirección byte. Si una Escritura de la tabla se está

utilizando para escribir código ejecutable en la

memoria de programa, instrucciones de programa

tendrá que ser alineados por palabras.

FIGURA 5-1: Tabla de operación READ

Instruction: TBLRD*

Table Pointer(1)

Programa de memoria

Table Latch (8-bit)

TBLPTRU TBLPTRH TBLPTRL TABlat

Programa de memoria

(TBLPTR)

Page 68: 39564c.en.es

DS39564C-page64 2006 Microchip Technology Inc.

PIC18FXX2

Noe 1: Tablpuntos e puntero a un byte en la memoria del programa.

Page 69: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 65

PIC18FXX2

FIGURA 5-2: Tabla de operación WRITE

Enconstrucción:

TBLWT*

Programa Memoria

Holding Registros

Table Pointer(1)Table Latch (8-bit)

TBLPTRU

TBLPTRH TBLPTRL TABLAT

Programa de memoria

(TBLPTR)

Noe 1: TablPuntero e realidad apunta a uno de los ocho registros de retención, cuya dirección está determinada

por TBLPTRL <2:00>. El proceso para la escritura de datos físicamente a la matriz de la memoria de

programa se discuten en la Sección 5,5.

5.2 Registro de Control

Several registros de control se utilizan en conjunción

con la TBLRD undTBLWT instrucciones. Estos

incluyen el:

• EECON1 registro

• EECON2 registro

• TABLAT registro

• TBLPTR registros

5.2.1 EECON1 Y REGISTROS EECON2

EECON1 es el registro de control de accesos a

memoria. EECON2 no es un registro físico. Lectura

EECON2

leerá todo '0 's. El registro EECON2 se utiliza

exclusivamente en la escritura de la memoria y las

secuencias de borrado.

Control de poco EEPGD determina si el acceso se

realizará un programa o datos de acceso a memoria

EEPROM. Cuando claro, las operaciones

subsiguientes operará en la memoria de datos

EEPROM. Cuando se establece, cualquier otra

operación posterior se efectuará sobre la memoria del

programa.

CFGS bit de control determina si el acceso será a los

registros de configuración o en la memoria de

programa / datos de la memoria EEPROM. Cuando se

establece, las operaciones posteriores operará en los

registros de configuración, independientemente de

EEPGD (ver "Características especiales de la CPU",

sección 19,0). Cuando claro, memoria de acceso

selección se determina por EEPGD.

Thbit e LIBRE, cuando se establece, permitirá una

memoria de programa la operación de borrado.

Cuando el bit GRATIS está establecido, la operación

de borrado se inicia en el siguiente comando WR.

Cuando GRATIS está claro, sólo escribe están

habilitadas.

The bit WREN, cuando se establece, permitirá una

operación de escritura. En el encendido, el bit WREN

es clara. El bit WRERR se establece cuando una

operación de escritura se interrumpe por un

restablecimiento MCLR o un Reset WDT tiempo de

espera durante el funcionamiento normal. En estas

situaciones, el usuario puede comprobar el bit

WRERR y volver a escribir la ubicación. Es necesario

volver a cargar los datos y los registros de direcciones

(EEDATA y EEADR), debido a RESET Virginialues de

cero.

Control de bit WR inicia operaciones de escritura.

Este bit no se pueden eliminar, sólo se establece, en

el software. Se pone a cero en hardware en la

terminación de la operación de escritura. La

incapacidad para borrar el bit WR en software evita la

terminación accidental o prematura de una operación

de escritura.

Nota: Interrupción bandera EEIF poco, en el

registro PIR2, se establece cuando la

escritura se ha completado. Se debe ser

despejado en software.

Page 70: 39564c.en.es

DS39564C-page66 2006 Microchip Technology Inc.

PIC18FXX2

REGISTRO 5-1: EECON1 REGISTER (FA6h ADDRESS)

R / Wx R / Wx U-0 R/W-0 R / Wx R/W-0 R/S-0 R/S-0

EEPGD CFGS - GRATIS WRERR WREN WR RD

bit 7 bit 0

bit 7 EEPGD: FLASH de programa o memoria de datos EEPROM Bit de selección de

1= Acceso FLASH La memoria de programa

0= Acceso a datos de memoria EEPROM

bit 6 CFGS: FLASH Program / Datos EE o Configuración Seleccione bit

1= Registros de configuración de acceso

0= Acceso FLASH de programa o datos de memoria EEPROM

bit 5 No implementado: Leer como '0 '

bit 4 GRATIS: Erase FLASH Row Bit de habilitación

1= Borrar la fila de la memoria del programa dirigido por TBLPTR en el siguiente comando WR

(Cleared por terminación de la operación de borrado)

0= Realizar sólo escritura

bit 3 WRERR: FLASH de programa / datos Error EE Flag bit

1= Una operación de escritura se termina prematuramente

(Cualquier RESET durante self-timed programación en operación normal)

0= La operación se ha completado escritura

Nota: Cuando se produce un WRERR, los bits EEPGD y CFGS no se borran. Esto

permite el seguimiento de la condición de error.

bit 2 WREN: FLASH Program / Datos EE permitir la escritura poco

1= Permite ciclos de escritura

0Inhibe = escribir en la EEPROM

bit 1 WR: Writo Bit de control

1= Inicia un borrado de datos EEPROM / escritura de ciclo o los ciclos de borrado de la

memoria del programa o ciclo de escritura. (La operación se auto cronometrado y el bit

se restablece una vez por hardware de escritura. El bit WR sólo se pueden establecer (no

borrada) en software.)

0= Escribir ciclo en la EEPROM es poco

completo 0 RD: Leer Bit de control

1= Inicia una lectura EEPROM

(Lee tiene un ciclo. RD se borra en hardware. El bit RD sólo se puede configurar (no se borra)

en software. Bit RD no se puede ajustar cuando EEPGD = 1.)

0= No inicia una lectura EEPROM

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 71: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 67

PIC18FXX2

5.2.2 TABLAT - TABLA DE REGISTRO LATCH

ThLatch e Table (TABLAT) es un registro de 8 bits

mapeados en el espacio SFR. El Cerrojo Tabla se

utiliza para mantener

8Bits de datos durante la transferencia de datos entre el programa

memorándumria y la memoria RAM de datos.

5,20.3 TBLPTR - TABLA POINTER

REGISTRO

ThTabla e Pointer (TBLPTR) se refiere a un byte en la

memoria del programa. El TBLPTR se compone de

tres registros SFR: Byte puntero de la tabla superior,

tabla de bytes puntero de alta y baja Byte Tabla

Pointer (TBLPTRU: TBLPTRH: TBLPTRL). Estos tres

regis-tros se unen para formar un puntero de 22 bits

de ancho. Los 21 bits de bajo orden permitir que el

dispositivo para hacer frente a un máximo de 2 MB de

espacio de memoria de programa. El bit 22 permite el

acceso a la ID de dispositivo, el ID de usuario y los

bits de configuración.

The tabla de punteros, TBLPTR, es utilizado por el

TBLRD undTBLWT instrucciones. Estas instrucciones

pueden actualizar el TBLPTR en una de cuatro

formas, según la tabla operación. Estas operaciones

se muestran en la Tabla 5-1. Estas operaciones en el

TBLPTR sólo afecta al orden bajo

21 bits.

5.2.4 LÍMITES DE MESA INDICADOR

TBLPTR se utiliza en Lee, escribe y borra de la

FLASH memoria de programa.

When un TBLRD yos ejecutados, los 22 bits del

puntero de la tabla determinar el byte que se lee de la

memoria de programa en TABLAT.

When un TBLWT yos ejecutado, los tres bits menos

significativos del puntero de la tabla (TBLPTR

<02:00>) determinar cuál de los registros de memoria

de programa ocho celebración se escribe. Cuando el

cronometrado escribir en la memoria de programa

(escribir largo) comienza, los 19 MSB de la Pointer

Table, TBLPTR (TBLPTR <21:03>), determinará qué

programa de memoria de bloque de 8 bytes se

escribe. Para obtener más detalles, consulte la

Sección 5.5 ("La escritura en la memoria de programa

FLASH").

When un proceso de borrado de la memoria de programa es ejecutado, el 16

MSbs del puntero de la tabla (TBLPTR <21:06>) apuntan a la

64-porte bloque que se borrará. Los bits menos

significativos (TBLPTR <05:00>) se ignoran.

Figure 5-3 describe los límites pertinentes de TBLPTR

sobre la base de las operaciones de memoria Flash

de programa.

TABLE 5-1: OPERACIONES DE MESA CON PUNTERO TBLRD Y TBLWT INSTRUCCIONES

Ejemplo Operación en el puntero de la tabla

TBLRD

*

TBLWT

*

TBLPTR no se modifica

TBLRD *

+ * +

TBLWT

TBLPTR se incrementa después de la lectura / escritura

TBLRD *

- *

TBLWT -

TBLPTR se reduce después de la lectura / escritura

TBLRD +

* + *

TBLWT

TBLPTR se incrementa antes de la lectura / escritura

FIGURA 5-3: Límites tabla de punteros basados en el funcionamiento

21TBLPTRU 16 15 TBLPTRH8 7 TBLPTRL0

ERASE - TBLPTR <21:06>

ESCRITURAE - TBLPTR

<21:03>

READ - TBLPTR

Page 72: 39564c.en.es

DS39564C-page68 2006 Microchip Technology Inc.

PIC18FXX2

<21:00>

Page 73: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 69

PIC18FXX2

5.3 Leer el programa Flash

Memoria

TheTBLRD instrucción se utiliza para recuperar datos

de la memoria de programa y ponerlo en datos RAM.

Tabla lee de la memoria del programa se llevan a

cabo un byte a la vez.

TBLPTR apunta a una dirección de byte en el espacio

del programa. Ejecución TBLRD lugars el byte

señalado en TABLAT. Además, TBLPTR se puede

modificar de forma automática para la operación de

Lectura de la tabla siguiente.

Thmemoria e interna del programa se organizan

normalmente por las palabras. El bit menos

significativo de la dirección selecciona entre los bytes

altos y bajos de la palabra. La figura 5-4 muestra la

interfaz entre la memoria interna del programa y la

TABLAT.

FIGURA 5-4: lee de la memoria de programa Flash

Programa Memoria

(Dirección Incluso Byte) (Dirección de byte impar)

TBLPTR= Xxxxx1 TBLPTR= Xxxxx0

Instruction Registro

FETCH

TBLRDTABLAT

(IR) Leer Registrarse

EXAMPLIO 5-1: LECTURA DE UN PROGRAMA DE FLASH palabra de memoria

READ_WORD

MOVLW CODE_ADDR_UPPER; TBLPTR carga con la base

MOVWF TBLPTRU, la dirección de la palabra

MOVLW CODE_ADDR_HIGH

MOVWF TBLPTRH

MOVLW CODE_ADDR_LOW

MOVWF TBLPTRL

TBLRD *+; Leer en TABLAT y el incremento

MOVTABLAT F, W; obtener datos

MOVWF WORD_EVEN

TBLRD *+; Leer en TABLAT y el incremento

MOVTABLAT F, W; obtener datos

MOVWF WORD_ODD

Page 74: 39564c.en.es

DS39564C-page70 2006 Microchip Technology Inc.

PIC18FXX2

MOVLW

MOVWF

MOVLW

MOVWF

MOVLW

MOVWF

CODE_ADDR_UPPER

TBLPTRU

CODE_ADDR_HIGH

TBLPTRH

CODE_ADDR_LOW

TBLPTRL

;

; load TBLPTR con la

dirección base del bloque

de memoria

BCF

BSF

BSF

BSF

BCF

EECON1,

EECON1

EEPGD,

EECON1 CFGS,

EECON1 WREN,

FREE INTCON,

GIE

;

;

;

;

;

point con el programa FLASH

memoria memoria de programa

Flash Access permiten

escribir en la memoria

ENABLLa operación de Borrar e Row

DISABLe interrumpe MOVLW

MOVWF

MOVLW

MOVWF

55h

EECON2

AAh

EECON2

;

;

escritura

e 55h

escritura

AAh

BSF

BSF EECON1, WR

INTCON,

GIE

;

; estrellat erase (puesto CPU)

re-ENABLe interrumpe

5.Borrado de la memoria FLASH 4 Programa

Thmínimo del bloque E de borrado es de 32 palabras

o bytes 64. Sólo mediante el uso de un programador

externo, o a través del control ICSP puede mayores

bloques de memoria de programa ser bulto borrado.

Erase Palabra en la matriz FLASH no es compatible.

When iniciación de una secuencia de borrado en el

propio microcontrolador, un bloque de 64 bytes de

memoria de programa se borra. Los 16 bits más

significativos de la TBLPTR punto <21:06> al bloque

se borre. TBLPTR <5:00> se ignoran.

The EECON1 registro comanda la operación de

borrado. El bit EEPGD se debe establecer para que

apunte al programa FLASH memoria. El bit WREN

debe configurarse para permitir operaciones de

escritura. El bit se establece GRATIS para seleccionar

una operación de borrado.

For protección, las escritura para iniciar la secuencia

de EECON2 debe ser utilizado.

Una escritura largo es necesario para borrar la

memoria flash interna. Ejecución de la instrucción se

detiene mientras que en un ciclo de escritura largo. La

escritura larga se terminará por el temporizador de

programación interna.

5.4.1 PROGRAMA DE MEMORIA

FLASH ERASE SECUENCIA

Thsecuencia de eventos e para borrar un bloque de la

ubicación de memoria interna del programa es:

1. Load puntero de la tabla con la dirección de la

fila que se borren.

2. Establecer EEPGD poco para que apunte a la

memoria del programa, CFGS poco claro para

acceder a la memoria del programa, establezca

el bit WREN para que escribe, y establecer el

bit gratis para habilitar el borrado.

3. Deshabilitar las interrupciones.

4. Escribir 55h a EECON2.

5. Escribir AAh a EECON2.

6. Set el bit WR. Esto comenzará el ciclo de

borrado fila.

7. La CPU se detendrá durante la duración del borrado

(Alrededor de 2 ms con temporizador interno).

8. Vuelva a habilitar las interrupciones.

EXAMPLIO 5-2: BORRADO DE UN PROGRAMA DE MEMORIA FLASH ROW

ERASE_ROW

Necesario

Secuencia

Page 75: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 71

PIC18FXX2

Holding

Registrarse

5.5 Redacción de programa Flash

Memoria

Thmínimo e bloque de programación es de 4 palabras

o bytes 8. Palabra o programación byte no es

compatible.

TablEscribe e internamente se utilizan para cargar la

celebración de reg-tros necesarios para programar la

memoria FLASH. Hay 8 registros de retención

utilizadas por la tabla Escribe para la programación.

Since Cierre la tabla (TABLAT) es sólo un solo byte,

el TBLWT instrucción tiene que ser ejecutado 8 veces

para cada operación de programación. Todos los de

la tabla de escritura

óperanes esencialmente será corta escribe, porque

sólo los registros de las explotaciones están escritas.

Al final de la actualización

8 registros, el registro EECON1 deben ser escritos a, a

estrellat la operación de programación con una escritura mucho tiempo.

Thescritura e larga es necesaria para la programación

de la FLASH interna. Ejecución de la instrucción se

detiene mientras que en un ciclo de escritura largo. La

escritura larga se terminará por el temporizador de

programación interna.

La EEPROM en el chip temporizador controla el

tiempo de escritura. Las tensiones de escritura /

borrado son generados por una bomba de carga en el

chip tiene para operar sobre el rango de tensión del

dispositivo para operaciones de palabras o bytes.

FIGURE 5-5: escrituras de tabla en la memoria Flash PROGRAMA

TEscribir

regístrate

ABLAT

88 8 8

TBLPTR = xxxxx0 TBLPTR = xxxxx1 TBLPTR = xxxxx2 TBLPTR = xxxxx7

Holding Registrarse Holding Registrarse

Holding Registrarse

Programa de memoria

5.5.1 PROGRAMA DE FLASH MEMORY

WRITE SECUENCIA

Thsecuencia de eventos e para programar una

ubicación de memoria de programa interno debe ser:

1. Leer 64 bytes en la RAM.

2. Actualización de los valores de datos en la memoria RAM como sea necesario.

3. Carga el puntero cuadro con la dirección que se borren.

4. Realice el procedimiento de borrado fila.

5. Carga el puntero cuadro con la dirección del

primer byte está escribiendo.

6. Escriba los primeros 8 bytes en los registros de

retención con auto-incremento (TBLWT * + o

TBLWT + *).

7. Establezca el bit EEPGD para apuntar a la

memoria del programa, desactive el bit CFGS

para acceder a la memoria del programa y

establecer WREN para permitir byte escribe.

8. Deshabilitar las interrupciones.

9. Escribir 55h a EECON2.

Page 76: 39564c.en.es

DS39564C-page72 2006 Microchip Technology Inc.

PIC18FXX2

10. Escribir AAh a EECON2.

11. Establezca el bit WR. Esto comenzará el ciclo de escritura.

12. La CPU se detendrá durante la duración de la escritura (sobre

2 ms con temporizador interno).

13. Vuelva a habilitar las interrupciones.

14. Repita los pasos 6-14 siete veces, para escribir

64 bytes.

15. Compruebe la memoria (Tabla Lectura).

This procedimiento se requieren alrededor de 18 ms

para actualizar una fila de 64 bytes de memoria. Un

ejemplo del código necesario se da en el Ejemplo 5-3.

Nota: Antes de establecer el bit WR, la dirección

de puntero de la tabla tiene que estar

dentro del intervalo de direcciones de

destino de los 8 bytes de los registros de

retención.

Page 77: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 73

PIC18FXX2

EXAMPLIO 5-3: escritura en la memoria de programa Flash

MOVLD'W 64; número de bytes en el bloque de borrado

MOVWF CONTADOR

MOVLW BUFFER_ADDR_HIGH; punto para amortiguar

MOVWF FSR0H

MOVLW BUFFER_ADDR_LOW

MOVWF FSR0L

MOVLW CODE_ADDR_UPPER; TBLPTR de carga con la base de TBLPTRU

MOVWF, la dirección de la memoria de bloques CODE_ADDR_HIGH

MOVLW

MOVWF TBLPTRH

MOVLW CODE_ADDR_LOW

MOVWF TBLPTRL

READ_BLOCK

MODIFY_WORD

ERASE_BLOCK

TBLRD *+; Leer en TABLAT, y aum

MOVTABLAT F, W; obtener datos MOVWF POSTINC0;

almacén de datos DECFSZ COUNTER; hecho?

BRA READ_BLOCK, repetir

MOVLW DATA_ADDR_HIGH; punto para amortiguar

MOVWF FSR0H

MOVLW DATA_ADDR_LOW

MOVWF FSR0L

MOVLW NEW_DATA_LOW; palabra actualización búfer

MOVWF POSTINC0

MOVLW NEW_DATA_HIGH

MOVWF INDF0

MOVLW CODE_ADDR_UPPER; TBLPTR carga con la base de TBLPTRU

MOVWF; dirección de la memoria de bloques CODE_ADDR_HIGH MOVLW

MOVWF TBLPTRH

MOVLW CODE_ADDR_LOW

MOVWF TBLPTRL

BSF EECON1, EEPGD y punto de memoria de programa Flash

BCF EECON1, CFGS, el acceso de memoria de programa Flash

BSF EECON1, WREN; permitir escribir en la memoria

BSF EECON1, FREE, permitir la operación de borrado de fila

BCF INTCON, GIE; deshabilitar las interrupciones

MOVLW 55h

MOVWF EECON2, escribe 55h

MOVLW AAh

MOVWF EECON2; escribir AAh

BSF EECON1, WR; erase start (puesto CPU) BSF INTCON, GIE,

volver a habilitar las interrupciones TBLRD * -; maniquí

leer decremento

WRITE_BUFFER_BACK

MOVLW 8, el número de grupos de buffer de escritura de 8 bytes

MOVWF COUNTER_HI

MOVLW BUFFER_ADDR_HIGH; punto para amortiguar

MOVWF FSR0H

MOVLW BUFFER_ADDR_LOW

MOVWF FSR0L

PROGRAM_LOOP

MOVLW 8, el número de bytes en el registro de retención

MOVWF

WRITE_WORD_TO_HREGS

CONTADOR

MOVPOSTINC0 F, W, obtener byte bajo del búfer de datos MOVWF TABLAT,

los datos actuales a TBLWT mesa pestillo + *, escritura de datos,

realizar una escritura corta

; Al interno celebración TBLWT

registrarse. CONTADOR DECFSZ; bucle hasta buffers están llenos

BRA WRITE_WORD_TO_HREGS

Page 78: 39564c.en.es

DS39564C-page74 2006 Microchip Technology Inc.

PIC18FXX2

EXAMPLIO 5-3: escritura en la memoria de programa Flash (CONTINUACIÓN)

PROGRAM_MEMORY

BSF EECON1, EEPGD

;

point de memoria de programa Flash

BCF

BSF

BCF

EECON1,

CFGS

EECON1,

WREN

INTCON, GIE

;

;

;

access memoria de programa

FLASH permitir escribir en

la memoria deshabilitar las

interrupciones Necesario

MOVLW

MOVWF 55h

EECON2

; escriturae 55h

Secuencia MOVLW

MOVWF AAh

EECON2

; escriturae AAh

BSF

BSF

DECFSZ

BRA

BCF

EECON1, WR

INTCON, GIE

COUNTER_HI

PROGRAM_LOOP

EECON1, WREN

;

;

;

;

estrellat programa (puesto CPU)

re-ENABLe interrumpe

bucle hasta que esté

hecho

DISABLe escribir en la memoria

5.5.2 WRITE VERIFY

Dependiendo de la aplicación, buena práctica de

programación pueden determinar que el valor escrito

en la me-moria debe ser verificada con el valor

original. Esto se debe utilizar en aplicaciones en las

que se puede destacar excesiva escribe los bits cerca

del límite de especificación.

5.5.3 INESPERADO DE TERMINACIÓN

operación de escritura

Yofa escritura es terminada por un acontecimiento

imprevisto, como la pérdida de poder o de una

REINICIAR inesperado, la ubicación de la memoria

acaba de programar debe ser verificada y

reproducción programada, si needed.The poco

WRERR se establece cuando una operación de

escritura se interrumpe por un restablecimiento

MCLR, o un WDT Time-out reset durante el

funcionamiento normal. En estas situa-ciones, los

usuarios pueden comprobar el bit WRERR y volver a

escribir la ubicación.

5.5.4 PROTECCIÓN CONTRA EL ESPURIO

ESCRIBE

To proteger contra espurio escribe en la memoria

FLASH del programa, la escritura iniciar la secuencia

también debe ser seguido. Consulte "Funciones

especiales de la CPU" (Sección 19.0) para obtener

más detalles.

5.6 FLASH Operación del Programa Durante

BacalaoProtección e

Consulte "Funciones especiales de la CPU" (Sección

19.0) para obtener detalles sobre el código de

protección de la memoria de programa FLASH.

TABLE 5-2: REGISTROS asociada con la memoria de programa Flash

Address

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en:

POR, BOR

Value en

todas las

restaura

ciones

Otros FF8h TBLPTRU - - bIT21 Memoria de programa Tabla Pointer superior Byte

(TBLPTR <20:16>) - 00 0000 - 00 0000

FF7h TBPLTRH Memoria de programa Tabla Byte Pointer High (TBLPTR <15:08>) 0000 0000 0000 0000 FF6h TBLPTRL Memoria de programa Tabla Byte Pointer High (TBLPTR <07:00>) 0000 0000 0000 0000 FF5h TABLAT Memoria de programa Tabla Latch 0000 0000 0000 0000 FF2h INTCON GIE/

GIEH PEIE

/

GIEL

TMR0IE INTE RBIE TMR0IF INTF RBIF 0000 000X 0000 000U

FA7h EECON2 EEPROM Control Registro2 (no es un registro físico) - - FA6h EECON1 EEPGD CFGS - FREE WRERR WREN WR RD xx-0 x000 uu-0 U000 FA2h YoPR2 - - - EEIP BCLIP LVDIP TMR3IP CCP2IP ---1 1111 ---1 1111

FA1h PIR2 - - - EEIF BCLIF LVDIF TMR3IF CCP2IF ---0 0000 ---0 0000 FA0h PIE2 - - - EEIE BCLIE LVDIE TMR3IE CCP2IE ---0 0000 ---0 0000 Leyenda:x = Desconocido, u = Sin cambios, r = reservado, - = Sin aplicarse leído como '0 '.

Sombrad células no se utilizan durante FLASH / EEPROM de acceso.

Page 79: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 75

PIC18FXX2

NOTAS:

Page 80: 39564c.en.es

DS39564C-page76 2006 Microchip Technology Inc.

PIC18FXX2

6.0 DATOS DE LA MEMORIA EEPROM

The Datos del EEPROM de lectura y escritura durante

el funcionamiento normal en el rango VDD entero. La

memoria de datos no está mapeada en el espacio de

archivos de registro. En su lugar, se abordan

indirectamente a través de los registros de funciones

especiales (SFR).

There son cuatro SFRs utilizan para leer y escribir el

programa y memoria de datos EEPROM. Estos

registros son:

• EECON1

• EECON2

• EEDATA

• EEADR

La memoria EEPROM byte de datos permite leer y

escribir. Cuando se interconecta el bloque de

memoria de datos, EEDATA contiene los datos de 8-

bits de lectura / escritura y EEADR contiene la

dirección de la ubicación EEPROM que se accede.

Estos dispositivos tienen 256 bytes de datos

EEPROM con un rango de direcciones de 0h a FFh.

La memoria EEPROM tiene datos para borrar alta /

ciclos de escritura. Un byte escribir automáticamente

borra la ubica-ción y escribe los datos nuevos

(borrado antes-escritura). El tiempo de escritura está

controlada por un temporizador en el chip. El tiempo

de escritura variará con el voltaje y la temperatura, así

como de chip a chip. Por favor, consulte el parámetro

D122 (Características eléctricas, Sección 22,0) para

los límites exactos.

6.1 EEADR

Thregistro e dirección puede direccionar hasta un máximo de

256 bytes de datos EEPROM.

6.2 EECON1 y EECON2 Registros

EECON1 es el registro de control de accesos a la

memoria EEPROM.

EECON2 no es un registro físico. Lectura EECON2

leerá todo '0 's. El registro EECON2 se utiliza

exclusivamente en la secuencia de escritura

EEPROM.

Control de bits de RD y WR iniciar leer y escribir

operaciones, respectivamente. Estos bits no se

pueden eliminar, sólo se establece, en el software.

Ellos se borran en hardware en la terminación de la

operación de lectura o escritura. La incapacidad para

borrar el bit WR en software evita la terminación

accidental o prematura de una operación de escritura.

The bit WREN, cuando se establece, permitirá una

operación de escritura. En el encendido, el bit WREN

es clara. El bit WRERR se establece cuando una

operación de escritura se interrumpe por un

restablecimiento MCLR o un Reset WDT tiempo de

espera durante el funcionamiento normal. En estas

situaciones, el usuario puede comprobar el bit

WRERR y volver a escribir la ubicación. Es necesario

volver a cargar los datos y los registros de direcciones

(EEDATA y EEADR), debido a la condición de RESET

forzar los contenidos de los registros a cero.

Nota: Bit de bandera de interrupción, EEIF en el

registro PIR2, se establece cuando

escritura se ha completado. Se debe ser

despejado en software.

Page 81: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 77

PIC18FXX2

REGISTRO 6-1: EECON1 REGISTER (FA6h ADDRESS)

R / Wx R / Wx U-0 R/W-0 R / Wx R/W-0 R/S-0 R/S-0

EEPGD CFGS - GRATIS WRERR WREN WR RD

bit 7 bit 0

bit 7 EEPGD: FLASH de programa o memoria de datos EEPROM Bit de selección de

1= Acceso FLASH La memoria de programa

0= Acceso a datos de memoria EEPROM

bit 6 CFGS: FLASH Program / Datos EE o Configuración Seleccione bit

1= Acceso para configuración y calibración con registros

0= Acceso FLASH de programa o datos de memoria EEPROM

bit 5 No implementado: Leer como '0 '

bit 4 GRATIS: Erase FLASH Row Bit de habilitación

1= Borrar la fila de la memoria del programa dirigido por TBLPTR en el siguiente comando WR

(Cleared por terminación de la operación de borrado)

0= Realizar sólo escritura

bit 3 WRERR: FLASH de programa / datos Error EE Flag bit

1= Una operación de escritura se termina prematuramente

(Ay MCLR o cualquier WDT reset durante el auto-medido el tiempo de programación en operación normal)

0= La operación se ha completado escritura

Nota: Cuando se produce un WRERR, los bits EEPGD o FREE no se borran. Esto permite

el seguimiento de la condición de error.

bit 2 WREN: FLASH Program / Datos EE permitir la escritura poco

1= Permite ciclos de escritura

0Inhibe = escribir en la EEPROM

bit 1 WR: Writo Bit de control

1= Inicia un borrado de datos EEPROM / escritura de ciclo o los ciclos de borrado de la

memoria del programa o ciclo de escritura. (La operación es auto-cronometrado y el bit

se restablece una vez por hardware de escritura. El bit WR sólo se pueden establecer (no

borrada) en software.)

0= Escribir ciclo en la EEPROM es poco

completo 0 RD: Leer Bit de control

1= Inicia una lectura EEPROM

(Lee tiene un ciclo. RD se borra en hardware. El bit RD sólo se puede configurar (no se borra)

en software. Bit RD no se puede ajustar cuando EEPGD = 1.)

0= No inicia una lectura EEPROM

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 82: 39564c.en.es

DS39564C-page78 2006 Microchip Technology Inc.

PIC18FXX2

6.3 Lectura de la memoria de datos EEPROM

To leer una posición de memoria de datos, el usuario

debe escribir la dirección en el registro EEADR,

desactive la EEPGD control bit (EECON1 <7>),

desactive el bit de control CFGS

(CEEON1 <6>), ya continuación, establezca el bit de

control RD (EECON1 <0>). Los datos están

disponibles para el ciclo siguiente instrucción, por lo

tanto, el registro EEDATA puede ser leído por la

siguiente instrucción. EEDATA mantendrá este valor

hasta que otra operación de lectura, o hasta que se

escribe por el usuario (durante una operación de

escritura).

EXAMPLIO 6-1: DATOS EEPROM LEER

MOVLW DATA_EE_ADDR ; MOVWF EEADR ; Datos de direcciones de memoria para leer BCF EECON1, EEPGD ; Punto a la memoria de datos BCF EECON1, CFGS ; Acceso programa FLASH o la memoria de datos EEPROM BSF EECON1, RD ; EEPROM Lee MOVF EEDATA, W , W = EEDATA

6.4 Escritura a la memoria de datos EEPROM

To escribir una ubicación EEPROM de datos, la

primera dirección debe ser escrito en el registro y los

datos EEADR escriben en el registro EEDATA. A

continuación, la secuencia en el Ejemplo 6-2 se deben

seguir para iniciar el ciclo de escritura.

ThEscribir un correo no se iniciará si la secuencia

anterior no es precisamente seguir (escribir 55h a

EECON2, escribir AAh a EECON2, a continuación,

establezca el bit WR) para cada byte. Se recomienda

encarecidamente que las interrupciones se

desactivará durante este segmento de código.

Además, el bit WREN en EECON1 debe ajustarse

para permitir escribe. Este mecanismo evita que

accidentalmente escribe en la EEPROM de datos

debido al código inesperado exe-

cución (es decir, los programas fuera de control). El

bit WREN deberían mantenerse limpias en todo

momento, excepto cuando se actualiza la EEPROM.

El bit WREN no se borra por hardware.

Aftera secuencia de escritura se ha iniciado,

EECON1, EEADR Edata y no puede ser modificado.

El bit WR se inhibirá de estar ajustado a menos que el

bit WREN se establece. El bit WREN se debe

establecer en una anterior instrucción. Tanto WR y

WREN no se puede establecer con la misma

instrucción.

Lat la terminación del ciclo de escritura, el bit WR se

borra en hardware y la escritura de EEPROM

completa bit indicador de interrupción (EEIF) se

establece. El usuario puede activar esta interrupción,

o consultar este bit. EEIF debe ser limpiado por

software.

EXAMPLIO 6-2: DATOS EEPROM WRITE

MOVLW DATA_EE_ADDR;

MOVWF EEADR; Dirección Memoria de datos para leer

MOVLW DATA_EE_DATA;

MOVWF EEDATA; Valor Memoria de datos para escribir

BCF EECON1, EEPGD; punto a la memoria de datos

BCF EECON1, CFGS, Acceso programa FLASH o en la memoria de datos EEPROM

BSF EECON1, WREN; Enable escribe

BCF INTCON, GIE ; DISABLe interrumpe Necesario MOVLW 55h ; Secuencia MOVWF EECON2 ; Escriturae 55h

MOVLW AAh ; MOVWF EECON2 ; Escriturae AAh BSF EECON1, WR ; Set WR poco para empezar a escribir BSF INTCON, GIE ; Act vace interrumpe

. ; utilizarr la ejecución de código . . BCF EECON1, WREN ; DISABLe escribe en escribir completo (set

EEIF)

Page 83: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 79

PIC18FXX2

6.5 Write Verify

Dependiendo de la aplicación, buena práctica de

programación pueden determinar que el valor escrito

en la me-moria debe ser verificada con el valor

original. Esto se debe utilizar en aplicaciones en las

que se puede destacar excesiva escribe los bits cerca

del límite de especificación.

6.6 Protección contra escritura espurias

There son las condiciones cuando el dispositivo no

puede escribir datos en la memoria EEPROM. Para

protegerse contra el espurio EEPROM escribe,

diversos mecanismos se han incorporado. En el

arranque, el bit WREN se borra. Asimismo, el

temporizador de encendido (72 ms de duración)

impide escribir EEPROM.

Thescribir e iniciar la secuencia y el bit WREN juntos

ayudar a prevenir una escritura accidental durante el

apagón, fallo de alimentación o mal funcionamiento de

software.

6.7 Funcionamiento Durante Código de Protección

Memoria de datos EEPROM tiene su propio código de

proteger mecanismo. Operaciones exteriores de

lectura y escritura se desactivan si cualquiera de

estos mecanismos han sido habilitadas.

Thmicrocontrolador electrónico en sí puede leer y

escribir en la EEPROM interna de datos,

independientemente del estado de proteger el código

de bit de configuración. Consulte "Funciones

especiales de la CPU" (Sección 19.0) para obtener

información adicional.

6.8 Uso de la EEPROM de datos

La EEPROM de datos es una resistencia alta, byte de

direcciones capaz de matriz que se ha optimizado

para el almacenamiento de información que cambia

frecuentemente (por ejemplo, los programas variables

u otros datos que se actualizan a menudo). Valores

que cambian con frecuencia por lo general se

actualizarán con más frecuencia que las

especificaciones D124. Si este no es el caso, una

actualización de matriz debe ser realizada. Por esta

razón, las variables que cambian con poca frecuencia

(por ejemplo, constantes, identificadores, calibración,

etc) deben ser almacenados en la memoria de

programa FLASH.

Una simple rutina de actualización de datos EEPROM se muestra en la

Ejemplo 6-3.

Nota: Si los datos de EEPROM sólo se utiliza

para almacenar con-stants y / o datos que

cambian rara vez, una matriz de

actualización no es probable que sea

necesaria. Ver especificación D124.

EXAMPLIO 6-3: DATOS EEPROM REFRESCO DE RUTINA

Bucle

clrf

bcf

BCF

BCF

BSF

bsf

movlw

movwf

movlw

movwf

bsf

btfsc

sujeta

dor

sujeta

dor

INCFSZ

EEADR

EECON1,

EECON1 CFGS,

EEPGD

INTCON, GIE

EECON1, WREN

EECON1, RD

55h

EECON2

AAh

EECON2

EECON1,

WR

EECON1,

WR

$ -2

EEADR,

F Loop

;

;

;

;

;

;

;

;

;

;

;

;

;

;

;

Estrellat en la dirección 0

Set para la memoria

Set para datos

EEPROM Activar

Desactivar las

interrupciones

escribe

Lavabop para actualizar array

Readirección actual d

Escriturae 55h

Escriturae AAh

Set WR poco para empezar a escribir

Wait para escribir para completar

Incrementaldirección t

Not cero, lo volvería a hacer

bcf

bsf

EECON1,

WREN

INTCON, GIE

;

;

DISABLescribe e

Act vace interrumpe

Page 84: 39564c.en.es

DS39564C-page80 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 6-1: registros asociados a DATA MEMORY EEPROM

Address

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en:

POR, BOR

Value en

todas las

restaura

ciones

Otros FF2h INTCON GIE /

GIEH PEIE

/

GIEL

T0IE INTE RBIE T0IF INTF RBIF 0000 000X 0000 000U

FA9h EEADR EEPROM Dirección de Registro 0000 0000 0000 0000 FA8h EEDATA EEPROM de datos Registrarse 0000 0000 0000 0000 FA7h EECON2 EEPROM Control Registro2 (no es un registro físico) - - FA6H EECON1 EEPGD CFGS - GRATI

S WRERR WREN WR RD xx-0 x000 uu-0 U000

FA2h Derechos de propiedad intelectual2

- - - EEIP BCLIP LVDIP TMR3IP CCP2IP ---1 1111 ---1 1111 FA1h PIR2 - - - EFEI BCLIF LVDIF TMR3IF CCP2IF ---0 0000 ---0 0000 FA0h PIE2 - - - EEIE BCLIE LVDIE TMR3IE CCP2IE ---0 0000 ---0 0000 Leyenda:x = Desconocido, u = Sin cambios, r = reservado, - = Sin aplicarse, leído como '0 '.

Sombrad células no se utilizan durante FLASH / EEPROM de acceso.

Page 85: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 81

PIC18FXX2

NOTAS:

Page 86: 39564c.en.es

DS39564C-page82 2006 Microchip Technology Inc.

PIC18FXX2

7,0 8 X 8 HARDWARE MULTIPLIER

7.1 Introducción

Lan 8 x 8 multiplicador de hardware se incluye en la

ALU de los PIC18FXX2 dispositivos. Al hacer la

multiplicación una operación de hardware, que se

completa en un ciclo de instrucción individual. Este es

un multiplican sin signo que da un resultado de 16-bit.

El resultado se almacena en el 16-bit producto regis-

tro par (PRODH: Prödl). El multiplicador no afecta a

los indicadores en el registro ALUSTA.

Making del 8 x 8 multiplicador ejecutar en un solo ciclo

da las siguientes ventajas:

• Mayor rendimiento computacional

• Reduce los requisitos del código de tamaño

para los algoritmos se multiplican

The incremento de rendimiento permite al dispositivo

ser utilizado en aplicaciones previamente reservados

para los procesadores de señal digital.

Table 7-1 muestra una comparación de rendimiento

entre dispositivos mejorados utilizando el hardware

único ciclo mul-tiply, y realizar la misma función sin la

multiplican hardware.

TABLE 7-1: COMPARACIÓN DE RENDIMIENTO

Rutina

MMétodo ultiply

Memoria

de

program

a

(palabra

s)

Ciclos

(Max)

Time

@ 40 MHz

@ 10 MHz

@ 4 MHz

8 x 8 sin signo Wisn hardware multiplicar 13 69 60.9 μ s 270.6 μ s 69μ s

Hardware multiplican 1 1 100 ns 400 ns 1μ s

8 x 8 firmado Wisn hardware multiplicar 33 91 90.1 μ s 360.4 μ s 91μ s

Hardware multiplican 6 6 600 ns 2.4μ s 6μ s

16 x 16 sin signo Without multiplican hardware

21 242 24.2μ s 960.8 μ s 242μ s

Hardware multiplican 24 24 20.4 μ s 9.6μ s 24μ s

16 x 16 firmado Without multiplican hardware

52 254 25.4μ s 102.6μ s 254μ s

Hardware multiplican 36 36 30.6 μ s 140.4 μ s 36μ s

7.2 Funcionamiento

EJEMPLOSe 7-1 muestra la secuencia para hacer un

8 x 8 multiplican sin firmar. Sólo una instrucción es

necesaria cuando un argumento de la multiplicación

ya está cargado en el registro WREG.

EJEMPLOSe 7-2 muestra la secuencia para hacer

una x 8 8 firmado multiplican. Para tener en cuenta

los bits de signo de los argumentos, cada bit más

significativo del argumento (MSB) se prueba y las

restas correspondientes ya está.

EXAMPLIO 7-1: 8 x 8 RUTINA

MULTIPLY

UNSIGNED

MOVF ARG1, W ; MULWF ARG2 ; ARG1 * arg2 ->

; PRODH: Prödl

7.2 Ejemplo: 8 x 8 FIRMADO MULTIPLY

RUTINA MOVARG1 F, G

MULWF ARG2; ARG1 * ARG2 ->

; PRODH: Prödl

BTFSC ARG2, SB, prueba de bit de

signo SUBWF PRODH, F; PRODH = PRODH

; - ARG1

MOVARG2 F, W

BTFARG1 C, SB, prueba de bit de signo

SUBWPRODH F, F; PRODH = PRODH

; - ARG2

EJEMPLOSe 7-3 muestra la secuencia para hacer

una de 16 x 16 se multiplican sin firmar. Ecuación 7-1

se muestra el algoritmo que se utiliza. El resultado de

32-bit se almacena en cuatro registros, res3: RES0.

ECUACIÓN 7-1: 16 x 16 algoritmo de

multiplicación

UNSIGNED

Res3: RES0 = ARG1H: ARG1L • ARG2H: ARG2L

= (ARG1H• ARG2H • 216)

+ (ARG1H • ARG2L •

28) + (ARG1L • ARG2H

• 28) + (ARG1L • ARG2L)

Page 87: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 83

PIC18FXX2

Ejemplo 7-3: 16 x 16 RUTINA MULTIPLY

UNSIGNED

Ejemplo 7-4: 16 x 16 FIRMADO

MULTIPLY RUTINA

MOVARG1L F, W

MULWF ARG2L; ARG1L * ARG2L ->

; PRODH:

Prödl MOVFF PRODH, RES1;

MOVFF Prödl, RES0;

;

MOVARG1H F, W

MULWF ARG2H; ARG1H * ARG2H ->

; PRODH:

Prödl MOVFF PRODH, res3;

MOVFF Prödl, RES2;

;

MOVARG1L F, W

MULWF ARG2H; ARG1L * ARG2H ->

; PRODH:

Prödl MOVF Prödl, W;

ADDWRES1 F, F; Añadir cruz MOVF

PRODH, W; productos ADDWFC RES2,

F;

CLRF WREG;

ADDWFRes3 C, F;

;

MOVARG1H F, W;

MULWF ARG2L; ARG1H * ARG2L ->

; PRODH:

Prödl MOVF Prödl, W;

ADDWRES1 F, F; Añadir cruz MOVF

PRODH, W; productos ADDWFC RES2,

F;

CLRF WREG; ADDWFC

res3, F;

EJEMPLOSe 7-4 muestra la secuencia para hacer un

x 16 16 firmado multiplican. Ecuación 7-2 muestra el

algoritmo utilizado. El resultado de 32-bit se almacena

en cuatro registros, res3: RES0. Para tener en cuenta

los bits de signo de la argu-mentos, cada par de

argumentos bit más significativo (MSB) se prueba y

las restas correspondientes ya está.

ECUACIÓN 7.2: 16 x 16 ALGORITMO

FIRMADO

MULTIPLICACIÓN

Res3: RES0

= ARG1H: ARG1L • ARG2H: ARG2L

= (ARG1H• ARG2H• 216)

+ (ARG1H • ARG2L•

28) + (ARG1L • ARG2H

• 28) + (ARG1L • ARG2L) +

(-1 • ARG2H <7> • ARG1H: ARG1L • 216) + (-1 • ARG1H <7> • ARG2H:

ARG2L • 216)

MOVARG1L F, W

MULWF ARG2L; ARG1L * ARG2L ->

; PRODH:

Prödl MOVFF PRODH, RES1;

MOVFF Prödl, RES0;

;

MOVARG1H F, W

MULWF ARG2H; ARG1H * ARG2H ->

; PRODH:

Prödl MOVFF PRODH, res3;

MOVFF Prödl, RES2;

;

MOVARG1L F, W

MULWF ARG2H; ARG1L * ARG2H ->

; PRODH:

Prödl MOVF Prödl, W;

ADDWRES1 F, F; Añadir cruz MOVF

PRODH, W; productos ADDWFC

RES2, F;

CLRF WREG;

ADDWFRes3 C, F;

;

MOVARG1H F, W;

MULWF ARG2L; ARG1H * ARG2L ->

; PRODH:

Prödl MOVF Prödl, W;

ADDWRES1 F, F; Añadir cruz MOVF

PRODH, W; productos ADDWFC

RES2, F;

CLRF WREG; ADDWFC

res3, F;

;

BTFS ARG2H, 7; ARG2H: ARG2L neg?

SIGN_ARG1 BRA, no, comprobar ARG1

MOVARG1L F, W; SUBWF

RES2; MOVF ARG1H, W;

SUBWFB res3

;

SIGN_ARG1

BTFS ARG1H, 7; ARG1H: ARG1L neg? BRA

CONT_CODE, no, hace

MOVARG2L F, W;

SUBWF RES2; MOVF

ARG2H, W; SUBWFB res3

;

CONT_CODE

:

Page 88: 39564c.en.es

DS39564C-page84 2006 Microchip Technology Inc.

PIC18FXX2

8.0 INTERRUPTS

Thdispositivos electrónicos PIC18FXX2 tener

múltiples fuentes de interrupción y una función de

prioridad de interrupción que permite que cada fuente

de interrupción que se le asigna un nivel de prioridad

alta o un nivel de prioridad baja. El vector de

interrupción de alta prioridad está en 000008h y el

vector de prioridad de interrupción bajo está en

000018h. Altas eventos de interrupción de prioridad

será pasar por encima de las interrupciones de baja

prioridad que puedan estar en curso.

There son diez registros que se usan para controlar la

operación de interrupción. Estos registros son:

• RCON

• INTCON

• INTCON2

• INTCON3

• PIR1, PIR2

• PIE1, PIE2

• IPR1, IPR2

Yot Se recomienda que los archivos de cabecera

Microchip suministra con MPLAB ® IDE se utiliza para

los nombres simbólicos de bits en estos registros.

Esto permite que el ensamblador / compilador para

tomar automáticamente la atención de la colocación

de estos bits dentro del registro especificado.

Each fuente de interrupción, excepto INT0, tiene tres

bits para controlar su funcionamiento. Las funciones

de estos bits son:

• Flag bit para indicar que ocurrió un

evento de interrupción

• Bit de habilitación que permite la ejecución del

programa salte a la dirección del vector de

interrupción cuando el bit indicador se

establece

• Prioridad bit para seleccionar prioridad alta o baja prioridad

The interrupción función de prioridad se habilita

estableciendo el bit IPEN (RCON <7>). Cuando la

prioridad de interrupción está activada, hay dos bits

que permiten las interrupciones glo-balmente. Ajuste

del bit GIEH (INTCON <7>) permite a todas las

interrupciones que tienen el bit de prioridad. Ajuste del

bit GIEL (INTCON <6>) permite a todas las

interrupciones que tienen el bit de prioridad

despejado. Cuando el indicador de interrupción,

habilitar interrupciones globales y poco apropiado bit

de habilitación se establece, el vector de interrupción

inmediata para hacer frente a 000008h o

000018h, En función del nivel de prioridad. Individual

entre otrasRupts se puede desactivar a través de sus

bits de habilitación correspondientes.

When el bit IPEN está desactivada (estado por

defecto), la función de prioridad interrumpen está

desactivado y las interrupciones son compatibles con

PICmicro ® de gama media dispositivos. En el modo

de compatibilidad, los bits de prioridad de interrupción

para cada fuente tendrá ningún efecto. INTCON <6>

es el bit PEIE, que activa / desactiva todas las fuentes

de interrupción periféricos. INTCON <7> es el bit GIE,

que activa / desactiva todas las fuentes de

interrupción. Todos rama interrumpe para abordar

000008h en modo de compatibilidad.

When una interrupción se responde, el bit de

habilitación de interrupción global se borra para

inhabilitar las interrupciones adicionales. Si el bit IPEN

está desactivada, este es el bit GIE. Si los niveles de

prioridad de interrupción se utilizan, este será o bien

el GIEH o poco GIEL. Altas fuentes de interrupción de

prioridad puede interrumpir una alarma de prioridad

baja.

Thdirección electrónica de retorno se inserta en la pila

y el PC se carga con la dirección del vector de

interrupción (000008h o 000018h). Una vez en la

rutina de servicio de interrupción, la fuente (s) de la

interrupción puede ser determinado por el sondeo de

los bits de la bandera de interrupción. Los bits de la

bandera de interrupción debe borrarse en el software

antes de volver a habilitar las interrupciones para

evitar interrupciones recursivas.

El "retorno de interrupción" instrucción, Retfie, Sale

de la rutina de interrupción y establece el bit GIE

(GIEH GIEL o si los niveles de prioridad se utiliza),

que vuelve a habilitar las interrupciones.

For eventos de alarma externos, como los pines int o

la interrupción de entrada PORTB cambio, la latencia

de interrupción será de tres a cuatro ciclos de

instrucción. La latencia exacta es la misma para uno o

dos ciclo-instrucciones. Individuales de bits de la

bandera de interrupción se establecen, sin importar el

estado de su correspondiente bit de habilitación o el

bit GIE.

Nota: No utilice el MOVFF instrucción de

modificar cualquiera de los registros de

control de interrupción mientras unyinterrupciónt está habilitado. Si lo hace

puede provocar un comportamiento

errático microcontrolador.

Page 89: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 85

PIC18FXX2

FIGURA 8-1: LÓGICA DE INTERRUPCIÓN

Peripheral Interrupt Interrupt Flag bit Bit de habilitación de interrupción periférica Prioridad poco Periférico

TMR1IF TMR1IE TMR1IP

IPE

TMR0IF TMR0IE TMR0IP

RBIF RBIE RBIP

INT0IF INT0IE

INT1IF INT1IE INT1IP INT2IF INT2IE INT2IP

Wake-up si está en modo SLEEP

Vector

interrumpir a la

CPU a la

ubicación

0008h

GIEH / GIE

XXXXSI XXXXIE XXXXIP

Prioridad alta generación de interrupciones

Prioridad baja generación de interrupciones

LaADICIONALES interrupciones periféricas

IPEN GIEL

/ PEIE

IPEN

Peripheral Interrupt

Interrupt Flag bit Bit de habilitación de interrupción periférica Prioridad poco Periférico

TMR1IF TMR1IE TMR1IP

XXXXSI XXXXIE XXXXIP

LaADICIONALES interrupciones periféricas

TMR0IF TMR0IE TMR0IP

RBIF RBIE

RBIP

INT1IF INT1IE

INT1IP

INT2IF INT2IE INT2IP

Interrumpir Vector CPU a la ubicación 0018h

GIEL /

PEIE GIE

/ GIEH

Page 90: 39564c.en.es

DS39564C-page86 2006 Microchip Technology Inc.

PIC18FXX2

8.1 INTCON Registros

ThRegistros e INTCON son legibles y escribibles reg-

tros, que contienen varios bits de habilitación,

prioridad y bandera.

REGISTRO 8-1: INTCON REGISTRO

Nota: Interrupciónt bits bandera se establece

cuando se produce una condición de

interrupción, independientemente del

estado de su correspondiente bit de

habilitación o el bit global active. El

usuario debe asegurarse de software los

bits de interrupción adecuadas bandera

son claros antes de activar una alarma.

Esta característica permite la votación

software.

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R / Wx

GIE / GIEH PEIE / GIEL TMR0IE YoNT0IE RBIE TMR0IF YoNT0IF

RBIF

bit 7 bit 0

bit 7 GIE / GIEH: Global Bit de habilitación de interrupción

Cuando IPEN = 0:

1= Habilita todas las interrupciones no enmascaradas

0= Desactiva todas las interrupciones

Cuando IPEN = 1:

1= Habilita todas las interrupciones de alta prioridad

0= Desactiva todas las interrupciones

bit 6 PEIE / GIEL: Interrupt Enable bit Periférico

Cuando IPEN = 0:

1= Habilita todas las interrupciones periféricas no enmascaradas

0= Desactiva todas las interrupciones periféricas

Cuando IPEN = 1:

1= Habilita todas las interrupciones periféricas de baja prioridad

0= Desactiva todas las interrupciones de prioridad baja periféricos

bit 5 TMR0IE: TMInterrupt Enable bit de desbordamiento R0

1= Habilita la interrupción de desbordamiento TMR0

0= Deshabilita la interrupción de desbordamiento TMR0

bit 4 INT0IE: INT0 interrupción externa Activar bit

1= Habilita la interrupción externa INT0

0= Deshabilita la interrupción externa INT0

bit 3 RBIE: RB cambiar el puerto de habilitación de interrupción bit

1= Activa el cambio de puerto RB interrumpir

0= Desactiva el puerto RB interrupción de cambio

bit 2 TMR0IF: TMR0 Overflow Interrupt Flag bit

1TMR0 = registro se ha desbordado (debe ser limpiado por software)

0TMR0 = registro no desborde

bit 1 INT0IF: INT0 bit External Interrupt Flag

1= La interrupción externa se produjo INT0 (debe ser limpiado por software)

0= La interrupción INT0 externa no se produjo

bit 0 RBIF: RB Change Interrupt Flag bit Puerto

1= Por lo menos uno de los RB7: RB4 pins cambiado de estado (debe ser limpiado por

software) 0= Ninguno de los RB7: RB4 pines han cambiado de estado

Nota: A condición de conflicto continuará estableciendo este bit. La lectura PORTB

pondrá fin a la condición de conflicto y permitir que el granito de arena para

que se solucione.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 91: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 87

PIC18FXX2

REGISTRO 8-2: INTCON2 REGISTRO

R/W-1 R/W-1 R/W-1 R/W-1 U-0-0 R/W-1 U R/W-1

RBPU INTEDG0 INTEDG1 INTEDG2 - TMR0IP - RBIP

bit 7 bit 0

bit 7 RBPU: PORTB Pull-up Enable bit

1= Todos PORTB pull-ups están desactivadas

0= PORTB pull-ups están habilitados por los distintos valores de puerto de enganche

bit 6 INTEDG0: Exbit externo Edge Select Interrupt0

1= Interrupción en el flanco ascendente

0= Interrupción en el flanco descendente

bit 5 INTEDG1: Borde Exterior proceso1 Select bit

1= Interrupción en el flanco ascendente

0= Interrupción en el flanco descendente

bit 4 INTEDG2: Borde Exterior Interrupt2 Select bit

1= Interrupción en el flanco ascendente

0= Interrupción en el flanco descendente

bit 3 No implementado: Leer como '0 '

bit 2 TMR0IP: TMR0 Overflow Interrupt Priority bit

1= Prioridad alta

0= Baja prioridad

bit 1 No implementado: Leer como '0 '

bit 0 RBIP: RB puerto poco cambio de prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Nota: Interrupciónt bits bandera se establece cuando se produce una condición de

interrupción, independientemente del estado de su correspondiente bit de

habilitación o el bit global active. El usuario debe asegurarse de software los bits

de interrupción adecuadas bandera son claros antes de activar una alarma. Esta

característica permite la votación software.

Page 92: 39564c.en.es

DS39564C-page88 2006 Microchip Technology Inc.

PIC18FXX2

REGISTRO 8-3: INTCON3 REGISTRO

R/W-1 R/W-1 U-0 R/W-0 R/W-0 U-0 R/W-0 R/W-0

INT2IP INT1IP - INT2IE INT1IE - INT2IF INT1IF

bit 7 bit 0

bit 7 INT2IP: INT2 bit External prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

bit 6 INT1IP: INT1 bit External prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

bit 5 No implementado: Leer como '0 '

bit 4 INT2IE: INT2 interrupción externa Activar bit

1= Habilita la interrupción externa INT2

0= Deshabilita la interrupción externa INT2

bit 3 INT1IE: INT1 interrupción externa Activar bit

1= Habilita la interrupción externa INT1

0= Deshabilita la interrupción externa INT1

bit 2 No implementado: Leer como '0 '

bit 1 INT2IF: INT2 bit External Interrupt Flag

1= La interrupción externa se produjo INT2 (debe ser limpiado por software)

0= La interrupción externa INT2 no ocurrió

bit 0 INT1IF: INT1 bit External Interrupt Flag

1= La interrupción INT1 externo ocurrió (debe ser limpiado por software)

0= La interrupción INT1 externo no se produjo

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Nota: Interrupciónt bits bandera se establece cuando se produce una condición de

interrupción, independientemente del estado de su correspondiente bit de

habilitación o el bit global active. El usuario debe asegurarse de software los bits

de interrupción adecuadas bandera son claros antes de activar una alarma. Esta

característica permite la votación software.

Page 93: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 89

PIC18FXX2

8.2 PIR Registros

The PIR registros contienen los bits indicadores

individuales para las interrupciones de periféricos.

Debido al número de periféricos fuentes de

interrupción, hay dos registros periféricos indicador de

interrupción (PIR1, PIR2).

Nota 1: Bits de bandera de interrupción se

establece cuando se produce una

condición de interrupción,

independientemente del estado de su

correspondiente bit de permitir o habilitar

el bit global, GIE (INTCON <7>).

2:Utilizarr software deben garantizar los bits

apropiados de interrupción del pabellón

se borran antes de activar una alarma, y

después de servicio de esa interrupción.

REGISTRO 8-4: PIR1: petición de interrupción periférica (FLAG) REGISTRO 1

R/W-0 R/W-0 R-0-0 R R/W-0 R/W-0 R/W-0 R/W-0

PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF

bit 7 bit 0

bit 7 PSPIF (1): PapáPuerto ralelo esclavo de lectura / escritura bit indicador de interrupción

1= Una lectura o una operación de escritura se ha realizado (debe ser limpiado por software)

0= No leer ni escribir se ha producido

bit 6 ADIF: A / D bit Convertidor de bandera de interrupción

1= Una conversión A / D completa (debe ser limpiado por software)

0= La conversión A / D no es completa

bit 5 RCIF: USART Recibe poco Flag de interrupción

1= El USART búfer de recepción, RCREG, está llena (se borra cuando RCREG se lee)

0= El buffer de recepción USART está vacío

bit 4 TXIF: USART Transmit Interrupt Flag bit (véase la Sección 16.0 para más detalles sobre la

funcionalidad TXIF)

1= El buffer de transmisión USART, TXREG, está vacía (se borra cuando TXREG se escribe)

0= El buffer de transmisión USART está lleno

bit 3 SSPIF: Master Synchronous Serial Port Interrupt Flag bit

1= La transmisión / recepción está completo (debe ser despejado en software)

0= Esperando para transmitir / recibir

bit 2 CCP1IF: CCP1 bit indicador de interrupción

Modo de captura:

1= A TMR1 registro se produjo la captura (debe ser limpiado por software)

0= No se produjo la captura de TMR1 registro

Modo de comparación:

1= Un registro TMR1 comparar coincidir ocurrido (debe ser limpiado por software)

0= Sin registro TMR1 comparar partido se produjo

PWM modo:

Unused en este modo

bit 1 TMR2IF: TMR2 a PR2 Interrupt Flag bit Partido

1= TMR2 a PR2 partido ocurrió (debe ser limpiado por software)

0= No hay resultados para TMR2 PR2 ocurrió

bit 0 TMR1IF: TMR1 Interrupt Flag bit de desbordamiento

1= TMR1 registro desbordado (debe ser limpiado por software)

0= MR1 registro no desborde

Nota 1: Thibit s se reserva el PIC18F2X2 dispositivos; siempre mantener esta poco clara.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 94: 39564c.en.es

DS39564C-page90 2006 Microchip Technology Inc.

PIC18FXX2

- - - EEIF BCLIF LVDIF TMR3IF CCP2IF

R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= se borra x Bit = se desconoce

REGISTRO 8-5: PIR2: petición de interrupción periférica (FLAG) Registro 2

U-0 U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

bit 7-5

bit 7

No implementado: Leer como '0 '

bit 0

bit 4 EEIF: Datos de EEPROM / FLASH Escribir bit Operación Bandera de interrupción 1= La operación de escritura se ha completado (debe ser limpiado por software)

0= La operación de escritura no es completo, o no se ha iniciado

bit 3 BCLIF: Colisión de autobuses Interrupt Flag bit 1= Una colisión se produjo autobús (debe ser limpiado por software)

0= No se produjo la colisión de bus

bit 2 LVDIF: Baja Tensión Detectar bit indicador de interrupción 1= A condición de bajo voltaje producido (debe ser limpiado por software)

0= El dispositivo de tensión está por encima del punto de disparo de baja tensión

de detección

bit 1 TMR3IF: Overflow Interrupt Flag TMR3 poco 1= TMR3 registro desbordado (debe ser limpiado por software)

0= TMR3 registro no desborde

bit 0 CCP2IF: CCPx bit indicador de interrupción Modo de captura: 1= A TMR1 registro se produjo la captura (debe ser limpiado por software)

0= No se produjo la captura de TMR1 registro

Modo de comparación: 1= Un registro TMR1 comparar coincidir ocurrido (debe ser limpiado por

software)

0= Sin registro TMR1 comparar partido se produjo

PWM modo: No utilizada en este modo

Leyenda:

Page 95: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 91

PIC18FXX2

8.3 PIE Registros

Thregistros electrónicos PIE contener los distintos bits

de habilitación de las interrupciones periféricas.

Debido al gran número de periféricos fuentes de

interrupción, hay dos periféricos interrumpen registros

permiten (PIE1, PIE2). Cuando IPEN = 0, el bit PEIE

se debe establecer para que cualquiera de estas

interrupciones periféricas.

REGISTRO 8-6: PIE1: INTERRUPT PERIFÉRICO HABILITAR REGISTRO 1

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE

bit 7 bit 0

bit 7 PSPIE (1): Puerto Paralelo Esclavo de lectura / escritura bit de habilitación de interrupción

1= Habilita la PSP de lectura / escritura de interrupción

0= Desactiva la PSP de lectura / escritura de interrupción

bit 6 ADIE: Una interrupción de convertidor D / Activar bit

1= Activa el A / D de interrupción

0= Deshabilita el A / D de interrupción

bit 5 RCIE: USART interrupción de recepción Bit

de habilitación

1= Habilita la interrupción de recepción USART

0= Deshabilita la interrupción de recepción USART

bit 4 TXIE: USART Transmit Interrupt Enable bit

1= Habilita la interrupción de la transmisión USART

0= Deshabilita la interrupción de la transmisión USART

bit 3 SSPIE: Master Synchronous Serial Port Interrupt Enable bit

1= Habilita la interrupción del MSSP

0= Deshabilita la interrupción MSSP

bit 2 CCP1IE: Bit de habilitación de interrupción CCP1

1= Habilita la interrupción CCP1

0= Deshabilita la interrupción CCP1

bit 1 TMR2IE: TMR2 a PR2 Interrupt Enable bit Partido

1= Habilita la interrupción partido TMR2 a PR2

0= Deshabilita la interrupción partido TMR2 a PR2

bit 0 TMR1IE: TMR1 Interrupt Enable bit de desbordamiento

1= Habilita la interrupción de desbordamiento TMR1

0= Deshabilita la interrupción de desbordamiento TMR1

Nota 1: Thibit s se reserva el PIC18F2X2 dispositivos; siempre mantener esta poco clara.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 96: 39564c.en.es

DS39564C-page92 2006 Microchip Technology Inc.

PIC18FXX2

REGISTRO 8-7: PIE2: INTERRUPT PERIFÉRICO HABILITAR Registro 2

U-0 U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

- - - EEIE BCLIE LVDIE TMR3IE CCP2IE

bit 7 bit 0

bit 7-5 No implementado: Leer como '0 '

bit 4 EEIE: Datos de EEPROM / FLASH interrumpir la operación Write Enable bit

1= Activado

0= Desactivado

bit 3 BCLIE: Interrupt Enable bit Bus Collision

1= Activado

0= Desactivado

bit 2 LVDIE: Detección de bajo voltaje de interrupción Bit de habilitación

1= Activado

0= Desactivado

bit 1 TMR3IE: Overflow Interrupt Enable TMR3 poco

1= Habilita la interrupción de desbordamiento TMR3

0= Deshabilita la interrupción de desbordamiento TMR3

bit 0 CCP2IE: CCP2 Interrupt Enable bit

1= Habilita la interrupción CCP2

0= Deshabilita la interrupción CCP2

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 97: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 93

PIC18FXX2

8.4 Registros de derechos de propiedad intelectual

The IPR registros contienen los bits de prioridad

individuales para las interrupciones periféricas.

Debido al gran número de fuentes de interrupción

periféricas, hay dos periféricos interrumpen Registros

prioritarias (IPR1, IPR2). El funcionamiento de los bits

de prioridad requiere que la prioridad de interrupción

Enable (IPEN) bit ajustar.

REGISTRO 8-8: IPR1: prioridad de interrupción PERIFÉRICO REGISTRO 1

R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1

PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP

bit 7 bit 0

bit 7 PSPIP (1): Puerto Paralelo Esclavo de lectura / escritura bit de prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

bit 6 ADIP: A / D bit Convertidor de prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

bit 5 RCIP: USART Recibe poco de prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

bit 4 TXIP: USART Transmitir bit de prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

bit 3 SSPIP: Master Synchronous Serial Port bit de interrupción de prioridad

1= Prioridad alta

0= Baja prioridad

bit 2 CCP1IP: CCP1 bit de prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

bit 1 TMR2IP: TMR2 a PR2 interrupción del partido Prioridad poco

1= Prioridad alta

0= Baja prioridad

bit 0 TMR1IP: TMR1 interrupción de desbordamiento Prioridad poco

1= Prioridad alta

0= Baja prioridad

Nota 1: Thibit s se reserva el PIC18F2X2 dispositivos; mantener siempre este bit.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 98: 39564c.en.es

DS39564C-page94 2006 Microchip Technology Inc.

PIC18FXX2

REGISTRO 8-9: IPR2: prioridad de interrupción PERIFÉRICO Registro 2

U-0 U-0 U-0 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1

- - - EEIP BCLIP LVDIP TMR3IP CCP2IP

bit 7 bit 0

bit 7-5 No implementado: Leer

como '0 '

bit 4 EEIP: Datos de EEPROM / FLASH Escribir interrumpir la operación bit Prioridad

1= Prioridad alta

0= Baja prioridad

bit 3 BCLIP: Colisión de autobuses de interrupción de prioridad poco

1= Prioridad alta

0= Baja prioridad

bit 2 LVDIP: Baja Tensión Detectar bit de prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

bit 1 TMR3IP: TMR3 interrupción de desbordamiento Prioridad poco

1= Prioridad alta

0= Baja prioridad

bit 0 CCP2IP: CCP2 bit de prioridad de interrupción

1= Prioridad alta

0= Baja prioridad

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 99: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 95

PIC18FXX2

8.5 RCON Registrarse

The RCON registro contiene el bit que se usa para

habilitar las interrupciones priorizadas (IPEN).

REGISTRO 8-10: RCON REGISTRO

R/W-0 U-0 U-0 R/W-1 R-1 R-1 R/W-0 R/W-0

IPEN - - Rhode Island

A PD POR BOR

bit 7 bit 0

bit 7 IPEN: Prioridad de interrupción Bit de habilitación

1= Habilitar niveles de prioridad de las interrupciones

0= Desactivar los niveles de prioridad de interrupciones (16CXXX modo de compatibilidad)

bit 6-5 No implementado: Leer

como '0 'bit 4 RI: REINICIO

Instrucción poco Flag

Fodetalles R de operación de bit, vea Registrar 4-3

bit 3 A:Watchdog Tiempo de espera Flag bit

Fodetalles R de operación de bit, vea

Registrar 4-3 bit 2 PD: Power-down Detección

poco Flag

Fodetalles R de operación de bit, vea Registrar 4-3

bit 1 POR: Correoswer-bit en Restablecer estado

Fodetalles R de operación de bit, vea

Registrar 4-3 bit 0 BOR:Brown-out bit

Restablecer estado

Fodetalles R de operación de bit, vea Registrar 4-3

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 100: 39564c.en.es

DS39564C-page96 2006 Microchip Technology Inc.

PIC18FXX2

8.6 Interrupción INT0

External interrupciones en los pines RB0/INT0,

RB1/INT1 y RB2/INT2 son borde desencadenado: o

subiendo, si el bit INTEDGx correspondiente se

establece en el INTCON2 reg-tro, o cayendo, si el bit

INTEDGx es clara. Cuando un flanco válido aparece

en el pin RBx / INTx, el correspondiente indicador de

bits INTxF se establece. Esta interrupción se puede

desactivar desmarcando la INTxE correspondiente bit

de habilitación. INTxF Flag bit debe ser liquidadas en

software en la interrupción de Ser-vicio de rutina antes

de volver a habilitar la interrupción. Todas las

interrupciones externas (INT0, INT1 INT2 y) puede

despertar el procesador de SLEEP, si INTxE poco se

creó antes de ir a dormir. Si la interrupción Habilitar

todos GIE bit está establecido, el procesador saltará a

el vector de interrupción después de despertar.

Interrupción de prioridad para INT1 INT2 y está

determinada por el valor contenido en los bits de

prioridad de interrupción, INT1IP (INTCON3 <6>) y

INT2IP (INTCON3 <7>). No hay bit de prioridad

asociado con INT0. Siempre es una fuente de alta

prioridad de interrupción.

8.7 de interrupción TMR0

Yon modo 8-bit (que es el valor por defecto), un

desbordamiento (FFh → 00h) En el registro TMR0

fijará TMR0IF bandera bit. En el modo de 16 bits, un

desbordamiento (FFFFh → 0000h) in los TMR0H:

registros TMR0L fijará TMR0IF bandera bit. La alarma se puede activar / desactivar configurando / borrar el bit de habilitación T0IE (INTCON <5>). Interrumpir priori-dad para Timer0 se determina por el valor contenido en

la prioridad de interrupción TMR0IP bit (INTCON2 <2>). Ver

Sección 10.0 para más detalles sobre el módulo Timer0.

8.8 PORTB interrupción-en-Change

Lan cambio en la entrada PORTB <7:04> juegos de

indicador de bits RBIF (INTCON <0>). La alarma se

puede activar / desactivar configurando / borrado de

bit de habilitación, RBIE (INTCON <3>). Interrupción

de prioridad de interrupción PORTB-on-cambio está

determinada por el valor contenido en el bit de

prioridad de interrupción, RBIP (INTCON2 <0>).

8.9 Contexto ahorro durante las interrupciones

During una interrupción, el valor de retorno de PC se

guarda en la pila. Además, los WREG, STATUS y

BSR regis-tros se guardan en la pila rápido retorno. Si

un rápido retorno de interrupción no se utiliza (véase

la sección 4.3), el usuario puede tener que guardar el

WREG, STATUS y BSR regis-tros en el software.

Dependiendo de la aplicación del usuario, los

registros de otros que también tenga que ser salvado.

Ecuación 8-1 guarda y restaura los registros WREG,

STATUS y BSR durante una rutina de servicio de

interrupción.

EXAMPLIO 8-1: ESTADO DE AHORRO, Y WREG BSR registros en RAM

MOVWF W_TEMP; W_TEMP está en banco virtual ESTADO MOVFF, STATUS_TEMP;

STATUS_TEMP ubicado en cualquier lugar MOVFF BSR, BSR_TEMP; BSR ubicado

en cualquier lugar

;

; USUARIO ISR CÓDIGO

;

MOVFF BSR_TEMP, BSR; Restore BSR MOVF W_TEMP, W; Restore

WREG MOVFF STATUS_TEMP, STATUS; Restaurar ESTADO

Page 101: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 97

PIC18FXX2

NOTAS:

Page 102: 39564c.en.es

DS39564C-page98 2006 Microchip Technology Inc.

PIC18FXX2

90.0 Puertos E / S

Dependiendo del dispositivo seleccionado, hay

puertos de cinco o tres puertos disponibles. Algunos

terminales de los puertos de E / S son multiplexados

con una función alternativa de las funciones

periféricas en el dispositivo. En general, cuando un

periférico está habilitado, que el pasador no puede ser

utilizado como un propósito general I / O pin.

Each puerto tiene tres registros para su

funcionamiento. Estos registros son:

• TRIS register (registro de datos de la dirección)

• PORT registro (lee los niveles en los terminales

del dispositivo)

• LAT registro (latch de salida)

El pestillo de datos (registro LAT) es útil para leer-

modificar-escribir las operaciones sobre el valor que

los pines de E / S se conduce.

9.1 PORTA, TRISA y LATA

Registros

EXAMPLIO 9-1: INICIALIZANDO PORTA

CLRF PORTA, PORTA Initialize por

, En la limpieza de salida

; Datos

pestillos

CLRF LATA; método alternativo

; Para borrar salida

; Datos

pestillos

MOVL0x07 W; Configurar A / D

MOVWF ADCON1; para entradas digitales

MOVLW 0xCF ;Value utiliza para

; Inicializar los datos

; Dirección

MOVWF TRISA; Set Ra <3:00> como entradas

, Ra <5:04> como salidas

FIGURA 9-1: DIAGRAMA DE BLOQUES DE

RA3: RA0 y RA5 PINS

RD LATA

PORTA es un 7-bits de ancho, puerto bidireccional. La corres-

Sponding Data Direction registro es TRISA. Activación

de un bit TRISA (= 1) hará que el pasador PORTA

correspondiente una entrada (es decir, poner el

controlador de salida correspondiente en un

Datos Bus

D Q

WR LATLa

VDD

Modo de alta impedancia). Eliminación de un bit TRISA (= 0) se

make el pin PORTA correspondiente una salida (es

decir, poner el contenido del latch de salida en el pin

seleccionado).

o PORTA

CK Q P

De retención de datos

Leer el registro PORTA lee el estado de las patillas,

mientras que la escritura a que va a escribir para el

pestillo de puerto.

ThDatos e Latch registro (LATA) es también memoria

WR TRISA

D Q

CK Q

N

VSS

Analog

YoPin E / S(1)

mapeado. Leer-modificar-escribir las operaciones en

el registro LATA lee y escribe el valor de la producción

asegurada para PORTA.

The pin RA4 se multiplexa con el módulo Timer0

TLatch RIS

RD TRISA

Yonponer Modo

TTL de búfer de entrada clock de entrada para convertirse en el pin

RA4/T0CKI. El RA4 / T0CKI pin es una entrada Schmitt Trigger y una salida

de drenaje abierto. El resto de los pines del puerto

con AR tienen niveles TTL de entrada y salida CMOS

full conductores.

ThE PIN otros PORTA son multiplexados con

entradas analógicas y la analógica Vref + y Vref-

entradas. El funcionamiento de cada pasador se

selecciona en la limpieza / ajustar los bits de control

en el registro ADCON1 (Control A / D Registro1).

Nota: En un Power-on Reset, RA5 y RA3: RA0

se configuran como entradas analógicas y

leído como '0 '. RA6 y RA4 se configuran

como entradas digitales.

The TRISA registro controla la dirección de las

clavijas RA, incluso cuando se utilizan como

entradas analógicas. El usuario debe asegurar que

los bits en el registro TRISA se mantiene ajustado

al usarlos como entradas analógicas.

Page 103: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 99

PIC18FXX2

Q D

ES

RD PORTA

SS de entrada (RA5 solamente)

To A / D Converter y módulos LVD

Nota 1: I / O pines tienen diodos de protección a VDD y VSS.

Page 104: 39564c.en.es

DS39564C-page100 2006 Microchip Technology Inc.

PIC18FXX2

ES

FIGURA 9-2: DIAGRAMA DE BLOQUES

DE RA4/T0CKI PIN

FIGURA 9-3: DIAGRAMA DE BLOQUES

DE RA6 PIN

ECRA6 o Habilitar RCRA6

Datos Bus

RD LATA

D Q

Datun Bus

RD LATA

WR LATA o PORTA

CK Q

Pin I /

O(1)

N

D Q VDD

De retención de datos WR LATA

CK Q P

D Q VSS o PORTA

Datun pestillo

(1)

WR TRISA

CK Q Schmitt Trigger

DQNI pin E / S

TLatch RIS Input Buffer

CK Q

WR

VSS

RD TRISA

TRISA TLatch RIS

Q D

ES

RD PORTA

ECRA6 o RCRA6 Enable

RD TRISA

TTL de búfer de entrada

Q D

TMR0 entrada de reloj

ES

RD PORTA

Nota 1: Pin I / O tiene diodo de protección a VSS solamente.

Nota 1: I / O pines tienen diodos de protección a VDD y VSS.

Page 105: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 101

PIC18FXX2

TABLE 9-1: FUNCIONES DE PORTA

Nombre

Bit # Buffer Función

RA0 / AN0 bit0 TTL Entrada / output o entrada analógica.

RA1 / AN1 bit1 TTL Entrada / output o entrada analógica.

RA2/AN2/VREF- bit2 TTL Entrada / output o entrada analógica o VREF.

RA3/AN3/VREF + bit3 TTL Entrada / output o entrada analógica o VREF +.

RA4/T0CKI bit4 ST De entrada / salida o entrada de reloj externo

para Timer0. La salida es de tipo drenaje

abierto. RA5/SS/AN4/LVDIN bit5 TTL Entrada / output esclavo o seleccionar la entrada para el puerto serie

síncrono o entrada analógica o detectar bajo voltaje de entrada.

OSC2/CLKO/RA6 bit6 TTL OSC2 o salida de reloj o pin I / O.

Leyenda: TTL TTL = entrada, ST = entrada Schmitt Trigger

TABLE 9-2: RESUMEN DE LOS REGISTROS RELACIONADOS CON PORTA

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR,

BOR

Value en

todas las

restaura

ciones

Otros PORTA - RA6 RA5 RA4 RA3 RA2 RA1 RA0 -X0x 0000 -U0u 0000 LATLa - LATA la salida de datos Registro -Xxx xxxx -Uuu uuuu TRISLa - PORTA datos de registro de dirección -111 1111 -111 1111 ADCON1 ADFM ADCS2 - - PCFG3 PCFG2 PCFG1 PCFG0 00 -- 0000 00 -- 0000 Leyenda:x = Desconocido, u = Sin cambios, - = no implementado lugares leído como '0 '. Las celdas sombreadas no son utilizados

por PORTA.

Page 106: 39564c.en.es

DS39564C-page102 2006 Microchip Technology Inc.

PIC18FXX2

P

9.2 PORTB, TRISB y LATB Registros

PORTB es un 8-bits de ancho, puerto bidireccional. El

registro de datos correspondiente dirección es TRISB.

Activación de un bit TRISB (= 1) hará que el pasador

PORTB correspondiente una entrada (es decir, poner

el controlador de salida correspondiente en un modo

de alta impedancia). Eliminación de un bit TRISB (= 0)

hará que el pasador correspondiente PORTB una

salida (es decir, poner el contenido del latch de salida

en el pin seleccionado).

ThDatos e Latch registro (LATB) es también memoria

mapeada. Leer-modificar-escribir las operaciones en

el LATB

The interrumpir-on-cambio de función se recomienda

para despertador en operación de pulsación de la

tecla y operaciones donde PORTB sólo se utiliza para

la función de interrupción-en-cambio. Sondeo de

PORTB no se recomienda durante el uso de la

función de interrupción-en-cambio.

RB3 puede ser configurado por el CCP2MX bit de

configuración como el pasador alternate periférica

para el módulo CCP2 (CCP2MX = '0').

FIGURA 9-4: DIAGRAMA DE BLOQUES

DE RB7: RB4 PINS

VDD

register lee y escribe el valor de la producción asegurada para

PORTB.

EXAMPLIO 9-2: INICIALIZANDO PORTB

CLRF PORTB; Inicializar PORTB por

, En la limpieza de salida

RBPU(2)

De retención de datos

Bus de Datos D Q

WR LATB

or CK

Débil Pull-up

I /Pin(1)

; Datos

pestillos

PORTB TLatch RIS

CLRF LATB; método alternativo

; Para borrar

salida

; Datos pestillos

MOVLW 0xCF; Valor que se utiliza

para

; Inicializar los

datos

; Dirección

D Q WR

TRISB CK

TTL de entrada Buffer ST Buffer

MOVWF TRISB; Set RB <3:00> como

entradas

; RB <5:04> como salidas

; RB <7:06> como entradas

Each de los pines PORTB tiene una debilidad interna

de pull-up. Un poco solo control puede activar todos

los pull-ups. Esto va a ser realizada por poco claro

RBPU (INTCON2 <7>). El débil pull-up se apaga

automáticamente cuando el pin del puerto se

configura como una salida. Las subidas pull-están

desactivadas en un reinicio de encendido.

Set RBIF

FroOther M

RD TRISB

RD LATB

RD PORTB

Pestillo

Q

D

ES

Q

D

ES

Q1

RD PORTB

Nota: On un Power-on Reset, estos pines son

configuraciónrojo como entradas digitales.

Four de los pines PORTB, RB7: RB4, tienen una

función de interrupción-en-cambio. Sólo los pins

configurados como entradas puede causar que se

produzca esta interrupción (es decir, cualquier RB7:

RB4 pin configurado como salida se excluyen de la

comparación de interrupción-en-cambio). Los pines de

entrada (de RB7: RB4) se comparan con el valor

antiguo enganchada en la última lectura de PORTB.

Los "desajuste" salidas de RB7: RB4 se OR'ed juntos

para generar el Puerto de interrupción RB cambio con

poco bandera, RBIF (INTCON <0>).

This de interrupción se puede activar el dispositivo de

SLEEP. El usuario, en la rutina de servicio de

interrupción, se puede borrar la interrupción de la

siguiente manera:

un) Cualquier lectura o escritura de PORTB

(excepto con el MOVFF instrucción). Esto

pondrá fin a la condición de conflicto.

b) RBIF Borrar bit de bandera.

A condición de conflicto continuará estableciendo

RBIF bandera bit. La lectura PORTB pondrá fin a la

condición de conflicto y permitir RBIF marcador de

bits que desea borrar.

Page 107: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 103

PIC18FXX2

RB7: RB4 pins Q3

RB7: RB5 en el modo de Programación de serie

Nota 1: Pines de E / S tienen protección diodo a VDD y VSS.

2:To permitir débiles pull-ups, establezca el correspondiente bit TRIS (s)

und borrar el bit RBPU (INTCON2 <7>).

Nota 1: While en el modo Low Voltage ICSP, el pin

RB5 ya no puede ser utilizado como un

propósito ge-neral pin I / O, y debe

mantenerse bajo durante el funcionamiento

normal de protección contra el ingreso

accidental modo ICSP.

2:Cuando se utiliza la baja tensión de

programación ICSP (LVP), el pull-up en

RB5 se desactiva. Si el bit TRISB 5 se

borra, estableciendo así RB5 como una

salida, poco LATB 5 también debe ser

limpiado para su correcto funcionamiento.

Page 108: 39564c.en.es

DS39564C-page104 2006 Microchip Technology Inc.

PIC18FXX2

P

P

FIGURA 9-5: DIAGRAMA DE BLOQUES DE RB2: RB0 PINS

RBPU(2)

De retención de datos

VDD

Weak Pull-up

Bus de Datos D Q

WR Puerto CK

YoPin E / S(1)

TLatch RIS

WR TRIS

D Q TTL Entrada

CK Buffer

RD TRIS

Q D

RD puerto

ES

RB0/INT

Schmitt Trigger Buffer

RD puerto

Nota 1: Pines de E / S tienen protección diodo a VDD y VSS. 2:To permitir débiles pull-ups, establezca el correspondiente bit TRIS (s) y borrar el bit RBPU (OPTION_REG <7>).

FIGURA 9-6: DIAGRAMA DE BLOQUES DE RB3 PIN

RBPU(2)

CCP2MX

CCP salida(3)1

VDD

Weak Pull-up

Enable(3)

CCP salida

0

De retención de datos

VDD

P

(1)

Bus de datos DQ WR LATB o WR PORTB CK

I / O pin

N

TLatch RIS

D

WR TRISB CK Q

VSS

TTL de búfer de entrada

RD TRISB

RD LATB

Q D

RD PORTB ES

RD PORTB

CCP2

entrada(3)

Schmitt disparo Buffer

CCP2MX = 0

Nota 1: Pin I / O tiene protección diodo a VDD y VSS. 2:To permitir débiles pull-ups, establezca el correspondiente bit DDR (s) y borrar el bit RBPU (INTCON2 <7>).

Page 109: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 105

PIC18FXX2

3:The CCP2 de entrada / salida se multiplexa con RB3 si el bit está activado CCP2MX (= '0 ') en el registro de configuración.

Page 110: 39564c.en.es

DS39564C-page106 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 9-3: FUNCIONES PORTB

Nombre

Bit # Buffer Función

RB0/INT0 bit0 TTL / ST(1) Entrada / output pin de interrupción externa o

input0. Software interno programable débil

pull-up. RB1/INT1 bit1 TTL / ST(1) Entrada / output pin o entrada1 interrupción

externa. Software interno programable débil

pull-up. RB2/INT2 Bit2 TTL / ST(1) Entrada / output pin o entrada2 interrupción

externa. Software interno programable débil

pull-up. RB3/ CCP2(3) bit3 TTL / ST(4) Entrada / output pin o Capture2 input/Compare2 / salida PWM de salida cuando

Poco CCP2MX configuración está habilitada.

Internal software programable débil pull-up. RB4 bit4 TTL Entrada / output pin (con interrupción en

cambio). Software interno programable débil

pull-up. RB5/ PGM(5) bit5 TTL / ST(2) Entrada / output pin (con interrupción en

cambio). Software interno programable débil

pull-up. Baja tensión ICSP permitir pin.

RB6/PGC bit6 TTL / ST(2) Entrada / output pin (con interrupción en

cambio). Software interno programable débil

pull-up. Reloj de programación de serie.

RB7/PGD bit7 TTL / ST(2) Entrada / output pin (con interrupción en

cambio). Software interno programable débil

pull-up. Los datos en serie de programación.

Leyenda: TTL TTL = entrada, ST = entrada Schmitt Trigger

NoTE 1: Este buffer es una entrada Schmitt Trigger cuando se configura como la

interrupción externa.

2:Este buffer es una entrada Schmitt Trigger cuando se utiliza en modo de Programación de serie.

3:Un poco de configuración del dispositivo selecciona el pin I / O el pin CCP2 se multiplexa en.

4:This búfer es una entrada de disparador Schmitt cuando se configura como la entrada CCP2.

5:Helow Tensión de programación ICSP (LVP) está activado por defecto, lo que deshabilita el RB5 I / O

función. LVP

must ser desactivado para permitir RB5 como un pin de I / O y permitir la máxima compatibilidad con el otro 28-pin y

40-pin intermedio dispositivos.

TABLE 9-4: RESUMEN DE LOS REGISTROS RELACIONADOS CON PORTB

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros PORTB RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 xxxx xxxx uuuu uuuu LATB LATB Salida de datos Registrarse xxxx xxxx uuuu uuuu TRISB PORTB Data Direction Register 1111 1111 1111 1111 INTCON GIE /

GIEH PEIA

/

GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

INTCON2 RBPU INTEDG0 INTEDG1 INTEDG2 - TMR0IP - RBIP 111-1-1 1 111-1-1 1 INTCON3 INT2IP INT1IP - INT2IE INT1IE - INT2IF INT1IF 11 -0 0-00 11 -0 0-00 Leyenda:x = Desconocido, u = Sin cambios. Las celdas sombreadas no son utilizados por PORTB.

Page 111: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 107

PIC18FXX2

9.3 PORTC, TRISC LATC y Registros

PORTC es un 8-bits de ancho, puerto bidireccional. El

registro de datos correspondiente dirección es TRISC.

Activación de un bit TRISC (= 1) hará que el pasador

correspondiente PORTC una entrada (es decir, poner

el controlador de salida correspondiente en un modo

de alta impedancia). Eliminación de un bit TRISC (= 0)

hará que el pasador correspondiente PORTC una

salida (es decir, poner el contenido del latch de salida

en el pin seleccionado).

ThDatos e Latch registro (LATC) es también memoria

mapeada. Leer-modificar-escribir las operaciones en

el registro LATC lee y escribe el valor de la

producción asegurada para PORTC.

PORTC es multiplexada con varias funciones

periféricas (Tabla 9-5). Pins PORTC tienen buffers de

entrada del disparador de Schmitt.

When permitiendo funciones periféricas, se debe

tener cuidado en la definición de bits de TRIS para

cada pasador PORTC. Algunos periféricos anular el

bit TRIS para hacer un pasador de una de salida,

mientras que otro periférico anular el bit TRIS para

hacer un pin una entrada. El usuario debe consultar la

sección periférica correspondiente a los ajustes de

bits correctos TRIS.

Nota: Ona Power-on Reset, estos pines se

configuran como entradas digitales.

The pin valor de reemplazo no se carga en el registro

TRIS-tro. Esto permite leer-modificar-escribir el

registro de TRIS, sin preocupación debido a las

anulaciones periféricos.

RC1 está normalmente configurado por bit de

configuración, CCP2MX, ya que el pin por defecto

periférico del módulo CCP2 (por defecto / estado

borrado, CCP2MX = '1').

Ejemplo 9-3: INICIALIZANDO PORTC

CLRF PORTC; Inicializar PORTC por

, En la limpieza de salida

; Datos

pestillos

CLRF LATC; método alternativo

; Para borrar salida

; Datos

pestillos

MOVLW 0xCF; Valor que se

utiliza para

; Inicializar los datos

; Dirección

MOVWF TRISC; Set RC <3:00> como

entradas

, RC <5:04> como salidas

, RC <7:06> como entradas

FIGURA 9-7: DIAGRAMA DE BLOQUE PORTC (OVERRIDE periférico de salida)

Puerto/ PorSeleccione

ipheral(2)

PorDatos ipheral Out

VDD

RD LATC

Bus de Datos

0

Datun pestillo

WR LATC o WR PORTC

D Q

1 CK Q

P

Pin I / O(1)

TLatch RIS

WR TRISC

RD TRISC

periféricos de

salida

Enable(3)

RD PORTC

periféricos de

entrada de datos

D Q CK

Q

N

VS

S

Q D

ES

Schmitt Trigger

Nota 1: Pines de E / S tienen protección diodo a VDD y VSS.

2:Puerto / Peripheral señal Select selecciona entre el puerto de datos (input) y salida periférica.

Page 112: 39564c.en.es

DS39564C-page108 2006 Microchip Technology Inc.

PIC18FXX2

3:PorSalida ipheral Habilitar sólo está activa si periférico seleccionado es activo.

Page 113: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 109

PIC18FXX2

TABLE 9-5: FUNCIONES PORTC

Nombre

Bit # Buffer Tipo Función

RC0/T1OSO/T1CKI bit0 ST Entrada / pin de salida del puerto o Timer1 oscilador output/Timer1 entrada de reloj. RC1/T1OSI/CCP2 bit1 ST Entrada / pin de salida del puerto, Timer1 entrada del oscilador, o

la entrada Capture2 / Compare2 salida / salida PWM cuando el

bit CCP2MX configuración está establecida.

RC2/CCP1 Bit2 ST Entrada / pin de salida del puerto o Capture1 input/Compare1

output/PWM1 salida.

RC3/SCK/SCL bit3 ST RC3 también puede ser el reloj síncrona serial para ambos SPI y I2C

modos.

RC4/SDI/SDA bit4 ST RC4 puede ser también el SPI Data In (modo SPI) o Data I / O (modo

I2C). RC5/SDO bIT5 ST Entrada / pin de salida del puerto o Synchronous Serial Port salida de datos. RC6/TX/CK bit6 ST Entrada / pin de salida del puerto, transmisión asíncrona USART direccionables, o

Añadirressable Reloj USART síncrono. RC7/RX/DT bit7 ST Entrada / pin de salida del puerto, asíncrono USART direccionables recibir, o

Añadirressable USART datos síncronos. Leyenda: ST = entrada Trigger Schmitt

TABLE 9-6: RESUMEN DE LOS REGISTROS RELACIONADOS CON PORTC

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros PORTC RC7 RC6 RC5 RC4 RC3 RC2 RC1 RC0 xxxx xxxx uuuu uuuu LATC LATC Salida de datos Registrarse xxxx xxxx uuuu uuuu TRISC PORTC registro de datos Dirección 1111 1111 1111 1111 Leyenda:x = Desconocido, u = Sin cambios

Page 114: 39564c.en.es

DS39564C-page110 2006 Microchip Technology Inc.

PIC18FXX2

ES

9.4 PORTD, TRISD y Registros LATD

This sección sólo es aplicable a los PIC18F4X2

dispositivos.

FIGURA 9-8: DIAGRAMA DE BLOQUES EN

PORTD I / O MODE PORT

PORTD es un 8-bits de ancho, puerto bidireccional. La corres-

Datos

RD LATD

Sponding Data Direction registro se TRISD. El establecimiento de un

TRISD bit (= 1) hará que el PORTD correspondiente

pin una entrada (es decir, poner el controlador de

salida correspondiente en un modo de alta

impedancia). Eliminación de un poco TRISD (= 0) se

Bus D Q

WR LATD

or CK

Pin I / O(1)

make el pin correspondiente PORTD como salida (es decir, poner

PORTD De retención de datos

ªcontenidos electrónicos de la cerradura de salida en el pin seleccionado).

ThDatos e Latch registro (LATD) es también memoria

mapeada. Leer-modificar-escribir las operaciones en

el LATD

D Q

WR TRISD CK

Schmitt Trigger

register lee y escribe el valor de la producción asegurada para

PORTD.

PORTD es un puerto de 8-bits con entrada Schmitt

Trigger buff-res. Cada pin se puede configurar

individualmente como entrada o salida.

Nota: Ona Power-on Reset, estos pines se

configuran como entradas digitales.

PORTD puede ser configurado como un 8-bits de

ancho microprocesador puerto (puerto esclavo

paralelo) estableciendo PSPMODE bit de control

(TRISE <4>). En este modo, la entrada de búferes

RD PORTD

TLatch RIS

RD TRISD

Yonponer Buffer

Q

D

ES

unre TTL. Vea la Sección 9.6 para obtener

información adicional sobre el Puerto Paralelo

Esclavo (PSP).

Ejemplo 9-4: INICIALIZANDO PORTD

Nota 1: Pines de E / S tienen protección diodo a VDD y VSS.

CLRF PORTD; Inicializar PORTD por

, En la limpieza de salida

; Datos pestillos

CLRF LATD; método alternativo

; Para borrar salida

; Datos pestillos

MOVLW 0xCF; Valor que se utiliza para

; Inicializar los datos

; Dirección

MOVWF TRISD, RD Set <3:00> como entradas

, RD <5:04> como salidas

, RD <7:06> como entradas

Page 115: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 111

PIC18FXX2

TABLE 9-7: FUNCIONES PORTD

Nombre Bit # Buffer Tipo Función

RD0/PSP0 bit0 ST / TTL(1) Entrada / Output pin puerto o puerto paralelo esclavo bit0.

RD1/PSP1 bit1 ST / TTL(1) Entrada / Output pin puerto paralelo o puerto esclavo bit1.

RD2/PSP2 bit2 ST / TTL(1) Entrada / Output pin puerto paralelo o puerto esclavo Bit2.

RD3/PSP3 bit3 ST / TTL(1) Entrada / Output pin puerto paralelo o puerto esclavo bit3.

RD4/PSP4 bit4 ST / TTL(1) Entrada / Output pin puerto paralelo o puerto esclavo bit4.

RD5/PSP5 bit5 ST / TTL(1) Entrada / Output pin puerto o puerto paralelo esclavo bit5.

RD6/PSP6 bit6 ST / TTL(1) Entrada / Output pin puerto o puerto paralelo esclavo bit6.

RD7/PSP7 bit7 ST / TTL(1) Entrada / Output pin puerto o puerto paralelo esclavo bit7.

Leyenda: ST = entrada Schmitt Trigger, TTL TTL = input

NoTE 1: Inpubuffers t son Schmitt se activa cuando en modo I / O y el tampón TTL en el modo de puerto paralelo esclavo.

TABLE 9-8: RESUMEN DE LOS REGISTROS RELACIONADOS CON PORTD

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros PORTD RD7 RD6 RD5 RD4 RD3 RD2 RD1 RD0 xxxx xxxx uuuu uuuu LATD LATD Salida de datos Registrarse xxxx xxxx uuuu uuuu TRISD Dirección de Registro de Datos PORTD 1111 1111 1111 1111 TRISE IBF OBF YoBOV PSPMODE - PORTE Bits de datos de

dirección 0000 -111 0000 -111

Leyenda:x = Desconocido, u = Sin cambios, -= Sin aplicarse, leído como '0 '. Las celdas sombreadas no son utilizados por PORTD.

Page 116: 39564c.en.es

DS39564C-page112 2006 Microchip Technology Inc.

PIC18FXX2

ES

9.5 PORTE, TRISE y Registros TARDE

Thisección s sólo es aplicable a los dispositivos

PIC18F4X2.

PORTE es un 3-bits de ancho, puerto bidireccional. El

registro de datos correspondiente dirección es TRISE.

El establecimiento de un

FIGURA 9-9: DIAGRAMA DE PORTE EN

BLOQUE I / O MODE

PORT

RD TARDE datos Bus

TRISE bits (= 1) hará que el pasador PORTE

correspondiente una entrada (es decir, poner el

controlador de salida correspondiente en un

D Q

WR TARDE

Pin I / O(1)

Modo de alta impedancia). Eliminación de un poco TRISE (= 0) se

make el pin correspondiente PORTE una salida (es

decir, poner el contenido del latch de salida en el pin

seleccionado).

o PORTE

CK

De retención de datos

ThDatos e Latch registro (LATE) es también memoria

mapeada. Leer-modificar-escribir las operaciones en

el registro LATE lee y escribe el valor de la

producción asegurada para

D Q

WR TRISE CK

Schmitt Trigger

Porte.

PORTE tiene tres clavijas (RE0/RD/AN5,

RE1/WR/AN6 y RE2/CS/AN7) que se pueden

configurar individualmente como entradas o salidas.

Estos pernos tienen buffers de entrada del disparador

de Schmitt.

Registrar 9-1 muestra el TRISE registro, que también

controla el funcionamiento esclavo de puerto paralelo.

PORTPins E están multiplexados con entradas

analógicas. Cuando se selecciona una entrada

analógica, estos pines se lee como '0 's.

RD PORTE

TLatch RIS

RD TRISE

Yonponer Buffer

Q

D

ES

TRISE controla la dirección de las clavijas RE, incluso

cuando se utilizan como entradas analógicas. El

usuario debe asegurarse de mantener los pines

configurados como entradas al usarlos como entradas

analógicas.

Nota: Ona Power-on Reset, estos pines se

configuran como entradas analógicas.

To Analog Converter

Nota 1: Pines de E / S tienen protección diodo a VDD y VSS.

Ejemplo 9-5: INICIALIZANDO PORTE

CLRF PORTE; Inicializar PORTE por

, En la limpieza de salida

; Datos pestillos

CLRF TARDE; método alternativo

; Para borrar salida

; Datos pestillos

MOVL0x07 W; Configurar A / D

MOVWF ADCON1; para entradas digitales

MOVL0x05 W; Valor que se utiliza para

; Inicializar los datos

; Dirección

MOVWF TRISE; Set RE <0> como entradas

, RE <1> como salidas

, RE <2> como entradas

Page 117: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 113

PIC18FXX2

REGISTRO 9-1: TRISE REGISTRO

R R-0-0 R/W-0 R/W-0 U-0 R/W-1 R/W-1 R/W-1

FIB OBF IBOV PSPMODE - TRISE2 TRISE1 TRISE0

bit 7 bit 0

bit 7 FIB: Input bits Buffer Estado completo

1= Una palabra ha sido recibido y la espera de ser leído por la CPU

0= Ni una palabra se ha recibido

bit 6 OBF: Bit de salida Buffer Estado completo

1= El búfer de salida todavía tiene una palabra previamente por escrito

0= El búfer de salida que se ha leído

bit 5 IBOV: Desbordamiento de búfer de entrada Detección de bits (en modo microprocesador)

1= Una escritura se produjo cuando una palabra de entrada previamente no se ha leído

(Must ser liquidadas en software)

0= No hay desbordamiento

bit 4 PSPMODE: Puerto Paralelo Esclavo de selección de modo poco

1= Slave Parallel modo de puerto

0= General E / S de modo

bit 3 No implementado: Leer como '0 '

bit 2 TRISE2: RE2 Dirección bit de control

1= Entrada

0= Salida

bit 1 TRISE1: RE1 Dirección bit de control

1= Entrada

0= Salida

bit 0 TRISE0: RE0 Dirección bit de control

1= Entrada

0= Salida

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 118: 39564c.en.es

DS39564C-page114 2006 Microchip Technology Inc.

PIC18FXX2

TABLE 9-9: FUNCIONES DE PORTE

Nombre

Bit # Buffer Tipo Función

RE0/RD/AN5

bit0

ST / TTL(1)

Entrada / output de los pines o leer la entrada de control en modo de

puerto paralelo esclavo o entrada analógica:

RD

1= No es una operación de lectura

0= La operación de lectura. Lee PORTD registro (si ficha

seleccionada).

RE1/WR/AN6

bit1

ST / TTL(1)

Entrada / output de los pines de entrada de control o escritura en el

modo de puerto paralelo esclavo o entrada analógica:

WR

1= No es una operación de escritura

0= Operación de escritura. Escribe PORTD registro (si ficha

seleccionada).

RE2/CS/AN7

bit2

ST / TTL(1)

Entrada / output pin o puerto de entrada de chip de control de

selección en el modo de puerto paralelo esclavo o entrada analógica:

CS

1Device = No se ha seleccionado

0Device = se selecciona Leyenda: ST = entrada Schmitt Trigger, TTL TTL = input

NoTE 1: Inpubuffers t son Schmitt se activa cuando en modo I / O TTL y tampones cuando esté en modo de puerto paralelo esclavo.

TABLE 9-10: RESUMEN DE REGISTROS RELACIONADOS CON PORTE

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros PORTE - - - - - RE2 RE1 RE0 ---- 000 ---- 000 LATE - - - - - LATE Salida de datos Registrarse ---- Xxx ---- Uuu TRISE FIB OBF IBOV PSPMODE - PORTE Bits de datos de dirección 0000 -111 0000 -111 ADCON1 ADFM ADCS2 - - PCFG3 PCFG2 PCFG1 PCFG0 00 -- 0000 00 -- 0000 Leyenda:x = Desconocido, u = Sin cambios, -= Sin aplicarse, leído como '0 '. Las celdas sombreadas no son utilizados por PORTE.

Page 119: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 115

PIC18FXX2

ES

9.6 Puerto Paralelo Esclavo

El Puerto Paralelo Esclavo se implementa en los

dispositivos de 40 pines (sólo PIC18F4X2).

PORTD funciona como un puerto de 8-bit de ancho

esclavo paralelo o puerto microprocesador cuando el

bit de control, PSPMODE

(TRISE <4>) Se establece. Es de forma asíncrona y legible

FIGURA 9-10: PORTD PORTE Y

DIAGRAMA DE

BLOQUE (PUERTO

PARALELO SLAVE)

Bus de Datos

escribible por el mundo externo a través de la entrada

de control RD pin, pin WR RE0/RD y entrada de

control, RE1/WR.

D Q

WR LATD CK o

RDX

Pen

Yot directamente puede interactuar con un conjunto de datos del microprocesador 8-bit

autobús. El microprocesador externo puede leer o

escribir el pestillo PORTD como un pestillo de 8-bits.

Ajuste PSPMODE bit permite RE0/RD puerto pin

como entrada RD, RE1/WR ser la entrada WR y

RE2/CS a ser el CS (chip select) de entrada. Para

esta funcionalidad, los bits de datos correspondientes

de dirección del registro TRISE (TRISE <02:00>) debe

configurarse como entradas (SET). El puerto A / D

config-

PORTD

RD PORTD

Denun pestillo Q D

EN

TLatch RIS

TTL

ubits de racionamiento PCFG2: PCFG0 (ADCON1

<02:00>) debe ajustarse, lo que configura pins RE2:

RE0 como digital I / O.

Una escritura en el PSP se produce cuando tanto el

CS y WR líneas se detectó por primera vez bajo. Una

lectura desde la PSP se produce cuando tanto el CS y

las líneas de RD se detectó por primera vez bajo.

Los PORTE pines I / O se convierten en entradas de

control para el puerto microprocesador cuando el bit

PSPMODE (TRISE <4>) se establece. En este modo,

el usuario debe asegurarse de que el TRISE <2:00>

bits se establecen (pines se configuran como entradas

digitales), y el ADCON1 está configurado para E / S

digitales En este modo, los buffers de entrada son

TTL.

RD LATD

One bit de bandera

de interrupción

PORTD Set

PSPIF (PIR1 <7>)

Leer TTL RD

Selección de chip

TTL CS

Write TTL WR

Note: I /O pin tiene diodos de protección a VDD y VSS.

FIGURA 9-11: PARALLEL PORT ESCLAVO FORMAS DE ONDA WRITE

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

CS

WR

RD

PORTD <7:00>

YoBF

OBF

PSPIF

Page 120: 39564c.en.es

DS39564C-page116 2006 Microchip Technology Inc.

PIC18FXX2

FIGURA 9-12: PARALLEL PORT ESCLAVO LEER FORMAS DE ONDA

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

CS

WR

RD

PORTD <7:00>

YoBF

OBF

PSPIF

TABLE 9-11: registros asociados a puerto esclavo PARALELO

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros PORTD Puerto de datos Latch cuando se escribe; pines del puerto cuando se lee xxxx xxxx uuuu uuuu LATD LATD Bits de datos de salida xxxx xxxx uuuu uuuu TRISD PORTD Bits de datos de dirección 1111 1111 1111 1111 PORTE - - - - - RE2 RE1 RE0 ---- 000 ---- 000 LATE - - - - - LATE Bits de datos de salida ---- Xxx ---- Uuu TRISE YoB

F OBF IBOV PSPMODE - PORTE Bits de datos de

dirección 0000 -111 0000 -111

INTCON GIE /

GIEH PEIE

/

GIEL

TMR0IF INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000 PIE1 PSPIE ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000 IPR1 PSPIP ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000 ADCON1 ADFM ADCS2 - - PCFG3 PCFG2 PCFG1 PCFG0 00 -- 0000 00 -- 0000 Leyenda:x = Desconocido, u = Sin cambios, -= Sin aplicarse, leído como '0 '. Las celdas sombreadas no son utilizados por el Puerto

Paralelo Esclavo.

Page 121: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 117

PIC18FXX2

NOTAS:

Page 122: 39564c.en.es

DS39564C-page118 2006 Microchip Technology Inc.

PIC18FXX2

10,0 TIMER0 MÓDULO

The módulo Timer0 tiene las siguientes características:

• Software seleccionable como un temporizador de 8-bit o 16-bit /

contrarrestar

• Lectura y escritura

• Dedicado 8-bit software programable prescaler

• Fuente de reloj seleccionable para ser externa o interna

• Interrumpir-on-overflow de FFh a 00h en

modo 8-bit y FFFFh a 0000h en modo 16-bit

• Margen de selección para el reloj externo

Figure 10-1 muestra un diagrama de bloques

simplificado del módulo Timer0 en el modo de 8-bit y

la Figura 10-2 muestra un diagrama de bloques

simplificado del módulo Timer0 en el modo de 16-bit.

The T0CON registro (Register 10-1) es un registro de

lectura y escritura que controla todos los aspectos de

la Timer0, incluyendo la selección de preescala.

REGISTRO 10-1: T0CON: TIMER0 REGISTRO DE CONTROL

R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1 R/W-1

TMR0ON T08BIT T0CS T0SE PSA T0PS2 T0PS1 T0PS0

bit 7 bit 0

bit 7 TMR0ON: Tiempor0 control On / Off

poco

1= Activa Timer0

0= Detiene Timer0

bit 6 T08BIT: Timer0 8-bit/16-bit Bit de

control

1= Timer0 se configura como un temporizador de 8-bit / contador

0= Timer0 se configura como un temporizador de 16-bit / contador

bit 5 T0CS: Reloj Timer0 bit de selección

de fuente

1= Transición en T0CKI pin

0= Instrucción interna de ciclo de reloj (CLKO)

bit 4 T0SE: Fuente Timer0 poco Edge

Select

1= Incremento de alto a bajo transición en T0CKI pin

0= Incremento en bajo-a-alto transición en T0CKI pin

bit 3 PSA: Timer0 preescalador poco

Asignación

1= Prescaler Timer0 no está asignado. Timer0 entrada de reloj pasa por prescaler.

0= Timer0 prescaler está asignado. Timer0 entrada de reloj viene de salida prescaler.

bit 2-0 T0PS2: T0PS0: Seleccione los bits Timer0 preescalador

111 = 1:256 preescala valor

110 = 1:128 preescala valor

101 = 1:64 preescala valor 100 = 1:32 preescala valor

011 = 1:16 preescala valor

010 = 1:8 preescala valor 001 = 1:4 preescala valor

000 = 1:2 preescala valor

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 123: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 119

PIC18FXX2

PROGRAMABLESle

PrEscaler

FIGURA 10-1: TIMER0 diagrama de bloques en modo 8-bits

RA4/T0CKI pin

FOSC/ 4

0

1

1

PROGRAMABLESLE 0 Preescalador

Sincronización con

reloj interno

Datos Bus

8

TMR0L

T0SE

T0CS

3

T0PS2, T0PS1, T0PS0

PSLa

(2 Retardo de TCY)

SeInterrupt Flag

bit t TMR0IF de

desbordamiento

Nota: Al RESET, Timer0 se activa en el modo 8-bits con entrada de reloj de T0CKI max. preescala.

FIGURA 10-2: TIMER0 diagrama de bloques en modo de 16 bits

T0CKI pin

FOSC / 4

T0SE

0

1

1

0

3

T0PS2, T0PS1, T0PS0

Sync con

relojes internos

(2 Retardo de TCY)

TMR0L

TMR0 Byte alto

8

SeInterrupt Flag bit t TMR0IF de desbordamiento

Leer TMR0L

T0CS PSA 8

8

TMR0H

Write TMR0L

8

Bus de Datos <7:00>

Nota: Al RESET, Timer0 se activa en el modo 8-bits con entrada de reloj de T0CKI max. preescala.

Page 124: 39564c.en.es

DS39564C-page120 2006 Microchip Technology Inc.

PIC18FXX2

10.1 Timer0 Operación

Timer0 puede funcionar como un contador de tiempo o como un contador.

Tiempor modo se selecciona en la limpieza de la broca

T0CS. En el modo de temporizador, el módulo Timer0

se incrementará cada ciclo de instrucción (sin

prescaler). Si el TMR0L reg-tro está escrito, el

incremento se inhibe durante los ciclos de instrucción

si-guientes dos. El usuario puede evitar esto

escribiendo un valor ajustado para el registro TMR0L.

Modo contador se selecciona ajustando el bit T0CS.

En el modo contador, Timer0 se incrementará, ya sea

en cada flanco de subida o de bajada de pin

RA4/T0CKI. El borde de incremento-ción está

determinada por el Timer0 Edge bit de selección de

fuente (T0SE). Borrar el bit T0SE selecciona el borde

ris-ing. Las restricciones a la entrada de reloj externo

se discuten a continuación.

When una entrada de reloj externo se utiliza para

Timer0, debe cumplir con ciertos requisitos. Los

requisitos aseguran el reloj externo puede ser

sincronizado con el reloj de fase interna (TOSC).

También, hay un retraso en el incremento real de

Timer0 después de la sincronización.

10.2 preescalador

Lan 8-bit del contador está disponible como un pre-

escalador para el módulo Timer0. El prescaler no se

puede leer o escribir.

El PSA y T0PS2: T0PS0 determinar la asignación de

los bits prescaler y la relación de preescala.

Compensación bit PSA asignará el prescaler al

módulo Timer0. Cuando el pre-escalador se le asigna

al módulo Timer0, los valores de pre-escala de 1:2,

1:4, ..., 1:256 son seleccionables.

When asignada al módulo Timer0, todas las instrucciones que escriben en el registro TMR0L (por

ejemplo, CLRF TMR0, MOVWF TMR0, BSF TMR0,

xEtc ....) se borrará la cuenta prescaler.

Nota: Writing a TMR0L cuando el prescaler está

asignado a Timer0 se borrará el recuento

de pre-escalador, pero no cambiará la

asignación pre-escalador.

10.2.1 CONMUTACIÓN prescaler ASIGNACIÓN

Thasignación e prescaler está en pleno desarrollo de

software de control (es decir, se puede cambiar

"sobre la marcha" durante la ejecución del programa).

10.3 Timer0 Interrupción

ThTMR0 e interrupción se genera cuando el TMR0

reg-tro desbordamientos de FFh a 00h en modo 8-bit,

o FFFFh a 0000h en modo de 16 bits. Esto establece

el bit de desbordamiento TMR0IF. La interrupción

puede ser enmascarada por despejar el bit TMR0IE.

El bit TMR0IE deben ser liquidadas en soft-ware de la

rutina de servicio de interrupción del módulo Timer0

antes de volver a habilitar esta interrupción. La

interrupción TMR0 no puede despertar el procesador

del sueño, ya que el temporizador se cierre durante el

sueño.

10.4 16-Bit Modo temporizador Lee y

Escribirs

TMR0H no es el byte alto del temporizador / contador

16-bit modo, pero en realidad es una versión con

buffer del byte alto del Timer0 (vea la Figura 10-2). El

byte alto del contador Timer0 / temporizador no es

directamente legible ni modificable. TMR0H se

actualiza con el contenido del byte alto del Timer0

durante una lectura de TMR0L. Esto proporciona la

capacidad de leer todos los bits de 16-Timer0 sin

tener que verificar que la lectura del byte alto y bajo

eran válidos debido a una transferencia entre

sucesivas lecturas del byte alto y bajo.

Una escritura en el byte alto del Timer0 también debe

llevarse a cabo a través del registro tampón TMR0H.

Timer0 byte alto se actualiza con el contenido de

TMR0H cuando se produce una escritura a TMR0L.

Esto permite que todos los bits de 16-Timer0 se

actualice a la vez.

TABLE 10-1: registros asociados a TIMER0

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros TMR0L Timer0 Módulo Byte Register Low xxxx xxxx uuuu uuuu TMR0H Timer0 Módulo Byte Register alta 0000 0000 0000 0000 INTCON GIE / GIEH PEIE / GIEL TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U T0CON TMR0ON T08BIT T0CS T0SE PSA T0PS2 T0PS1 T0PS0 1111 1111 1111 1111 TRISLa - PORTUna Dirección Registro de datos -111 1111 -111 1111

Page 125: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 121

PIC18FXX2

Leyenda:x = Desconocido, u = Sin cambios, -= Sin aplicarse lugares leído como '0 '. Las celdas sombreadas no son utilizados por

Timer0.

Page 126: 39564c.en.es

DS39564C-page122 2006 Microchip Technology Inc.

PIC18FXX2

NOTAS:

Page 127: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 123

PIC18FXX2

110.0 MÓDULO TIMER1

The temporizador módulo Timer1 / contador tiene las

siguientes características:

• 16-bit del temporizador / contador

(Two registros de 8 bits; TMR1H y TMR1L)

• Lectura y escritura (ambos registros)

• Reloj interno o externo, seleccione

• Interrumpir-on-overflow de FFFFh 0000h a

• RESET del gatillo módulo CCP evento especial

Figure 11-1 es un diagrama de bloques simplificado

del módulo Timer1.

Registrarse 11-1 detalla el registro de control Timer1.

Este registro controla el modo de funcionamiento del

módulo Timer1, y contiene el oscilador Timer1 bit de

habilitación (T1OSCEN). Timer1 se puede habilitar o

deshabilitar estableciendo o borrando TMR1ON bit de

control (T1CON <0>).

REGISTRO 11-1: T1CON: TIMER1 REGISTRO DE CONTROL

R/W-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

RD16 - T1CKPS1 T1CKPS0 T1OSCEN T1SYNC TMR1CS TMR1ON

bit 7 bit 0

bit 7 RD16: 16-bit de lectura / escritura Mode Enable bit

1= Activa el registro de lectura / escritura de Timer1 en una operación de 16-bit

0= Activa el registro de lectura / escritura de Timer1 en dos operaciones de 8-bits

bit 6 No implementado: Leer como '0 '

bi5-4 t T1CKPS1: T1CKPS0: Timer1 Input Select bits de reloj de pre-escala

11 = 1:8 valor pre-escala

10 = 1:4 valor pre-escala 01 = 1:2 valor pre-escala

00 = 1:1 valor pre-escala

bit 3 T1OSCEN: TimerOscilador 1 Bit de habilitación

1= Oscilador del Timer1 está habilitado

0= Oscilador del Timer1 está apagado The inversor oscilador y resistencia de realimentación se apagan para eliminar la fuga de energía.

bit 2 T1SYNC: Tiempor1 entrada externa de reloj de sincronización Seleccione bit

¿Cuándo TMR1CS = 1:

1= No sincronizar entrada de reloj externo

0= Sincronizar entrada de reloj externo

¿Cuándo TMR1CS = 0:

Thibit s se ignora. Timer1 utiliza el reloj interno cuando TMR1CS = 0.

bit 1 TMR1CS: TiempoClock Source Select bit r1

1= Reloj externo del pin RC0/T1OSO/T13CKI (en el flanco de subida)

0= Reloj interno (FOSC / 4)

bit 0 TMR1ON: TiempoEn poco r1

1= Habilita Timer1

0= Detiene Timer1

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 128: 39564c.en.es

DS39564C-page124 2006 Microchip Technology Inc.

PIC18FXX2

11.1 Timer1 Operación

Timer1 puede funcionar en uno de estos modos:

• Como un temporizador

• Como un contador síncrono

• Como un contador asíncrono

Thel modo de funcionamiento e se determina por el

bit de reloj selecto, TMR1CS (T1CON <1>).

WheTMR1CS n = 0, Timer1 se incrementa cada ciclo

de instrucción. Cuando TMR1CS = 1, Timer1

incrementos en cada flanco ascendente de la entrada

de reloj externo o el oscilador Timer1, si está

habilitado.

When el oscilador Timer1 está habilitado (T1OSCEN

está establecido), los pasadores y RC1/T1OSI

RC0/T1OSO/T1CKI se convierten en insumos. Es

decir, el TRISC <1:00> valor es ignorado, y los pines

se leen como '0 '.

Timer1 también tiene una interna "de entrada RESET".

Este reajuste puede ser generado por el módulo CCP

(Sección 14,0).

FIGURA 11-1: DIAGRAMA DE BLOQUES TIMER1

TMR1IF

CCP disparador de eventos especiales

Flag Bit CLR

TMR1H TMR1L

Clock entrada

TMR1ON

T1CKI/T1OSO

T1OSI

T1OSC

T1OSCEN Enable oscilador (1)

FOSC / 4 Interno Clock

On / Off

1

0

T1SYNC

Preescala

dor 1, 2, 4, 8

2

T1CKPS1: T1CKPS0

Synchronize

det

DORMIR entrada

TMR1CS

Noe 1: When permitir T1OSCEN poco se borra, el inversor y la resistencia de realimentación están apagados. Esto elimina la fuga de energía.

FIGURA 11-2: DIAGRAMA DE BLOQUES TIMER1: 16-bit de lectura / escritura

Datun autobús <7:00>

8

Writo TMR1L

Leer TMR1L

TMR1IF Overflow Interrupt Flag bit

TMR1H

8

8

Timer 1 High Byte

TMR1

8

TMR1L

CLR

CCP disparador de eventos especiales

0

1

Synchronized

Clock entrada

T13CKI/T1OSO

T1OSC

TMR1ON

1

T1SYNC Preescalador

Synchronize

T1OSI

T1OScen oscilador Enable(1)

FOSC / 4 Internal 0 Clock

1, 2, 4, 8

2

det

TMR1CS T1CKPS1: T1CKPS0

Page 129: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 125

PIC18FXX2

SLEEP entrada

Noe 1: When permitir T1OSCEN poco se borra, el inversor y la resistencia de realimentación están apagados. Esto elimina la fuga de energía.

Page 130: 39564c.en.es

DS39564C-page126 2006 Microchip Technology Inc.

PIC18FXX2

11.2 Timer1 oscilador

Un circuito oscilador de cristal está incorporado entre

las clavijas en T1OSI (entrada) y T1OSO (salida del

amplificador). Se habilita al establecer el bit de control

T1OSCEN (T1CON <3>). El oscilador-tor es un

oscilador de baja potencia nominal de hasta 200 kHz.

Se continuará funcionando durante el sueño. Se

piensa sobre todo para un cristal de 32 kHz. La Tabla

11-1 muestra la selección de condensadores para el

oscilador Timer1.

The usuario debe proporcionar un tiempo de retraso

software para garantizar la adecuada puesta en

marcha del oscilador Timer1.

TABLE 11-1: CAPACITOR DE SELECCIÓN

PARA EL OSCILADOR

ALTERNATIVO

Osc Tipo Freq C1 C2

LP 32 kHz TBD(1) TBD(1)

Crystal a ensayar:

32,768 kHz Epson C-001R32.768K-A ± 20 PPM

Nota 1: Microchip 33 pF sugiere como punto de

partida para validar el circuito oscilador.

2:Una mayor capacitancia aumenta la

estabilidad del oscilador, pero también

aumenta el tiempo de puesta en marcha.

3:Since cada resonador / cristal tiene sus

propias características, el usuario debe

consultar al fabricante del resonador /

cristal para los valores adecuados de los

componentes externos.

4:Valores de condensadores son

orientativos diseño único.

11.3 Interrupción Timer1

The TMR1 par Register (TMR1H: TMR1L)

incrementos de 0000h a FFFFh y se da la vuelta a

0000h. La interrupción TMR1, si está activado, se

genera en caso de desbordamiento, que está

enclavado en la bandera de interrupción poco

TMR1IF (PIR1 <0>). Esta interrupción se puede

habilitar / deshabilitar estableciendo / borrado de

habilitación de interrupción TMR1 poco, TMR1IE

(PIE1 <0>).

11.4 Timer1 Restablecimiento utilizando una salida de disparo CCP

Yof el módulo CCP está configurado en modo de

comparación para generar un "gatillo evento especial"

(CCP1M3: CCP1M0

=1011), Esta señal se restablecerá Timer1 y

comenzar un A / D conversion (si el módulo A / D está activado).

Nota: Thevento especial e dispara desde el

módulo CCP1 no establecerá interrupción

bandera poco TMR1IF (PIR1 <0>).

Timer1 debe estar configurado para un temporizador o

sincronizada modo contador para tomar ventaja de

esta característica. Si Timer1 se ejecuta en modo

contador asíncrono, esta operación RESET no puede

funcionar.

Yon el caso de que una escritura en Timer1 coincide

con un disparador de evento especial de CCP1, la

escritura tendrá prioridad.

En este modo de funcionamiento, el CCPR1H:

CCPR1L regis-tros par se convierte efectivamente en

el período de registro para Timer1.

11.5 Timer1 16-Bit modo lectura / escritura

Timer1 se puede configurar para 16-bit lee y escribe

(ver Figura 11-2). Cuando el bit de control RD16

(T1CON <7>) se establece, la dirección para TMR1H

se asigna a un búfer de registro para el byte alto del

Timer1. Una lectura de TMR1L se carga el contenido

del byte alto del Timer1 en el búfer byte alto del

Timer1. Esto proporciona al usuario con la capacidad

de leer con precisión todos los bits 16-de Timer1 sin

tener que determinar si una lectura del byte de alta

seguida por una lectura del byte bajo es válido,

debido a un traspaso entre lecturas.

Una escritura en el byte alto del Timer1 también debe

llevarse a cabo a través del registro tampón TMR1H.

Timer1 byte alto se actualiza con el contenido de

TMR1H cuando se produce una escritura a TMR1L.

Esto permite a un usuario escribir todos los 16 bits de

los bytes a ambos altos y bajos de Timer1 a la vez.

The byte alto del Timer1 no es directamente legible o

auto-able en este modo. Todas las lecturas y

escrituras debe llevarse a cabo a través del Timer1

registro agudo búfer de bytes. Escribe en TMR1H no

vacía el prescaler Timer1. El prescaler sólo se borra

en escrituras a TMR1L.

Page 131: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 127

PIC18FXX2

TABLE 11-2: registros asociados a TIMER1 como un temporizador / contador

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros INTCON GIE / GIEH

PEIE / GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

YoPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000 TMR1L Holding Registro para el byte menos significativo del registro de 16 bits TMR1 xxxx xxxx uuuu uuuu TMR1H Holding Registrarse para el byte más significativo del registro de 16 bits TMR1 xxxx xxxx uuuu uuuu T1CON RD16 - T1CKPS1 T1CKPS0 T1OSCES T1SYNC TMR1CS TMR1ON 0-00 0000 u-uu uuuu Leyenda:x = Desconocido, u = Sin cambios, -= Sin aplicarse, leído como '0 '. Las celdas sombreadas no son utilizados por el módulo

Timer1.

NoTE 1: The PSPIF, PSPIE y los bits están reservados PSPIP en los PIC18F2X2 dispositivos; siempre mantener estos bits clara.

Page 132: 39564c.en.es

DS39564C-page128 2006 Microchip Technology Inc.

PIC18FXX2

12,0 TIMER2 MÓDULO

The temporizador Timer2 módulo tiene las siguientes características:

• 8-bit de tiempo (TMR2 registro)

• Período de 8-bit de registro (PR2)

• Lectura y escritura (ambos registros)

• Software programable prescaler (1:1, 1:4, 1:16)

• Software programable postscaler (1:1 a 1:16)

• Interrumpir el partido de TMR2 PR2

• SSP módulo de uso opcional de TMR2 de

salida para generar desplazamiento del

reloj

Timer2 tiene un registro de control se muestra en

Register 12-1. Timer2 puede ser de cierre en la

limpieza de un bit de control TMR2ON (T2CON <2>)

para reducir al mínimo el consumo de energía. La

figura 12-1 es un diagrama de bloques simplificado

del módulo Timer2. Registrarse 12-1 muestra el

Timer2 control de regis-tro. La selección prescaler y

postscaler de Timer2 son controlados por este

registro.

12.1 Timer2 Operación

Timer2 se puede utilizar como el PWM de base de

tiempo para el modo PWM del módulo CCP. El

registro TMR2 es lectura y escritura, y se borra en

cualquier reinicio del dispositivo. La entrada de reloj

(FOSC / 4) tiene una opción preescala de 1:1, 1:4 o

1:16, seleccionado por T2CKPS1 bits de control:

T2CKPS0 (T2CON <1:00>). El partido-lida de TMR2

pasa a través de un postscaler 4-bit (que da un

integrador de escala 1:01-01:16) para generar una

interrupción de TMR2 (enclavada en el bit bandera

TMR2IF, (PIR1 <1>)).

The prescaler y contadores postscaler se borran

cuando concurra alguna de las siguientes situaciones:

• un escribir en el registro TMR2

• un escribir en el registro T2CON

• cualquier dispositivo RESET (Power-on

Reset, reinicio Reinicio MCLR, Reset

Watchdog Timer, o Brown-out)

TMR2 no se borra cuando T2CON está escrito.

REGISTRO 12-1: T2CON: TIMER2 REGISTRO DE CONTROL

U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

- TOUTPS3 TOUTPS2 TOUTPS1 TOUTPS0 TMR2ON T2CKPS1 T2CKPS0

bit 7 bit 0

bit 7 No implementado: Leer

como '0 '

bi6-3 t AUTPS3: TOUTPS0: Timer2 salida Postscale bits de selección

0000 = 1:1 Postscale

0001 = 1:2 Postscale •

1111 = 1:16 Postscale

bit 2 TMR2ON: Timer2 En

poco

1= Timer2 es en

0= Timer2 está apagado

bi1-0 t T2CKPS1: T2CKPS0: Timer2 Reloj preescala bits de selección

00 = Preescalador es 1

01 = Preescalador es de 4

1x = Preescalador es de 16

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 133: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 129

PIC18FXX2

Prescaler

01:01, 1:4, 1:16

TMR2

12.2 Timer2 Interrupción

The módulo Timer2 tiene un registro de periodo de 8-

bit, PR2. Timer2 incrementos de 00h hasta que

coincida con PR2 y luego se pone a 00h en el ciclo

siguiente incremento. PR2 es un registro de lectura y

escritura. El registro PR2 se inicializa a FFh a RESET.

12.3 Salida de TMR2

Thsalida e de TMR2 (antes de la postscaler) se

alimenta al módulo de puerto en serie síncrona, que,

opcionalmente, la utiliza para generar el reloj de

desplazamiento.

FIGURA 12-1: DIAGRAMA DE BLOQUES TIMER2

TMR2 juegos Bandera

Salida(1) bit TMR2IF

RESET

2

T2CKPS1: T2CKPS0

Comparator

PR2

POSTEScaler

EQ 1:1 a 1:16

4

TOUTPS3: TOUTPS0

Noe 1: TMR2 registro de salida puede ser seleccionado por el software del módulo SSP como un reloj de transmisión.

TABLE 12-1: registros asociados a TIMER2 como un temporizador / contador

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros INTCON GIE / GIEH

PEIA / GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000 PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

YoPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000 TMR2 Timer2 Módulo de Registro 0000 0000 0000 0000 T2CON - Condicione

s de UsoTPS3

TOUTPS2 TOUTPS1 TOUTPS0 TMROpción 2ON

T2CKPS1 T2CKPS0 -000 0000 -000 0000 PR2 Timer2 Período de Registro 1111 1111 1111 1111 Leyenda:x = Desconocido, u = Sin cambios, -= Sin aplicarse leído como '0 '. Las celdas sombreadas no son utilizados por el módulo

Timer2.

NoTE 1: The PSPIF, PSPIE y los bits están reservados PSPIP en los PIC18F2X2 dispositivos; siempre mantener estos bits clara.

Page 134: 39564c.en.es

DS39564C-page130 2006 Microchip Technology Inc.

PIC18FXX2

13,0 timer3 MÓDULO

The temporizador módulo timer3 / contador tiene las

siguientes características:

• 16-bit del temporizador / contador

(Two 8-bits registros; TMR3H y TMR3L)

• Lectura y escritura (ambos registros)

• Reloj interno o externo, seleccione

• Interrumpir-on-overflow de FFFFh 0000h a

• RESET del gatillo módulo CCP

Figure 13-1 es un diagrama de bloques simplificado

del módulo timer3.

Registrarse 13-1 muestra el control timer3 registrarse.

Este registro controla el modo de funcionamiento del

módulo timer3 y establece la fuente de reloj del

PCCh.

Registrarse 11-1 muestra el control Timer1

registrarse. Este registro controla el modo de

funcionamiento del módulo Timer1, así como contiene

el oscilador Timer1 bit de habilitación (T1OSCEN),

que puede ser una fuente de reloj para timer3.

REGISTRO 13-1: T3CON: timer3 REGISTRO DE CONTROL

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

RD16 T3CCP2 T3CKPS1 T3CKPS0 T3CCP1 T3SYNC TMR3CS TMR3ON

bit 7 bit 0

bit 7 RD16: 16-bit de lectura / escritura Mode Enable bit

1= Activa el registro de lectura / escritura de timer3 en una operación de 16-bit

0= Activa el registro de lectura / escritura de timer3 en dos operaciones de 8-bits

bi6-3 t T3CCP2: T3CCP1: Timer3 y Timer1 para CCPx bits de habilitación

1x = Timer3 es la fuente de reloj para comparar / capturar módulos CCP

01 = Timer3 es la fuente de reloj para comparar / captura de CCP2, Timer1 es la fuente de reloj para comparar / captura de

CCP1

00 = Timer1 es la fuente de reloj para comparar / capturar

módulos CCP bits 5-4 T3CKPS1: T3CKPS0: Timer3 entrada de reloj bits

de selección de pre-escala

11 = 1:8 valor pre-escala

10 = 1:4 valor pre-escala

01 = 1:2 valor pre-escala

00 = 1:1 valor pre-escala

bit 2 T3SYNC: Timer3 Entrada externa de sincronización de reloj de control de bit

(No utilizar si el reloj del sistema proviene de

Timer1/Timer3) Cuando TMR3CS = 1:

1= No sincronizar entrada de reloj externo 0= Sincronizar entrada de reloj externo

Cuando TMR3CS = 0:

Thpoco se tiene en cuenta. Timer3 utiliza el reloj interno cuando

TMR3CS = 0. bit 1 TMR3CS: Timer3 Reloj bit de selección de fuente

1= Entrada de reloj externa de Timer1 oscilador o T1CKI (On el flanco de subida después de que el

primer flanco de bajada)

0= Reloj interno (FOSC / 4)

bit 0 TMR3ON: Tiempor3 En poco

1= Activa timer3

0= Detiene timer3

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 135: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 131

PIC18FXX2

13.1 timer3 Operación

Timer3 puede funcionar en uno de estos modos:

• Como un temporizador

• Como un contador síncrono

• Como un contador asíncrono

Thel modo de funcionamiento e se determina por el

bit de reloj selecto, TMR3CS (T3CON <1>).

WheTMR3CS n = 0, timer3 incrementa cada ciclo de

instrucción. Cuando TMR3CS = 1, timer3 incrementos

en cada flanco ascendente de la entrada de reloj

externa Timer1 o el oscilador Timer1, si está

habilitado.

When el oscilador Timer1 está habilitado (T1OSCEN

está establecido), los pasadores y RC1/T1OSI

RC0/T1OSO/T1CKI se convierten en insumos. Es

decir, el TRISC <1:00> valor es ignorado, y los pines

se leen como '0 '.

Timer3 también tiene una interna "de entrada RESET". Este restablecimiento

Californian ser generado por el módulo CCP (Sección 14,0).

FIGURA 13-1: DIAGRAMA DE BLOQUES timer3

TMR3IF Overflow Interrupt

CCP Especial de disparo

T3CCPx

Sincronizado

Flag bit

T1OSO / T13CKI

CLR

TMR3H TMR3L

T1OSC

(3)

TMR3ON

On / Off

0

1

T3SYNC

Prescaler

Clock entrada

Sincronizar

T1OSYo

T1OScen oscilador Enable(1)

FOSC / 4 Internal 0 Clock

1, 2, 4, 8

2

det

TMR3CS

T3CKPS1: T3CKPS0

SLEEP entrada

Noe 1: When permitir T1OSCEN poco se borra, el inversor y la resistencia de realimentación están apagados. Esto elimina la fuga de energía.

FIGURA 13-2: DIAGRAMA DE BLOQUES timer3 configurado en 16-bit de lectura / escritura

Datun autobús <7:00>

8

Writo TMR3L

Leer TMR3L

TMR3H

8 8

CCP Especial de disparo

on Desbordarse Timer3

High Byte

TMR3L

CLR Clock entrada

1

T1OSO / T13CKI

T1OSC

TTimer1 o entrada de reloj

TMR3ON

Prescaler

Synchronize

T1OSI

T1OSCEN Enable oscilador(1)

FOSC / 4 Interno Clock

1, 2, 4, 8

0

2

T3CKPS1: T3CKPS0

Page 136: 39564c.en.es

DS39564C-page132 2006 Microchip Technology Inc.

PIC18FXX2

de

t

SL

EEP entrada

TMR3CS

Noe 1: When el bit T1OSCEN se borra, el inversor y la resistencia de realimentación están apagados. Esto elimina la fuga de energía.

Page 137: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 133

PIC18FXX2

13.2 Timer1 oscilador

The oscilador Timer1 se puede usar como la fuente

de reloj para timer3. El oscilador Timer1 se habilita

estableciendo el T1OSCEN (T1CON <3>) bits. El

oscilador es un oscilador de baja potencia nominal de

hasta 200 KHz. Vea la Sección 11.0 para más

detalles.

13.3 timer3 interrupción

The TMR3 par Register (TMR3H: TMR3L)

incrementos de 0000h a FFFFh y se da la vuelta a

0000h. La interrupción TMR3, si está activado, se

genera en caso de desbordamiento, que está

enclavado en el bit indicador de interrupción, TMR3IF

(PIR2 <1>). Esta interrupción se puede habilitar /

deshabilitar estableciendo / borrado TMR3 habilitación

de interrupción poco, TMR3IE (PIE2 <1>).

13.4 timer3 Restablecer utilizando una salida de disparo CCP

Yof el módulo CCP está configurado en modo de

comparación para generar un "gatillo evento especial"

(CCP1M3: CCP1M0

=1011), Esta señal se restablecerá

timer3.

Nota: Thevento especial e dispara desde el

módulo CCP no se establezca el bit

indicador de interrupción, TMR3IF (PIR1

<0>).

Timer3 debe estar configurado para un temporizador o

sincronizada modo contador para tomar ventaja de

esta característica. Si timer3 se ejecuta en modo

contador asíncrono, esta operación RESET no puede

funcionar. En el caso de que una escritura en timer3

coincide con un disparador de evento especial de

CCP1, la escritura tendrá prioridad. En este modo de

operación, el CCPR1H: par registros CCPR1L se

convierte efectivamente en el período de registro para

timer3.

TABLE 13-1: registros asociados a timer3 como un temporizador / contador

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros INTCON GIE /

GIEH PEIA

/

GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR2 - - - EFEI BCLIF LVDIF TMR3IF CCP2IF ---0 0000 ---0 0000 PIE2 - - - EEIE BCLIE LVDIE TMR3IE CCP2IE ---0 0000 ---0 0000 YoPR2 - - - EEIP BCLIP LVDIP TMR3IP CCP2IP ---1 1111 ---1 1111 TMR3L Holding Registro para el byte menos significativo del registro de 16-bit TMR3 xxxx xxxx uuuu uuuu TMR3H Holding Registrarse para el byte más significativo del registro de 16-bit TMR3 xxxx xxxx uuuu uuuu T1CON RD16 - T1CKPS1 T1CKPS0 T1OSCEN T1SYNC TMR1CS TMR1ON 0-00 0000 u-uu uuuu

T3CON RD16 T3CCP2 T3CKPS1 T3CKPS0 T3CCP1 T3SYNC TMR3CS TMR3ON 0000 0000 uuuu uuuu Leyenda:x = Desconocido, u = Sin cambios, -= Sin aplicarse, leído como '0 '. Las celdas sombreadas no son utilizados por el módulo

Timer1.

Page 138: 39564c.en.es

DS39564C-page134 2006 Microchip Technology Inc.

PIC18FXX2

NOTAS:

Page 139: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 135

PIC18FXX2

14.0 Captura / Comparación / PWM (CCP) MÓDULOS

Each CCP (Captura / Comparación / PWM) módulo

contiene un registro de 16 bits que puede funcionar

como un registro de captura de 16-bit, como un 16-bit

de registro de comparación o como un PWM Master /

Slave Ciclo registrarse. Tabla 14-1 muestra los

recursos de los modos de temporizador módulo CCP.

The Funcionamiento de CCP1 es idéntica a la de

CCP2, con la excepción de la desencadenador de

evento especial. Por lo tanto, el funcionamiento de un

módulo de CCP en las secciones siguientes se

describe con respecto a CCP1.

Table 14-2 muestra la interacción de los módulos CCP.

REGISTRO 14-1: CCP1CON REGISTER/CCP2CON REGISTRO

U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

- - DCxB1 DCxB0 CCPxM3 CCPxM2 CCPxM1 CCPxM0

bit 7 bit 0

bit 7-6 No implementado: Leer

como '0 '

bi5-4 t DCxB1: DCxB0: PWM Ciclo bit1 y bit0

Modo de

captura:

Compare modo

inusitado:

No usado

PWM modo:

Thesbits de E son los dos LSB (bit 1 y bit 0) del ciclo de trabajo de 10-bit PWM. Los ocho bits superiores

(DCx9: DCx2) del ciclo de trabajo se encuentran en

CCPRxL. bit 3-0 CCPxM3: CCPxM0: CCPx modo de

selección de los bits

0000 = Captura / Comparación / PWM para discapacitados (restablece CCPx módulo) 0001 = Reservado

0010 = Modo de comparación, la salida de conmutación en el partido (el bit se establece

CCPxIF) 0011 = Reservado

0100 = Modo de captura, cada flanco de bajada

0101 = Modo de captura, cada flanco ascendente 0110 = Modo de captura, cada flanco cuarto creciente

0111 = Modo de captura, cada flanco ascendente 16a

1000 = Modo de comparación, Inicializar CCP pin bajo, en comparación coincide con fuerza CCP pin High (bit CCPIF está establecido)

1001 = Modo de comparación,

Inicializar CCP pin High, en comparación coincide con fuerza CCP pin Baja (poco CCPIF está establecido)

1010 = Modo de comparación,

Generate interrupción software en comparar partido (el bit se establece CCPIF, pin CCP no se ve afectada)

1011 = Modo de comparación,

Taparejador evento especial (bit CCPIF está establecido)

11xx = Modo PWM

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 140: 39564c.en.es

DS39564C-page136 2006 Microchip Technology Inc.

PIC18FXX2

14.1 Módulo CCP1

Captura / Comparación / PWM Register 1 (CCPR1) es

com-valorada en dos registros de 8 bits: CCPR1L

(byte bajo) y CCPR1H (byte alto). El registro

CCP1CON controla el funcionamiento del PCC1.

Todos son de lectura y escritura.

TABLE 14-1: MODO CCP -

RECURSOS TIMER

14.Módulo 2 CCP2

Captura / Comparación / PWM Registro2 (CCPR2) es

com-valorada en dos registros de 8 bits: CCPR2L

(byte bajo) y CCPR2H (byte alto). El registro

CCP2CON controla el funcionamiento de CCP2.

Todos son de lectura y escritura.

CCP Mode Timer recursos

Captura

de

compara

ción

PWM

Timer1 o timer3

Timer1 o timer3

Tiempor2

TABLE 14-2: interacción de dos módulos CCP

CCPx Mode CCPY Mode Interacción

Capturar Capturar TMR1 o TMR3 de base de tiempo. De base de tiempo puede ser diferente para cada PCC. Capturar Comparar The comparar puede ser configurado para el activador de evento especial,

que despeja bien TMR1 o TMR3 dependiendo de que la base de tiempo se utiliza.

Comparar Comparar The comparar (s) puede ser configurado para el desencadenador de eventos especiales,

que despeja TMR1 o TMR3 dependiendo de que la base de tiempo se utiliza. PWM PWM ThPWMs E tendrá la misma frecuencia y velocidad de actualización

(TMR2 interrupción).

PWM Capturar Ninguno

PWM Comparar Ninguno

Page 141: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 137

PIC18FXX2

14.3 Modo de captura

En el modo Captura, CCPR1H: CCPR1L captura la

16-bit el valor de los registros TMR1 TMR3 o cuando

se produce un evento en el pin RC2/CCP1. Un evento

se define como uno de los siguientes:

• cada flanco de bajada

• cada flanco ascendente

• cada borde cuarto creciente

• cada borde 16a creciente

Thevento e es seleccionado por CCP1M3 bits de

control: CCP1M0 (CCP1CON <03:00>). Cuando la

captura se hace, la interrumpen solicitud bandera

poco CCP1IF (PIR1 <2>) se fija, sino que debe ser

limpiado por software. Si otra captura se produce

antes de que el valor en el registro CCPR1 es leído, el

antiguo valor capturado se sobrescribe con el nuevo

valor capturado.

14.3.1 CCP CONFIGURACIÓN DE PINES

Yon el modo de captura, el pasador RC2/CCP1 debe

configurarse como una entrada mediante el

establecimiento de la TRISC <2> bit.

Nota: Yof la RC2/CCP1 se configura como una

salida, por una escritura en el puerto

puede causar una condición de captura.

14.3.2 TIMER1/TIMER3 MODO DE SELECCIÓN

Thtemporizadores electrónicos que se van a utilizar

con la función de captura (ya sea Timer1 y / o timer3)

debe estar ejecutándose en el modo de temporizador

o contador sincronizado modo. En asíncrona modo

contador, la operación de captura no puede funcionar.

El temporizador para ser utilizado con cada módulo

CCP se selecciona en el registro T3CON.

14.3.3 Interrupción Software

When el modo de Captura se cambia, la alarma de

captura falsa puede ser generada. El usuario debe

tener poco CCP1IE (PIE1 <2>) claro para evitar falsas

alarmas y se debe borrar el bit bandera, CCP1IF,

después de cualquier cambio en el modo de

funcionamiento.

14.3.4 CCP prescaler

There son cuatro ajustes prescaler, especificado por

los bits CCP1M3: CCP1M0. Cada vez que el módulo

CCP está apagado o el módulo CCP no está en el

modo de captura, el contador prescaler se borra. Esto

significa que cualquier RESET cero el contador de

prescaler.

Switching de prescaler de captura a otro puede

generar una interrupción. Además, el contador

prescaler no se borrará, por lo tanto, la primera

captura puede ser de un pre-escalador distinto de

cero. Ejemplo 14-1 muestra el método recomendado

para la conexión entre la captura de pres-calers. En

este ejemplo también se borra el contador prescaler y

no generará el "false" interrupción.

EXAMPLIO 14-1: CAMBIO ENTRE

prescalers DE CAPTURA

CLRCCP1CON F, F; Turn off módulo CCP

MOVLW NEW_CAPT_PS; WREG de carga con

la

, Nuevo modo de prescaler

, Valor y CCP EN

MOVWF CCP1CON; CCP1CON de carga con

; Este valor

FIGURA 14-1: MODO DE CAPTURA DE FUNCIONAMIENTO DIAGRAMA DE BLOQUES

PrEscaler

Set Flag bit CCP1IF

T3CCP2

TMR3

TMR3H TMR3L

Pin CCP1

÷ 1, 4, 16

und

EdgDetección e

CCP1CON <3:00>

T3CCP2

Enable

CCPR1H CCPR1L

TMR1

Permitir

TMR1H TMR1L

De Q

PrEscaler

Set

F

lag bit CCP2IF T3CCP1 T3CCP2

Page 142: 39564c.en.es

DS39564C-page138 2006 Microchip Technology Inc.

PIC18FXX2

TMR3

TMR3H TMR3L

Pin CCP2

÷ 1, 4, 16

und

EdgDetección e

CCP2CON <3:00>

T3CCP1

Enable

CCPR2H CCPR2L

TMR1

Permitir

TMR1H TMR1L

Q 's

Page 143: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 139

PIC18FXX2

Comparator Mamá tch

14.4 Compare Mode

En modo de comparación, la CCPR1 16-bit (CCPR2)

valor de registro se compara constantemente contra

ya sea el valor TMR1 par de registro, o el valor TMR3

registro par. Cuando se produce una coincidencia, el

RC2/CCP1 (RC1/CCP2) pin es:

• Alta impulsado

• Menor impulsado

• Salida de conmutación (de mayor a menor o de menor a mayor)

• se mantiene sin cambios

The acción sobre el pasador se basa en el valor de

los bits de control CCP1M3: CCP1M0 (CCP2M3:

CCP2M0). Al mismo tiempo, la interrupción indicador

de bits CCP1IF (CCP2IF) se establece.

14.4.1 CCP CONFIGURACIÓN DE PINES

Thusuario de correo debe configurar el pin como

salida CCPx borrando el bit TRISC apropiado.

Nota: Borrado del registro CCP1CON obligará al

RC2/CCP1 comparar pestillo de salida al

bajo nivel de morosidad. Este no es el

PORTC I / O cerrojo de datos.

14.4.2 TIMER1/TIMER3 MODO DE SELECCIÓN

Timer1 y / o timer3 debe estar ejecutándose en modo

de temporizador o contador sincronizado modo si el

módulo CCP se utiliza la función de comparación. En

el modo contador asíncrono, la operación de

comparación puede no funcionar.

14.4.3 SOFTWARE MODO DE INTERRUPCIÓN

When generar interrupción software que se elija, el

pin CCP1 no se ve afectada. Sólo una interrupción

CCP se genera (si está activado).

14.4.4 TRIGGER EVENTO ESPECIAL

Yon este modo, un disparador de hardware interno se

genera, que puede utilizarse para iniciar una acción.

The evento especial de salida del disparador de

CCP1 pone a cero el par de registros TMR1. Esto

permite que el registro CCPR1 a ser efectivamente un

registro de 16-bit de periodo programable para

Timer1.

The salida de disparo especial de restablecimientos CCPx ya sea el

TMR1 o TMR3 par de registros. Además, la CCP2

SpeciaDisparador l evento se iniciará una conversión A / D, si la

Un módulo / D está habilitado.

Nota: Thgatillo e evento especial del módulo

CCP2 no fijará los Timer1 o timer3 bits de

interrupción de bandera.

FIGURA 14-2: COMPARAR MODO DE FUNCIONAMIENTO DIAGRAMA DE BLOQUES

SpeEvent Trigger social hará lo siguiente: Cambiar Timer1 o timer3, pero no se establece Timer1 o timer3 bit de bandera de interrupción, y establecer el bit GO / DONE (ADCON0 <2>) que se inicia una conversión A / D (CCP2 solamente)

Disparo de Eventos Especiales

Set Flag bit CCP1IF

CCPR1H CCPR1L

RC2/CCP1 pin

TRISC <2>

de habilitación de salida

La salida Q S Logic

R

CCP1CON

<3:00> MSeleccione

una oda

T3CCP2 0 1

TMR1H TMR1L TMR3H TMR3L

EspeculaciónEvent Trigger ial

Set Flag bit CCP2IF T3CCP1

T3CCP2 0 1

Page 144: 39564c.en.es

DS39564C-page140 2006 Microchip Technology Inc.

PIC18FXX2

Comparator

RC1/CCP2 pin

TRISC <1>

de habilitación de salida

Q S Output

R Lógica

CCP2CON

<3:00> Modo de Selección

Esterach

CCPR2H CCPR2L

Page 145: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 141

PIC18FXX2

TABLE 14-3: registros asociados con la captura, COMPARE, Timer1 y timer3

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros INTCON GIE / GIEH

PEIE / GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

YoPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000 TRISC PORTC registro de datos Dirección 1111 1111 1111 1111 TMR1L Holding Registro para el byte menos significativo del registro de 16 bits TMR1 xxxx xxxx uuuu uuuu TMR1H Holding Registrarse para el byte más significativo del registro de 16 bits TMR1 xxxx xxxx uuuu uuuu T1CON RD16 - T1CKPS1 T1CKPS0 T1OSCEN T1SYNC TMR1CS TMR1ON 0-00 0000 u-uu uuuu CCPR1L Captura / Comparación / PWMRegistro1 (LSB) xxxx xxxx uuuu uuuu CCPR1H Captura / Comparación / PWM Registro1 (MSB) xxxx xxxx uuuu uuuu CCP1CON - - DC1B1 DC1B0 CCP1M3 CCP1M2 CCP1M1 CCP1M0 - 00 0000 - 00 0000 CCPR2L Captura / Comparación / PWMRegistro2 (LSB) xxxx xxxx uuuu uuuu CCPR2H Captura / Comparación / PWM Registro2 (MSB) xxxx xxxx uuuu uuuu CCP2CON - - DC2B1 DC2B0 CCP2M3 CCP2M2 CCP2M1 CCP2M0 - 00 0000 - 00 0000 PIR2 - - - EEIE BCLIF LVDIF TMR3IF CCP2IF ---0 0000 ---0 0000 PIE2 - - - EEIF BCLIE LVDIE TMR3IE CCP2IE ---0 0000 ---0 0000 YoPR2 - - - EEIP BCLIP LVDIP TMR3IP CCP2IP ---1 1111 ---1 1111 TMR3L Holding Registro para el byte menos significativo del registro de 16-bit TMR3 xxxx xxxx uuuu uuuu TMR3H Holding Registrarse para el byte más significativo del registro de 16-bit TMR3 xxxx xxxx uuuu uuuu

T3CON RD16 T3CCP2 T3CKPS1 T3CKPS0 T3CCP1 T3SYNC TMR3CS TMR3ON 0000 0000 uuuu uuuu Leyenda:x = Desconocido, u = Sin cambios, -= Sin aplicarse, leído como '0 '. Las celdas sombreadas no son utilizados por la captura

y Timer1.

NoTE 1: Tél PSPIF, PSPIE y los bits están reservados PSPIP en los PIC18F2x2 dispositivos; siempre mantener estos bits clara.

Page 146: 39564c.en.es

DS39564C-page142 2006 Microchip Technology Inc.

PIC18FXX2

CCPR1H (Esclavo)

TMR2 (Nota 1)

14.5 Modo PWM

En ancho de pulso (PWM) de modo, el pin CCP1

produce hasta una resolución de 10-bit PWM de

salida. Puesto que el pasador CCP1 se multiplexa con

el cerrojo de datos PORTC, la TRISC <2> bit debe ser

limpiado para hacer que el pasador CCP1 una salida.

Nota: Borrado del registro CCP1CON forzará el

cierre CCP1 salida PWM para el bajo

nivel de morosidad. Este no es el PORTC

I / O cerrojo de datos.

Figure 14-3 muestra un diagrama de bloques simplificado de la

CCP módulo en modo PWM.

Fora paso a paso el procedimiento sobre cómo configurar el CCP

module PWM para la operación, consulte la Sección 14.5.3.

FIGURA 14-3: diagrama de bloques

simplificado PWM

Ciclo de trabajo Registros CCP1CON <5:04>

CCPR1L

14.5.1 PWM PERÍODO

The período de PWM se especifica por escrito en el

registro PR2. El periodo PWM se puede calcular

utilizando la siguiente fórmula:

PWM = período (PR2) + 1] • 4 • TOSC •

(TMR2 valor

preescala)

PWFrecuencia M se define como 1 / [período PWM].

When TMR2 es igual a PR2, los siguientes tres

eventos se producen en el ciclo siguiente incremento:

• TMR2 se borra

• El pin CCP1 se establece (excepción: si el

ciclo de trabajo PWM = 0%, el pin CCP1 no

se establece)

• El ciclo de trabajo PWM se precintaron en CCPR1L

CCPR1H

Nota: The Timer2 postscaler (véase la Sección

12,0) no se utiliza en la determinación de

la frecuencia PWM. El postscaler podría

ser utilizado para tener una velocidad de

actualización de servo a una frecuencia

diferente que la salida PWM.

14.5.2 PWM CICLO DE TRABAJO

The ciclo de trabajo PWM se especifica por escrito al

registro CCPR1L ya los CCP1CON <5:04> bits.

Resolución de hasta 10 bits disponible. El CCPR1L

contiene los ocho MSB y el CCP1CON <5:04>

contiene los Comparator

Comparator

Borrar contador,

R Q

RC2/CCP1

S

TRISC <2>

two LSB. Este valor de 10-bits está representado por

CCPR1L: CCP1CON <5:04>. La siguiente ecuación

se utiliza para calcular el ciclo de trabajo PWM en el

tiempo:

PWM ciclo de trabajo = (CCPR1L: CCP1CON

<05:04>) • TOSC • (TMR2

valor preescala)

CCPR1L y CCP1CON <5:04> se puede escribir en cualquier

PR2

CCP1 pin y CCPR1H hasta después de un partido entre PR2 y TMR2

Nota: 8 -temporizador bit se concatena con 2-bit de reloj

interno de Q o 2 bits de la pre-escalador para crear 10-bit de base de tiempo.

Una salida PWM (Figura 14-4) tiene una base de

tiempo (período) y un tiempo que la salida permanece

alta (ciclo de trabajo). La frecuencia de la PWM es la

inversa del período (1/period).

FIGURA 14-4: SALIDA PWM

Poriod

se produce (es decir, el periodo es completa). En el

modo PWM, CCPR1H es un registro de sólo lectura.

The CCPR1H registro y un cierre interno de 2-bits se

utiliza para amortiguar el doble del ciclo de trabajo

PWM. Esta doble buffer es esencial para glitchless

operación PWM.

When el partido de cierre CCPR1H y 2 bits TMR2

con-concatenadas con un interior de 2-bits Reloj Q o

2 bits prescaler del TMR2, el pin CCP1 se borra.

The PWM máxima resolución (bits) para un determinado PWM

FRECUENCIAy está dada por la ecuación:

Page 147: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 143

PIC18FXX2

⎝ ---------------

log ⎛ F OS C ⎞FPWM

Ciclo de trabajo

PWM Resolución (máx.)

= ----------------------------- Bits de registro (2)

TMR2 = PR2

TMR2 = PR2

TMR2 = Ciclo

Nota: Yoi el derecho PWM valor del ciclo es

más largo que el período de PWM, el pin

CCP1 no se borrará.

Page 148: 39564c.en.es

DS39564C-page144 2006 Microchip Technology Inc.

PIC18FXX2

14.5.3 CONFIGURACIÓN DE FUNCIONAMIENTO PWM

The los siguientes pasos se deben tomar al configurar

el módulo CCP para la operación PWM:

1. Establecer el período de PWM escribiendo al registro PR2.

2. Ajuste el ciclo de trabajo de PWM por escrito a la

CCPR1L registro y CCP1CON <5:04> bits.

3. Hacer que el pin CCP1 una salida en la limpieza de la

TRISC <2> bit.

4. Set el TMR2 preescala valor y permitir Timer2

por escrito a T2CON.

5. Configurar el módulo CCP1 para operación PWM.

TABLE 14-4: Ejemplo PWM frecuencias y resoluciones a 40 MHz

PWM Frecuencia 2,44 kHz 9,77 kHz 39,06 kHz 156,25 kHz 312,50 kHz 416,67 kHz

Tiempor preescalador (1, 4, 16)

16 4 1 1 1 1

PR2 Valor 0xFF 0xFF 0xFF 0x3F 0x1F 0x17

Maximum Resolución (bits) 14 12 10 8 7 6,58

TABLE 14-5: registros asociados a PWM y Timer2

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros INTCON GIE / GIEH

PEIE / GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

YoPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000 TRISC PORTC registro de datos Dirección 1111 1111 1111 1111 TMR2 Timer2 Módulo de Registro 0000 0000 0000 0000 PR2 Timer2 Período Módulo Registro 1111 1111 1111 1111 T2CON - Condicion

es de UsoTPS3

TOUTPS2 TOUTPS1 TOUTPS0 TMR2ON T2CKPS1 T2CKPS0 -000 0000 -000 0000 CCPR1L Capture / Compare / PWM Registro1 (LSB) xxxx xxxx uuuu uuuu CCPR1H Capture / Compare / PWM Registro1 (MSB) xxxx xxxx uuuu uuuu CCP1CON - - DC1B1 DC1B0 CCP1M3 CCP1M2 CCP1M1 CCP1M0 - 00 0000 - 00 0000 CCPR2L Capture / Compare / PWM Registro2 (LSB) xxxx xxxx uuuu uuuu CCPR2H Capture / Compare / PWM Registro2 (MSB) xxxx xxxx uuuu uuuu CCP2CON - - DC2B1 DC2B0 CCP2M3 CCTrata

miento p2m2

CCP2M1 CCP2M0 - 00 0000 - 00 0000 Leyenda:x = Desconocido, u = Sin cambios, - = no implementado, leído como '0 '. Las celdas sombreadas no son utilizados por PWM

y Timer2. NoTE 1: Tél PSPIF, PSPIE y los bits están reservados PSPIP en los PIC18F2X2 dispositivos; siempre mantener estos bits clara.

Page 149: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 145

PIC18FXX2

NOTAS:

Page 150: 39564c.en.es

DS39564C-page146 2006 Microchip Technology Inc.

PIC18FXX2

/ AN4

SS

2

15,0 SÍNCRONO MAESTRO DEL PUERTO SERIE (MSSP) MÓDULO

15.1 Master SSP (MSSP) Módulo

Visión de conjunto

El Master Synchronous Serial Port (MSSP) es un

módulo de interfaz serial útil para comunicarse con

otros dispositivos periféricos o microcontrolador. Estos

dispositivos periféricos pueden ser memorias

EEPROM serie, registros de desplazamiento, dis-play

controladores, convertidores A / D, etc El módulo

MSSP pueden operar en uno de dos modos:

• Interfaz Serial Peripheral (SPI)

• Inter-Integrated Circuit (I2C)

- Modo Master Full

- Slave mode (con llamada dirección general)

The interfaz I2C soporta los siguientes modos de

hardware:

• Modo maestro

• Multi-Modo Master

• Modo esclavo

15.2 Registro de Control

El módulo MSSP tiene tres registros asociados. Estos

incluyen un registro de estado (SSPSTAT) y dos

15.3 Modo SPI

The modo SPI permite 8-bits de datos a ser

transmitidos y recibidos sincrónicamente,

simultáneamente. Los cuatro modos de SPI son

compatibles. Para llevar a cabo la comunicación,

generalmente de tres patillas se utilizan:

• Salida de datos serie (SDO) - RC5/SDO

• Serial Data In (SDI) - RC4/SDI/SDA

• Serial Clock (SCK) - RC3/SCK/SCL/LVDIN

Además, Un cuarto pasador puede ser utilizado en un

modo de funcionamiento esclavo:

• Slave Select (SS) - RA5/SS/AN4

Figure 15-1 muestra el diagrama de bloques de la MSSP

module cuando funciona en modo SPI.

FIGURA 15-1: DIAGRAMA DE BLOQUE

MSSP (MODO SPI)

Internal Datun autobús

Read Escriba

SSPBUF reg

RC4/SDI/SDA

SSPSR reg

cregistros ontrol (SSPCON1 y SSPCON2). El uso de

estos registros y sus bits de configuración individuales

difieren significativamente, dependiendo de si el

MSSP

module es operado en modo SPI o I2C.

Se dispone del se proporcionan detalles en las

secciones individuales.

RC5 /SDO

RA5 / SS

bit0 cambio reloj

Controle Permitir

Borde SeleConnecticut

2

Clock Select

SSPM3: SSPM0

RC3/SCK / SCL / LVDIN

SMP: CKE 4 2

Borde Seleccionar

(TMR2 salida) Prescaler TOSC

4, 16, 64

Datuna para TX / RX en SSPSR TRIS bit

Page 151: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 147

PIC18FXX2

15.3.1 REGISTROS

El módulo MSSP tiene cuatro registros para el

funcionamiento en modo SPI. Estos son:

• Control de Registro1 MSSP (SSPCON1)

• MSSP Status Register (SSPSTAT)

• Serial recepción / transmisión Buffer (SSPBUF)

• MSSP Shift Register (SSPSR) - No

directamente accesible

SSPCON1 y SSPSTAT son el control y registros de

estado en el modo de operación SPI. El SSPCON1

regis-tro es lectura y escritura. Los menores de 6 bits

de la SSPSTAT son de sólo lectura. Los dos

superiores de la SSPSTAT son de lectura / escritura.

SSPSR es el registro de desplazamiento sirve para

mover los datos de entrada o salida. SSPBUF es el

registro tampón de bytes de datos que se escriben o

leen.

En las operaciones de recepción, SSPSR SSPBUF y

juntos crear un receptor de doble buffer. Cuando

SSPSR recibe un byte completo, se transfiere a

SSPBUF y la interrupción SSPIF se establece.

Durante la transmisión, el SSPBUF no es doble piel

de ante-rarse. Una escritura en SSPBUF escribirá a

ambos SSPBUF y SSPSR.

REGISTRO 15-1: SSPSTAT: MSSP registro de estado (SPI MODE)

R/W-0 R/W-0 R-0-0 R R R-0-0-0 R R-0

SMP CKE D / A

P S R / W UA BF

bit 7 bit 0

bit 7 SMP: Sample bit

SPI Modo Master:

1= Datos de entrada muestra al final del tiempo de salida de datos

0= Datos de entrada muestreada en medio del tiempo de salida de datos

SPI Modo esclavo:

SMP debe ser limpiado cuando SPI se utiliza en modo

bit Slave 6 CKE: SPI Reloj Edge Select

Cuando CKP = 0:

1= Los datos transmitidos en flanco de subida de SCK

0= Los datos transmitidos en el flanco descendente de SCK

Cuando CKP = 1:

1= Los datos transmitidos en el flanco descendente de SCK

0= Los datos transmitidos en flanco de subida de SCK

bit 5 D / A: Data / Address bit

Se utiliza en modo I2C

solo bit 4 P: Bit de parada

Usado en modo I2C sólo. Este bit se borra cuando el módulo MSSP está desactivada, es SSPEN

aclaró.

bit 3 S: START poco

Usado en modo I2C sólo

bit 2 R / W: Lectura / escritura de bits de información

Se utiliza en modo I2C

solo bit 1 UA: Cambio de

Domicilio

Usado en modo I2C sólo

bit 0 BF: Buffer Bit de estado completo (modo de recepción solamente)

1= Recibir completo, SSPBUF está lleno

0= Recibir no es completa, SSPBUF está vacío

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 152: 39564c.en.es

DS39564C-page148 2006 Microchip Technology Inc.

PIC18FXX2

REGISTRO 15-2: SSPCON1: MSSP CONTROL DE register1 (SPI MODE)

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

WCOL SSPOV SSPEN CKP SSPM3 SSPM2 SSPM1 SSPM0

bit 7 bit 0

bit 7 WCOL: WCollision Detect rito bits (modo de transmisión solamente)

1= El registro SSPBUF está escrito mientras se sigue transmitiendo la palabra anterior

(Debe ser limpiado por software)

0= No hay colisión

bit 6 SSPOV: RECEPTORDesbordamiento e indicador poco

SPI Modo esclavo:

1= Un nuevo byte es recibido mientras que el registro SSPBUF todavía mantiene los datos

anteriores. En caso de desbordamiento, los datos en SSPSR se pierde. Desbordamiento

sólo puede ocurrir en Slave mode.The usuario debe leer la SSPBUF, incluso si sólo la

transmisión de datos, para evitar el desbordamiento de ajuste

(Debe ser limpiado por software).

0= No hay desbordamiento

Nota: Yon modo maestro, el bit de desbordamiento no se ha establecido, ya que cada

nueva recepción (y transmisión) se inicia escribiendo en el registro SSPBUF.

bit 5 SSPEN: Synchronous Serial Port Enable bit

1= Activa el puerto serie y configura SCK, SDO, SDI y SS como los pines del puerto serie

0= Desactiva el puerto serie y configura estos pines como pines I / O del puerto

Nota: When activado, estos pines deben estar correctamente configurado como entrada o

salida.

bit 4 CKP: La polaridad del reloj Seleccione bit

1State = IDLE para el reloj es un nivel alto

0State = IDLE para el reloj es un nivel bajo

bit 3-0 SSPM3: SSPM0: Synchronous del puerto serial los bits de selección de modo

0101 = Modo Slave SPI, reloj = SCK pin, pin de control SS deshabilitado, SS puede ser

utilizado como pin I / O 0100 = Modo Slave SPI, reloj = SCK pin, pin de control SS habilitado

0011 = Modo maestro SPI, reloj = TMR2 salida / 2

0010 = Modo maestro SPI, reloj = FOSC/64 0001 = Modo maestro SPI, reloj = FOSC/16

0000 = Modo maestro SPI, reloj = Fosc / 4

Nota: Bicombinaciones t no específicamente mencionados aquí son o bien reservado, ni se aplican en

Modo I2C

solamente.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 153: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 149

PIC18FXX2

15.3.2 OPERACIÓN

When inicializar el SPI, varias opciones deben

especificarse. Esto se realiza mediante la

programación de los bits de control apropiados

(SSPCON1 <5:00>) y SSPSTAT <7:06>. Estos bits de

control permiten las siguientes acciones para

especificar:

• Modo Master (SCK es la salida del reloj)

• Modo esclavo (SCK es la entrada de reloj)

• Reloj de polaridad (estado IDLE de SCK)

• La entrada de datos muestra la fase (medio o al

final del tiempo de salida de datos)

• Reloj borde (datos de salida en flanco ascendente / descendente de

SCK)

• Velocidad de Reloj (modo Maestro)

Esclavo • Seleccione el modo (modo esclavo solamente)

El MSSP consiste en una transmisión / recepción de

registro de desplazamiento (SSPSR) y un registro

tampón (SSPBUF). El SSPSR desplaza los datos

dentro y fuera del dispositivo, MSb primero. El

SSPBUF contiene los datos que se escriben en el

SSPSR, hasta que los datos recibidos son listos. Una

vez que los 8 bits de datos se han recibido, que byte

se desplaza al registro SSPBUF. A continuación, el

búfer lleno detectar bit, BF (SSPSTAT <0>), y el bit

indicador de interrupción, SSPIF, se establecen. Esta

doble búfer de los datos recibidos (SSPBUF) permite

que el siguiente byte para iniciar la recepción antes de

leer los datos que se acaba de recibir. Cualquier

escribir en el

SSPBUF registrarse durante la transmisión /

recepción de datos se tendrá en cuenta, y la colisión

de escritura detectar poco, WCOL (SSPCON1 <7>),

se establecerá. Software usuario debe borrar el bit

WCOL de modo que se pueda determinar si el si-

guiente escritura (s) para el registro SSPBUF

completado con éxito.

When del software de aplicación está a la espera de

recibir datos válidos, la SSPBUF deben leerse antes

de la siguiente byte de datos a transferir se escribe en

el SSPBUF. Tampón de bits completa, BF (SSPSTAT

<0>), indica cuando SSPBUF se ha cargado con los

datos recibidos (la transmisión es completa). Cuando

el SSPBUF se lee el bit BF se borra. Estos datos

pueden ser irrelevante si el SPI es sólo un transmisor.

Generalmente, la interrupción MSSP se utiliza para

determinar cuando la transmisión / recepción tiene

completado. El SSPBUF debe leer y / o escribir. Si el

método de interrupción no va a ser utilizado, a

continuación, el software de sondeo se puede hacer

para asegurar que una colisión de escritura no se

produce. Ejemplo 15-1 muestra la carga de la

SSPBUF (SSPSR) para la transmisión de datos.

El SSPSR no es directamente leer o escribir, y sólo se

puede acceder por abordar el SSPBUF reg-tro.

Además, el estado MSSP registro (SSPSTAT) indica

las condiciones de estado diferentes.

EXAMPLIO 15-1: CARGANDO EL SSPBUF (SSPSR) REGISTRO

LOOP BTFSS SSPSTAT, BF, ha sido recibido datos (transmisión completa)?

BRA LOOP; No

MOVSSPBUF F, W; WREG reg = contenido de SSPBUF

MOVWF RxData; guardar en la RAM de usuario, si los datos son significativos

MOVTxData F, W, W = reg contenido de TxData

MOVWF SSPBUF; nuevos datos a XMIT

Page 154: 39564c.en.es

DS39564C-page150 2006 Microchip Technology Inc.

PIC18FXX2

15.3.3 PROPICIO SPI I / O

To habilitar el puerto serial, SSP bit Enable, SSPEN

(SSPCON1 <5>), se debe establecer. Para

restablecer o volver a configurar el modo SPI, borrar

el bit SSPEN, vuelva a inicializar los registros

SSPCON, a continuación, establecer el bit SSPEN.

Esto configura el SDI, SDO, SCK, y los pernos de las

SS como los pines del puerto serie. Para los pins

comportarse como el puerto serial función, algunos

deben tener sus bits de datos (dirección en el registro

TRIS) debidamente programados. Esto es:

• SDI es controlado automáticamente por el módulo SPI

• SDO deben tener TRISC <5> se aclaró poco

• SCK (modo Master) debe tener TRISC <3> bit

borrado

• SCK (modo esclavo) debe tener TRISC <3> bit

• SS debe tener TRISC <4> bit set

Unfunción y puerto serie que no se desea puede ser

anulado por la programación de la dirección de datos

correspondiente (TRIS) registro al valor opuesto.

15.3.4 conexión típica

Figure 15-2 muestra una conexión típica entre dos

microcontroladores. El controlador maestro

(procesador 1) inicia la transferencia de datos

mediante el envío de la señal de SCK. Los datos se

desplaza fuera de ambos registros de desplazamiento

en su borde de reloj programado, y enganchado en el

borde opuesto del reloj. Ambos procesadores deben

ser programado para la misma polaridad de reloj

(CKP), entonces ambos controladores sería enviar y

recibir datos al mismo tiempo. Si el dato es

significativo (o datos ficticios) depende de la

aplicación de software. Esto lleva a tres escenarios

para la transmisión de datos:

• Master envía los datos - Slave envía datos ficticios

• Master envía los datos - Slave envía datos

• Master envía los datos maniquí - Slave envía datos

FIGURA 15-2: SPI MASTER / ESCLAVO DE CONEXIÓN

SPI Maestro SSPM3: SSPM0 = 00xxb

SPI Slave SSPM3: SSPM0 = 010xb

SDO

SDYo

Serial de búfer de entrada

(SSPBUF)

Serial de búfer de entrada

(SSPBUF)

Shift Registro (SSPSR)

SDYo

SDO

Shift Registro (SSPSR)

MSB LSB

PROCESSOR 1

SCK

Serial reloj

SCK

MSb

LSb

PROCESADOR 2

Page 155: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 151

PIC18FXX2

15.3.5 Modo Master

The maestro puede iniciar la transferencia de datos

en cualquier momento, ya que controla la fundación.

El maestro determina cuando el esclavo (procesador

2, Figura 15-2) es para transmitir datos por el

protocolo de software.

Yon el modo maestro, los datos se transmiten /

reciben tan pronto como el registro SSPBUF se

escribe. Si el SPI es sólo va a recibir, la salida SDO

puede ser desactivada (programada como una

entrada). El registro SSPSR seguirá desplazándose

en la señal presente en el pin IDE a la velocidad del

reloj programado. Como cada byte es recibido, se

carga en el registro SSPBUF como si un byte normal

recibió (interrumpe y bits de estado fijados

apropiadamente). Esto podría ser útil en aplicaciones

de receptor como una "actividad de línea Monitor"

modo.

Thpolaridad e reloj se selecciona adecuadamente la

programación del bit CKP (SSPCON1 <4>). Esto

entonces, daría formas de onda para la comunicación

SPI como se muestra en

Fyogura 15-3, Figura 15-5 y Figura 15-6, donde se

transmite el MSB primero. En el modo maestro, la

velocidad de reloj SPI (velocidad de bits) es

programable por el usuario para ser uno de los

siguientes:

• FOSC / 4 (o TCY)

• FOSC/16 (o 4 • TCY)

• FOSC/64 (o 16 • TCY)

• Timer2 salida / 2

Esto permite una velocidad de datos máxima (a 40 MHz) de

10,00 Mbps.

Figure 15-3 muestra las formas de onda para el modo

Master. Cuando el bit se establece CKE, los datos

SDO es válido antes de que haya un borde de reloj

SCK. El cambio de la muestra de entrada se muestra

basado en el estado del bit de SMP. El momento en

que el SSPBUF se carga con los datos recibidos se

muestran.

FIGURA 15-3: ONDA MODO SPI (MASTER MODE)

Writo para SSPBUF

SCK (CKP = 0 CKE = 0)

SCK (CKP = 1 CKE = 0)

SCK (CKP = 0 CKE = 1)

4 Reloj Modos

SCK (CKP = 1 CKE = 1)

SDO bit7 bit6 bit5 bit4 bit3 Bit2 bit1 bit0 (CKE = 0)

SDO bit7 bit6 bit5 bit4 bit3 Bit2 bit1 bit0 (CKE = 1)

IDE

(SMP = 0)

Entrada Muestra (SMP = 0)

IDE (SMP = 1)

bit7 bit0

bit7 bit0

Entrada Muestra (SMP = 1)

SSPIF

SSPSR a SSPBUF

Nordestext Q4 ciclo después de Q2↓

Page 156: 39564c.en.es

DS39564C-page152 2006 Microchip Technology Inc.

PIC18FXX2

15.3.6 MODO ESCLAVO

YoEsclavo n modo, los datos se transmiten y se

reciben como los pulsos de reloj externas aparecer en

SCK. Cuando el último bit está enganchada, la

interrupción SSPIF bit indicador está establecido.

While en el modo esclavo, el reloj externo es

suministrada por la fuente de reloj externa en el pin

SCK. Este reloj externo debe cumplir con los tiempos

mínimos de altas y bajas según se especifica en las

especificaciones eléctricas.

While en el modo SLEEP, el esclavo puede transmitir

/ recibir datos. Cuando se recibe un byte, el

dispositivo despertar de su sueño.

15.3.7 ESCLAVO seleccione

Sincronización

El pin SS permite un modo síncrono esclavo. El SPI

debe estar en modo esclavo con SS pin de control

habilitado (SSPCON1 <3:> = 04h). El pasador no

debe conducirse bajo para el pasador de SS para

funcionar como una entrada. El cerrojo de datos debe

ser alta. Cuando el pin SS es bajo, la transmisión y la

recepción están habilitados y el pin SDO clavos.

Cuando el pin SS es alta, el pin SDO hay

longer accionado, incluso si en el medio de un byte

transmitido, y se convierte en una salida flotante.

Externos pull-up / pull down resistencias puede ser

deseable, dependiendo de la aplicación.

Nota 1: When el SPI está en modo esclavo con SS

pin de control habilitado (SSPCON <3:00> =

0100), El módulo SPI se restablecerá si la

SS pin se establece en VDD.

2:Yof el SPI se utiliza en modo esclavo con

juego de CKE, entonces el pin de control

SS debe estar habilitado.

When que se restablezca el módulo SPI, el contador

de bit se fuerza a 0. Esto se puede hacer por

cualquiera de forzar el pasador de SS a un nivel alto o

eliminar el bit SSPEN.

To emular la comunicación de dos hilos, el pin SDO

puede ser conectado a la clavija de SDI. Cuando el

SPI necesita para operar como un receptor de la

clavija de SDO se puede configurar como una

entrada. Esto desactiva las transmisiones del SDO. El

SDI siempre se puede dejar como una entrada

(función SDI), ya que no puede crear un conflicto de

bus.

FIGURA 15-4: ONDA ESCLAVO DE SINCRONIZACIÓN

SS

SCK (CKP = 0 CKE = 0)

SCK (CKP = 1 CKE = 0)

Writo para SSPBUF

SDO bit7 bit6 bit7 bit0

IDE (SMP = 0)

Entrada Muestra (SMP = 0)

SSPIF Flag de interrupción

SSPSR a SSPBUF

bit7

bit7

bit0

Nordestext Q4 ciclo después de Q2↓

Page 157: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 153

PIC18FXX2

FIGURA 15-5: SPI MODO DE FORMA DE ONDA (modo esclavo CON = 0 CKE)

SS opcional

SCK (CKP = 0 CKE = 0)

SCK (CKP = 1 CKE = 0)

Writo para SSPBUF

SDO bit7 bit6 bit5 bit4 bit3 Bit2 bit1 bit0

IDE (SMP = 0)

Entrada Muestra (SMP = 0)

SSPIF Flag de interrupción

SSPSR a SSPBUF

bit7 bit0

Next Q4 ciclo después de Q2↓

Figura 15-6: SPI ONDA MODO (MODE SLAVE CON CKE = 1)

SS

Not Opcional

SCK (CKP = 0 CKE = 1)

SCK (CKP = 1 CKE = 1)

Escriturae para SSPBUF

SDO bit7 bit6 bit5 bit4 bit3 Bit2 bit1 bit0

IDE (SMP = 0)

bit7 bit0

Entrada Muestra (SMP = 0)

SSPIF Flag de interrupción

SSPSR a SSPBUF

Nordestext Q4 ciclo después de Q2↓

Page 158: 39564c.en.es

DS39564C-page154 2006 Microchip Technology Inc.

PIC18FXX2

15.3.8 FUNCIONAMIENTO DEL SUEÑO

Yon el modo Master, todos los relojes del módulo se

detuvo y la transmisión / recepción permanecerá en

ese estado hasta que el dispositivo se despierta de su

sueño. Después el dispositivo vuelve al modo Normal,

el módulo seguirá para transmitir / recibir datos.

En el modo esclavo, la SPI de transmisión / recepción

registro de desplazamiento funciona de forma

asíncrona al dispositivo. Esto permite que el

dispositivo se coloca en el modo SLEEP y datos que

se desplazan dentro de la SPI de transmisión /

recepción de registro de desplazamiento. Cuando los

8 bits se han recibido, el bit de bandera de

interrupción MSSP se ajustará y si está activado, se

activará el dispositivo de SLEEP.

15.3.9 EFECTOS DE UN RESET

Un RESET desactiva el módulo MSSP y termina la

transferencia actual.

03/15/10 BUS modo de compatibilidad

Table 15-1 muestra la compatibilidad entre los modos

estándar SPI y los estados del CKP y bits de control

de CKE.

TABLE 15-1: MODOS DE SPI BUS

Standard SPI Mode

Terminology

Bits de control del Estado CKP CKE

0, 0 0 1 0, 1 0 0 1, 0 1 1 1, 1 1 0

There es también un poco SMP que controla cuando

los datos se muestrean.

TABLE 15-2: Registros asociados con la operación SPI

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros INTCON GIE / GIEH

PEIE

/

GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000 PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

Derechos de propiedad intelectual1

PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000 TRISC PORTC Datos de registro de dirección 1111 1111 1111 1111 SSPBUF SSerial Port ynchronous Búfer de recepción / transmisión Registrarse xxxx xxxx uuuu uuuu SSPCON OMAL SSPOV SSPEN CKP SSpm3 SSPM2 SSPM1 SSPM0 0000 0000 0000 0000 TRISLa - PORTUna Dirección Registro de datos -111 1111 -111 1111 SSPSTAT SMP CKE D /La P S R / W UA BF 0000 0000 0000 0000 Leyenda:x = Desconocido, u = Sin cambios, -= Sin aplicarse, leído como '0 '. Las celdas sombreadas no son utilizados por el MSSP

en modo SPI.

Noe 1: The PSPIF, PSPIE y los bits están reservados PSPIP en los PIC18C2X2 dispositivos; siempre mantener estos bits clara.

Page 159: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 155

PIC18FXX2

SSPADD reg

15.4 Modo I2C

El módulo MSSP en modo I 2C aplica plenamente

todas las funciones de maestro y esclavo (incluyendo

llamadas apoyo general) y proporciona alarmas en

START y STOP bits en hardware para determinar un

autobús gratuito (multi-master función). El módulo

MSSP implementa las especificaciones relativas al

modo estándar, además de abordar de 7-bit y 10-bit.

Tpins WO se utiliza para la transferencia de datos:

• Reloj en serie (SCL) - RC3/SCK/SCL

• Los datos serie (SDA) - RC4/SDI/SDA

Thusuario de correo debe configurar estos pines

como entradas o salidas a través de la TRISC <4:3>

bits.

FIGURA 15-7: DIAGRAMA DE BLOQUE

MSSP (MODO I2C)

Enexterno

Bus de Datos

Lectura Escritura

RC3/SCK/SCL SSPBUF reg

Shift

Reloj

SSPSR reg

15.4.1 REGISTROS

El módulo MSSP tiene seis registros para la operación

I2C. Estos son:

• Control de Registro1 MSSP (SSPCON1)

• Control de Registro2 MSSP (SSPCON2)

• MSSP Status Register (SSPSTAT)

• Serial recepción / transmisión Buffer (SSPBUF)

• MSSP Shift Register (SSPSR) - No

directamente accesible

• MSSP Dirección Register (SSPADD)

SSPCON, SSPCON2 y SSPSTAT son el control y registros de estado en el modo de operación I2C. Los registros SSPCON y SSPCON2 son de lectura y escritura. Los menores 6 bits de la SSPSTAT se leen

sólo. Los dos superiores de la SSPSTAT se leen /

escribir.

SSPSR es el registro de desplazamiento sirve para

mover los datos de entrada o salida. SSPBUF es el

registro tampón de bytes de datos que se escriben o

leen.

SSPADD registro contiene la dirección del dispositivo esclavo cuando el SSP se configura en modo esclavo I2C. Cuando la SSP está configurado en modo maestro, el más bajo

sevcuarto de bits de acto SSPADD como el valor de

recarga velocidad de transmisión del generador.

En las operaciones de recepción, SSPSR y SSPBUF juntos,

RC4

/ SDI

/

SDA

MSb Coincidir Detectar

LSb Añadirr Partido

crear un receptor de doble buffer. Cuando SSPSR

recibe un byte completo, se transfiere a SSPBUF y la

interrupción SSPIF se establece.

Durante la transmisión, el SSPBUF no es doble piel

de ante-rarse. Una escritura en SSPBUF escribirá a

ambos SSPBUF y SSPSR.

ESTRELLAT y STDetectar poco

OP

Set, Reset S, Los bits P

(SSPSTAT reg)

Page 160: 39564c.en.es

DS39564C-page156 2006 Microchip Technology Inc.

PIC18FXX2

SMP CKE D /La

P S R / W UA BF

REGISTRO 15-3: SSPSTAT: MSSP registro de estado (MODO I2C)

R/W-0 R/W-0 R-0-0 R R R-0-0-0 R R-0

bit 7

bit 7

SMP: Velocidad de respuesta de control de bit

bit 0

En el modo maestro o esclavo: 1= Slew control de la frecuencia deshabilitado para el modo de velocidad estándar

(100 kHz y 1 MHz) 0= Slew control de velocidad activado para el modo de alta velocidad (400 kHz)

bit 6 CKE: Seleccione SMBus poco En el modo maestro o esclavo: 1= Habilitar SMBus insumos específicos

0= Desactivar SMBus insumos específicos

bit 5 D / A: Data / Address bit En Modo Master: Reservado En el modo Slave: 1= Indica que el último byte recibido o transmitido datos fue

0= Indica que el último byte recibido o transmitido era la dirección

bit 4 P: Bit de parada 1= Indica que un bit de parada se ha detectado último

0Bit = STOP no se detectó la última

Nota: Este bit se borra en Reset y cuando SSPEN se borra.

bit 3 S: START poco

1= Indica que un bit de inicio se ha detectado último

0Bit = START no se detectó la última

Nota: Este bit se borra en Reset y cuando SSPEN se borra. bit 2

R / W: Lectura / escritura de bits de información (modo I2C solamente)

En el modo Slave:

1= Leer

0= Escribir

Nota: Thibit s mantiene la información de bit R / W después del partido última dirección.

Este bit sólo es válida a partir de la coincidencia de dirección para el siguiente bit

de START, STOP bit, bit ACK o no.

En Master modo:

1Transmisión = está en curso 0Transmisión = no está en curso

Nota: OToca este bit con NEE, RSEN, PEN, RCEN o ACKEN indicará si el MSSP en

modo IDLE.

bit 1 UA: Actualizar dirección (10-bit modo esclavo solamente)

1= Indica que el usuario necesita para actualizar la dirección en el registro SSPADD 0Dirección = no necesita ser actualizado

bit 0 BF: Buffer bit Estado

completo

En La modalidad de transmisión:

1= Recibir completo, SSPBUF está lleno 0= Recibir no es completa, SSPBUF está vacío

En Modo de recepción:

1= Transmisión de datos en curso (no incluye los bits ACK y STOP), SSPBUF está lleno

0= Transmisión de datos completa (no incluye los bits ACK y STOP), SSPBUF está vacío

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1 'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 161: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 157

PIC18FXX2

REGISTRO 15-4: SSPCON1: MSSP CONTROL DE register1 (MODO I2C)

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

WCOL SSPOV SSPEN CKP SSPM3 SSPM2 SSPM1 SSPM0

bit 7 bit 0

bit 7 WCOL: WCollision Detect rito poco

En Master modalidad de transmisión:

1= Una escritura en el registro SSPBUF se intentó I2C mientras que las condiciones no eran

válidos para una transmisión que se inicie (debe ser limpiado por software)

0= No hay colisión

En Esclavo modo de transmisión:

1= El registro SSPBUF está escrito mientras se sigue transmitiendo la palabra anterior

(debe ser limpiado por software)

0= No hay colisión

En Modo de recepción (modos maestro o

esclavo): Esto es un "no me importa" bit

bit 6 SSPOV: Recibe bit de desbordamiento Indicador

En Modo de recepción:

1= Un byte es recibida cuando el registro SSPBUF está todavía con el byte anterior

(debe ser limpiado por software)

0= No hay desbordamiento

En La modalidad de transmisión:

Esto es un "no me importa" bit en el modo de transmisión

bit 5 SSPEN: SynchSerial Port ronous Bit de habilitación

1= Activa el puerto serie y configura los pines SDA y SCL como los pines del puerto serie

0= Desactiva el puerto serie y configura estos pines como pines I / O del puerto

Nota: When activado, la SDA y SCL pins deben estar correctamente configurado como

entrada o salida.

bit 4 CKP: SCK Release Bit de control

En el modo Slave:

1= Release reloj

0= Mantiene reloj baja (tramo reloj), que sirve para asegurar los datos en tiempo de instalación

En Modo Master: No

utilizada en este

modo

bit 3-0 SSPM3: SSPM0: Synchronous del puerto serial los bits de selección de modo

1111 Mode = esclavo I2C, 10-bit con la dirección START y STOP interrumpe bits habilitado

1110 Mode = esclavo I2C, dirección de 7 bits con START y STOP interrumpe bits habilitado

1011 = Firmware I2C modo Master controlada (esclavo IDLE)

1000 = Modo I2C Master, reloj = Fosc / (4 * (SSPADD +1))

0111 = Modo esclavo I2C, 10-bit de dirección

0110 = Modo esclavo I2C, dirección de 7 bits

Nota: Bicombinaciones t no específicamente mencionados aquí son o bien reservado, ni

se aplican en

SPMe modo SOLO.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece '0'Bit = se borra x Bit = se desconoce

Page 162: 39564c.en.es

DS39564C-page158 2006 Microchip Technology Inc.

PIC18FXX2

REGISTRO 15-5: SSPCON2: MSSP REGISTRO DE CONTROL 2 (MODO I2C)

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0

GCEN ACKSTAT ACKDT ACKEN RCEN PEN RSEN SEN

bit 7 bit 0

bit 7 GCEN: General Call Enable bit (modo esclavo solamente)

1= Habilitación de alarma cuando una dirección de llamada general (0000h) se recibe en el

SSPSR 0= Dirección de llamada general deshabilitado

bit 6 ACKSTAT: AGRADECIMIENTOSe Bit de estado (sólo en el modo Maestro de transmisión)

1= Acuse de recibo no se ha recibido del esclavo

0Reconocer = Se recibió de esclavo

bit 5 ACKDT: Acknowledge Data bits (sólo en el modo Maestro Recibir)

1= No Reconozca

0Reconocer =

Nota: Value que se transmite cuando el usuario inicia una secuencia Reconocer en el

extremo de un recibir.

bit 4 ACKEN: AcknoSecuencia wledge Enable bit (Maestro modo de recepción solamente)

1= Iniciar Reconocer la secuencia en SDA y SCL pins y transmitir los bits de datos ACKDT.

Automatically aprobado por hardware.

0= Reconocer secuencia IDLE

bit 3 RCEN: Recibe Enable bit (modo Maestro)

1= Activa el modo de recepción para I2C

0= Recibir IDLE

bit 2 PEN: STOCondición P Enable bit (modo Maestro)

1= Iniciar condición de STOP en los pines SDA y SCL. Borra automáticamente por el

hardware. 0= STOP estado IDLE

bit 1 RSEN: START repetida poco Condición Activado (modo Maestro)

1Iniciado = START repetida condición en los pines SDA y SCL.

Automatically aprobado por hardware.

0= START repetida estado IDLE

bit 0 SEN: ESTRELLAT Estado Activado / Stretch poco Activado

En Master modo:

1= Iniciar condición START en los pines SDA y SCL. Borra automáticamente por el hardware.

0= START estado IDLE

En eslavoe modo:

1Reloj = estiramiento está activado tanto para transmisión de esclavos y esclavos Recibir

(tramo habilitado) 0Reloj = estiramiento está habilitada para transmitir sólo esclavo (modo tradicional)

Note: Para los bits ACKEN, RCEN, PEN, RSEN, SEN: Si el módulo I2C no está en el

modo IDLE, este bit no se pueden establecer (sin cola) y el SSPBUF no puede ser

escrito (o escribe en el SSPBUF son discapacitados).

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Page 163: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 159

PIC18FXX2

15.4.2 OPERACIÓN

The Funciones de módulo MSSP se habilita estableciendo

MSSP bit Enable, SSPEN (SSPCON <5>).

El registro SSPCON1 permite el control de la 2C I el funcionamiento. Cuatro bits de selección de modo (SSPCON <3:00>) permitir que uno de los siguientes modos I 2C a seleccionar:

• El modo I2C Master, reloj = OSC / 4 (SSPADD +1)

• I 2C modo Slave (7 bits de direcciones)

• I 2C modo esclavo (10-bit de dirección)

• I 2C modo esclavo (dirección de 7 bits), con salida y

STOInterrumpe P bits habilitado

• I 2C modo esclavo (10-bit de dirección), con salida y

STOInterrumpe P bits habilitado

• I 2C Firmware funcionamiento maestro

controlado, esclavo es IDLE

Selección de cualquier modo I2C, con el bit SSPEN,

obliga a los pines SCL y SDA para drenaje abierto,

pro-vided estos pines están programados para las

entradas activando los bits TRISC apropiados. Para

garantizar el correcto funciona-miento del módulo,

resistencias pull-up es externa a los pines SCL y SDA.

15.4.3 MODO ESCLAVO

Yon modo esclavo, los pines SCL y SDA deben ser

config-ured como entradas (TRISC <4:3> set). El

módulo MSSP anulará el estado de la entrada con los

datos de salida cuando sea necesario (esclavo-

transmisor).

The I Slave 2C hardware modo siempre generará una

interrupción en un partido de direcciones. A través de

los bits de selección de modo, el usuario también

puede optar por interrumpir el START y STOP bits de

When una dirección se corresponde o la transferencia

de datos después de una coincidencia de dirección es

recibida, el hardware automáticamente va a generar

el reconocimiento (ACK) de pulso y cargar el registro

SSPBUF con el valor recibido actualmente en el

registro SSPSR.

Uny combinación de las siguientes condiciones, el

módulo MSSP no dar este impulso ACK:

• El bit de memoria llena BF (SSPSTAT <0>)

se creó antes de la transferencia recibida.

• El bit de overflow SSPOV (SSPCON <6>) se

creó antes de la transferencia recibida.

Yon este caso, el valor SSPSR registro no se carga

en el SSPBUF, pero poco SSPIF (PIR1 <3>) se

establece. El bit BF se elimina mediante la lectura del

registro SSPBUF, mientras que poco SSPOV se

elimina a través de software.

The entrada de reloj SCL debe tener un mínimo de alta y baja para un funcionamiento correcto. Los tiempos alto y bajo de la especificación I2C, así como el requisito del módulo MSSP, se muestran en parámetro de temporización 100 y

Parameter 101.

Page 164: 39564c.en.es

DS39564C-page160 2006 Microchip Technology Inc.

PIC18FXX2

15.4.3.1 Direccionamiento

Once el módulo MSSP se ha activado, se espera una

condición de arranque que se produzca. Tras el inicio

con-dición, la 8-bits se desplazan en el registro

SSPSR. Todos los bits entrantes son muestreados

con el flanco de subida del reloj (SCL) de la línea. El

valor de registro SSPSR <7:01> es comparado con el

valor del registro SSPADD. La dirección se compara

en el flanco de bajada del reloj de octava (SCL) de

pulso. Si las direcciones coinciden, y los bits BF y

SSPOV son claras, los siguientes eventos:

1. El valor SSPSR registro se carga en el

SSPBUF registrarse.

2. El búfer completo BF está establecido.

3. Un pulso ACK se genera.

4. MPoco SSP bandera de interrupción, SSPIF

(PIR1 <3>) se establece (interrupción se

genera si está activado) en el flanco de bajada

del noveno pulso SCL.

En el modo de dirección de 10-bits, dos bytes de

dirección tienen que ser recibidos por el esclavo. Los

cinco bits más significativos (MSB) del byte de

dirección primero se especifica si se trata de una

dirección de 10 bits. Bit R / W (SSPSTAT <2>) debe

especificar una escritura para que el dispositivo

esclavo recibe el byte de dirección segundo. Para una

dirección de 10-bit, el primer byte sería igual

'11110 A9 A8 0', Donde 'A9"Y"A8'Son los dos MSB

de la dirección. La secuencia de eventos para 10-bit

de dirección es la siguiente, con los pasos 7 a 9 para

el esclavo-transmisor:

1. Receive primero (alto) byte de dirección (bits

SSPIF, BF y UA bit (SSPSTAT <1>) se

establece).

2. Update el registro SSPADD con el segundo

(bajo) byte de dirección (se aclara poco UA y

libera la línea SCL).

3. Reund el registro SSPBUF (se aclara poco BF)

y SSPIF claro indicador de bits.

4. Recibe segundo (bajo) byte de dirección (bits

SSPIF, BF y UA se establece).

5. Update la SSPADD registra en la primera (alta)

byte de dirección. Si el partido comunicados

SCL línea, lo que eliminará UA poco.

6. Reund el registro SSPBUF (se aclara poco BF)

y SSPIF claro indicador de bits.

7. Recibe condición repetida START.

8. Recibe primero (alto) byte de dirección (bits SSPIF

und BF se establece).

9. Reund el registro SSPBUF (se aclara poco BF)

y SSPIF claro indicador de bits.

Page 165: 39564c.en.es

2006 Microchip Technology Inc. DS39564C páginas 161

PIC18FXX2

15.4.3.2 Recepción

When el bit R / W del byte de dirección es clara y se

produce una coincidencia de dirección, el bit R / W del

registro SSPSTAT se borra. La dirección recibida se

carga en el registro SSPBUF y la línea SDA se

mantiene baja (ACK).

When el byte de dirección condición de

desbordamiento existe, el no reconocimiento (ACK)

del pulso se da. Una condición de desbordamiento se

define como bit BF bien (SSPSTAT <0>) se establece,

o poco SSPOV (SSPCON1 <6>) se establece.

Una interrupción MSSP se genera para cada byte de

la transferencia de datos. Flag bit SSPIF (PIR1 <3>)

debe ser limpiado en soft-ware. El registro SSPSTAT

se utiliza para determinar el estado del byte.

Yof SEN está habilitado (SSPCON1 <0> = 1),

RC3/SCK/SCL se llevará a cabo bajo (tramo de reloj)

después de cada transmisión de datos fer. El reloj

debe ser puesto en libertad por el bit CKP (SSPCON

<4>). Consulte la Sección 15.4.4 ("Reloj

estiramiento"), para obtener más detalles.

15.4.3.3 Transmisión

When el bit R / W del byte de dirección entrante está

establecido y se produce una coincidencia de

dirección, el bit R / W del registro SSPSTAT se

establece. La dirección recibida se carga en el registro

SSPBUF. El pulso ACK se enviará en el noveno bit y

el pin RC3/SCK/SCL se mantiene baja,

independientemente de SEN (ver "Reloj de

estiramiento", Sección 15.4.4 para más detalles). Al

estirar el reloj, el maestro será incapaz de hacer valer

otro pulso de reloj hasta que el esclavo se realiza la

preparación de la datos.El transmitir transmitir datos

deben ser cargados en el registro SSPBUF, que

también carga el registro SSPSR. Entonces pin RC3 /

SCK / SCL debe ser habilitada por el bit CKP

(SSPCON1 <4>). Los ocho bits de datos son

desplazados hacia fuera en el borde descendente de

la entrada SCL. Esto asegura que la señal SDA es

válida durante el tiempo SCL alta (Figura 15-9).

Thpulso e ACK desde el maestro-receptor está

enganchada en el borde ascendente del pulso de

entrada noveno SCL. Si la línea SDA es alta (no

ACK), entonces la transferencia de datos es com-

pleta. En este caso, cuando el ACK es retenido por el

esclavo, el esclavo lógica se restablece (resetea

SSPSTAT regis-ter) y los monitores esclavos para

otra ocurrencia del bit de inicio. Si la línea SDA fue

baja (ACK), los datos de transmisión próximos deben

ser cargados en el registro SSPBUF. Una vez más, el

pin RC3/SCK/SCL debe estar habilitado mediante el

establecimiento de CKP poco.

Lan MSSP interrupción se genera para cada byte de

la transferencia de datos. El bit SSPIF debe ser

despejado en software y el registro SSPSTAT se

utiliza para determinar el estado del byte. El bit SSPIF

se encuentra en el flanco de bajada del impulso de

reloj noveno.

Page 166: 39564c.en.es

DS39564C-page162 2006 Microchip Technology Inc.

PIC18FXX2

R / W

=

0

Dir

ecció

n r

ecib

ir

Rece

pció

n d

e

da

tos

La

C

K

Rece

pció

n d

e

da

tos

AC

K

SD

A

La

7

A6

L

a

5

La

4

La

3

La

2

La

1

La

C

K

D7

D

6

D5

D

4

D3

D

2

D1

D

0

D7

D

6

D5

D

4

D3

D

2

D1

D

0

SC

L

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

9

1

2

3

4

5

6

7

8

9

S

SS

PIF

(PIR

1<

3>

) B

Ma

estr

o

no

s t

erm

ina

la

tra

nsfe

ren

ci

a

BF

(S

SP

ST

AT

<0

>)

Bo

rra

do

de

so

ftw

are

SS

PB

UF

se

le

e

SS

PO

V (

SS

PC

ON

<6

>)

SS

PO

V s

e p

on

e

po

rqu

e e

s S

SP

BU

F

tod

avía

lle

no.

AC

K n

o

se

en

vía

.

CK

P

(CK

P n

o s

e r

esta

ble

ce

a '0

'cu

an

do

SE

N

= 0

)

FIGURA 15-8: TIEMPO I2C modo esclavo con NEE = 0 (RECEPCIÓN, 7-BIT ADDRESS)

P

Page 167: 39564c.en.es

P

IC1

8F

XX

2

SL

AV

E I2

C T

IEM

PO

MO

DO

(TR

AN

SM

ISIÓ

N, 7

-BIT

AD

DR

ES

S)

FIG

UR

A 1

5-9

:

2

006 M

icro

chip

Technolo

gy In

c.

DS

39564C

-págin

a

141

SDLa

ReceDirección iving

La7 A6 La5 A4 A3 A2 A1

R/ W = 1

Corriente alternaK

TranDatos smitting D7 D6 D5 D4 D3 D2 D1 D0

Corriente alternaK

TransmiDatos tting D7 D6 D5 D4 D3 D0 D1 D2

ACK

SCL

S

1 2 3 4 5 6 7 8

Daten un muestreo

9 1

SCL mantiene

baja mientras que la CPU responde

a SSPIF

2 3 4 5 6 7 8 9

1 2 3 4 5 6 7 8 9

P

SSPIF (PIR1 <3>)

BF (SSPSTAT <0>)

Cleared en software

SSPBUF está escrito en software

From SSPIF ISR

Cleared en software

SSPBUF está escrito en software

From SSPIF ISR

CKP

CKP se encuentra en software CKP se encuentra en software

Page 168: 39564c.en.es

PIC

18F

XX

2

S

LA

VE

I2C

TIE

MP

O M

OD

O C

ON

NE

E =

0 (R

EC

EP

CIO

N, 1

0-B

IT

AD

DR

ES

S)

FIG

UR

A 1

5-1

0:

DS

39

56

4C

-pa

gE

142

2

00

6 M

icro

chip

Technolo

gy In

c.

Recibe primer byte de dirección

R / W = 0

Che aquíck se mantiene baja hasta la actualización de SSPADD ha tenido lugar

Recibe segundo byte de dirección

Reloj se lleva a cabo baja hasta la actualización de SSPADD ha tenido lugar

Recibe Byte de datos

Recibe Byte de datos

ACK

SDA

1 1 1 1 0 A9 A8 ACK La7 A6 A5 A4 A3 A2 A1 A0 ACK

D7 D6 D5 D4 D3 D2 D1 DACK 0

D7 D6 D5 D4 D3 D2

D1 D0

SCL S

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 P

SSPIF

(PIR1

<3>)

Borrado de software

Cleared en software

Borrado de software Borrado de software

Bus

Maestro

termina la

transferenci

a

BF (SSPSTAT <0>)

SSPOV (SSPCON <6>)

SSPBUF está escrito con contenido de SSPSR

Dummy leer de SSPBUF

para borrar la bandera BF

SSPOV se pone porque es SSPBUF

todavía lleno. ACK no se envía.

UA (SSPSTAT <1>)

UA se establece indicando que el

SSPADD necesita ser actualizado

Cleared por hardware when SSPADD se actualiza con el byte bajo de la dirección

Autorizado por hardware cuando se actualiza SSPADD con el byte alto de la dirección

UA se establece lo que indica que las necesidades SSPADD ser actualizado

CKP (CKP no se restablece a '0 'cuando SEN = 0)

Page 169: 39564c.en.es

PIC

18

FX

X2

Fig

ura

15

-11: T

IEM

PO

I2C

mo

do

escla

vo

(TR

AN

SM

ISIÓ

N, 1

0-B

IT A

DD

RE

SS

)

2

006 M

icro

chip

Technolo

gy In

c.

DS

39564C

-págin

a

143

Receive primer byte de dirección

R / W = 0

Reloj se mantiene baja hasta la actualización

de SSPADD ha tenido lugar

Recibe segundo byte de dirección

Reloj se mantiene baja hasta la actualización

de SSPADD ha tenido lugar

Recibe primer byte de dirección

R / W = 1

Reloj se mantiene baja hasta CKP se pone a '1 '

Transmitting Byte de datos

LaCK

BMaestro nos termina la transferencia

SDA 1 1 1 1 0 A9 A8 ACK La7 A6 A5 A4 A3 A2 A1 A0 LaCK

1 1 1 1 0 La9 A8 LaCK

D7 D6 D5 D4 D3 D2 D D0 1

SCL

S1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5

Sr 6 7 8 9 1 2 3 4 5 6 7 8 9 P

SSPIF

(PIR1

<3>)

Borrado de software

Borrado de software

Cleared en software

BF (SSPSTAT <0>)

SSPBUF está escrito con contenido de SSPSR

Maniquí de leer SSPBUF para borrar la bandera BF

Maniquí de leer SSPBUF para borrar la bandera BF

BBandera F es

clara al final de

la

Write de SSPBUF inicia transmitir

Finalización de la

transmisión de

datos

UA (SSPSTAT <1>)

thirsecuencia de la dirección d

clears BF bandera

UA se establece indicando que el SSPADD necesita ser actualizado

Autorizado por hardware cuando se actualiza con SSPADD byte bajo de la

dirección

Autorizado por hardware cuando se actualiza SSPADD con el byte alto de la dirección.

CKP (SSPCON <4>)

UA se establece lo que indica que las necesidades SSPADD ser actualizado

CKP está situado en software

CKP se borra automáticamente en hardware holding SCL bajo

Page 170: 39564c.en.es

PIC18FXX2

15.4.4 RELOJ ESTIRAR

Both 7 - Modos y 10 bits de esclavos implementar

reloj automático se extiende durante una secuencia

de transmisión.

El bit SEN (SSPCON2 <0>) permite estirar reloj esté

habilitado durante recibe. Ajuste SEN hará que el pin

SCL que se realizará bajo al final de cada dato de

secuencia de recepción.

15.4.4.1 Reloj estiramiento para el esclavo 7-bit

Modo de recepción (SEN = 1)

Yon 7-bit esclavo al modo de recepción, en el borde

descendente del reloj noveno al final de la secuencia

de ACK, si el bit BF está establecido, el bit CKP en el

registro SSPCON1 es automáticamente desactivada,

forzando la salida SCL estar mantiene baja. El CKP

está borrando a '0 'hará valer la línea SCL baja. El bit

CKP se debe establecer en ISR del usuario antes de

la recepción se le permite continuar. Al mantener la

línea de baja SCL, el usuario tiene tiempo para el

servicio de la ISR y leer el contenido de la SSPBUF

antes de que el dispositivo maestro puede iniciar otra

secuencia de recepción. Esto evitará que se

produzcan desbordamientos de búfer (ver Figura 15-

13).

Nota 1: Yof el usuario lee el contenido de la

SSPBUF antes de que el flanco de

bajada del reloj noveno, a fin de despejar

el bit BF, el bit CKP no se borrará y el

reloj de estiramiento no se producirá.

2:The bit CKP se puede ajustar en software,

independientemente del estado del bit

BF. El usuario debe tener cuidado para

borrar el bit BF en el ISR antes de la

secuencia de recepción próximo, con el

fin de evitar una condición de

desbordamiento.

15.4.4.2 Reloj estiramiento para 10-bit Slave

Modo de recepción (SEN = 1)

Yon de 10-bit Slave modo de recepción, durante la

secuencia de direcciones, reloj estiramiento se lleva a

cabo automáticamente CKP pero no se borra.

Durante este tiempo, si el bit UA se establece

después de la novena reloj, reloj de estiramiento se

inicia. El bit de UA se establece después de recibir el

byte superior de la

10-bit dirección, y después de la recepción del

segundo byte de la dirección de 10-bits con el bit R /

W se aclaró a

'0 '. El lanzamiento de la línea de reloj se produce al

actualizar SSPADD. Reloj estiramiento se producirá

en los datos de cada secuencia de recepción como se

describe en el modo de 7-bits.

Nota: Yof del usuario sondea el bit UA y lo borra

al actualizar el registro SSPADD antes del

flanco de bajada del reloj noveno lugar, y

si el usuario no ha despejado el bit BF por

la lec-tura SSPBUF registrarse antes de

esa hora, entonces el CKP poco NO se

puede afirmar aún bajo. Reloj de

estiramiento sobre la base del estado del

bit BF sólo se produce durante una

secuencia de datos no, una secuencia de

direcciones.

Page 171: 39564c.en.es

PIC18FXX2

15.4.4.3 Reloj estiramiento para el esclavo 7-bit

Transmit Mode

7-biEsclavo t modalidad de transmisión de reloj

implementos de estiramiento en la limpieza de la

broca CKP después del flanco de bajada del reloj

novena, si el bit BF es clara. Esto ocurre,

independientemente del estado del bit SEN.

ThISR e usuario debe establecer el bit CKP antes de

la transmisión se permite que continúe. Al mantener la

línea de baja SCL, el usuario tiene tiempo para el

servicio de la ISR y cargar el contenido de la SSPBUF

antes de que el dispositivo maestro puede iniciar otra

secuencia de transmisión (ver Figura 15-9).

Nota 1: Yof el usuario carga el contenido de

SSPBUF, estableciendo el bit BF antes

de que el flanco de bajada del reloj

noveno, el bit CKP no se borrará y el reloj

de estiramiento no se producirá.

2:The bit CKP se puede ajustar en software,

independientemente del estado del bit

BF.

15.4.4.4 Reloj estiramiento para 10-bit Slave

Transmit Mode

Yon 10-bit Slave modo de transmisión, el reloj de

estiramiento se controla durante las secuencias de

direcciones primero dos por el estado del bit UA,

como lo es en 10-bit esclavo al modo de recepción.

Las dos primeras direcciones son seguidos por una

secuencia de direcciones tercero, que contiene los

bits de orden superior de la dirección 10-bit y el bit R /

W a '1 '. Después de la tercera secuencia de

direcciones se lleva a cabo, el bit UA no está

establecido, el módulo está configurado en modo de

transmisión, y el reloj de estiramiento es controlado

por la bandera BF, como en 7-bit Slave modo de

transmisión (ver Figura 15-11).

DS39564C-pagE 144 2006 Microchip Technology Inc.

Page 172: 39564c.en.es

PIC18FXX2

15.4.4.5 Sincronización del reloj y el bit

CKP

Yofa usuario borra el bit CKP, la salida se ve obligado a SCL

'0 '. Al establecer el bit CKP no hará valer el bajo

gasto SCL SCL hasta que la salida ya está

muestreada bajo. Si el usuario intenta conducir SCL

bajo, el bit CKP no se

asseta la línea SCL hasta que un dispositivo maestro I2C externa

has asumido previamente la línea SCL. La salida SCL se mantendrán bajas hasta que el bit CKP está establecido, y todos los otros dispositivos en el bus I2C tienen de-afirmó SCL. Esto asegura que una escritura en el bit CKP no viole el

minimum requisito hora de SCL (ver

Figura 15-12).

Figura 15-12: TIEMPO sincronización de reloj

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

SDA DX

SCL

DX-1

CKP

Mamádisposit

ivo ster afirma

reloj

WR SSPCON

Mamáster dispositivo

de-afirma reloj

Page 173: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C-página 145

Page 174: 39564c.en.es

PIC

18F

XX

2

S

LA

VE

I2C

TIE

MP

O M

OD

O C

ON

NE

E =

1 (R

EC

EP

CIÓ

N, 7

-BIT

AD

DR

ES

S)

FIG

UR

A 1

5-1

3:

DS

39

56

4C

-pa

gE

146

2

00

6 M

icro

chip

Technolo

gy In

c.

El reloj no se mantiene bajo porque el bit buffer lleno está claro antes de flanco de bajada del reloj noveno

Reloj se mantiene baja hasta CKP se pone a '1 '

El reloj no se mantiene bajo porque ACK = 1

Dirección recibir

R / W = 0

Recepción de datos

ACK

Recepción de datos

ACK

SDA

La7 A6 A5 A4 A3 A2 A1 ACK

D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2

D1 D0

SCL S

1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 P

SSPIF

(PIR1

<3>)

BMaestro nos termina la transferencia

BF (SSPSTAT <0>)

SSPOV (SSPCON <6>)

Borrado de software

SSPBUF se lee

SSPOV se pone porque es SSPBUF

todavía lleno. ACK no se envía.

CKP

Si BF se borra antes del flanco de bajada del reloj 9 de CKP no se restablecerán a '0 'y no había reloj estiramiento se producirá

BF se establece después de flanco de bajada del reloj 9 de

CKP se pone a '0 'y el estiramiento de reloj se produce

CKP escribe en '1 'en software

Page 175: 39564c.en.es

PIC

18

FX

X2

FIG

UR

A 1

5-1

4: T

IEM

PO

I2C

mo

do

esc

lavo

SE

N =

1 (R

EC

EP

CIO

N, 1

0-B

IT A

DD

RE

SS

)

2

006 M

icro

chip

Technolo

gy In

c.

DS

39564C

-págin

a

147

Recibe primer byte de dirección R / W = 0

Reloj es held baja hasta la actualización de SSPADD ha tenido lugar

Recibe segundo byte de dirección

Reloj se lleva a cabo he aquíw hasta la actualización de SSPADD ha tenido lugar

Recibe Byte de datos

Reloj se mantiene baja hasta CKP se pone a '1 '

Recibe Byte de datos

El reloj no se mantiene bajo porque ACK = 1

Corriente alternaK

SDA

1 1 1 1 0 A9 A8 ACK

La7 A6 A5 A4 A3 A2 A1 A0 ACK

D7 D6 D5 D4 D3 D2

D1 D0 LaCK

D7 D6 D5 D4 D3 D2

D1 D0

S1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 P

SSPIF

(PIR1

<3>)

Borrado de software

Cleared en software

Borrado de software Cleared en software

BMaestro

nos termina

la

transferenci

a

BF (SSPSTAT <0>)

SSPOV (SSPCON <6>)

SSPBUF se escribe con contenido de SSPSR

Maniquí de leer SSPBUF

para borrar la bandera BF

Maniquí de leer SSPBUF para borrar la bandera BF

SSPOV se pone porque es SSPBUF

todavía lleno. ACK no se envía.

UA (SSPSTAT <1>)

UA se establece

indicando que el SSPADD necesita ser

actualizado

Autorizado por hardware cuando SSPADD se actualiza con bajo

bYTE de dirección después de flanco de bajada del reloj noveno.

Autorizado por hardware cuando se actualiza SSPADD con el byte alto de la dirección después de flanco de bajada del reloj noveno.

CKP

UA se establece lo que indica que las necesidades SSPADD ser actualizado

Noe: Lan actualización del

registro SSPADD antes de que el flanco de bajada

del reloj novena no tendrá ningún efecto en la AU, y

UA permanecerá fijado.

CKP escrito a '1 ' en software

Nota: Lan actualización del

registro SSPADD antes de que el flanco de bajada

del reloj novena no tendrá ningún efecto en la AU, y

Page 176: 39564c.en.es

UA permanecerá fijado.

Page 177: 39564c.en.es
Page 178: 39564c.en.es

PIC18FXX2

DS39564C-page148 2006 Microchip Technology Inc.

15.4.5 LLAMADA GENERAL

DIRECCIÓN DE APOYO

Thprocedimiento electrónico para abordar el bus I2C

es tal que el primer byte después de la condición de

arranque por lo general deter-mina el dispositivo que

va a ser el esclavo direccionado por el maestro. La

excepción es la dirección de llamada general, que

puede tratar todos los dispositivos. Cuando se utiliza

esta dirección, todos los dispositivos debería, en

teoría, responderá con un acuse de recibo.

The dirección de llamada general es una de las ocho

direcciones reservadas para propósitos específicos

por el protocolo I2C. Consiste en lo absoluto 0 con R /

W = 0.

The dirección de llamada general se reconocen

cuando la llamada Gen-eral Enable bit (GCEN) está

activada (SSPCON2 <7> set). Después de un bit de

inicio de detección, 8-bits se desplazan en la SSPSR

y la dirección se compara con la SSPADD. También

se compara a la dirección de llamada general y fijado

en hardware.

Si la general corresponden con las direcciones de

llamada, la SSPSR se transfiere a la SSPBUF, el bit

de bandera BF se establece (octavo bit), y en el borde

descendente del bit noveno (bit ACK), la interrupción

SSPIF bit indicador está establecido.

When la interrupción es mantenido, la fuente de la

interrumpen se puede comprobar por la lectura de los

contenidos de la SSPBUF. El valor se puede utilizar

para determinar si la dirección era específica del

dispositivo o una dirección de llamada general.

En el modo de 10-bits, la SSPADD se requiere ser

actualizada para el segundo medio de la dirección

para que coincida, y el bit UA se establece (SSPSTAT

<1>). Si la dirección de llamada general se muestrea

cuando el bit está establecido GCEN, mientras que el

esclavo está configurado en el modo de dirección de

10-bits, entonces la segunda mitad de la dirección no

es necesario, el bit UA no se fijan, y el esclavo se

iniciará recepción de datos después de la

Confirmación (Figura 15-15).

Figura 15-15: MODO ESCLAVO LLAMADA GENERAL SECUENCIA DE

DIRECCIÓN (7 o 10-bit MODO DE DIRECCIÓN)

R / W = 0

LaIRECCIÓN se compara con dirección de llamada general después de ACK, establecer interrumpir

Recepción de datos ACK

SDA General Dirección de llamada

ACK D7 D6 D5 D4 D3 D2 D1 D0

SCL

S 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9

SSPSI

BF (SSPSTAT <0>)

SSPOV (SSPCON1

<6>) GCEN (SSPCON2

<7>)

Borrado de software

SSPBUF se lee

'0 '

'1 '

Page 179: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 149

RE

CE

PT

OR

Ha

bili

tar

e

Clo

ck c

trl

Clo

cA

rbitra

r k / W

CO

L

Dete

cta

r

(Hold

fuente

de r

elo

j

apagado)

15.4.6 Modo Master

Master se activa el modo de poner y quitar los bits

correspondientes en SSPM SSPCON1 y activando el

bit SSPEN. En el modo maestro, las líneas SCL y

SDA son manipulados por el hardware MSSP.

Master modo de funcionamiento está soportado por

generación de interrupciones en la detección de la

condiciones de inicio y de parada. El STOP (P) y los

bits de arranque (S) se borran de un RESET o cuando

el módulo MSSP es

discapacitado. El control del bus I2C puede ser tomada cuando el

Bit P se activa o el bus está inactivo, tanto con la S y

la P bits claras.

Yon Firmware Controlled modo maestro, el código de usuario con-ductos de las operaciones de E 2C bus basado en las condiciones de START y STOP bits.

Once modo maestro está activada, el usuario dispone

de seis opciones.

1. Imponer una condición de arranque en SDA y SCL.

2. Imponer una condición de START repetida en SDA

und SCL.

3. Escribir en el registro SSPBUF iniciar la

transmisión de datos / direcciones.

4. Configure el puerto I2C para recibir datos.

5. Generar una Reconocer condición al final de un

byte de datos recibido.

6. Genera una condición de STOP en SDA y SCL.

Nota: El módulo MSSP, cuando se configura en

el modo maestro I2C, no permite colas de

eventos. Por ejemplo, el usuario no está

autorizado a iniciar una condición de

arranque y de inmediato escribir el registro

SSPBUF para iniciar la transmisión antes

de que la condición de arranque es

completa. En este caso, la SSPBUF no se

escribirá en el bit WCOL y se establecerá,

lo que indica que una escritura en el

SSPBUF no ocurrió.

ThEventos y siguientes causará poco SSP bandera

de interrupción, SSPIF, que debe ajustarse

(interrupción SSP si está activado):

• START condición

• STOP condición

• La transferencia de datos byte transmitido / recibido

• Reconocer transmisión

• START repetida

FIGURA 15-16: DIAGRAMA DE BLOQUE MSSP (Master Mode I2C)

Interno

Datun autobús

Read Escriba

SSPM3: SSPM0 SSPADD <6:00>

SDA

SDA en

SSPBUF

SSPSR

MSb LSb

Cambiar Clock

Rata de BaudioseGenerador

SCL

STPoco ART, bit STOP, Reconocer

Generar

SCL en

Bus Collision

STDetectar poco ART

STOP pedacito Escribir Collision Detect Detectar Arbitraje Reloj

EstadísticaContad

or electrónico para end de XMIT / VN

Page 180: 39564c.en.es

PIC18FXX2

DS39564C-page150 2006 Microchip Technology Inc.

Set / Reset, S, P, WCOL

(SSPSTAT) Conjunto SSPIF,

BCLIF

Reconjunto ACKSTAT, PEN (SSPCON2)

Page 181: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 151

15.4.6.1 Modo de funcionamiento maestro I2C

The dispositivo maestro genera todos los impulsos de

reloj de serie y START y STOP condiciones. Una

transferencia se termina con una condición de parada

o con una condición de START repetida. Desde el

inicio repetido condición es también el comienzo de la

transferencia serie siguiente, la

Bus I2C no se dará a conocer.

Yon modo Transmisor Maestro, datos en serie se

emite a través de SDA, SCL, mientras que emite el

reloj de serie. El primer byte transmitido contiene la

dirección del esclavo del dispositivo de recepción (7

bits) y el bit de lectura / escritura (R / W). En este

caso, el bit R / W será '0 'lógico. Los datos en serie se

transmite 8 bits a la vez. Después de cada byte se

transmite, un bit de reconocimiento es recibido.

Condiciones de arranque y parada están de salida

para indicar el principio y el final de una transferencia

en serie.

Yon principal modo de recepción, el primer byte

transmitido con-tiene la dirección del esclavo del

dispositivo transmisor (7 bits) y el bit R / W. En este

caso, el bit R / W será '1 'lógico. Por lo tanto, el primer

byte transmitido es una dirección del esclavo 7-bit

seguido por un 1 para indicar recibir bits. Los datos

serie se recibe a través de SDA, SCL, mientras que

emite el reloj de serie. Los datos en serie se recibe 8

bits a la vez. Después de cada byte es recibido, un bit

de reconocimiento se transmite. Condiciones de

arranque y STOP indicar el comienzo y final de la

transmisión.

The generador de velocidad de transmisión utilizada

para el modo de SPI operación se utiliza para

establecer la frecuencia de reloj, ya sea para SCL

100 kHz, 400 kHz o 1 MHz operación I2C. Ver

Sección 15.4.7 ("Generador de Baud Rate"), para

obtener más detalles.

La typical secuencia de transmisión iría de la siguiente manera:

1. Thusuario de correo genera una condición de

arranque por ajuste del START bit de

habilitación, SEN (SSPCON2 <0>).

2. SSPIF se establece. El módulo MSSP esperará

el tiempo de inicio requerido antes de cualquier

otra operación que se lleva a cabo.

3. Thusuario e carga el SSPBUF con la dirección

del esclavo para transmitir.

4. Address se desplaza el pasador de SDA hasta

que todos los 8 bits se transmiten.

5. The Módulo MSSP cambios en el bit ACK

desde el dispositivo esclavo y escribe su valor

en el registro SSPCON2 (SSPCON2 <6>).

6. The MSSP módulo genera una interrupción al

final del ciclo de reloj novena estableciendo el

bit de SSPIF.

7. Thelectrónico de usuario carga el SSPBUF con

ocho bits de datos.

8. Denuna vez que se desplaza el pin SDA hasta

que todos los 8 bits se transmiten.

9. The Módulo MSSP cambios en el bit ACK

desde el dispositivo esclavo y escribe su valor

en el registro SSPCON2 (SSPCON2 <6>).

10. El módulo MSSP genera una interrupción al

final del ciclo de reloj novena estableciendo el

bit de SSPIF.

11. El usuario genera una condición de STOP por

Fijando la parada de permitir PEN bit

(SSPCON2 <2>).

12. Interrupción se genera una vez que el estado

STOP se ha completado.

Page 182: 39564c.en.es

PIC18FXX2

DS39564C-page152 2006 Microchip Technology Inc.

15.4.7 GENERADOR DE BAUDIOS

En el modo maestro I2C, el generador de baud rate

(BRG) valor de recarga se sitúa en los 7 bits inferiores

del registro SSPADD (Figura 15-17). Cuando se

produce una escritura a SSPBUF, el generador de

velocidad de transmisión automáticamente empezará

a contar. La. BRG cuenta a 0 y se detiene hasta que

otra recarga se ha producido El recuento de BRG se

decrementa dos veces por ciclo de instrucción (TCY)

en el

Q2 y relojes 4T. En el modo maestro I2C, el BRG es

reloaded automáticamente.

Once la operación dada es completa (es decir, la

transmisión del bit de datos última es seguida por

ACK), el reloj interno automáticamente dejará de

contar y el pin SCL permanece en su último estado.

Table 15-3 muestra velocidades de reloj basado en

ciclos de instrucción y el valor cargado en SSPADD

BRG.

FIGURA 15-17: GENERADOR DE BAUDIOS DIAGRAMA DE BLOQUES

SSPM3: SSPM0 SSPADD <6:00>

SSpm3: SSPM0

SCL

Recargar

Controle

Recargar

CLKO BRG Contador

regresivo Fosc / 4

TABLE 15-3: I2C velocidad de reloj W / BRG

FCY

FCY * 2

BRG Valor

FSC (2)

L

(2 Rollovers de BRG)

10 MHz 20 MHz 19h 400 kHz(1)

10 MHz 20 MHz 20h 312.5 kHz

10 MHz 20 MHz 3Fh 100 kHz

4 MHz 8 MHz 0Ah 400 kHz(1)

4 MHz 8 MHz 0Dh 308 kHz

4 MHz 8 MHz 28h 100 kHz

1 MHz 2 MHz 03h 333 kHz(1)

1 MHz 2 MHz 0Ah 100kHz

1 MHz 2 MHz 00h 1 MHz(1)

Nota 1: The interfaz I2C no se ajusta a la especificación 400 kHz I2C (que se aplica a tasas superiores a

100 kHz) en todos los detalles, pero que puede utilizarse con cuidado en tasas más altas son requeridas por la aplicación.

2:Actual frecuencia dependerá de las condiciones de autobús. En teoría, las condiciones de los autobuses

añadir tiempo de subida y extender el tiempo de baja del período de reloj, produciendo la frecuencia

efectiva.

Page 183: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 153

15.4.7.1 Reloj de Arbitraje

Arbitraje se produce cuando el reloj maestro, durante

cualquier recibir, transmitir o repetida START / STOP

condición, de-afirma el pin SCL (SCL permite flotar

alta). Cuando el pin SCL se le permite flotar alto, el

generador de velocidad de transmisión (BRG) es

suspendido de la cuenta hasta que el pin SCL es

muestreado realmente alto. Cuando el pin SCL es

muestrad alta, el generador de velocidad en baudios

se vuelve a cargar con el contenido de SSPADD

<6:00> y comienza el conteo. Esto asegura que el

tiempo SCL alta siempre habrá al menos un recuento

de BRG vuelco, en el caso de que el reloj se mantiene

baja por un dispositivo externo (Figura 15-18).

FIGURA 15-18: TIEMPO BAUD GENERADOR DE FRECUENCIA CON ARBITRAJE DEL RELOJ

SDA DX DX-1

SCL

SCL de-afirmó, pero mantiene esclavo

SCL bajo (arbitraje reloj)

SCL permite que la transición de alto

BRG

Valor

BRG disminuye en Q2 ciclos y Q4

03h 02h 01h 00h (esperar) 03h 02h

BRG

Reload

SCL se realiza un muestreo alta,

recarga tiene lugar y BRG inicia

su conteo.

Page 184: 39564c.en.es

PIC18FXX2

DS39564C-page154 2006 Microchip Technology Inc.

15.4.8 MODO I2C Master START

condición de temporización

To iniciar una condición de arranque, el usuario

establece la condición START bit de habilitación, SEN

(SSPCON2 <0>). Si las patillas SDA y SCL se

muestrean alta, la velocidad de transmisión genera-

dor se vuelve a cargar con el contenido de SSPADD

<6:00> y comienza su conteo. Si SCL y SDA son a la

vez muestras de alta cuando los tiempos de velocidad

de transmisión del generador fuera (TBRG), el pin

SDA es conducido bajo. La acción de la SDA

conducido bajo, mientras que SCL es alto, es la

condición de arranque y hace que el bit S (SSPSTAT

<3>) para ajustar. Si se cumple esto, el generador de

velocidad en baudios se vuelve a cargar con el

contenido de SSPADD <6:00> y reanuda su recuento.

Cuando los tiempos de velocidad de transmisión del

generador fuera (TBRG), el bit SEN (SSPCON2 <0>)

se borra automáticamente por el hardware, el

generador de velocidad de transmisión se suspende,

dejando la línea SDA mantiene baja y la condición de

arranque se ha completado.

Nota: Yof al comienzo de la condición de

arranque, los pines SDA y SCL son ya

sam-declaró bajo, o si durante la

condición de inicio de la línea SCL es

muestreado bajo antes de la línea SDA es

llevado a bajo, se produce una colisión del

autobús, la interrupción de colisión del

autobús Bandera, BCLIF está establecido,

la condición de arranque es

abortado, Y el módulo de I2C se restablece en su

Estado IDLE.

15.4.8.1 Marcar Estado WCOL

Si el usuario escribe el SSPBUF cuando una

secuencia de arranque está en curso, la WCOL se

establece y las tiendas de campaña con-de la

memoria intermedia no se han modificado (la escritura

no se produce).

Nota: Becauscolas de correo de los

acontecimientos no se permite, por escrito

a los 5 bits más bajos de SSPCON2 está

desactivado hasta que la condición de

arranque se ha completado.

FIGURA 15-19: PRIMER TIEMPO bit de inicio

Writo a bit SEN ocurre aquí

SDA = 1,

SCL = 1

Sebit t S (SSPSTAT <3>)

Al término de bit de START, Hardware despeja poco SEN

und activa el bit SSPIF

TBRG

TBRG Escriturae para SSPBUF ocurre aquí

SDA

SCL

1er bit bit segundo

TBRG

TBRG

S

Page 185: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 155

15.4.9 MODO I2C Master REPETIDA

START condición de

temporización

Una condición de arranque repetido se produce cuando el bit RSEN (SSPCON2 <1>) está programado alta y el módulo lógico I2C está en el estado IDLE. Cuando el bit RSEN está establecido, el pin SCL se afirma bajo. Cuando el pin SCL es

muestrad bajo, el generador de velocidad en baudios

se carga con el contenido de SSPADD <5:00> y

comienza el conteo. El pin SDA es liberado (traído

alta) para un cargo generador de velocidad en

baudios (TBRG). Cuando los tiempos de velocidad de

transmisión del generador fuera, si SDA es

muestreado alto, el pin SCL será de-afirma (traído de

altura). Cuando SCL es muestreado alto, el generador

de baud rate es recargado con las tiendas de

campaña de con-SSPADD <6:00> y comienza el

conteo. SDA y SCL deben tomarse muestras de alta

durante un TBRG. Esta acción es seguida por la

afirmación de la pin SDA (SDA = 0) para una TBRG,

mientras que SCL es alta. Después de esto, la RSEN bit (SSPCON2 <1>) se borra automáticamente y

ªe generador de velocidad de transmisión no se

volverá a cargar, dejando el pin SDA mantiene baja.

Tan pronto como una condición de arranque se

detecta en la SDA y SCL pins, el bit S (SSPSTAT

<3>) se establecerá. El bit SSPIF no se establecerá

hasta que el generador de velocidad de transmisión

ha caducado.

Nota 1: Yof RSEN está programado, mientras que

cualquier otro evento en curso, no

tendrán efecto.

2:Una colisión de autobuses durante la

repetida

Condición de arranque se produce si:

• SDA es muestreado bajo cuando

SCL va de menor a mayor.

• SCL SDA pasa a nivel bajo antes se

afirma bajo. Esto puede indicar que

otro maestro está tratando de

transmitir datos a "1".

INMEDIATAMy después el bit SSPIF conseguir

conjunto, el usuario puede escribir la SSPBUF con la

dirección de 7 bits en

7-bimodo t, o la dirección predeterminada por primera vez en el modo de 10-bits.

Después de los primeros ocho bits se transmiten y un

ACK es recibido, el usuario puede entonces transmitir

un adicional de ocho bits de dirección (10 bits modo)

u ocho bits de datos (7 bits modo).

15.4.9.1 Marcar Estado WCOL

Si el usuario escribe el SSPBUF cuando una

secuencia de inicio repetido está en progreso, el

WCOL se establece y el contenido de la memoria

intermedia no se han modificado (la escritura no se

produce).

Nota: Becauscolas de correo de los

acontecimientos no se permite la escritura

de los menores de 5 bits SSPCON2 está

desactivado hasta que la condición de

START repetida se ha completado.

FIGURA 15-20: START REPEAT ESTADO DE FORMA DE ONDA

Write a SSPCON2 ocurre aquí.

SDA = 1,

SCL (sin cambios)

SDA = 1,

SCL = 1

Set S (SSPSTAT <3>)

Lat finalización del bit de

START, poco claro

hardware RSEN und conjunto SSPIF

TBRG TBRG TBRG

SDA

Falling borde de reloj noveno End de XMIT

1st poco

Write a SSPBUF ocurre aquí

TBRG

SCL TBRG

Sr = START repetida

Page 186: 39564c.en.es

PIC18FXX2

DS39564C-page156 2006 Microchip Technology Inc.

15/04/10 MAESTRO I2C modo

de transmisión

Transmisión de un byte de datos, una dirección de 7-

bit, o la otra mitad de una dirección de 10-bit se logra

simplemente escribiendo un valor en el registro

SSPBUF. Esta acción activa el bit buffer de bandera

completa, BF, y permitir que el generador de

velocidad de transmisión para empezar a contar y

comenzar la siguiente transmisión. Cada bit de

dirección / datos se desplazará hacia fuera sobre el

pin SDA después del flanco de bajada de SCL se

afirma (véase el parámetro de tiempo de retención de

datos especificación 106). SCL se mantiene baja para

una velocidad de transmisión generador recuento de

rollover (TBRG). Los datos deben ser válidos antes de

SCL se libera alta (consulte Configuración de datos en

tiempo de especificación de 107). Cuando el pin SCL

es liberada alto, se mantiene así durante TBRG. Los

datos sobre el pin SDA debe permanecer estable para

que la duración y algún tiempo de retención después

de la siguiente caída-ción de borde SCL. Después de

que el octavo bit se desplaza hacia fuera (el flanco de

bajada del reloj octavo), la bandera BF se borra y el

SDA maestro lanzamientos. Esto permite que el

dispositivo esclavo está tratando de responder con un

bit ACK durante el tiempo de bit noveno si una

coincidencia de dirección producido o si los datos se

recibió correctamente. El estado de ACK se escribe

en el bit ACKDT en el flanco de bajada del reloj

novena. Si el maestro recibe un acuse de recibo, el bit

de confirmación de estado, ACKSTAT, se borra. Si

no, el bit está establecido. Después de que el reloj de

sesiones, el bit SSPIF se establece y el reloj maestro

(generador de baud rate) se suspende hasta que el

siguiente byte de datos se carga en el SSPBUF,

dejando bajo SCL y SDA sin cambios (Figura 15-21).

Después de la escritura en la SSPBUF, cada bit de

dirección se desplazará hacia fuera en el flanco de

bajada de SCL hasta que todos los bits de dirección

de siete y el bit R / W se han completado. En el borde

de caída del reloj de ING octavo, el maestro de-

afirmar el pin SDA, lo que permite que el esclavo

responde con un acuse de recibo. En el flanco

descendente del reloj noveno, el maestro muestra el

pin SDA para ver si la dirección fue reconocido por un

esclavo. El estado del bit ACK se carga en el bit de

estado ACKSTAT (SSPCON2 <6>). Tras el flanco de

bajada del reloj noveno transmisión de la dirección, la

SSPIF se establece, la bandera BF se borra y el

generador de velocidad de transmisión se desactiva

hasta que otra escritura en el SSPBUF se lleva a

cabo, manteniendo bajo SCL y SDA permite flotar .

15.4.10.1 BF indicador de estado

En el modo de transmisión, el bit BF (SSPSTAT <0>)

se establece cuando la CPU escribe en SSPBUF y se

borra cuando todos los 8 bits se desplazan hacia

fuera.

15.4.10.2 Marcar Estado

WCOL

Si el usuario escribe el SSPBUF cuando una

transmisión ya está en curso (es decir, SSPSR sigue

desplazando a cabo un byte de datos), el WCOL se

establece y el contenido de la memoria intermedia no

se han modificado (la escritura no se produce).

OMAL debe ser despejado en software.

Page 187: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 157

15.4.10.3 ACKSTAT indicador de estado

En el modo de transmisión, el bit ACKSTAT

(SSPCON2 <6>) se borra cuando el esclavo ha

enviado un acuse de recibo (ACK

= 0), y se establece cuando el esclavo no

reconocimiento (ACK = 1). Un esclavo envía un acuse

de recibo cuando se ha reconocido su dirección

(incluyendo una llamada general) o cuando el esclavo

ha recibido correctamente sus datos.

04/15/11 MAESTRO I2C modo de recepción

Masrecepción ter modo se activa mediante la

programación de la. recibe el bit de habilitación,

RCEN (SSPCON2 <3>)

Nota: En el módulo MSSP, el bit RCEN debe

establecerse después de la secuencia

ACK o la broca se RCEN pasar por alto.

The generador de velocidad de transmisión comienza

a contar, y en cada renovación, el estado de los

cambios pin SCL (de mayor a menor / menor a mayor)

y los datos se desplazan dentro de la SSPSR.

Después de que el flanco de bajada del reloj octavo,

el recibir habilitar el indicador se borra

automáticamente, el contenido de la SSPSR se

cargan en el SSPBUF, el bit de bandera BF está

establecido, el bit de bandera SSPIF se establece la

velocidad de transmisión y genera-dor suspendido se

de contar, sosteniendo SCL baja. El MSSP se

encuentra ahora en estado IDLE, en espera del

siguiente comando. Cuando el tampón es leído por la

CPU, el bit de bandera BF se borra automáticamente.

El usuario puede entonces enviar un bit de

reconocimiento en el extremo de recepción,

estableciendo la secuencia Reconocer el bit de

habilitación, ACKEN (SSPCON2 <4>).

15.4.11.1 BF indicador de estado

Yon operación de recepción, el bit BF se establece

cuando un byte de dirección o de datos se carga en

SSPBUF de SSPSR. Se borra cuando el registro

SSPBUF se lee.

15.4.11.2 SSPOV indicador de estado

Yon operación de recepción, el bit se establece

cuando SSPOV 8 bits son recibidos en la SSPSR y el

bit de bandera BF ya está establecido a partir de una

recepción anterior.

15.4.11.3 Marcar Estado WCOL

Si el usuario escribe el SSPBUF cuando una

recepción está ya en curso (es decir, SSPSR sigue

desplazando en un byte de datos), el bit se establece

WCOL y el contenido de la memoria intermedia no se

han modificado (la escritura no se produce).

Page 188: 39564c.en.es

PIC

18F

XX

2

Y

o 2C

Mo

do

Maste

r ON

DA

(TR

AN

SM

ISIÓ

N, O

DIR

EC

CIÓ

N 7

10

-bit)

FIG

UR

A 1

5-2

1:

DS

39

56

4C

-pa

gE

156

2

00

6 M

icro

chip

Technolo

gy In

c.

Write SSPCON2 <0> SEN = 1

ESTRELLACondición T comienza P.poco om esclavo ACKSTAT claro

SSPCON2 <6> SEN = 0

ACKSTAT en

SSPCON2 = 1

Transmitting Datos o Second Mitad Transmit Dirección de Esclavo R/W = 0 of 10-bit

Dirección

ACK

SDA

SCL

SSPSI

La7 A6 A5 A4 A3 A2 A1 ACK = 0 D7 D6 D5 D4 D3 D2 D1 D0

SSPBUF escrito con la dirección de 7 bits y R / W empezar a transmitir

S 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 P SCL mantiene baja

mientras que la CPU

reponde a SSPIF

Borrado de software

Borrado de rutina de software de

servicio From SSP interrupción

Borrado de software

BF (SSPSTAT <0>)

SEN

SSPBUF escrito

SSPBUF está escrito en software

Laespués condición START, SEN aprobado por hardware

PEN

R/ W

Page 189: 39564c.en.es

PIC

18

FX

X2

FIG

UR

A 1

5-2

2: I 2

C M

aste

r Mo

de O

ND

A (R

EC

EP

CIÓ

N, 7

-BIT

AD

DR

ES

S)

2

006 M

icro

chip

Technolo

gy In

c.

DS

39564C

-págin

a

157

Write a SSPCON2 <0> (SEN = 1)

Comience la condición de

arranque

SEN = 0

Master configurado como un receptor

by programación SSPCON2 <3>, (RCEN = 1)

Write a SSPCON2 <4> para iniciar Reconocer secuencia SDA = ACKDT (SSPCON2 <5>) = 0

LaCK del Maestro SDA = ACKDT = 0

Set ACKEN, inicie Reconocer secuencia

SDA = ACKDT = 1

Write a SSPBUF ocurre aquí

Starte XMIT

Transmit Dirección de Esclavo

LaCK del Esclavo

R / W =

1

RCEN cleared automáticamente

Recepción de datos desde el esclavo

RCEN = 1 comenzará el próximo recibir

Recepción de datos desde el esclavo

RCEN cleared automáticamente

PEN = 1 bit

escrito

SDA La7 A6 A5 A4 La3 A2 A1 ACK D7 D6 D5 D4 D3 D2 D1 D0 Corriente alternaK

D7 D6 D5 D4 D3 D2 D1 D0

LaCK

SCL S

1 2 3 4 5 6 7 8 9 1 2 3 4 5

6 7 8 9

1 2 3 4

5 6 7 8

LaCK no se envía

9

P

BMaestro

nos termina

la

transferenci

a

Datos desplazados en el flanco de bajada de CLK SSSPIF et al final de la recepción

Set SSPIF interrupción

SSPSI

Set SSPIF interrumpir a fin de recibir

Set SSPIF interrupción al final de la secuencia Acknowledge

al final de la secuencia de recono-cimiento

SP et bit

SDA = 0, SCL = 1

mientras que la

CPU responde a

SSPIF

Cleared en software Cleared en software Cleared en software

Cleared en software

Cleared en software

(SSPSTAT <4>) y SSPIF

BF (SSPSTAT

<0>)

Última bit se desplaza a SSPSR y

el contenido se descarga en SSPBUF

SSPOV

SSPOV se pone porque

SSPBUF todavía está lleno

ACKEN

Page 190: 39564c.en.es

PIC18FXX2

DS39564C-page158 2006 Microchip Technology Inc.

ACKEN borra automáticamente

04/15/12 RECONOCE LA

DISTRIBUCION DE

SECUENCIA

Lan Reconocer secuencia se habilita estableciendo el

bit de habilitación Reconocer secuencia, ACKEN

(SSPCON2 <4>). Cuando este bit está establecido, el

pin SCL se baja y el contenido de los datos de bit de

reconocimiento se presentan en el pin SDA. Si el

usuario desea gene-rar un Reconoce, entonces el bit

ACKDT debe ser limpiado. Si no, el usuario debe

establecer el bit de ACKDT antes de iniciar una

secuencia de Reconocimiento. La velocidad de

transmisión de Gen-rador a continuación, cuenta de

período de transición de un (TBRG) y el pin SCL es

de-afirmó (elevado). Cuando el pin SCL es

muestreado altas (arbitraje del reloj), la tasa de

baudios Ator ge-cuenta para TBRG. El pin SCL es

jalada bajo. Si-guientes esto, el bit ACKEN se borra

automáticamente, el generador de velocidad de

transmisión se apaga y el módulo MSSP luego entra

en modo de reposo (Figura 15-23).

15.4.12.1 Marcar Estado WCOL

Yof el usuario escribe el SSPBUF cuando una

secuencia Acknowledge está en progreso, entonces

WCOL se establece y las tiendas de campaña con-de

la memoria intermedia no se han modificado (la

escritura no se produce).

04/15/13 detener el cronómetro ESTADO

Un bit de parada se afirma en el pin SDA al final de

una recepción / transmisión mediante el

establecimiento de la secuencia de parada bit de

habilitación, PEN (SSPCON2 <2>). Al final de un mit

receive/trans- la línea SCL se mantiene baja después

de que el flanco de bajada del reloj novena. Cuando el

bit PEN está establecido, el maestro hará valer la

línea SDA bajo. Cuando la línea SDA es muestreado

bajo, el generador de baud rate es recargado y cuenta

hasta 0. Cuando los tiempos de velocidad de

transmisión del generador fuera, el pin SCL serán

llevados alto, y un TBRG (velocidad de transmisión

generador vuelco count) más tarde, el pin SDA será

de-afirmó. Cuando el pin SDA es muestreado alta

mientras SCL es alta, el bit P (SSPSTAT <4>) se

establece. A TBRG más tarde, el bit PEN se borra y el

poco SSPIF se establece (Figura 15-24).

15.4.13.1 Marcar Estado WCOL

Yof el usuario escribe el SSPBUF cuando una

secuencia de parada está en curso, el bit WCOL se

establece y las tiendas de campaña con-de la

memoria intermedia no se han modificado (la escritura

no se produce).

FIGURA 15-23: RECONOCE DE FORMA DE ONDA DE SECUENCIA

AGRADECIMIENTOSsecuencia e inicia aquí, escribir a SSPCON2

ACKEN = 1, 0 = ACKDT

SDLa

SCL

TBRG TBRG

DACK 0

8 9

SSPIF

Set SSPIF al final Cleared en

Cleared

en

software de recibir

Nota:TBRG = una velocidad de transmisión generador

período.

Set software SSPIF al final

of Reconocer secuencia

FIGURA 15-24: condición de parada de recibir o transmitir MODO

Write a SSPCON2

Set PEN

Faborde de lling

SCL = 1 para TBRG, seguido de SDA = 1 para TBRG

unespués de SDA muestreo alta. Bit P (SSPSTAT <4>) se establece.

PEBit N (SSPCON2 <2>) se borra

SCL

SDA

9th reloj

ACK

TBRG

hardware y el bit se establece SSPIF

Page 191: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 159

TBRG

P

TBRG TBRG

SCL trajo alta después de TBRG

SDA afirmó baja antes de flanco ascendente del reloj para configurar la condición de STOP.

Nota:TBRG = una velocidad de transmisión generador período.

Page 192: 39564c.en.es

PIC18FXX2

DS39564C-page160 2006 Microchip Technology Inc.

15.4.14 FUNCIONAMIENTO DEL SUEÑO

Blancoile en el modo SLEEP, el módulo I2C puede

recibir direcciones o datos, y cuando un partido de

dirección o transferencia de bytes completa ocurre, el

procesador despertar del sueño (si la alarma está

activada MSSP).

04/15/15 EFECTO DE UN RESET

Un RESET desactiva el módulo MSSP y termina la

transferencia actual.

04/15/16 MODO MULTI-MASTER

Yon Multi-Master modo, la generación de

interrupciones en la detección de las condiciones de

START y STOP permite determinar cuando el bus

está libre. El STOP (P) y los bits de arranque (S) se

borran de un RESET o cuando

ªe módulo MSSP está desactivado. El control del bus I2C

mamáy tener cuidado cuando el bit P (SSPSTAT <4>)

se establece, o el bus está inactivo tanto con la S y P

bits claras. Cuando el bus está ocupado, lo que

permite la interrupción SSP va a generar la alarma

cuando la condición de detención se produce.

Yon multi-maestro de operaciones, la línea SDA

deben ser monitoreados de arbitraje, para ver si el

nivel de señal es el nivel de salida prevista. Esta

comprobación se realiza en hardware, con el

resultado de colocar en el bit BCLIF.

Thestados electrónicos en que el arbitraje se puede perder son los siguientes:

• Dirección de Transferencia

• Transferencia de datos

• Una condición de arranque

• Una START repetida Estado

• Reconocer un Estado

04/15/17 MULTI-MASTER DE

COMUNICACIÓN, COLISIÓN BUS,

BUS Y ARBITRAJE

Multi-Masapoyo ter modo se consigue mediante bus

arbitraje. Cuando el maestro emite de direcciones /

datos los bits en el pasador de SDA, el arbitraje se

lleva a cabo cuando el maestro envía un '1 'en la

SDA, dejando flotador SDA alta y otro maestro afirma

un '0'. Cuando el pin SCL flota alta, los datos deben

ser estables. Si los datos esperados en SDA es un '1

'y los datos muestreados en el pin SDA = '0', entonces

una colisión del autobús ha tenido lugar. El señor

pondrá al

la colisión del autobús Interrupt Flag BCLIF y restablecer el I2C

Port al estado IDLE (Figura 15-25).

Yotransmisión fa estaba en marcha cuando la colisión

del autobús ocurrido, la transmisión se detiene, la

bandera BF está desactivada, la SDA y SCL son

líneas de-afirmó, y la SSPBUF se puede escribir.

Cuando el usuario de servicios de la colisión del

autobús de rutina de interrupción de servicio, y si el

Bus I2C es gratuito, el usuario puede reanudar la comunicación por

asserting una condición START.

Si el START, START repetida, STOP o Reconocer

condición estaba en marcha cuando se produjo la

colisión del autobús, la condición es abortada, la SDA

y SCL son líneas de-afirmó, y los bits de control

respectivos en el registro SSPCON2 se borran.

Cuando el usuario servi-cios de la colisión del autobús

rutina de interrupción de servicio, y si el bus I2C es

gratuito, el usuario puede reanudar la comunicación

mediante la afirmación de una condición START.

The maestro seguirá vigilando la SDA y SCL

pins. Si una condición de detención se produce, el bit SSPIF se establecerá.

Una escritura en el SSPBUF se iniciará la transmisión

de datos en el primer bit de datos,

independientemente del lugar en el transmisor dejó

cuando la colisión del autobús ocurrido.

Yon Multi-Master modo, la generación de interrupciones en la detección de condiciones de inicio y parada permite la determinación de cuando el bus está libre. El control del bus I2C puede ser tomado cuando el bit P está situado en el SSPSTAT

register, o el autobús está en reposo y los bits S y P

se borran.

FIGURA 15-25: TIEMPO BUS COLISIÓN DE TRANSMISIÓN Y RECONOCE

Datalgunos

cambios

mientras SCL

= 0

SDUna línea de calado por otra fuente

SDUn

liberado por el maestro

Sample SDA. Mientras SCL es

alta, los datos no coincide con lo

que es impulsada por el maestro.

Bus colisión se ha producido.

Page 193: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 161

SDLa

SCL

BCLIF

Seautobús t colisión de interrupción (BCLIF)

Page 194: 39564c.en.es

PIC18FXX2

DS39564C-page162 2006 Microchip Technology Inc.

15.4.17.1 Bus colisión Durante una

condición de arranque

Durante una condición de START, una colisión de bus si:

un) O SDA SCL se muestrean baja al comienzo de

la condición de inicio (Figura 15-26).

b) SCL es muestreado bajo antes de SDA se afirma bajo

(Figura 15-27).

Durante una condición de START, tanto la SDA y SCL el

pins son monitoreados.

Yof el pin SDA es bajo, o el pin SCL es bajo,

entonces, de las siguientes situaciones:

• La condición de arranque se interrumpe,

• la bandera BCLIF se establece y

• el módulo MSSP se restablece a su estado IDLE

(Figura 15-26).

La condición de arranque comienza con la SDA y SCL

pins de-afirmó. Cuando el pin SDA es muestreado

alto, el generador de baud rate es cargado desde

SSPADD <6:00> y cuenta hasta 0. Si el pin SCL es

muestreado bajo mientras SDA es alta, se produce

una colisión del autobús, porque se supone que otro

maestro está tratando de conducir un datos '1 'durante

la condición de arranque.

Si la SDA pin es muestreado baja durante este

recuento, el BRG se restablece y la línea SDA se

afirma temprana (Figura 15-28). Si, sin embargo, un '1

'se toman en el pin SDA, el pin SDA se afirma bajo al

final de la cuenta BRG. El generador de velocidad en

baudios se vuelve a cargar y cuenta hasta 0, y

durante este tiempo, si los pines SCL se muestrean a

'0 ', una colisión del autobús no se produce. Al final de

la cuenta BRG, el pin SCL se afirma bajo.

Nota: Thrazón e que la colisión del autobús no

es un factor en una condición de arranque

es que no hay dos maestros de bus se

puede afirmar una condición de arranque

en el mismo momento. Por lo tanto, un

maestro siempre hará valer SDA antes

que el otro. Esta condición no causa un

accidente de autobús, ya que los dos

señores se debe permitir que arbitrar la

primera dirección siguiente al de la

condición de arranque. Si la dirección es

la misma, el arbitraje se debe permitir que

continúe en la parte de datos, repetida

START o STOP condiciones.

FIGURA 15-26: COLISIÓN EN BUS condición de arranque (SDA SOLAMENTE)

SDA pasa a baja ante el bit SEN se

establece. Establecer BCLIF,

S bits y conjunto SSPIF porque

SDA = 0, SCL = 1.

SDA

SCL

SEN

Set SEN, habilitar el inicio

conditiosi n = 1 SDA, SCL = 1

SDUna baja muestreada antes

SEN borra automáticamente debido a la colisión del autobús. SSP módulo cero en estado IDLE.

ESTRELLAT Estado.

Establecer BCLIF.

BCLIF

S bit y SSPIF establecido por SDA = 0, SCL = 1.

SSPIF y BCLIF se borran en software.

S

SSPIF

Page 195: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 163

SSPIF y BCLIF se borran en software.

Page 196: 39564c.en.es

PIC18FXX2

DS39564C-page164 2006 Microchip Technology Inc.

FIGURA 15-27: COLISIÓN EN BUS condiciones de arranque (SCL = 0)

SDA = 0, SCL = 1

SDA

TBRG TBRG

SCL

SEN

BCLIF

Establecer SEN, habilitar el inicio secuenciacióne = 1 si SDA, SCL = 1

SCL = 0 antes de BRG tiempo de espera, se produce la colisión de bus. Establecer BCLIF.

SCL = 0 antes de SDA = 0, bus se produce colisión. establecer BCLIF

Interrupciónt se aclaró en software

S

SSPIF

'0 ' '0 '

'0 ' '0 '

FIGURA 15-28: RESET BRG POR ARBITRAJE SDA durante la condición de START

SDA = 0, SCL = 1 Establezca S

Establecer SSPIF

SDA

SCL

SES

Less de TBRG

SDUna calada por otro maestro. Cambiar BRG y afirmar SDA.

TBRG

S

SCL calado después de BRG Time-out

BCLIF

Set SEN, habilitar el inicio secuenciacióne = 1 si SDA, SCL = 1

'0'

S

SSPIF SDA = 0, SCL = 1 Establecer SSPIF

Interrupts despejado en software

Page 197: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 165

15.4.17.2 Bus colisión durante una repetida

La condición de arranque

Durante una condición de START repetida, una

colisión de bus si:

un) Un nivel bajo un muestreo de SDA SCL cuando

pasa de nivel bajo a nivel alto.

b) SCL SDA pasa a nivel bajo antes se afirma bajo,

lo que indica que otro maestro está tratando de

transmitir datos a '1 '.

When el usuario de-afirma SDA y el pasador se dejó

flotar alto, el BRG se carga con SSPADD <6:00> y

cuenta hasta 0. El pin SCL es entonces de-afirmó, y

cuando muestra altos, el pin SDA es muestreado.

Yof SDA es bajo, una colisión de bus se ha producido

(es decir, otro maestro está tratando de transmitir

datos a '0 ', la Figura 15-29). Si SDA es muestreado

alto, el BRG es

recarga y comienza el conteo. Si SDA va de mayor a

menor antes de los tiempos BRG fuera, no colisión de

bus se debe a que no hay dos maestros pueden

afirmar SDA exactamente al mismo tiempo.

Yof SCL va de mayor a menor antes de los tiempos

fuera y BRG SDA no ha sido asumido previamente,

se produce una colisión de bus. En este caso, otro

maestro está tratando de transmitir datos de un '1 'en

la condición de arranque repetido, Figura 15-30.

Si, al final de la BRG de tiempo de espera tanto SCL y

SDA son todavía altas, el pin SDA es llevado a bajo y

el BRG es recargado y comienza el conteo. Al final

del recuento, independientemente de la condición de

la pin SCL, el pin SCL es llevado a bajo y la condición

de arranque repetido es completa.

FIGURA 15-29: colisión del autobús durante una condición de START repetida (caso 1)

SDA

SCL

Sample SDA SCL cuando se va alto.

Yof SDA = 0, establezca BCLIF y liberación SDA y SCL.

RSEN

BCLIF

S

SSPIF

Cleared en software '0' '0'

FIGURA 15-30: COLISIÓN EN BUS condición de arranque repetido (caso 2)

TBRG TBRG

SDA

SCL

BCLIF

RSEN

SCL goes bajas antes de SDA, Establecer BCLIF. Release SDA y SCL.

Interrumpir despejado en software

S '0 '

SSPIF

Page 198: 39564c.en.es

PIC18FXX2

DS39564C-page166 2006 Microchip Technology Inc.

15.4.17.3 Bus colisión durante una

condición de parada

Bus colisión se produce durante una condición de STOP si:

un) Después de que el pin SDA ha sido de-afirmó y

dejó flotar alta, SDA es muestreado bajo

después de la BRG ha caducado.

b) Después de que el pin SCL es de-afirmó, SCL es

muestreado bajo antes de SDA pasa a nivel

alto.

Thcondición de parada de emergencia comienza con

SDA afirmó baja. Cuando SDA es muestreado bajo, el

pin SCL se le permite flotar. Cuando el pasador se

muestrea alta (arbitraje del reloj), el generador de

baud rate es cargado con SSPADD <6:00> y cuenta

hasta 0. Después de los tiempos BRG fuera, SDA es

muestreado. Si SDA es muestreado bajo, una colisión

de bus se ha producido. Esto se debe a otro maestro

de intentar conducir una datos '0 '(Figura 15-31). Si el

pin SCL es muestreado bajo antes de SDA se le

permite flotar alta, se produce una colisión de bus.

Este es otro caso de otro maestro de intentar conducir

un dato '0 '(Figura 15-32).

FIGURA 15-31: colisión del autobús durante una condición de STOP (caso 1)

SDA

SCL

TBRG TBRG TBRG

SDUn afirmó bajo

SDA la baja

después de

que la muestra

TBRG, Set

BCLIF

PEN

BCLIF

P

SSPIF

'0'

'0'

FIGURA 15-32: colisión del autobús durante una condición de STOP (caso 2)

TBRG TBRG TBRG

SDA

SCL

Lassert SDA SCL pasa a baja antes de SDA pasa a nivel alto Set BCLIF

PEN

BCLIF

P

SSPIF

'0 '

'0'

Page 199: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 167

NOTAS:

Page 200: 39564c.en.es

PIC18FXX2

DS39564C-page168 2006 Microchip Technology Inc.

160.0 DIRECCIONABLE SÍNCRONO UNIVERSAL ASYNCHRONOUS TRANSMISOR RECEPTOR (USART)

The universal asíncrono síncrono receptor transmisor

(USART) módulo es uno de los dos seriales módulos

E / S. (USART también se conoce como una serie

realizar comunicaciones Interface o SCI.) El USART

puede ser con-figurado como un sistema asíncrono

dúplex completo que puede comunicarse con los

dispositivos periféricos, tales como CRT termi-nales y

las computadoras personales, o puede ser

configurado como un sistema síncrono medio-duplex

que puede comunicarse con los dispositivos

periféricos, tales como A / D o D / A circuitos

integrados, EEPROM de serie, etc

The USART se puede configurar en los siguientes modos:

• Asíncrono (full-duplex)

• Sincrónico - Master (half-duplex)

• Sincrónico - Slave (half-duplex)

Para configurar los pins RC6/TX/CK y RC7/RX/DT

como el Transmisor Universal Synchronous Receptor

Asíncrono:

• bit SPEN (RCSTA <7>) debe estar configurado (= 1),

• bit TRISC <6> debe ser limpiado (= 0), y

• poco TRISC <7> se debe establecer (= 1).

Registrarse 16-1 muestra el estado de transmisión y

registro de control (TXSTA) y registro 16-2 muestra la

recepción de estado y control Register (RCSTA).

Page 201: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 169

REGISTRO 16-1: TXSTA: TRANSMISIÓN DE ESTADO Y EL CONTROL DE REGISTRO

R/W-0 R/W-0 R/W-0 R/W-0 U-0 R/W-0 R-1 R/W-0

CSRC TX9 TXEN SYNC - BRGH TRMT TX9D bit 7 bit 0

bit 7 CSRC:Reloj bit de selección de

fuente

Asíncrono modo: No

importa el modo

sincrónico:

1= Modo maestro (reloj generado internamente desde BRG) 0= Modo esclavo (reloj de fuente externa)

bit 6 TX9: 9-bit Bit de habilitación

de transmisión

1= Selecciona el 9-bit de transmisión

0Selecciona = 8-bits de transmisión

bit 5 TXEN: Bit de habilitación de transmisión

1= Transmitir habilitado

0= Transmitir deshabilitado

Note: SREN / CREN TXEN anula en modo SYNC.

bit 4 SYNC: Modo USART Select bit

1= Modo síncrono 0= Modo asíncrono

bit 3 Naciones Unidasimplementado: Leer como '0 '

bit 2 BRGH: Bit High Rate Seleccione Baud

Asíncrono modo:

1= Velocidad alta

0= Velocidad baja

Synchronous mode:

Unused en este

modo

bit 1 TRMT: Transmit Shift Register Bit de estado

1= TSR vacío

0= TSR completo

bit 0 TX9D: 9º bit de transmisión de

datos

Californian ser de dirección / datos poco o un bit de paridad.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 202: 39564c.en.es

PIC18FXX2

DS39564C-page170 2006 Microchip Technology Inc.

REGISTRO 16-2: RCSTA: RECIBIR LA SITUACIÓN Y CONTROL DE REGISTRO

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R-0-0 R Rx

SPEN RX9 SREN CREN Adden FERR OERR RX9D bit 7 bit 0

bit 7 SPEN: Serial Port Enable bit

1= Enabled puerto serie (configura RX / DT y TX / CK pines como pines del puerto serie)

0= Puerto serie desactivado

bit 6 RX9: 9-bit Recibir Bit de

habilitación

1= Selecciona el 9-bit recepción

0= Selecciona 8-bit recepción

bit 5 SREN: Single Recibir Bit de habilitación

Asíncrono modo: No

importa

Synchronoumodo s - Master:

1= Activa solo reciben

0= Desactiva solo reciben Thibit s se borra después de finalizada la recepción.

Synchronoumodo s -

Esclavo: Don 't cuidado

bit 4 CREN: Continua Recibir Bit de habilitación

Asíncrono modo:

1= Activa el receptor

0= Deshabilita el receptor

Synchronous mode:

1= Habilita la recepción continua hasta permitir CREN bit se restablece (CREN anula SREN)

0= Desactiva la recepción continua

bit 3 LaDDEN: Atender Detectar Bit de habilitación

Modo asíncrono 9-bit (RX9 = 1):

1= Habilita la detección de direcciones, permite interrumpir y carga del buffer

de recepción cuando RSR <8> en la posición

0= Deshabilita la detección de direcciones, todos los bytes se reciben, y noveno bit se

puede utilizar como bit de paridad bit 2 FERR: Framing bit de error

1Error = Framing (se puede actualizar mediante la lectura de RCREG registrarse y recibir byte válido siguiente) 0= No framing error

bit 1 OERR: Error de Overrun poco

1= Error de desbordamiento (se puede borrar en la limpieza CREN bits)

0= Sin error de desbordamiento

bit 0 RX9D:9th bits de datos

recibidos

This puede ser de dirección / datos bit o un bit de paridad, y debe ser calculado por firmware usuario.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 203: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 171

16.1 USART Generador de velocidad de baudios

(BRG)

The BRG admite tanto el asíncrona y síncrona modos

de la USART. Es un dedicado 8-bit generador de

velocidad en baudios. El registro SPBRG controla el

período de un funcionamiento libre 8-bit de tiempo. En

el modo asíncrono, poco BRGH (TXSTA <2>) controla

también la velocidad de transmisión. En el modo

síncrono, poco BRGH se ignora. Tabla 16-1 muestra

la fórmula para el cálculo de la velocidad de

transmisión de USART modos diferentes, que sólo se

aplican en modo maestro (reloj interno).

Darn la velocidad de transmisión deseada y Fosc, el

más cercano inte-ger valor del registro SPBRG se

puede calcular utilizando la fórmula de la Tabla 16-1.

De esto, el error en la velocidad de transmisión se

puede determinar.

EJEMPLOSe 16-1 muestra el cálculo del error de

velocidad de transmisión para las siguientes

condiciones:

• FOSC = 16 MHz

• Velocidad de transmisión deseado = 9600

• BRGH = 0

• SYNC = 0

Yot puede ser ventajoso el uso de la alta velocidad de

transmisión (BRGH = 1) incluso para los más lentos

relojes baudios. Esto es porque el FOSC / (16 (X + 1))

ecuación puede reducir el error de velocidad en

baudios en algunos casos.

Writing un nuevo valor en el registro SPBRG hace que

el temporizador de BRG para poner a cero (o

eliminado). Esto asegura la BRG no espera a un

desbordamiento del temporizador antes de producir

nueva velocidad.

16.1.1 TOMA DE MUESTRAS

Thdatos electrónicos sobre el pasador RC7/RX/DT se

muestrearon tres veces por mayoría circuito de

detección para determinar si un alto o un bajo nivel

está presente en el pin RX.

EXAMPLIO 16-1: CÁLCULO DE ERROR VELOCIDAD DE TRANSMISIÓN

Velocidad de

transmisión deseada

Despejando

X: X

=

=

FOSC / (64 (X + 1)) ((FOSC / deseado Baud Rate) / 64) - 1

X

X =

= ((16000000/9600) / 64) - 1

[25,042] = 25

Tasa calculada Baud =

= 16000000 / (64 (25 + 1))

9615

Error = (Calculado Baud Rate - Tasa de baudios deseada) Velocidad de transmisión deseada

= (9615 - 9600) / 9600

= 0,16%

TABLE 16-1: FORMULA VELOCIDAD DE TRANSMISIÓN

SYNC BRGH = 0 (baja velocidad) BRGH = 1 (alta velocidad)

0

1 (Asynchronous) Baud Rate = Fosc / (64 (X

+1)) (Synchronous) Velocidad en baudios =

Fosc / (4 (X +1))

Baud Rate = Fosc / (16 (X

+1)) N / A Legend: X = valor en SPBRG (0 a 255)

TABLE 16-2: REGISTROS RELACIONADOS CON GENERADOR DE BAUDIOS

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Virginialue en

POR, BOR

Virginialu

e en

todas las

restaura

ciones

Otros

TXSTA CSRC TX9 TXEN SYNC - BRGH TRMT TX9D 0000 -010 0000 -010

RCSTA SPEN RX9 SREN CREN Adden FERR OERR RX9D 0000-00x 0000-00x

Page 204: 39564c.en.es

PIC18FXX2

DS39564C-page172 2006 Microchip Technology Inc.

SPBRG Velocidad de transmisión del generador Registrarse 0000 0000 0000 0000 Leyenda:x= Desconocido, - = no implementado, leído como '0 '. Las casillas sombreadas no son utilizados por el

BRG.

Page 205: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 173

TABLE 16-3: TARIFAS baudios para el modo síncrono

VELOCIDAD

DE TRANSMISI

ÓN (Kbps)

FOSC = 40 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

33 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

25 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

20 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

0.3

1.2

2.4

9.6

190.2

76,8

96

300

500

HIGH

LOW

NA - NA - NA - NA - NA -

76,92 129 +0.16

96,15 103 +0.16

303,03 +1.01 32

500 0 19

10000 a 0

390.06-255

NA - NA - NA - NA - NA -

77,10 +0.39 106

95,93 -0.07 85

294,64 -1.79 27

485,30 -2.94 16

8250 a 0

32.23-255

NA - NA - NA - NA - NA -

77.16 +0.47 80

96,15 +0.16 64

297,62 -0.79 20

480,77 -3.85 12

6250 a 0

240.41-255

NA - NA - NA - NA - NA -

76,92 +0.16 64

96,15 +0.16 51

294,12 -1.96 16

500 0 9

5000 a 0

190.53-255

VELOCIDAD

DE TRANSMISI

ÓN (Kbps)

FOSC = 16 MHz SPBRG

% Valor

KERROR BAUD (decimal)

10 MHz SPBRG

% Valor

KERROR BAUD (decimal)

7,15909 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

5,0688 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

00.3

10.2

20.4

9,6

19.2

76.8

96

300

500

LO

ALTO

W

NA - NA - NA - NA -

19,23 +0.16 207

76,92 +0.16 51

95,24 -0.79 41

307,70 +2.56 12

500 0 7

4000 a 0

15,63 a 255

NA - NA - NA - NA -

19,23 +0.16 129

75.76 -1.36 32

96.15 +0.16 25

312,50 +4.17 7

500 0 4

2500 a 0

9,77-255

NA - NA - NA -

9,62 185 +0.23

19,24 +0.23 92

77,82 +1.32 22

94,20 -1.88 18

298,35 -0.57 5

447.44 -10.51 3

1789.80 a 0

6,99-255

NA - NA - NA -

9,60 0 131

19.20 0 65

74,54 -2.94 16

97,48 +1.54 12

316,80 +5.60 3

422,40 -15.52 2

1267.20 a 0

4,95 a 255

VELOCIDAD

DE TRANSMISI

ÓN (Kbps)

FOSC = 4 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

3,579545 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

1 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

32,768 kHz SPBRG

% Valor

ERROR KBAUD (decimal)

0,3

10.2

20.4

9,6

19.2

76.8

96

300

500

HIGH

LOW

NA - NA - NA -

9,62 103 +0.16

19.23 +0.16 51

76.92 +0.16 12

1000 +4.17 9

333.33 +11.11 2

500 0 1

1000-0

3,91 a 255

NA - NA - NA -

9.62 +0.23 92

19,04 -0.83 46

74,57 -2.90 11

99,43 +3.57 8

298.30 -0.57 2

447,44 1 -10.51

894,89 a 0

30.50-255

NA -

1.20 +0.16 207

2.40 +0.16 103

9,62 +0.16 25

19,23 +0.16 12

83,33 +8.51 2

83,33 -13.19 2

250 -16.67 0

NA -

250-0

0,98-255

0.30 +1.14 26

1.17 -2.48 6

2.73 +13.78 2

8.20 -14.67 0

NA - NA - NA - NA - NA -

80.20-0

00.03-255

Page 206: 39564c.en.es

PIC18FXX2

DS39564C-page174 2006 Microchip Technology Inc.

TABLE 16-4: TASAS DE BAUDIOS modo asíncrono (BRGH = 0)

VELOCIDAD

DE TRANSMISI

ÓN (Kbps)

FOSC = 40 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

33 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

25 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

20 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

00.3

10.2

20.4

90.6

190.2

760.8

96

300

500

HIGH

LOW

NA - NA - NA -

9.62 +0.16 64

18.94 -1.36 32

78.13 +1.73 7

89.29 -6.99 6

312.50 +4.17 1

625 0 +25.00

625-0

2.44 Hasta 255

NA - NA - -

2,40 -0.07 214

9,55 53 -0.54

19.10 -0.54 26

73.66 -4.09 6

103.13 +7.42 4

257.81 -14.06 1

NA -

515,63 a 0

2,01 a 255

NA - NA - -

2,40 -0.15 162

9.53 -0.76 40

19.53 +1.73 19

78.13 +1.73 4

97.66 +1.73 3

NA - NA -

390,63 a 0

10.53-255

NA - NA - -

2,40 +0.16 129

9.47 -1.36 32

19.53 +1.73 15

78,13 +1.73 3

104.17 +8.51 2

312.50 +4.17 0

NA -

312.50 A 0

10.22-255

VELOCIDAD

DE TRANSMISI

ÓN (Kbps)

FOSC = 16 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

10 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

70,15909 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

50.0688 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

00.3

10.2

20.4

90.6

19,2

76,8

96

300

500

HIGH

LOW

NA -

1.20 +0.16 207

2.40 +0.16 103

9.62 +0.16 25

19,23 +0.16 12

83,33 +8.51 2

83,33 -13.19 2

250 0 -16.67

NA -

250 a 0

0.98 Hasta 255

NA -

1.20 +0.16 129

2.40 +0.16 64

9.77 +1.73 15

19,53 +1.73 7

78,13 1 +1.73

78,13 -18.62 1

156.25 -47.92 0

NA -

156,25-0

0.61-255

NA -

1.20 +0.23 92

2.38 -0.83 46

9.32 -2.90 11

18,6-2.90 4 5

111,86 +45.65 0

NA - NA - NA - -

111,86-0

0.44 Hasta 255

NA -

1.20 0 65

2.40 0 32

9.90 +3.13 7

19,80 +3.13 3

79,20 +3.13 0

NA - NA - NA - -

79,20 a 0

0,31 hasta 255

VELOCIDAD

DE TRANSMISI

ÓN (Kbps)

FOSC = 4 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

30.579545 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

1 MHz SPBRG

% Valor

KERROR BAUD (decimal)

32,768 kHz SPBRG

% Valor

ERROR KBAUD (decimal)

0,3

1,2

2,4

9,6

19,2

76,8

96

300

500

HIGH

LOW

0,30 -0.16 207

1.20 +1.67 51

2.40 +1.67 25

8.93 -6.99 6

20,83 +8.51 2

62,50 0 -18.62

NA - NA - NA -

62,50 a 0

00.24-255

0,30 +0.23 185

1.19 -0.83 46

2.43 +1.32 22

9.32 -2.90 5

18,64 -2.90 2

55,93 0 -27.17

NA - NA - NA -

55,93 a 0

00.22-255

0,30 +0.16 51

1.20 +0.16 12

2.23 -6.99 6

7.81 -18.62 1

15,63 0 -18.62

NA - NA - - NA

- - NA

- -

15,63 a 0

00.06-255

0,26 -14.67 1

NA - NA - NA - NA - NA -

NA - NA - NA -

0,51 a 0

00,002 a 255

Page 207: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 175

TABLE 16-5: TASAS DE BAUDIOS modo asíncrono (BRGH = 1)

BTASA MXN (Kbps)

FOSC = 40 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

33 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

25 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

20 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

0.3

1.2

2.4

9.6

19,2

76,8

96

300

500

HIGH

LOW

NA - NA - NA - NA -

19,23 +0.16 129

75,76 -1.36 32

96,15 +0.16 25

312,50 +4.17 7

500 0 4

2500 a 0

9.77 Hasta 255

NA - NA - NA -

9,60 -0.07 214

19,28 106 +0.39

76,39 -0.54 26

98,21 +2.31 20

294,64 -1.79 6

515,63 +3.13 3

2062.50 a 0

8, 06 a 255

NA - NA - NA -

9,59 162 -0.15

19,30 +0.47 80

78,13 +1.73 19

97,66 +1.73 15

312,50 +4.17 4

520,83 +4.17 2

1562.50 a 0

60.10-255

NA - NA - NA -

9,62 129 +0.16

19,23 +0.16 64

78,13 +1.73 15

96,15 +0.16 12

312.50 +4.17 3

416.67 -16.67 2

1250 a 0

4.88 Hasta 255

VELOCIDAD

DE TRANSMISI

ÓN (Kbps)

FOSC = 16 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

10 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

7,15909 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

5,0688 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

00.3

10.2

2,4

9,6

19.2

76.8

96

300

500

HIGH

LOW

NA - NA - NA -

9,62 103 +0.16

19,23 +0.16 51

76,92 +0.16 12

100 +4.17 9

333,33 +11.11 2

500 0 1

1000 a 0

3,91 a 255

NA - NA - NA -

9,62 +0.16 64

18,94 -1.36 32

78,13 +1.73 7

89,29 -6.99 6

312,50 1 +4.17

625 0 +25.00

625-0

2,44 a 255

NA - NA -

2.41 +0.23 185

9,52 -0.83 46

19.45 +1.32 22

74,57 -2.90 5

89,49 -6.78 4

447,44 0 +49.15

447,44 0 -10.51

447.44 A 0

1.75-255

NA - NA -

2.40 0 131

9.60 0 32

18,64 -2.94 16

79,20 +3.13 3

105,60 +10.00 2

316,80 +5.60 0

NA -

3160.80-0

10.24-255

VELOCIDAD

DE TRANSMISI

ÓN (Kbps)

FOSC = 4 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

30.579545 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

1 MHz SPBRG

% Valor

ERROR KBAUD (decimal)

32,768 kHz SPBRG

% Valor

ERROR KBAUD (decimal)

0,3

1,2

2,4

9,6

19.2

76.8

96

300

500

HIGH

LOW

NA -

1,20 +0.16 207

2,40 +0.16 103

9,62 +0.16 25

19,23 +0.16 12

NA - NA - NA - NA -

250 a 0

0,98-255

NA -

1,20 +0.23 185

2,41 +0.23 92

9,73 +1.32 22

18,64 -2.90 11

74,57 -2.90 2

111,86 +16.52 1

223,72 0 -25.43

NA -

55,93 a 0

0,22 a 255

0.30 +0.16 207

1.20 +0.16 51

2,40 +0.16 25

8,93 -6.99 6

20.83 +8.51 2

62,50 0 -18.62

NA - NA - NA -

62,50 a 0

00.24-255

0.29 -2.48 6

1,02 -14.67 1

2.05 -14.67 0

NA - NA - NA - NA - -

NA - NA -

2,05-0

0.008 A 255

Page 208: 39564c.en.es

PIC18FXX2

DS39564C-page176 2006 Microchip Technology Inc.

Velocidad de transmisión C

TXEN

SPBRG

16.2 USART en modo asíncrono

En este modo, el USART utiliza el estándar sin

retorno a cero (NRZ) formato (un bit de START, ocho

o nueve bits de datos y un bit de parada). El formato

de datos más común es de 8-bits. Un chip dedicado

de 8-bits velocidad de transmisión genera-dor puede

ser utilizada para obtener velocidad de transmisión

estándar de frecuencias del oscilador. El USART

transmite y recibe el LSB primero. El USART

transmisor y el receptor sean funcionalmente

independientes, pero usan el mismo formato de datos

y velocidad de transferencia. La velocidad de

transmisión genera-dor produce un reloj, ya sea x16 o

x64 de la tasa de desplazamiento de bits,

dependiendo de poco BRGH (TXSTA <2>). La

paridad no está soportado por el hardware, pero

puede implementarse en software (y se almacena

como el noveno bit de datos). Modo asíncrono se

detiene durante el sueño.

Asynchronous se selecciona el modo de a poco claro

SYNC (TXSTA <4>).

The asíncrono módulo USART se compone de los

siguientes elementos importantes:

• Generador de baudios

• Toma de muestras del circuito

• Transmisor Asíncrono

• Receptor Asíncrono

16.2.1 USART TRANSMISOR

ASYNCHRONOUS

The transmisor USART diagrama de bloques se

muestra en la Figura 16-1. El corazón del transmisor

es la transmisión (de serie) Shift Register (TSR). El

registro de desplazamiento obtiene sus datos a partir

de la lectura / escritura de buffer de transmisión,

TXREG. El registro TXREG se carga con datos en el

software. El registro TSR no se carga hasta que el bit

de parada se ha transmitido de la carga anterior. Tan

pronto como el bit de parada se transmite, el TSR se

carga con nuevos datos del registro TXREG (si está

disponible). Una vez que el registro TXREG transfiere

los datos en el registro TSR (se produce en uno TCY),

el registro está vacío y TXREG

Flag poco TXIF (PIR1 <4>) se establece. Esta

interrupción se puede habilitar / deshabilitar

estableciendo / borrar el bit de habilitación TXIE (PIE1

<4>). Flag bit TXIF se establecerá, con independencia

del estado de permitir TXIE poco y no se pueden

borrar en soft-ware. Se restablece sólo cuando los

nuevos datos se cargan en el registro TXREG.

Mientras marcador de bits TXIF indicó el STATUS del

registro TXREG, otro poco, TRMT (TXSTA <1>),

muestra el estado del registro TSR. Sta-tus TRMT bit

es un bit de sólo lectura, que se activa cuando el

registro TSR está vacío. No lógica de interrupción

está ligada a este bit, por lo que el usuario tiene que

consultar este bit con el fin de determinar si el registro

TSR está vacío.

Nota 1: The TSR registro no está asignado en la

memoria de datos, por lo que no está

disponible para el usuario.

2:Flag TXIF bit se establece cuando se active

TXEN bits

yos ajustado.

To configurar una transmisión asíncrona:

1. Yonitialize el registro SPBRG para la velocidad

de transmisión adecuada. Si la tasa de

velocidad en baudios se desea alta, establezca

el bit BRGH (Sección 16.1).

2. Act vace el puerto serie asíncrono en la

limpieza de SYNC bits y el bit SPEN.

3. Si las interrupciones se desea, configure permitir TXIE poco.

4. Si 9-bit de transmisión se desea, configure transmitir bits

TX9. Se puede utilizar como bit de dirección / datos.

5. Act vace la transmisión mediante el

establecimiento de TXEN bits, que también

fijará TXIF bit.

6. Yof 9-bit de transmisión se selecciona, el bit

noveno se debe cargar en TX9D bit.

7. Load Los datos para el registro TXREG

(aperturas de transmisión).

Nota: TXIF no se borra inmediatamente

después de los datos de carga-ción en la

TXREG búfer de transmisión. El bit de

bandera pasa a ser válido en el ciclo de

instrucción siguiente a la instrucción de

carga.

FIGURA 16-1: DIAGRAMA DE BLOQUES DE TRANSMISIÓN USART

Bus de Datos

TXIE

TXSI

TXREG Registro

8

MSb LSb

Interrumpir

(8) • • • 0

TSR Registro

Pen tampón y Control

RC6/TX/CK pin

Page 209: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 177

LK

TRMT SPEN

Baud Generador de velocidad

TX9 TX9D

Page 210: 39564c.en.es

PIC18FXX2

DS39564C-page178 2006 Microchip Technology Inc.

FIGURA 16-2: transmisión asíncrona

Write a TXREG

BRG salida (Shift Clock)

Word 1

RC6/TX/CK (pin)

TXIF

bits (transmisión Reg Buffer.

Bandera Vacía)

TPoco

RMT (Transmit Shift Reg. Bandera Vacía)

START bit bit 0 bit 1 bit 7/8

Word 1

Word 1 Transmit Shift Reg

STPoco OP

FIGURA 16-3: transmisión asíncrona (espalda con espalda)

Write a TXREG

BRG salida (Shift Clock)

RC6/TX/CK (pin)

TXIF poco

Word 1 Palabra 2

ESTRELLAT bit

bit 0 bit 1 bit 7/8

STPoco OP ESTRELLAT bit

bit 0

(Enterrupt Reg. Flag)

TRMT poco

Word 1 Palabra 2

Word 1 Palabra 2

(Transmit Shift Reg. Bandera Vacía)

Transmit Shift Reg. Transmit Shift Reg.

Nota: Este diagrama de tiempos muestra dos transmisiones consecutivas.

TABLE 16-6: registros asociados a la transmisión asíncrona

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Virginialue en

POR, BOR

Value en

todas las

restaura

ciones

Otros INTCON GIE / GIEH

PEIE / GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

IPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000

RCSTA SPEN RX9 SREN CREN Adden FERR OERR RX9D 0000-00x 0000-00x

TXREG USART Transmitir Registro 0000 0000 0000 0000

TXSTA CSRC TX9 TXEN SYNC - BRGH TRMT TX9D 0000 -010 0000 -010

SPBRG Velocidad de transmisión del generador Registrarse 0000 0000 0000 0000 Leyenda:x= Desconocido, - = no implementado lugares leído como '0 '.

Sombrad células no se utilizan para la transmisión asíncrona.

NoTE 1: Los bits PSPIF, PSPIE y PSPIP se reservará en las PIC18F2X2 dispositivos; siempre mantener estos bits

clara.

Page 211: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 179

16.2.2 USART RECEPTOR

ASYNCHRONOUS

Threceptor e diagrama de bloques se muestra en la

Figura 16-4. Los datos se reciben en el pasador

RC7/RX/DT y acciona el bloque de recuperación de

datos. El bloque de recuperación de datos es en

realidad una operación de alta velocidad de la

palanca de cambios en x16 veces la velocidad de

transmisión, mientras que la palanca de cambios

principal recibir serial opera-ates en la velocidad de

bits o en FOSC. Este modo normalmente se utiliza en

los sistemas de RS-232.

To configurar una recepción asíncrona:

1. Inicialice el registro SPBRG para la velocidad de

transmisión adecuada. Si la tasa de velocidad

en baudios se desea alta, establezca el bit

BRGH (Sección 16.1).

2. ENABLe el puerto serie asíncrono en la

limpieza de SYNC bits y el bit SPEN.

3. Si las interrupciones se desea, configure permitir RCIE poco.

4. Si 9-bit recepción se desea, establezca el bit RX9.

5. Habilitar la recepción poniendo CREN poco.

6. Flag RCIF bit se establece cuando la recepción

es com-pleta y una interrupción se generará si

RCIE enable bit se estableció.

7. Lea el registro RCSTA para obtener el noveno bit

(si está habilitado) y determinar si cualquier

error durante la recepción.

8. Leer los datos de 8-bits recibidos por la lectura

RCREG registrarse.

9. Si algún error, borrar el error en la limpieza de

permitir CREN poco.

10. Si se utilizan interrupciones, asegúrese de que

el GIE y los bits PEIE en el registro INTCON

(INTCON <07:06>) se establecen.

16.2.3 Configuración del modo de 9-BIT

CON DIRECCIÓN DETECTAR

Thimodo s normalmente se utilizan en los sistemas de

RS-485. Para configurar una recepción asíncrona con

dirección Detectar Activar:

1. Yonitialize el registro SPBRG para la velocidad

de transmisión adecuada. Si la tasa de

velocidad en baudios se requiere alta,

establezca el bit BRGH.

2. Act vace el puerto serie asíncrono borrando el

bit SYNC y activando el bit SPEN.

3. Si las interrupciones son necesarias, establecer

el bit RCEN y seleccione el nivel de prioridad

deseado con el bit RCIP.

4. Establezca el bit RX9 habilitar 9-bit recepción.

5. Establezca el bit Adden para permitir detectar la dirección.

6. Habilitar la recepción poniendo el bit CREN.

7. The RCIF poco se establecerá cuando la

recepción es com-pleta. La interrupción será

reconocida si los bits GIE y RCIE se

establecen.

8. Read RCSTA el registro para determinar si

cualquier error durante la recepción, así como

leer datos de bit 9 (si es aplicable).

9. Leer RCREG para determinar si el dispositivo se

está abordando.

10. Si algún error, desactive el bit CREN.

11. Si el dispositivo ha sido abordado, borrar el bit

Adden para permitir que todos los datos

recibidos en la memoria intermedia de

recepción e interrumpir la CPU.

FIGURA 16-4: DIAGRAMA DE BLOQUE DE RECIBIR USART

x64 Velocidad de transmisión CLK

CREN OERR FERR

SPBRG ÷ 64

o

MSb RSR Registro

LSb

BaGenerador de velocidad ud

÷ 16 STOP (8) 7 • •

1 0 START

RC7/RX/DT

Pen tampón y Control

Datos Recuperación

RX9

RX9DRCREG Registrarse

FIFO

SPEN

InterrupcióntRCIF RCIE

Page 212: 39564c.en.es

PIC18FXX2

DS39564C-page180 2006 Microchip Technology Inc.

8

Bus de Datos

Page 213: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 181

FIGURA 16-5: RECEPCIÓN ASYNCHRONOUS

RX (pin)

Rcv Shift Reg Rcv Reg Buffer

Leer Rcv Reg Buffer RCREG

RCIF (Interrupciónt Flag)

OERR poco

CREN

ESTRELLAT blo

bit0

bit1

bIT7 / 8 PARADA

blo

ESTRELLAT

blo

Word 1 RCREG

bit0

bit7 / 8 STOP

blo

Word 2 RCREG

ESTRELLAT

blo

bit7 / 8

STOP

blo

Nota: Thes un diagrama de tiempos muestra tres palabras que aparecen en la entrada RX. El RCREG (búfer de recepción) se lee

después de la tercera palabra, haciendo que el OERR (sobrecostos) poco a ajustar.

TABLE 16-7: Registros asociadas con la recepción ASYNCHRONOUS

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Virginialue en

POR, BOR

Virginialu

e en

todas las

restaura

ciones

Otros

INTCON GIE / GIEH

PEIE

/

GIEL

TMR0IE INT0IE RBIE TMR0IF INT0SI RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

IPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000

RCSTA SPEN RX9 SREN CREN Adden FERR OERR RX9D 0000-00x 0000-00x

RCREG EE.UU.ARTE Recibir Registro 0000 0000 0000 0000

TXSTA CSRC TX9 TXEN SYNC - BRGH TRMT TX9D 0000 -010 0000 -010

SPBRG Velocidad de transmisión del generador Registrarse 0000 0000 0000 0000 Leyenda:x= Desconocido, - = no implementado lugares leído como '0 '.

Sombrad células no se utilizan para la recepción asíncrona.

NoTE 1: Los bits PSPIF, PSPIE y PSPIP se reservará en las PIC18F2X2 dispositivos; siempre mantener estos

bits clara.

Page 214: 39564c.en.es

PIC18FXX2

DS39564C-page182 2006 Microchip Technology Inc.

16.3 USART síncrono maestro

Modo

Yon Modo síncrono maestro, los datos se transmiten

de una manera semi-dúplex (es decir, la transmisión y

la recepción no se producen al mismo tiempo).

Cuando la transmisión de datos, la recepción se

inhibe y viceversa. El modo síncrono se introduce

mediante el establecimiento de SYNC bits (TXSTA

<4>). Además, el bit de habilitación de SPEN (RCSTA

<7>) se establece con el fin de configurar el

RC6/TX/CK y RC7/RX/DT pins de E / S para CK

(reloj) y líneas de DT (datos), respectivamente. El

modo maestro indica que el procesador transmite el

reloj maestro en la línea de CK. El modo Master se

introduce por el bit CSRC (TXSTA <7>).

16.3.1 USART SÍNCRONO MAESTRO DE

TRANSMISIÓN

The transmisor USART diagrama de bloques se

muestra en la Figura 16-1. El corazón del transmisor

es la transmisión (de serie) Shift Register (TSR). El

registro de desplazamiento obtiene los datos de la

lectura / escritura de búfer de transmisión registrarse

TXREG. El registro TXREG se carga con datos en el

software. El registro TSR no se carga hasta el último

bit se ha transmitido de la carga anterior. Tan pronto

como el último bit es transmitido, el TSR se carga con

nuevos datos de la TXREG (si está disponible). Una

vez que el registro TXREG transfiere los datos en el

registro TSR (se produce en uno tciclo), la TXREG

está vacío y interrumpen poco TXIF (PIR1 <4>) se

establece. La alarma se puede activar / desactivar

configurando / borrado permitir TXIE poco

(PIE1<4>). Flag bit TXIF se establezca,

independientemente del estado de habilitar TXIE bit, y

no se pueden borrar en software. Se restablece sólo

cuando los nuevos datos se cargan en el registro

TXREG. Mientras indicador de bits TXIF indica el

estado del registro TXREG, otro TRMT bit (TXSTA

<1>) muestra el estado del registro TSR. TRMT es un

poco de sólo lectura, que se activa cuando el TSR

está vacío. No hay lógica interrumpen está ligada a

este bit, por lo que el usuario tiene que consultar este

bit con el fin de determinar si el registro TSR está

vacío. El TSR no está asignado en la memoria de

datos, por lo que no está disponible para el usuario.

To configurar una transmisión sincrónica Maestro:

1. Yonitialize el registro SPBRG para la tasa de

transmisión en baudios apropiada (Sección

16.1).

2. Act vace el puerto serie síncrono maestro

mediante el establecimiento de SYNC bits,

SPEN y CSRC.

3. Si las interrupciones se desea, configure permitir TXIE poco.

4. Si 9-bit transmisión se desea, establezca el bit TX9.

5. Habilitar la transmisión mediante el establecimiento de TXEN poco.

6. Yof 9-bit de transmisión se selecciona, el bit

noveno se debe cargar en TX9D bit.

7. Iniciar la transmisión mediante la carga de datos a la TXREG

register.

Nota: TXIF no se borra inmediatamente

después de los datos de carga-ción en la

TXREG búfer de transmisión. El bit de

bandera pasa a ser válido en el ciclo de

instrucción siguiente a la instrucción de

carga.

TABLE 16-8: Registros asociados con la transmisión SÍNCRONO MAESTRO

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Virginialu

e en

todas las

restaura

ciones

Otros

INTCON GIE /

GIEH PEIE

/

GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

IPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000

RCSTA SPEN RX9 SREN CREN Adden FERR OERR RX9D 0000-00x 0000-00x

TXREG USART Transmitir Registro 0000 0000 0000 0000

TXSTA CSRC TX9 TXEN SYNC - BRGH TRMT TX9D 0000 -010 0000 -010

SPBRG Velocidad de transmisión del generador Registrarse 0000 0000 0000 0000 Leyenda:x= Desconocido, - = no implementado, leído como '0 '.

Sombrad células no se utilizan para la transmisión síncrona Maestro.

Nota 1: Los bits PSPIF, PSPIE y PSPIP se reservará en las PIC18F2X2 dispositivos; siempre mantener estos

Page 215: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 183

bits clara.

Page 216: 39564c.en.es

PIC18FXX2

DS39564C-page184 2006 Microchip Technology Inc.

TRMT

FIGURA 16-6: transmisión síncrona

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

RC7/RX/DT pen

RC6/TX/CK pen

Escribir a TXREG Reg

TXIF bit (Interrupciónt Flag)

bit 0 bit 1

Word 1

Write Palabra1 Escribir Palabra2

bit 2

bit 7

bit 0 bit 1 bit 7

Word 2

TRMT poco

TXEN bit '1 ' '1 '

Nota: Sync Modo maestro; SPBRG = '0 '. Transmisión continua de dos palabras de 8-bits.

Figura 16-7: transmisión sincrónica (A TRAVÉS TXEN)

RC7/RX/DT pin

RC6/TX/CK pin

Escriturae para

TXREG reg

TXIF poco

TRMT bit

bit0bit1 bit 2 bit 6 bit7

TXEN poco

Page 217: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 185

16.3.2 USART SÍNCRONO MAESTRO DE

RECEPCIÓN

Once modo de sincronización está activada, la

recepción se habilita estableciendo el bit de

habilitación sea SREN (RCSTA <5>), o activar bit

CREN (RCSTA <4>). Los datos se toman en el pin

RC7/RX/DT en el borde descendente del reloj. Si el

bit de habilitación SREN está establecido, sólo una

palabra es recibida. Si enable bit CREN está

establecido, la recepción es continua hasta CREN se

borra. Si ambos bits se establecen, entonces CREN

tiene prioridad.

To configurar una recepción Maestro sincrónico:

1. Inicialice el registro SPBRG para la tasa de

transmisión en baudios apropiada (Sección

16.1).

2. ENABLe el puerto serie síncrono maestro

mediante el establecimiento de SYNC bits,

SPEN y CSRC.

3. Asegúrese de que los bits CREN y SREN son claras.

4. Si las interrupciones se desea, configure permitir RCIE poco.

5. Si 9-bit recepción se desea, establezca el bit RX9.

6. Si la recepción solo se requiere establecer SREN poco.

Para la recepción continua, instale CREN poco.

7. Interrupciónt bandera poco RCIF se

establecerá cuando la recepción sea completa

y una interrupción se genera si el RCIE bit de

habilitación se estableció.

8. Read RCSTA el registro para obtener el

noveno bit (si está habilitado) y determinar si

cualquier error durante la recepción.

9. Leer los datos de 8-bits recibidos por la lectura

RCREG registrarse.

10. Si algún error, borrar el error en la limpieza

CREN poco.

11. Si se utilizan interrupciones, asegúrese de que

el GIE y los bits PEIE en el registro INTCON

(INTCON <07:06>) se establecen.

TABLE 16-9: registros asociados con la recepción de SÍNCRONO MAESTRO

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Virginialue en

POR, BOR

Virginialu

e en

todas las

restaura

ciones

Otros

INTCON GIE /

GIEH PEIE

/

GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

IPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000

RCSTA SPEN RX9 SREN CREN Adden FERR OERR RX9D 0000-00x 0000-00x

RCREG USART Recibir Registro 0000 0000 0000 0000

TXSTA RSEC TX9 TXEN SYNC - BRGH TRMT TX9D 0000 -010 0000 -010

SPBRG Velocidad de transmisión del generador Registrarse 0000 0000 0000 0000 Leyenda:x= Desconocido, - = no implementado, leído como '0 '. Las celdas sombreadas no se utilizan para la Acogida

maestro síncrono.

Noe 1: The PSPIF, PSPIE y los bits están reservados PSPIP en los PIC18F2X2 dispositivos; siempre mantener estos bits clara.

Figura 16-8: RECEPCIÓN SINCRÓNICO (MASTER MODE, SREN)

Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

RC7/RX/DT pin

RC6/TX/CK pin

Write a poco SREN

bit0 bit1 Bit2 bit3 bit4 bit5 bit6 bit7

SREN bit

CREN poco

'0 '

'0'

Page 218: 39564c.en.es

PIC18FXX2

DS39564C-page186 2006 Microchip Technology Inc.

RCIF poco

(Interrumpe)

Leer RXREG

Nota: TIming diagrama muestra el modo Sync Master con poco SREN = '1 'y poco BRGH = '0'.

Page 219: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 187

16.4 USART en modo síncrono esclavo

Synchronous modo esclavo difiere de la modalidad de

maestro en el hecho de que el reloj de

desplazamiento se suministra externamente en el pin

RC6/TX/CK (en lugar de ser suministrada

internamente en el modo maestro). Esto permite que

el dispositivo para transferir y recibir datos, mientras

que en el modo SLEEP. Modo esclavo se introduce

por poco claro CSRC (TXSTA <7>).

16.4.1 ESCLAVO USART SÍNCRONO

TRANSMITIR

The Funcionamiento de la Maestría síncrona y modos

de esclavo son idénticos, salvo en el caso del modo

SLEEP.

Si dos palabras se escriben en el TXREG y luego la

DORMIR instrucción se ejecuta, ocurrirá lo siguiente:

un) La primera palabra de inmediato se trasladarán a la

TSR registrar y transmitir.

b) La segunda palabra permanecerá en TXREG

registro. c) TXIF Flag bit no se establecerá.

d) Cuando la primera palabra se ha desplazado fuera de TSR,

ªe TXREG registro transferirá la segunda

palabra al TSR y TXIF marcador de bits ahora

se establecerá.

e) Si TXIE enable bit está activado, la alarma se

activará el chip de su sueño. Si la interrupción

global está habilitada, el programa saltará al

vector de interrupción.

To configurar una transmisión sincrónica Esclavo:

1. Act vace el puerto serie síncrono esclavo de

ajuste de bits de sincronización y SPEN y poco

claro CSRC.

2. Borrar los bits CREN y SREN.

3. Si las interrupciones se desea, configure permitir TXIE poco.

4. Si 9-bit transmisión se desea, establezca el bit TX9.

5. Habilitar la transmisión poniendo el bit de habilitación

TXEN.

6. Yof 9-bit de transmisión se selecciona, el bit

noveno se debe cargar en TX9D bit.

7. Iniciar la transmisión mediante la carga de datos a la TXREG

register.

8. Yof utilizando alarmas, asegúrese de que los

GIE y PEIE bits en el registro INTCON

(INTCON <07:06>) se establecen.

TABLE 16-10: Registros asociados con la transmisión ESCLAVO SÍNCRONO

Nombre

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Virginialue en

POR, BOR

Virginialu

e en

todas las

restaura

ciones

Otros

INTCON GIE /

GIEH PEIE

/

GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

IPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000

RCSTA SPEN RX9 SREN CREN Adden FERR OERR RX9D 0000-00x 0000-00x

TXREG USART Transmitir Registro 0000 0000 0000 0000

TXSTA CSRC TX9 TXEN SYNC - BRGH TRMT TX9D 0000 -010 0000 -010

SPBRG Velocidad de transmisión del generador Registrarse 0000 0000 0000 0000 Leyenda:x= Desconocido, - = no implementado, leído como '0 '.

Sombrad células no se utilizan para la transmisión sincrónica de esclavos.

Nota 1: Los bits PSPIF, PSPIE y PSPIP se reservará en las PIC18F2X2 dispositivos; siempre mantener estos

bits clara.

Page 220: 39564c.en.es

PIC18FXX2

DS39564C-page188 2006 Microchip Technology Inc.

16.4.2 USART RECEPCIÓN ESCLAVO

SÍNCRONO

The Funcionamiento de los modos sincrónicos

maestro y esclavo es idéntico, salvo en el caso del

modo SLEEP y SREN bits, lo que es un "no me

importa" en modo esclavo.

Yof recibir se habilita estableciendo CREN poco antes

de la DORMIR instruccionesción, a continuación, una

palabra puede ser recibido durante el sueño. El

completamente al recibir la palabra, el registro RSR

transferirá los datos al registro RCREG, y si el bit de

habilitación poco RCIE se establece, la interrupción

generada despertar el chip de su sueño. Si la

interrupción global está habilitada, el programa saltará

al vector de interrupción.

To configurar una recepción Esclavo sincrónico:

1. Act vace el puerto serie síncrono maestro

mediante el establecimiento de los bits SYNC y

SPEN y CSRC claro bit.

2. Si las interrupciones se desea, configure permitir RCIE poco.

3. Si 9-bit recepción se desea, establezca el bit RX9.

4. Para activar la recepción, ajuste permitirá CREN poco.

5. Flag RCIF bit se establece cuando la recepción

es com-pleta. Una interrupción se generará si

RCIE enable bit se estableció.

6. Read RCSTA el registro para obtener el

noveno bit (si está habilitado) y determinar si

cualquier error durante la recepción.

7. Leer los datos de 8-bits recibidos por la lectura

RCREG registrarse.

8. Si unerror y se produjo, borrar el error en la

limpieza CREN poco.

9. Yof utilizando alarmas, asegúrese de que los

GIE y PEIE bits en el registro INTCON

(INTCON <07:06>) se establecen.

TABLE 16-11: registros asociados con la recepción ESCLAVO SÍNCRONO

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Virginialue en

POR, BOR

Virginialu

e en

todas las

restaura

ciones

Otros

INTCON GIE /

GIEH PEIE

/

GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBSI 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000

IPR1 PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000

RCSTA SPEN RX9 SREN CREN Adden FERR OERR RX9D 0000-00x 0000-00x

RCREG USART Recibir Registro 0000 0000 0000 0000

TXSTA CSRC TX9 TXEN SYNC - BRGH TRMT TX9D 0000 -010 0000 -010

SPBRG Velocidad de transmisión del generador Registrarse 0000 0000 0000 0000

Leyenda:x= Desconocido, - = no implementado, leído como '0 '.

Sombrad células no se utilizan para la Acogida síncrono esclavo.

Nota 1: Los bits PSPIF, PSPIE y PSPIP se reservará en las PIC18F2X2 dispositivos; siempre mantener estos

bits clara.

Page 221: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 189

ADCON1

<ADCS2> ADCON0

<ADCS1: ADCS0>

Clock Conversión

0 00 FOSC / 2 0 01 FOSC / 8 0 10 FOSC / 32 0 11 FRC (reloj derivado del oscilador interno A / D RC) 1 00 FOSC / 4 1 01 FOSC / 16 1 10 FOSC / 64 1 11 FRC (reloj derivado del oscilador interno A / D RC)

170.0 COMPATIBLE 10-bits de analógico a digital (A / D) MÓDULO

The analógica a digital (A / D) Módulo convertidor

dispone de cinco entradas para los dispositivos

PIC18F2X2 y ocho para los PIC18F4X2 dispositivos.

Este módulo tiene la ADCON0 y ADCON1

definiciones de registro que son compatibles con el

intermedio Un módulo / D.

The A / D permite la conversión de una señal de

entrada analógica a un 10-bit correspondiente número

digital.

ThUn módulo electrónico / D tiene cuatro registros.

Estos registros son:

• A / D Alto Resultado Register (ADRESH)

• A / D Resultado Baja Register (ADRESL)

• A / D Control Register 0 (ADCON0)

• A / D Registro de Control 1 (ADCON1)

The ADCON0 registro, figura en el registro 17-1,

controla el funcionamiento del A / D del módulo. El

registro ADCON1, que se muestra en Register 17-2,

configura las funciones de los pines del puerto.

REGISTRO 17-1: ADCON0 REGISTRO

R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 U-0 R/W-0

ADCS1 ADCS0 CHS2 CHS1 CHS0 GO/ DONE - ADON bit 7 bit 0 bit 7-6 ADCS1: ADCS0: Conversión A / D Reloj Select bits (bits de ADCON0

audaz)

bi5-3 t CHS2: CHS0: Analog bits de selección de canal

000 = Canal 0 (AN0)

001 = Canal 1 (AN1)

010 = Canal 2, (AN2)

011 = Canal 3, (AN3) 100 = Canal 4, (AN4)

101 = Canal 5, (AN 5)

110 = Canal 6, (AN6) 111 = Canal 7, (AN7)

Nota: The PIC18F2X2 dispositivos no implementar los 8 canales A / D, las selecciones no

se han aplicado son reservados. No seleccione cualquier canal sin aplicarse.

bit 2 GO/ DONE: A /Conversión D Bit de estado

Cuando ADON = 1:

1= Conversión A / D en curso (establecer este bit se inicia la conversión A / D, que se borra

automáticamente por hardware cuando la conversión A / D es completa)

0= A / D conversión no poco

progreso en un No implementado:

Leer como '0 '

bit 0 ADON: A / D En poco

1= A / D del módulo convertidor está encendido

0= A / D del módulo convertidor está apagado y no consume corriente de funcionamiento

Leyenda:

Page 222: 39564c.en.es

PIC18FXX2

DS39564C-page190 2006 Microchip Technology Inc.

R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 223: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 191

REGISTRO 17-2: ADCON1 REGISTRO

R / W-0 R/W-0 U-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0

ADFM ADCS2 - - PCFG3 PCFG2 PCFG1 PCFG0 bit 7 bit 0

bit 7 ADFM:Un formato de Resultado / D Seleccione bit

1= Derecha justificada. La mayoría de los Seis (6) de los bits significativos ADRESH se leen como

'0 '. 0= Izquierda justificada. Por lo menos seis (6) los bits significativos de ADRESL se leen como '0 '.

bit 6 ADCS2: Conversión A / D Reloj Select bits (bits ADCON1 audaz)

ADCON1

<ADCS2> ADCON0

<ADCS1:ADCS0>

Reloj de conversión

0 00 FOSC / 2 0 01 FOSC / 8 0 10 FOSC / 32 0 11 FRC (reloj derivado del oscilador interno A / D RC) 1 00 FOSC / 4 1 01 FOSC / 16 1 10 FOSC / 64 1 11 FRC (reloj derivado del oscilador interno A / D RC)

bi5-4 t No implementado: Leer como '0 '

bit 3-0 PCFG3: PCFG0: A / D Bits de configuración del puerto de control

PCFG

<03:00>

AN7

AN6

AN5

AN4

AN3

AN2

AN1

AN0

VREF+

VREF-

C / R

0000 La

La

La

La

La

La

La

La

VDD VSS 8/0 0001 L

a La

La

La

VREF+ La

La

La

AN3 VSS 7/1 0010 D D D L

a La

La

La

La

VDD VSS 5/0 0011 D D D L

a VREF+ L

a La

La

AN3 VSS 4/1 0100 D D D D L

a D L

a La

VDD VSS 3/0 0101 D D D D VREF+ D L

a La

AN3 VSS 2/1 011x D D D D D D D D - - 0/0 1000 L

a La

La

La

VREF+ VREF- La

La

AN3 AN2 6/2 1001 D D L

a La

La

La

La

La

VDD VSS 6/0 1010 D D L

a La

VREF+ La

La

La

AN3 VSS 5/1 1011 D D L

a La

VREF+ VREF- La

La

AN3 AN2 4/2 1100 D D D L

a VREF+ VREF- L

a La

AN3 AN2 3/2 1101 D D D D VREF+ VREF- L

a La

AN3 AN2 2/2 1110 D D D D D D D L

a VDD VSS 1/0

1111 D D D D VREF+ VREF- D La

AN3 AN2 1/2

A = Entrada analógica D = Digital I / O

C / R = n º de canales de entrada analógica / # de A / D de referencias de tensión

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'Bit 0 '= x se borra Bit = se desconoce

Nota: En cualquier reinicio del dispositivo, los pines del puerto que se multiplexan con

funciones analógicas (ANX) se ven obligados a ser una entrada analógica.

Page 224: 39564c.en.es

PIC18FXX2

DS39564C-page192 2006 Microchip Technology Inc.

The tensión de referencia analógica es seleccionable

por software para cualquiera de tensión de

alimentación positiva y negativa del dispositivo (VDD

y VSS), o el nivel de tensión en la RA3/AN3 / VREF +

pasador y el pasador RA2/AN2/VREF-.

The convertidor A / D tiene una característica única de

ser capaz de operar mientras el dispositivo está en el

modo SLEEP. Para operar en el sueño, el A / D

conversión reloj debe ser derivado del oscilador

interno A / D's RC.

The salida de la muestra y mantenimiento es la

entrada en el convertidor, el cual genera el resultado

a través de aproximaciones sucesivas.

El reinicio del aparato obliga a todos los registros a su

estado RESET. Esto obliga al A / D del módulo que se

desactive y cualquier conversión es abortada.

Each pin del puerto asociado con el convertidor A / D

se puede configurar como una entrada analógica

(RA3 también puede ser una tensión de referencia) o

como digital I / O.

The registros ADRESH y ADRESL contienen el

resultado de la conversión A / D. Cuando el A / D

conversión, el resultado se carga en los registros

ADRESH / ADRESL, el bit GO / DONE (ADCON0

<2>) se borra, y A bit / D bandera de interrupción,

ADIF se establece. El diagrama de bloques del

módulo A / D se muestra en la Figura 17-1.

FIGURA 17-1: DIAGRAMA A / D BLOCK CHS <2:00>

10-bit Convertidor A / D

VAIN

(Tensión de entrada)

PCFG <3:00>

Enfermedad venéreaD

111

110

101

100

011

010

001

000

AN7

*

AN6

*

AN5

*

AN4

AN3

AN2

AN1

AN0

VREF+

Referencia Voltage

VREF-

VSS

* Estos canales sólo se implementan en los PIC18F4X2 dispositivos.

Page 225: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 193

Thvalor de E que se encuentra en los registros

ADRESH / ADRESL no se modifica para un

restablecimiento de encendido. Los registros

ADRESH / ADRESL contendrá datos desconocidos

después de un Power-on Reset.

After el módulo A / D se ha configurado como se

desee, el canal seleccionado debe ser adquirido antes

de la conver-sión se inicia. Los canales de entrada

analógica debe tener sus correspondientes bits de

TRIS seleccionados como una entrada. Para

determinar el tiempo de adquisición, consulte la

Sección 17.1. Después de este tiempo de adquisición

ha transcurrido, el A / D conversión se puede iniciar.

Los siguientes pasos se deben seguir para realizar

una conversión A / D:

1. Configure el A / D del módulo:

• Configurar los pines analógicos, referencia y

tensión de E / S digitales (ADCON1)

• Seleccione A / D del canal de entrada (ADCON0)

• Seleccione un reloj de conversión A / D (ADCON0)

• Encienda el módulo A / D (ADCON0)

2. Configurar una alarma / D (si lo desea):

• Borrar bit ADIF

• Ajuste ADIE poco

• Ajuste GIE poco

• Ajuste PEIE poco

3. Esperar el tiempo de adquisición requerido.

4. Iniciar la conversión:

Bit • Establecer GO / DONE (ADCON0)

5. Espere a que la conversión A / D para completar, mediante:

• Sondeo de la GO / DONE bit que desea borrar

(Interrupcións

desactivado) OR

• Esperar el A / D de interrupción

6. Lea A / D Registros de Resultados (ADRESH / ADRESL);

clADIF oído poco si es necesario.

7. For conversión siguiente, vaya al paso 1 o paso

2 según sea necesario. El tiempo de

conversión A / D por bit se define como TAD.

Un mínimo de espera de 2 TAD se requiere

antes de que comience la siguiente

adquisición.

17.1 A / D Requisitos de Adquisición

Para que el convertidor A / D para satisfacer su

precisión especificada, el condensador de carga de

retención (CHOLD) se debe permitir que cargue por

completo para el nivel de tensión de entrada de canal.

El modelo de entrada analógica se muestra en la

Figura 17-2. La impedancia de la fuente (RS) y la

impedancia de muestreo interruptor interno (RSS)

afectan directamente el tiempo necesario para cargar

el condensador CHOLD. El interruptor de muestreo

(RSS) impedancia varía con la tensión del dispositivo

(VDD). La impedancia de la fuente afecta a la

compensación de tensión en la entrada analógica

(debido a la clavija de corriente de fuga). La

impedancia máxima recomendada para analógico

souECR es de 2,5 kΩ . Después de que el canal de entrada analógica es

Selected (cambiado), esta adquisición deberá hacerse

antes de la conversión se puede iniciar.

Nota: When la conversión se ha iniciado, el

condensador de retención-ción se

desconecta de la patilla de entrada.

FIGURA 17-2: MODELO DE ENTRADA ANALÓGICA

Rs ANx

VAIN CPIN

5 pF

VDD

VT = 0,6 V

VT = 0,6 V

RIC ≤ 1k

I FUGA

± 500 nA

Muestreo

Cambiar

SSRSS

CHOLD = 120

pF VSS

Leyenda: CPIN

VT

I FUGA

SS

RIC

COLD = Entrada de capacitancia

=

Umbral de voltaje

= Corriente de fuga en el pin debido a diversas uniones

= Resistencia de interconexión

= Interruptor de toma de muestras

= Muestra / hold capacitancia (desde

Page 226: 39564c.en.es

PIC18FXX2

DS39564C-page194 2006 Microchip Technology Inc.

DAC) 6V

5V Enfermedad venéreaD 4V

3V

2V

5 6 7 8 9 10 11

Samplción Switch

(kΩ )

Page 227: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 195

To calcular el tiempo de adquisición mínimo, la

Ecuación 17 a 1 mayo usarse. Esta ecuación supone

que 1/2 LSb error se utiliza (1024 pasos para el A /

D). La

1/ 2 LSb error es el error máximo permitido para el A / D

to cumplir con la resolución especificada.

EQUA R 17-1: LaCQUISITION TIEMPO

TLaCQ = Tiempo de estabilización Amplificador + tiempo de retención de carga Capacitor + Coeficiente de temperatura

= TAMP + TC + TCOFF

EQUA R 17-2: UN MÍNIMO / D TIEMPO DE CARGA

VHOLD = (VREF - (VREF/2048)) • (1 - e (-Tc/CHOLD (RIC +

RSS + RS)))

o

TC = - (120 pF) (1 kΩ RSS + + RS) ln (1/2048)

EJEMPLOSe 17-1 muestra el cálculo del tiempo de

adquisición mínimo requerido, Tacq. Este cálculo se

basa en el sistema de aplicación siguientes

suposiciones:

• CHOLD = 120 pF • Rs = 20,5 kΩ • Conversión de error

• VDD

• Temperatura

=

=

1/2 LSb

5V→ Rss k = 7Ω

50°C (máxima de

sistema.) • VHOLD = 0V @ tiempo = 0

EXAMPLIO 17-1: CÁLCULO DEL TIEMPO MÍNIMO REQUERIDO DE ADQUISICIÓN

TACQ = TAMP + TC + TCOFF

Temperatura coeficiente sólo es necesaria para temperaturas>

25°C. Tacq = 2 μ s + TC + [(Temp - 25°C) (0,05 μ s /°C)]

TC =-CHOLD (RIC + RSS + RS) ln (1/2048)

-120 pF (1 kΩ K + 7Ω + 2,5 kΩ ) Ln (0.0004883)

-120 PF (10,5 kΩ ) Ln (0.0004883)

-1,26 μ s (-7.6246)

9,61μ s

TACQ = 2 μ s + 9.61 μ s + [(50°C - 25°C) (0,05 μ s /°C)]

11,61μ s + 1,25 μ s

12,86μ s

Page 228: 39564c.en.es

PIC18FXX2

DS39564C-page196 2006 Microchip Technology Inc.

17.2 Selección del A / D Conversión Reloj

The A tiempo / D conversión por bit es definido como

TAD. La conversión A / D requiere 12 por TAD de 10-

bit conversión. La fuente de la A / reloj de conversión

D es ajustable por software. Las opciones posibles

para siete TAD son:

• 2 TOSC

• 4 TOSC

• 8 TOSC

• 16 TOSC

• 32 TOSC

• 64 TOSC

• Internal A / D del módulo oscilador RC (2-

6 μ s)

For corregir conversiones A / D, el reloj de conversión A / D (TAD) debe seleccionarse para asegurar un

tiempo mínimo de 1,6 TAD μ s.

Table 17-1 muestra las veces TAD resultantes

derivados de las frecuencias de funcionamiento del

dispositivo y la fuente de reloj A / D seleccionado.

17.3 Configuración de pines analógicos de puerto

The ADCON1, TRISA y TRISE registra controlar el

funcionamiento de los pines del puerto A / D. Los

pines del puerto que se desea como entradas

analógicas, deben tener su correspondiente TRIS

conjunto de bits (entrada). Si el bit de TRIS está

desactivada (salida), el nivel de salida digital (VOH o

VOL) se convertirá.

The A / D operación es independiente del estado de la

CHS2: CHS0 bits y los bits de TRIS.

Nota 1: When la lectura del registro del puerto,

todos los pines con-figurado como

canales de entrada analógica leerá

según lo autorizado (un nivel bajo).

Clavijas configuradas como entradas

digitales se cambian una entrada

analógica. Niveles analógica en una

entrada digital configurada no afectará a

la precisión de la conversión.

2:Analolos niveles g en cualquier pin que se

define como una entrada digital

(incluyendo la AN4: AN0 pins) puede

causar que el buffer de entrada para

con-sume actual que está fuera de

especificación del dispositivo.

TABLE 17-1: FRECUENCIAS TAD vs DISPOSITIVO DE FUNCIONAMIENTO

DC Fuente de reloj (TAD) Maximum Frecuencia del dispositivo

Operación ADCS2: ADCS0 PIC18FXX2 PIC18LFXX2

2 TOSC

000 1,25 MHz 666 kHz

4 TOSC

100 2,50 MHz 1,33 MHz

8 TOSC

001 5.00 MHz 2,67 MHz

16 TOSC

101 10,00 MHz 5,33 MHz

32 TOSC

010 20,00 MHz 10,67 MHz

64 TOSC

110 40,00 MHz 21,33 MHz

RC 011 - -

Page 229: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 197

17.4 conversiones A / D

Figure 17-3 muestra el funcionamiento del convertidor

A / D después del bit GO se ha establecido. Borrado

de la GO / DONE poco durante una conversión se

anulará la actual conversión. El A / D par registro de

resultado NO será actualizado con la completó

parcialmente una muestra de conversión A / D. Es

decir, el ADRESH: registros ADRESL seguirá

conteniendo el valor de la última conversión completa

(or el último valor registrado en el ADRESH: ADRESL

regis-tros). Después de la conversión A / D se

cancela, una espera TAD 2 es necesaria antes de la

siguiente adquisición se ha iniciado. Después de esta

espera TAD 2, la adquisición en el canal seleccionado

se inicia automáticamente. El bit GO / DONE

entonces se puede configurar para iniciar la

conversión.

Nota: El bit GO / DONE debería NOTbe

encuentra en la misma instrucción que

activa el A / D.

FIGURA 17-3: Conversión A / D CICLOS TAD

TCY - TAD TAD1 TAD2 TAD3 TAD4 TAD5 TAD6 TAD7 TAD8

TAD9 TAD10 TAD11

b9 b8 b7 b6 b5 b4 b3 b2

Comienza la conversión

b1 b0 b0

Sosteniendo condensador se desconecta de la entrada analógica (típicamente 100 ns)

Set Go poco

Siguiente P4: ADRESH / ADRESL se carga, se restablece el bit GO,

ADIBit F está definida, condensador de mantenimiento está conectado a la entrada analógica.

17.4.1 RESULTADO / D REGISTROS

El ADRESH: ADRESL par de registro es la ubicación

en la que se carga el 10-bit A / D en el resultado de la

finalización de la conversión A / D. Este par de

registro es de 16-bits de ancho. El A / D del módulo

ofrece la flexibilidad de izquierda o derecha justificar

el resultado de 10-bits en el registro de resultado de

16-bit. El A / D

Format poco Select (ADFM) controla esta

justificación. La Figura 17-4 muestra el

funcionamiento de la A / D resultado justi-ficación. Los

bits adicionales se cargan con '0 's. Cuando un A / D

resultado no se sobreponen a estas ubicaciones (A, D

/ desactivar), estos registros pueden utilizarse como

dos de propósito general registros de 8 bits.

FIGURA 17-4: una justificación RESULTADO A / D

10-bit

Resultados

ADFM = 1 ADFM = 0

7

0000 00

2 1 0 7 0 70 7 6 5 0

0000 00

ADRESH ADRESL

10-bit Resultados

ADRESH ADRESL

10-bit Resultados

Rhode Islandght Justificado Izquierda Justified

Page 230: 39564c.en.es

PIC18FXX2

DS39564C-page198 2006 Microchip Technology Inc.

17.5 Uso de la activación CCP2

Lan la conversión A / D puede ser iniciado por el

"gatillo evento especial" del módulo CCP2. Esto

requiere que el CCP2M3: CCP2M0 bits (CCP2CON

<03:00>) ser programado como 1011 und que el

módulo A / D está habilitada (el bit se establece

ADON). Cuando se produce el disparo, el bit GO /

DONE se ajustará, a partir de la conversión A / D, y el

Timer1 (o timer3) contador se pone a cero. Timer1 (o

timer3) se pone a repetir automáticamente el A / D

período de adquisición de software con una

sobrecarga mínima

(mOving ADRESH / ADRESL a la ubicación deseada).

El canal de entrada analógica apropiado debe ser

seleccionado y el mínimo de adquisición hecho antes

el "gatillo evento especial" establece el GO / DONE

bits (se inicia una conversión).

Yof A. / módulo D no está habilitado (ADON está

desactivada), el "gatillo evento especial" será

ignorado por el A / D del módulo, pero aún así se

restablecerá el Timer1 (o timer3) en sentido contrario

TABLE 17-2: RESUMEN DE A / D REGISTROS

Name

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Value en

POR, BOR

Value en

todas las

restaura

ciones

Otros INTCON GIE /

GIEH PEIE

/

GIEL

TMR0IE INT0IE RBIE TMR0IF INT0IF RBIF 0000 000X 0000 000U

PIR1 PSPIF(1) ADIF RCIF TXIF SSPIF CCP1IF TMR2IF TMR1IF 0000 0000 0000 0000

PIE1 PSPIE(1) ADIE RCIE TXIE SSPIE CCP1IE TMR2IE TMR1IE 0000 0000 0000 0000 Derechos de propiedad intelectual1

PSPIP(1) ADIP RCIP TXIP SSPIP CCP1IP TMR2IP TMR1IP 0000 0000 0000 0000 PIR2 - - - EFEI BCLIF LVDIF TMR3IF CCP2IF ---0 0000 ---0 0000 PIE2 - - - EEIE BCLIE LVDIE TMR3IE CCP2IE ---0 0000 ---0 0000 Derechos de propiedad intelectual2

- - - EEIP BCLIP LVDIP TMR3IP CCP2IP ---1 1111 ---1 0000 ADRESH Un resultado / D Registro xxxx xxxx uuuu uuuu ADRESL Un resultado / D Registro xxxx xxxx uuuu uuuu

ADCON0 ADCS1 ADCS0 CHS2 CHS1 CHS0 GO / DONE

- ADON 0000 00-0 0000 00-0 ADCON1 ADFM ADCS2 - - PCFG3 PCFG2 PCFG1 PCFG0 ---- 000 ---- 000 PORTA - RA6 RA5 RA4 RA3 RA2 RA1 RA0 - 0x 0000 - 0u 0000 TRISLa - PORTA datos de registro de dirección - 11 1111 - 11 1111 PORTE - - - - - RE2 RE1 RE0 ---- 000 ---- 000 LATE - - - - - LATE2 LATE1 LATE0 ---- Xxx ---- Uuu TRISE YoB

F OBF IBOV PSPMODE - PORTE Bits de datos de dirección 0000 -111 0000 -111

Leyenda:x = Desconocido, u = Sin cambios, - = no implementado, leído como '0 '. Las casillas sombreadas no se utilizan para la

conversión A / D. Noe 1: The PSPIF, PSPIE y los bits están reservados PSPIP en los PIC18F2X2 dispositivos; siempre mantener estos bits clara.

Page 231: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 199

Vo

lta

je

18.0 DETECCIÓN DE BAJA TENSIÓN

Yon muchas aplicaciones, la capacidad de determinar

si la tensión del dispositivo (VDD) está por debajo de

un nivel de tensión especificado es una característica

deseable. Una ventana de operación para la

aplicación se pueden crear, donde la aplicación de

software puede hacer "tareas domésticas" antes de

las salidas de los dispositivos de la gama de voltaje

de operación válida. Esto se puede hacer usando el

módulo de detección de tensión baja.

This módulo es un conjunto de circuitos programables

mediante software, donde puede ser un dispositivo de

tensión de punto de disparo especificado. Cuando el

voltaje del dispositivo se vuelve menor que el punto

especificado, un indicador de interrupción se

establece. Si la interrupción está habilitada, la

ejecución del programa se bifurcará a la dirección de

vector interrumpen y el software puede entonces

responder a la fuente de interrupción.

The baja tensión circuitos de detección está

completamente bajo el control del software. Esto

permite que la circuitería que se "apaga" por el

software, lo que minimiza el consumo de corriente

para el dispositivo.

Figure 18-1 muestra una curva de aplicación de

voltaje posible (por lo general para las baterías). Con

el tiempo, la tensión del dispositivo disminuye.

Cuando la tensión del dispositivo es igual a tensión

VA, la lógica LVD genera una interrupción. Esto

ocurre a TA tiempo. El software de aplicación tiene

entonces el tiempo, hasta que la tensión del

dispositivo ya no es válida en el rango de operación,

para apagar el sistema. Tensión VB punto es el

mínimo especificación válida tensión de servicio. Esto

ocurre en TB tiempo. La diferencia TB - TA es el

tiempo total para el cierre.

FIGURA 18-1: TÍPICO DE VOLTAJE BAJO SOLICITUD DETECT

VLa

VB

Leyenda:

VA = LVD punto de disparo VB = mínimo de

dispositivo válido tensión de funcionamiento

Time TA TB

Thdiagrama de bloque electrónico para el módulo

LVD se muestra en la Figura 18-2. Un comparador

utiliza un internamente generados tensión de

referencia como punto de ajuste. Cuando la salida de

retardo seleccionada de la tensión del dispositivo

cruza el punto de consigna (es menor que), el bit se

establece LVDIF.

Eacnodo h en el divisor de resistencia representa un

"punto de disparo" voltaje. El "punto de disparo" es el

nivel de voltaje de alimentación de tensión mínima a

la que el dispositivo puede operar antes de que el

módulo LVD afirma una interrupción. Cuando el

supltensión y es igual a la del punto de disparo, el

voltaje extraida de la matriz de resistencia es igual a

la tensión de referencia de 1,2 V interna generada por

el módulo de tensión de referencia. El comparador

genera entonces una señal de interrupción activando

el bit LVDIF. Esta tensión es programable por

software para cualquiera de los 16 valores (véase la

Figura 18-2). El punto de disparo se selecciona

programando el LVDL3: LVDL0 bits (LVDCON

<03:00>).

Page 232: 39564c.en.es

PIC18FXX2

DS39564C-page200 2006 Microchip Technology Inc.

16 a

1 M

UX

16 a

1 M

UX

FIGURA 18-2: DETECCIÓN DE BAJA TENSIÓN (LVD) DIAGRAMA DE BLOQUES

VDD LVDIN LVD Control

Registro

- LVDIF

+

LVDES Internally Generado

Reference Tensión 1,2Típico V

The LVD módulo tiene una característica adicional

que permite al usuario suministrar la tensión de viaje

para el módulo de una fuente externa. Este modo se

activa cuando los bits LVDL3: LVDL0 se establecen

en 1111. En este estado, la entrada de com-rador

está multiplexado de la clavija de entrada externa,

LVDIN (Figura 18-3). Esto da a los usuarios

flexibilidad, ya que permite configurar la alarma de la

baja tensión Detectar a ocurrir a cualquier voltaje en

el rango de operación válido.

FIGURA 18-3: DETECCIÓN DE BAJA TENSIÓN (LVD) con el diagrama de bloque de entrada EXTERNA

VDD

VDD LVD control

Registro

Externally Generado

LVDIN LVDEN

Trasgar Point -

+

LEnfermedad venérea

VxEN

BODEN

ES

BGAP

Page 233: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 201

18.1 Registro de Control

ThVoltaje Bajo E Detectar Registro de control controla

el funcionamiento de la circuitería de detección de

baja tensión.

REGISTRO 18-1: LVDCON REGISTRO

U-0 U-0-0 R R/W-0 R/W-0 R/W-1 R/W-0 R/W-1

- - IRVST LVDEN LVDL3 LVDL2 LVDL1 LVDL0

bit 7 bit 0

bit 7-6 No implementado: Leer

como '0 '

bit 5 IRVST: Internal Referencia bit Voltaje Flag Estable

1= Indica que la lógica de detección de baja tensión generará la bandera de

interrupción en el rango de tensión especificado

0= Indica que la lógica de detección de baja tensión no generará el indicador de

interrupción en el rango de tensión especificado y la interrupción LVD no debe habilitarse

bit 4 LVDEN: Helow Voltaje Detección de alimentación Bit de habilitación

1= Activa LVD, LVD enciende circuito

0= Desactiva LVD, apaga circuito LVD

bit 3-0 LVDL3: LVDL0: Helow Tensión bits de límite de detección

1111 = Entrada analógica externa se utiliza (entrada viene del pin LVDIN)

1110 = 4.5V - 4.77V

1101 = 4.2V - 4.45V 1100 = 4.0V - 4.24V

1011 = 3.8V - 4.03V

1010 = 3.6V - 3.82V 1001 = 3.5V - 3.71V

1000 = 3.3V - 3.50V

0111 = 3.0V - 3.18V 0110 = 2.8V - 2.97V

0101 = 2.7V - 2.86V

0100 = 2.5V - 2.65v 0011 = 2.4V - 2.54V

0010 = 2.2V - 2.33V

0001 = 2.0V - 2.12V 0000 = Reservado

Nota: LVDL3: LVDL0 modos que representen un punto de disparo por debajo de la

tensión de servicio válido del dispositivo no se ponen a prueba.

Leyenda: R = poco legible W = bit Writable U = bit no implementado, leído como '0 '

- N = Valor en POR '1'Bit = se establece

'0'Bit = se borra x Bit = se desconoce

Page 234: 39564c.en.es

PIC18FXX2

DS39564C-page202 2006 Microchip Technology Inc.

18.2 Funcionamiento

Dependiendo de la fuente de alimentación para el

dispositivo de tensión, la tensión normalmente

disminuye de forma relativamente lenta. Esto significa

que el módulo LVD no tiene por qué ser constante-

mente operativo. Para reducir los actuales requisitos,

el circuito de LVD sólo necesita ser activada por

períodos cortos, donde se comprueba el voltaje.

Después de hacer el cheque, el módulo LVD puede

estar desactivado.

Each tiempo que el módulo LVD está activada, el

circuito requiere un cierto tiempo para estabilizarse.

Después de que el circuito se ha estabilizado, todos

los indicadores de estado pueden ser borrados. El

módulo indicará entonces el estado adecuado del

sistema.

Thpasos correos siguientes son necesarios para configurar el LVD

módulo:

1. Writo el valor a la LVDL3: LVDL0 bits (LVDCON

registro), que selecciona el punto deseado

viaje LVD.

2. Asegúrese de que las interrupciones están deshabilitadas LVD (el

LVDIE bit se borra o el bit GIE se borra).

3. Act vace el módulo LVD (el bit LVDEN en el

registro LVDCON).

4. Espere a que el módulo LVD se estabilice (el IRVST

bit para convertirse en juego).

5. Borrar la bandera de interrupción LVD, que

puede tener falsamente convertido establecer

hasta que el módulo LVD se ha estabilizado

(borrar el bit LVDIF).

6. Activar la alarma de LVD (establecer el LVDIE y la

GIE bits).

Figure 18-4 muestra las formas de onda típicas que el LVD

module puede ser utilizado para detectar.

FIGURE 18-4: BAJA TENSIÓN FORMAS DE ONDA DETECT

CaliforniaSE 1: LVDIF no se puede

establecer

VDD

VLVD

LVDIF

Act vace LVD

Internally Generard TIVRST

ReferencEstable e

LVDIF despejado en software

CaliforniaSE 2:

VDD

VLVD

LVDIF

Act vace LVD

Internally Generado ReferencEstable e

TIVRST

LVDIF despejado en software

LVDIF despejado en software, LVDIF queda establecido desde LVD condición todavía existe

Page 235: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 203

18.2.1 Tensión de referencia SET POINT

ThTensión de referencia e interno en el módulo LVD

puede ser usado por otros circuitos interna (la

Programable Brown-out Reset). Si estos circuitos

están desactivados (menor consumo de corriente), el

circuito de tensión de referencia requiere un tiempo

para ser estable antes de una condición de baja

tensión puede detectarse de manera fiable. Este

tiempo es invariante de la velocidad del reloj del

sistema. El tiempo de arranque se especifica en el

parámetro de especificación eléctrica 36. La bandera

de interrupción de tensión baja no se activará hasta

que un voltaje de referencia estable se alcanza.

Consulte la forma de onda de la figura 18-4.

18.2.2 CONSUMO DE CORRIENTE

When el módulo está habilitado, el valor del divisor de

tensión LVD y están habilitados y se consumen

estático actual. El divisor de voltaje se puede tomar

de varios lugares de la matriz de resistencia.

Consumo total de corriente, cuando está activada, se

especifica en el parámetro de especificación eléctrica

# D022B.

18.3 Funcionamiento durante el sueño

When activada, el circuito de LVD sigue funcionando

durante el sueño. Si la tensión del equipo cruza el

punto de disparo, el bit LVDIF se establecerá y el

dispositivo despertar de su sueño. Ejecución

dispositivo continuará a partir de la dirección del

vector de interrupción si las interrupciones se han

habilitado globalmente.

18.4 Efectos de un RESET

El reinicio del aparato obliga a todos los registros de su REINICIAR

stcomió. Esto obliga al módulo LVD que se desactive.

Page 236: 39564c.en.es

PIC18FXX2

DS39564C-page204 2006 Microchip Technology Inc.

NOTAS:

Page 237: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 205

190.0 CARACTERÍSTICAS ESPECIALES DE LA CPU

There varias características destinadas a maximizar el

sistema de seguridad, minimizar los costes mediante

la eliminación de los componentes externos,

proporcionan ahorro de energía Modos de operación y

protección de código de oferta. Estos son:

• Selección de OSC

• RESET

- Power-on Reset (POR)

- Power-up Timer (PWRT)

- Oscilador Start-up Timer (OST)

- Brown-out Reset (BOR)

• Interrumpe

• Watchdog Timer (WDT)

• SLEEP

• Código de Protección

• Lugares de identificación

• In-Circuit Serial Programming

All PIC18FXX2 dispositivos tienen un temporizador de

vigilancia, que está permanentemente activada a

través de los bits de configuración o software

controlados. Se ejecuta fuera de su propio oscilador

RC para mayor fiabilidad. Hay dos temporizadores

que ofrecen necesaria retrasos en la puesta en

marcha. Uno de ellos es el Oscilador Start-up Timer

(OST), destinada a mantener el chip en RESET hasta

que el oscilador de cristal es estable. El otro es el

temporizador de encendido (PWRT), que proporciona

un retardo fijo en el encendido únicamente, diseñada

para mantener la parte en RESET mientras el

suministro de energía se estabiliza. Con estos dos

tim-res on-chip, la mayoría de las aplicaciones no

necesitan circuitos de reset externo.

Modo SLEEP está diseñado para ofrecer una muy

baja corriente al apagar el modo. El usuario puede

despertar de su sueño a través de RESET externo,

contador de tiempo del perro guardián de despertador

o por medio de una interrupción. Varias opciones de

oscilador también están disponibles para permitir que

la parte para adaptarse a la aplicación. La opción de

oscilador RC ahorra el costo del sistema, mientras

que la opción de cristal LP ahorra energía. Un

conjunto de bits de configuración se utiliza para

seleccionar las diversas opciones.

19.1 Bits de configuración

Thbits de correos de configuración se pueden

programar (leer como '0 '), o la izquierda no

programado (que se lee '1'), para seleccionar diversas

configuraciones de dispositivo. Estos bits se asignan

a partir de 300000h de localización de memoria.

Thelectrónico de usuario notará que 300000h

dirección está más allá del espacio de usuario de la

memoria de programa. De hecho, pertenece al

espacio de memoria de configuración (300000h -

3FFFFFh), que sólo se puede acceder utilizando la

Tabla Lee y Escribe tabla.

Programación de los registros de configuración se

realiza de una manera similar a la programación de la

memoria flash (véase la Sección 5.5.1). La única

diferencia es las Configuraciones de registros se

escriben en un byte a la vez. La secuencia de eventos

para registros de configuración de programación es la

siguiente:

1. Load puntero cuadro con la dirección del

registro de configuración está escribiendo.

2. Escribe un byte único mediante el TBLWT

instrucción.

3. Set EEPGD para apuntar a la memoria del

programa, establezca el bit CFGS para

acceder a registros de configuración y ajuste

WREN para permitir byte escribe.

4. Deshabilitar las interrupciones.

5. Escribir 55h a EECON2.

6. Escribir AAh a EECON2.

7. Establezca el bit WR. Esto comenzará el ciclo de escritura.

8. CPU se detendrá durante la duración de la escritura (aproximadamente

2 ms con temporizador interno).

9. Ejecutar un NOP.

10. Vuelva a habilitar las interrupciones.

Page 238: 39564c.en.es

PIC18FXX2

DS39564C-page206 2006 Microchip Technology Inc.

- - OSCSEN - - FOSC2 FOSC1 FOSC0

TABLE 19-1: BITS configuración y el ID de dispositivo

Nombre de archivo

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

Default / Valor

no programada

300001h CONFIG1H - - OSCSEN - - FOSC2 FOSC1 FOSC0 - 1- 111 300002h CONFIG2L - - - - BORV1 BORV0 Boren PWRTEN ---- 1111 300003h CONFIG2H - - - - WDTPS2 WDTPS1 WDTPS0 WDTEN ---- 1111 300005h CONFIG3H - - - - - - - CCP2MX ------- 1 300006h CONFIG4L DebuG - - - - LVP - STVREN 1 -- 1-1 300008h CONFIG5L - - - - CP3 CP2 CP1 CP0 ---- 1111 300009h CONFIG5H CPD CPB - - - - - - 11 ------ 30000Ah CONFIG6L - - - - WRT3 WRT2 WRT1 WRT0 ---- 1111 30000Bh CONFIG6H WRTD WRTub

erculosis

WRTC - - - - - 111----- 30000Ch CONFIG7L - - - - EBTR3 EBTR2 EBTR1 EBTR0 ---- 1111 30000Dh CONFIG7H - EBTRB - - - - - - -1 ------ 3FFFFEh Devid1 DEV2 DEV1 DEV0 REV4 REV3 REV2 REV1 Rev0 (1) 3FFFFFh Devid2 DEV10 DEV9 Dev8 DEV7 DEV6 DEV5 DEV4 DEV3 0000 0100 Leyenda:x = Desconocido, u = Sin cambios, - = no implementado, q = Valor depende de la condición.

Sombrad células no están implementadas, leído como '0 '.

NoTE 1: See Regístrese para 19-12 DEVID1 valores.

REGISTRO 19-1: CONFIGURACIÓN DEL REGISTRO 1 HIGH (CONFIG1H: byte de dirección 300001h)

U-0 U-0-0 R/P-1 U U-0 R/P-1 R/P-1 R/P-1

bit 7-6

bit 7

No implementado: Leer como '0 '

bit 0

bit 5 OSCSEN: Sistema de oscilador de reloj conmutador Enable bit 1Oscilador = Sistema de reloj conmutador opción está deshabilitada (oscilador

principal fuente) 0Oscilador = Sistema de reloj opción de interruptor está activado (conmutación

oscilador está habilitado)

bit 4-3 No implementado: Leer como '0 ' bit 2-0 FOSC2: FOSC0: Bits de selección del oscilador 111 = RC oscilador w / OSC2 configurado como RA6

110 = HS oscilador con frecuencia PLL activado / Reloj = (4 x FOSC)

101 = CE oscilador w / OSC2 configurado como RA6

100 = CE oscilador w / OSC2 configurado como divisor por-4 reloj de salida 011 = RC oscilador

010 = HS oscilador

001 = Oscilador XT 000 LP = oscilador

Leyenda: R = poco legible P = bit programable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

Page 239: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 207

bit 7-4

bit 7

No implementado: Leer como '0 '

bit 3-2 BORV1: BORV0: Brown-restablecer los bits de

tensión 11 = VBOR ajustado a 2,5 V

10 = VBOR ajustado a 2.7V

01 = VBOR ajustado a 4,2 V

00 = VBOR ajustado a 4,5 V bit 1 Boren: Brown Salida Restablecer Activar bit

1= Brown-out Cambiar habilitado

0= Brown-out Cambiar desactivado bit 0 PWRTEN: Power-up Timer Enable bit

1= PWRT desactivado

0= Enabled PWRT

Leyenda:

R = poco legible P = bit programable U = bit no implementado, leído como '0 '

REGISTRO 19-2: Registro de Configuración 2 BAJO (CONFIG2L: byte de dirección 300002h)

U-0-0 U U U-0-0 R/P-1 R/P-1 R/P-1 R/P-1

- - - - BORV1 BORV0 Boren PWRTEN

bit 0

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

REGISTRO 19-3: Registro de Configuración 2 HIGH (CONFIG2H: byte de dirección 300003h)

U-0-0 U U U-0-0 R/P-1 R/P-1 R/P-1 R/P-1

- - - - WDTPS2 WDTPS1 WDTPS0 WDTES

bit 7 bit 0

bit 7-4 No implementado: Leer como '0 '

bit 3-1 WDTPS2: WDTPS0: Watchdog Temporizador Postscale bits de selección

111 = 1:128

110 = 1:64

101 = 1:32 100 = 1:16

011 = 1:8

010 = 1:4 001 = 1:2

000 = 1:1

bit 0 WDTES: WATCTimer hdog Bit de habilitación

1WDT = habilitado

0WDT = desactivado (control se coloca en el bit SWDTEN)

Leyenda:

R = poco legible P = bit programable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

Page 240: 39564c.en.es

PIC18FXX2

DS39564C-page208 2006 Microchip Technology Inc.

REGISTRO 19-4: CONFIGURACIÓN DE REGISTRO 3 HIGH (CONFIG3H: byte de dirección 300005h)

U-0-0 U U U-0-0-0 U U U-0-0 R/P-1

- - - - - - - CCP2MX

bit 7 bit 0

bit 7-1 No implementado: Leer como '0 '

bit 0 CCP2MX: CCP2 poco Mux

1= CCP2 de entrada / salida se multiplexa con RC1

0= CCP2 de entrada / salida se multiplexa con RB3

Leyenda:

R = poco legible P = bit programable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

REGISTRO 19-5: CONFIGURACIÓN DE REGISTRO 4 BAJO (CONFIG4L: byte de dirección 300006h)

R/P-1 U-0-0 U U U-0-0-0 R/P-1 U R/P-1

BKBUG - - - - LVP - STVREN

bit 7 bit 0

bit 7 DEBUG: BackgActivar bit todo el depurador

1Antecedentes depurador = desactivada. RB6 y RB7 se configura como propósito general de E

/ S pins. 0= Fondo depurador habilitado. RB6 y RB7 se dedican a la depuración en circuito.

bi6-3 t No implementado: Leer como '0 '

bit 2 LVP: Helow Tensión ICSP Bit de habilitación

1ICSP = Baja Tensión habilitado

0= ICSP baja tensión deshabilitado

bit 1 No implementado: Leer como '0 '

bit 0 STVREN: Stack completo / subdesbordamiento Restablecer Activar bit

1= Stack completo / subdesbordamiento causará REINICIO

0= Stack completo / subdesbordamiento no causará REINICIO

Leyenda:

R = C = poco legible poco borrable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

Page 241: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 209

REGISTRO 19-6: Registro de Configuración 5 BAJO (CONFIG5L: byte de dirección 300008h)

U-0-0 U U U-0-0 R/C-1 R/C-1 R/C-1 R/C-1

- - - - CP3(1) CP2(1) CP1 CP0

bit 7 bit 0

bit 7-4 No implementado: Leer como '0 '

bit 3 CP3: Código de Protección poco(1)

1Bloque 3 = no (006000-007FFFh) protegido con el código

0= Bloque 3 (006000-007FFFh) protegido con el código

bit 2 CP2: Código de Protección poco(1)

1Bloque 2 = no (004000-005FFFh) protegido con el código

0= Bloque 2 (004000-005FFFh) protegido con el código

bit 1 CP1: Código de Protección poco

1Bloque 1 = no (002000-003FFFh) protegido con el código

0= Bloque 1 (002000-003FFFh) protegido con el código

bit 0 CP0: Código de Protección poco

1Bloque 0 = no (000200-001FFFh) protegido con el código

0= Bloque 0 (000200-001FFFh) protegido con el código

Nota 1: Sin aplicarse en PIC18FX42 dispositivos, mantener este bit.

Leyenda:

R = C = poco legible poco borrable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

REGISTRO 19-7: CONFIGURACIÓN DE REGISTRO 5 HIGH (CONFIG5H: byte de dirección 300009h)

R/C-1 R/C-1 U-0 U-0 U-0 U-0 U-0 U-0

CPD CPB - - - - - -

bit 7 bit 0

bit 7 CPD: Código de datos EEPROM Protección poco

1= Data EEPROM no protegido con el código

0= Data EEPROM código protegido

bit 6 CPB: Arranque Bloque de código poco Protección

1= Bloqueo de arranque (000000-0001FFh) no protegido con el código

0= Bloqueo de arranque (000000-0001FFh) protegido con el código

bit 5-0 No implementado: Leer como '0 '

Leyenda:

R = C = poco legible poco borrable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

Page 242: 39564c.en.es

PIC18FXX2

DS39564C-page210 2006 Microchip Technology Inc.

REGISTRO 19-8: CONFIGURACIÓN DE REGISTRO 6 BAJO (CONFIG6L: BYTE DIRECCIÓN 30000Ah)

U-0-0 U U U-0-0 R/C-1 R/C-1 R/C-1 R/C-1

- - - - WRT3(1) WRT2(1) WRT1 WRT0

bit 7 bit 0

bit 7-4 No implementado: Leer como '0 '

bit 3 WRT3: Writo poco Protección(1)

1Block = 3 (006000-007FFFh) no protegido contra escritura

0Block = 3 (006000-007FFFh) protegido contra escritura

bit 2 WRT2: Writo poco Protección(1)

1= Bloque 2 (004000-005FFFh) no protegido contra escritura

0= Bloque 2 (004000-005FFFh) protegido contra escritura

bit 1 WRT1: Writo poco Protección

1= Bloque 1 (002000-003FFFh) no protegido contra escritura

0= Bloque 1 (002000-003FFFh) protegido contra escritura

bit 0 WRT0: Writo poco Protección

1= Bloque 0 (000200h-001FFFh) no protegido contra escritura

0= Bloque 0 (000200h-001FFFh) protegido contra escritura

Nota 1: Sin aplicarse en PIC18FX42 dispositivos, mantener este bit.

Leyenda:

R = C = poco legible poco borrable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

REGISTRO 19-9: CONFIGURACIÓN DE REGISTRO 6 HIGH (CONFIG6H: DIRECCIÓN BYTE 30000Bh)

R/C-1 R/C-1 C-1 U U-0-0-0 U U U-0-0

WRTD WRTB WRTC - - - - -

bit 7 bit 0

bit 7 WRTD: Datos EEPROM Escribir poco Protección

1= Data EEPROM no protegido contra escritura

0= Data EEPROM protegida contra escritura

bit 6 WRTB: Abucheot Bloquear Escribir poco Protección

1= Bloqueo de arranque (000000-0001FFh) no protegido contra escritura

0Block = Boot (000000-0001FFh) protegido contra escritura

bit 5 WRTC: Registro de Configuración Escribir poco Protección

1= Registros de configuración (300000-3000FFh) no protegido contra escritura

0= Registros de configuración (300000-3000FFh) protegido contra escritura

Nota: Thibit s es de sólo lectura, y no se puede cambiar en el

modo de usuario. bit 4-0 No implementado: Leer como '0 '

Leyenda:

R = C = poco legible poco borrable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

Page 243: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 211

REGISTRO 19-10: CONFIGURACIÓN DE REGISTRO 7 BAJO (CONFIG7L: BYTE DIRECCIÓN 30000Ch)

U-0-0 U U U-0-0 R/C-1 R/C-1 R/C-1 R/C-1

- - - - EBTR3(1) EBTR2(1) EBTR1 EBTR0

bit 7 bit 0

bit 7-4 No implementado: Leer como '0 '

bit 3 EBTR3: Table Lea poco Protección(1)

1Block = 3 (006000-007FFFh) no protegido de la Tabla Lee ejecutado en otros bloques

0Block = 3 (006000-007FFFh), protegida de la tabla Lee ejecutado en otros bloques

bit 2 EBTR2: Table Lea poco Protección(1)

1Block = 2 (004000-005FFFh) no protegido de la Tabla Lee ejecutado en otros bloques

0Block = 2 (004000-005FFFh), protegida de la tabla Lee ejecutado en otros bloques

bit 1 EBTR1: Table Lea poco Protección

1Bloquear = 1 (002000-003FFFh) no protegido de la Tabla Lee ejecutado en otros bloques

0= Bloque 1 (002000-003FFFh), protegida de la tabla Lee ejecutado en otros bloques

bit 0 EBTR0: Table Lea poco Protección

1= Bloque 0 (000200h-001FFFh) no protegido de la Tabla Lee ejecutado en otros bloques

0= Bloque 0 (000200h-001FFFh), protegida de la tabla Lee ejecutado en otros bloques

Nota 1: Sin aplicarse en PIC18FX42 dispositivos, mantener este bit.

Leyenda:

R = C = poco legible poco borrable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

REGISTRO 19-11: CONFIGURACIÓN DE REGISTRO DE ALTA 7 (CONFIG7H: DIRECCIÓN BYTE 30000Dh)

U-0-0 R/C-1 U U U-0-0-0 U U U-0-0

- EBTRB - - - - - -

bit 7 bit 0

bit 7 No implementado: Leer como '0 '

bit 6 EBTRB: AbucheoTabla t bloques de lectura poco Protección

1= Bloqueo de arranque (000000-0001FFh) no protegido de la Tabla Lee ejecutado en otros

bloques 0Block = Boot (000000-0001FFh), protegida de la tabla Lee ejecutado en otros bloques

bit 5-0 No implementado: Leer como '0 '

Leyenda:

R = C = poco legible poco borrable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

Page 244: 39564c.en.es

PIC18FXX2

DS39564C-page212 2006 Microchip Technology Inc.

REGISTRO 19-12: ID DISPOSITIVO DE REGISTRO 1 PIC18FXX2 (DEVID1: DIRECCIÓN BYTE 3FFFFEh)

RRRRRRRR

DEV2 DEV1 DEV0 REV4 REV3 REV2 REV1 Rev0

bit 7 bit 0

bit 7-5 DEV2: DEV0: Los bits de ID

de dispositivo

000 = PIC18F252

001 = PIC18F452 100 = PIC18F242

101 = PIC18F442

bi4-0 t REV4: rev0: Bits de ID de

revisión

Theslos bits E se usan para indicar la revisión dispositivo.

Leyenda:

R = poco legible P = bit programable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

REGISTRO 19-13: ID DISPOSITIVO PARA REGISTRAR 2 PIC18FXX2 (DEVID2: DIRECCIÓN BYTE 3FFFFFh)

RRRRRRRR

DEV10 Dev9 Dev8 DEV7 DEV6 DEV5 DEV4 DEV3

bit 7 bit 0

bit 7-0 DEV10: DEV3: Los bits de ID de dispositivo

Theslos bits electrónicos se utilizan con el DEV2: DEV0 bits en el ID de dispositivo

Registro 1 para identificar el número de pieza.

Leyenda:

R = poco legible P = bit programable U = bit no implementado, leído como '0 '

- N = Valor cuando el dispositivo está programada u = Sin cambios de estado programado

Page 245: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 213

19.2 Watchdog Timer (WDT)

ThTemporizador electrónico Watchdog es un

funcionamiento libre en el chip oscilador RC, que no

requiere ningún componente externo. Este oscilador

RC es independiente del oscilador RC del pasador

OSC1/CLKI. Esto significa que el WDT se ejecutará,

incluso si el reloj de la OSC1/CLKI y OSC2/CLKO /

RA6 clavijas del dispositivo se ha detenido, por

ejemplo, por la ejecución de un DORMIR instrucción.

Durante el funcionamiento normal, un WDT tiempo de

espera genera un RESET del dispositivo (reinicio

Watchdog Timer). Si el dispositivo está en modo

SLEEP, un WDT tiempo de espera hace que el

dispositivo despertar y continuar con la operación

normal (Watch-dog despertador). El bit TO en el

registro RCON se borrará con un WDT tiempo de

espera.

ThTemporizador Watchdog electrónico se activa /

desactiva con un bit de configuración del dispositivo.

Si el WDT se activa, el software eje-cución no puede

desactivar esta función. Cuando el bit de

configuración WDTEN está desactivada, el bit

SWDTEN activa / desactiva el funcionamiento del

WDT.

The WDT valores de tiempo de período se pueden

encontrar en las características eléctricas (Sección

22.0) bajo parámetro D031. Los valores para el

postscaler WDT pueden asignarse por medio de los

bits de configuración.

Nota: TheCLRWDT undDORMIR instrucciones

borrar el WDT y el postscaler, si se asigna

a la WDT y evitar que se agote el tiempo

y la generación de una condición de

reinicialización del dispositivo.

Nota: When un CLRWDT INSTRUCCIONESn es

ejecutado y el postscaler se asigna al

WDT, el recuento de postscaler se

borrará, pero la asignación postscaler no

se cambia.

19.2.1 REGISTRO DE CONTROL

Registrar 19-14 muestra la WDTCON registrarse.

Este es un registro de lectura y escritura, que

contiene un bit de control que permite que el software

para anular el WDT bit de habilitación de la

configuración, sólo cuando el bit de configuración ha

desactivado el WDT.

REGISTRO 19-14: WDTCON REGISTRO

U-0-0 U U U-0-0-0 U U U-0-0 R/W-0

- - - - - - - SWDTEN

bit 7 bit 0

bit 7-1 No implementado: Lee como '0 '

bit 0 SWDTEN: Temporizador Watchdog Software Controlled Bit de habilitación

1Timer = Watchdog está en

0Temporizador Watchdog = se apaga si el bit de configuración WDTEN en el

registro de configuración = '0 '

Leyenda:

R = W = poco legible poco Writable

U = bit no implementado, leído como '0 '- n = Valor en POR

Page 246: 39564c.en.es

PIC18FXX2

DS39564C-page214 2006 Microchip Technology Inc.

19,2.2 WDT postscaler

The WDT tiene un postscaler que se puede extender

el período de reposición WDT. El postscaler se

selecciona en el momento de la programación del

dispositivo, por el valor escrito en el registro de

configuración CONFIG2H.

FIGURA 19-1: DIAGRAMA DE BLOQUES temporizador de vigilancia

WDT Temporizador Postscaler

8

8 - a - 1 MUX WDTPS2: WDTPS0

WDTEN configuration bit

SWDTEN poco

Note: WDPS2: WDPS0 son bits en el registro CONFIG2H.

WDT Tiempo de espera

TABLE 19-2: RESUMEN DE LOS REGISTROS temporizador de vigilancia

Nombre Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

CONFIG2H - - - - WDTPS2 WDTPS2 WDTPS0 WDTEN

RCON IPEN - - Rhode Island

A PD POR BOR

WDTCON - - - - - - - SWDTEN

Leyenda: Las celdas sombreadas no son utilizados por el temporizador Watchdog.

Page 247: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 215

19.3 Power-down Mode (SLEEP)

Power-down modo se introduce mediante la ejecución de un DORMIR

instrucción.

Yof activado, el temporizador Watchdog se eliminará,

pero sigue funcionando, el bit PD (RCON <3>) está

desactivada, el A (RCON <4>) bit está establecido, y

el conductor del oscilador está desactivado. Los

puertos de E / S de mantener el estado que tenían

antes de la SLEEP instrucción fue ejecutado (llevando

alta, baja o alta impedancia).

Por más bajo consumo de corriente en este modo,

colocar todos los pines de E / S en cualquiera de VDD

o VSS, asegúrese de no externo cir-cuitry está

llegando corriente del pin I / O, el apagado del A / D y

desactivar los relojes externos. Tire todos los pines de

E / S que son de alta impedancia de entrada, alto o

bajo externamente, para evitar corrientes de

conmutación provocadas por entradas flotantes. La

entrada T0CKI también debe estar a VDD o VSS para

el más bajo consumo de corriente. La contribución de

la en-viruta pull-ups en PORTB debe ser considerado.

The MCLR pin debe estar en un nivel lógico alto (VIHMC).

19.3.1 DESPERTAR DEL SUEÑO

El dispositivo puede despertar de su sueño a través

de uno de los siguientes eventos:

1. Entrada externa de RESET en el pin MCLR.

2. Watchdog Timer Wake-up (WDT si estuviera

activada).

3. Interrupción del pin INT, el cambio RB puerto o un

Interrupción periférica.

Thsiguiente e interrupciones periféricas puede

despertar al dispositivo de SLEEP:

1. PSP leer ni escribir.

2. TMR1 interrupción. Timer1 debe estar

funcionando como un contador asíncrono.

3. TMR3 interrupción. Timer3 debe funcionar como

un contador asíncrono.

4. CCP Captura de interrupción modo.

5. Desencadenador de eventos especiales (Timer1

en el modo asíncrono utilizando un reloj

externo).

6. MSSP (START / STOP) bit detectar interrupción.

7. MSSP transmitir o recibir en modo esclavo

(SPI/I2C).

8. USART RX o TX (modo síncrono esclavo).

9. Conversión A / D (cuando una fuente de reloj / D es RC).

10. EEPROM escritura completa operación.

11. LVD interrupción.

Otros periféricos no pueden generar interrupciones,

ya que durante el sueño, no había relojes en el chip

están presentes.

Page 248: 39564c.en.es

PIC18FXX2

DS39564C-page216 2006 Microchip Technology Inc.

ExCambiar MCLR externo provocará un reinicio del

dispositivo. Todos los demás eventos se consideran

una continuación de la ejecución del programa y

causará un "wake-up". El A y los bits de la DP en el

registro RCON se puede utilizar para determinar la

causa de la reposición del dispositivo. El bit PD, que

se establece en el encendido, se borra cuando el

sueño se invoca. El bit A está desactivada, si el WDT

tiempo de espera se produjo (y causó wake-up).

When el DORMIR instruccionesción se está

ejecutando la siguiente instrucción (PC + 2) es pre-

fetched. Para el dispositivo de despertar a través de

un evento de interrupción, el bit de habilitación de

interrupción correspondiente se debe establecer

(habilitado). Wake-up es, independientemente del

estado del bit GIE. Si el bit GIE está claro

(desactivado), el dispositivo continúa la ejecución en

la instrucción después de la DORMIR instrucción. Si el

bit GIE se establece (activado), el dispositivo ejecuta

la instrucción después de la DORMIR

INSTRUCCIONESn, y luego se ramifica a la dirección

de interrupción. En los casos en que la ejecución de la

siguiente instrucción DORMIR yos no es deseable, el

usuario debe tener un NOP unespués de la DORMIR

instrucción.

19.3.2 WAKE-UP uso de las interrupciones

When interrupciones globales están deshabilitadas

(GIE se borra) y cualquier otra fuente de interrupción

tiene tanto su interrupción bit de habilitación de

interrupción bandera y un conjunto de bits, uno de lo

siguiente ocurrirá:

• Si una condición de alarma (bit de bandera de

interrupción y interrumpen bits de habilitación se establecen) se produce antes ªe ejecu-ción de un

DORMIR instrucción, la DORMIR instruction

completará como NOP. Por lo tanto, el WDT y

postscaler WDT no se borrará el bit TO no se

fijan y los bits PD no se borrará.

• Si la condición de interrupción se produce durante o después de ªe ejecución de un

DORMIR instrucción, el dispositivo de inmediato

despertar del sueño. La DORMIR instrucción se

ejecuta por completo antes de que el

despertador. Por lo tanto, el WDT y postscaler

WDT se borrará el bit A se establecerá el bit PD

se borrará.

Evan si los bits de la bandera fueron revisados antes

de ejecutar un DORMIR instruccionesción, puede ser

posible para los bits de indicador para ser ajustado antes de la SLEEP INSTRUCCIONESn completa.

Para determinar si un DORMIR instruction ejecutado,

comprobar el bit PD. Si el bit PD se establece, el DORMIR instrucción fue ejecutado como una NOP.

To Asegurar que el WDT se borra un CLRWDT

instruction se debe ejecutar antes de una SLEEP

instruction.

Page 249: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 217

Inst (PC) = SLEEP

Inst (PC + 2) Enst (PC + 4)

Inst (0008h) Inst (000Ah)

Inst (PC - 1) SLEEP Enst (PC + 2) Ciclo Maniquí Ciclo Maniquí Inst (0008h)

FIGURA 19-2: DESPERTAR DEL SUEÑO A TRAVÉS DE INTERRUPCIÓN (1,2)

OSC1

CLKO(4)

Pin INT

Bandera INTF (INTCON <1>)

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

TOST

(2)

Interrupciónt Latencia(3)

GIEH poco (INTCON <7>)

YoNSTRUCCIÓN FLOW

Processor en

DORMIR

En

PCtrucción Fetched

Instrucción Executed

Ordenador personal PC 2 PC +4

PC +4 PC + 4 0008h 000Ah

Nota 1: XT, HS o el modo LP Oscilador asumido.

2:GIE = '1 'se supone. En este caso, después de despertar, el procesador salta a la rutina de interrupción. Si GIE = '0 ', la ejecución continuará en línea. 3:TOST = 1024 TOSC (dibujo no está a escala). Este retraso no va a ocurrir por RC Osc y los modos de la CE. 4:CLKO no está disponible en estos modos de OSC, pero se muestra aquí por referencia de temporización.

Page 250: 39564c.en.es

PIC18FXX2

DS39564C-page218 2006 Microchip Technology Inc.

Abucheot Block

Boot Block

Bloque

0

Bloque

0

Bloque

1

Bloque

1

No implementado

Lea los 0

Bloque

2

No implementado

Lea los 0

Bloque

3

No

implementado

Lea los 0

No

implementado

Lea los 0

19.4 Programa de Verificación y

BacalaoProtección e

Thestructura e global de la protección de código en

los dispositivos PIC18 FLASH difiere

significativamente de otros dispositivos PICmicro.

La memoria de programa de usuario está dividida en

cinco bloques. Uno de ellos es un bloque de arranque

de 512 bytes. El restante-der de la memoria se divide

en cuatro bloques en los límites binarios.

Each de los cinco bloques tiene tres bits de protección

de código asociados con ellos. Ellos son:

• Código Protect bit (CPN)

• Protección contra escritura de bits (WRTn)

• Tabla externa en bloque de lectura de bits (EBTRn)

Figure 19-3 muestra la organización de la memoria de

programa 16 - y los dispositivos 32 kilobytes, y el bit

de protección de código específico asociado con cada

bloque. Las ubicaciones reales de los bits se resumen

en la Tabla 19-3.

FIGURA 19-3: MEMORIA CÓDIGO PROGRAMA PROHIBIDO PARA PIC18F2XX/4XX

MTAMAÑO EMORY / DEVICE

Bloque de código de protección

16 Kbytes

(PIC18FX42)

32 Kbytes

(PIC18FX52)

Dirección

Alcance

000000h

0001FFh

000200h

001FFFh

002000h

003FFFh

004000h

005FFFh

006000h

007FFFh

008000h

Controlado por:

CPB, WRTB, EBTRB

CP0, WRT0, EBTR0

CP1, WRT1, EBTR1

CP2, WRT2, EBTR2

CP3, WRT3, EBTR3

(Espacio de memoria no implementado)

1FFFFFh

TABLE 19-3: RESUMEN DE PROTECCIÓN CÓDIGO DE REGISTROS

FNombre ile Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

300008h CONFIG5L - - - - CP3 CP2 CP1 CP0

300009h CONFIG5H CPD CPB - - - - - -

30000Ah CONFIG6L - - - - WRT3 WRT2 WRT1 WRT0

30000Bh CONFIG6H WRTD WRTB WRTC - - - - -

30000Ch. CONFIG7L - - - - EBTR3 EBTR2 EBTR1 EBTR0

Page 251: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 219

30000Dh CONFIG7H - EBTRB - - - - - -

Leyenda: Las celdas sombreadas no están implementadas.

Page 252: 39564c.en.es

PIC18FXX2

DS39564C-page220 2006 Microchip Technology Inc.

19.4.1 PROGRAMA DE

MEMORIA CÓDIGO

DE PROTECCIÓN

La memoria de usuario puede ser leído o escrito

desde cualquier lugar utilizando las operaciones Leer

de la tabla y el cuadro Escriba instrucciones. El ID de

dispositivo se pueden leer con el cuadro Lee. Los

registros de configuración pueden ser leídos y

escritos con el leer la tabla e instrucciones tabla de

escritura.

En el modo Manual, los bits PCN no tienen efecto

directo. Bits de CPN inhibir externo lee y escribe. Un

bloque de memoria de usuario puede ser protegida de

las escrituras de tabla si el bit de configuración es

WRTn '0'. La tabla de los bits de control EBTRn Lee.

Para un bloque de memoria de usuario con el bit

EBTRn ajustado a '0», una instrucción de leer la

tabla que se ejecuta desde dentro de ese bloque se le

permite leer. Una instrucción de leer la tabla que se

ejecuta desde una ubicación

outside de bloque que no se le permite leer, y dará

lugar a la lectura de '0 's. Figuras 19-4 19-6 ilustrar a

través de Escritura de la tabla y en la tabla Lee

protección.

Nota: Bits de código de protección sólo se

puede escribir en un '0 'en un '1' del

Estado. No es posible escribir un 1 a un

bit en el '0 'estado. Código de pro-tección

bits sólo se pone a '1 'por un borrado

completo de chips o la función de borrado

de bloques. El borrado completo de chips

y las funciones de borrado en bloque sólo

puede iniciarse a través ICSP o un

programador externo.

Figura 19-4: CUADRO WRITE (WRTn) No permitido

Registro Memoria del Programa Valores Opciones de configuración de bits

000000h

0001FFh 000200h

WRTB, EBTRB = 11

TBLPTR 000FFF =

PC = 001FFE

PC = 004FFE

TBLWT *

TBLWT *

001FFFh 002000h

003FFFh 004000h

005FFFh 006000h 007FFFh

WRT0, EBTR0 = 01

WRT1, EBTR1 = 11

WRT2, EBTR2 = 11

WRT3, EBTR3 = 11

Resultados: AlTabla l Escribe inhabilitado para Blockn cuando WRTn = '0 '.

Page 253: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 221

Figura 19-5: EXTERNO bloque de tabla READ (EBTRn) No permitido

Registrar los valores del programa de configuración de memoria Configuración de bits

TBLPTR = 000FFF

000000h

0001FFh 000200h

WRTB, EBTRB = 11

WRT0, EBTR0 = 10

PC = 002FFE

TBLRD *

001FFFh

002000h

003FFFh 004000h

005FFFh 006000h

007FFFh

WRT1, EBTR1 = 11

WRT2, EBTR2 = 11

WRT3, EBTR3 = 11

Resultados: AlTabla l Lecturas de bloques externos a Blockn se desactivan cuando EBTRn = '0 '.

TABLAT registro devuelve un valor de "0".

FIGURA 19-6: EXTERNO bloque de tabla READ (EBTRn) permitió

Register los valores del programa de configuración de memoria Configuración de bits

000000h

TBLPTR = 000FFF

0001FFh

000200h

WRTB, EBTRB = 11

WRT0, EBTR0 = 10

PC = 001FFE TBLRD * 001FFFh 002000h

003FFFh 004000h

005FFFh 006000h 007FFFh

WRT1, EBTR1 = 11

WRT2, EBTR2 = 11

WREBTR3 T3, = 11

Resultados: TablLee e permitidas dentro Blockn, aun cuando EBTRBn = '0 '.

TABLAT registro devuelve el valor de los datos en la ubicación TBLPTR.

Page 254: 39564c.en.es

PIC18FXX2

DS39564C-page222 2006 Microchip Technology Inc.

E / S del RB6, RB7

Stack 2 niveles Programa Memoria 512 bytes

Datuna memoria 10 bytes

19,4.2 DATOS EEPROM

CÓDIGO DE

PROTECCIÓN

Toda la EEPROM de datos está protegida externo lee

y escribe por dos bits: CPD y WRTD. CPD externo

inhibe las lecturas y escrituras de datos EEPROM.

WRTD inhibe externo escribe datos EEPROM. La

CPU puede continuar a leer y escribir datos

EEPROM, independientemente de la configuración de

protección de bits.

19.4.3 CONFIGURACIÓN DE

REGISTRO DE PROTECCIÓN

Thregistros electrónicos de configuración puede ser

protegido contra escritura. El bit controla WRTC

protección de los regis-tros de configuración. En el

modo Manual, el bit WRTC sólo es legible. WRTC

sólo se puede escribir a través de ICSP o un

programador externo.

19.5 Lugares de identificación

Eighubicaciones de memoria (t 200000h - 200007h)

son des-ignated como ubicaciones de ID, donde el

usuario puede almacenar los números de código de

suma de comprobación u otra identificación. Estos

lugares son accesibles durante la ejecución normal a

través de la TBLRD undTBLWT instrucciones, o

durante el programa / verificación. Las ubicaciones de

identificación se pueden leer cuando el dispositivo

está protegido con el código.

Thsecuencia de la programación e identificación de

los lugares es sim-ilar a la programación de la

memoria FLASH (véase la Sección 5.5.1).

19.6 In-Circuit Serial Programming

Microcontroladores PIC18FXXX se puede programar

en serie, mientras que en el circuito de aplicación

final. Esto se hace simplemente con dos líneas de

reloj y de datos, y otras tres líneas de alimentación,

tierra y la tensión de programación. Esto permite a los

clientes para la fabricación de tableros con

dispositivos programados, y luego programar el

microcontrolador justo antes de enviar el producto.

Esto también permite que el firmware más reciente o

un custom firmware que desea programar.

19.7 depurador en circuito

When el bit DEBUG en la configuración del registro

CONFIG4L está programado para un '0 ', la

funcionalidad del depurador en circuito está habilitado.

Esta función permite que las funciones simples de

depuración cuando se utiliza con MPLAB ® IDE.

Cuando el microcontrolador tiene activada esta

función, algunos de los recursos no están disponibles

para uso general. La Tabla 19-4 muestra las

funciones que son consumidos por el depurador de

fondo.

TABLE 19-4: RECURSOS DEPURADOR

Page 255: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 223

To utilizar la función en circuito depurador del micro-

controlador, el diseño debe implementar en Circuito

conexiones de programación en serie a MCLR / VPP,

VDD, GND, RB7 y RB6. Este se conectará al módulo

de In-Circuit Debugger disponible de Microchip o una

de las empresas de terceros herramienta de

desarrollo.

19.8 de Baja Tensión de programación ICSP

The LVP bits del registro de configuración CONFIG4L

permite la programación ICSP bajo voltaje. Este modo

permite al microcontrolador a ser programado

mediante ICSP usando una fuente VDD en el rango

de tensión de funcionamiento. Esto significa

solamente que VPP no tiene que ser llevado a VIHH,

sino que puede ser dejado en la tensión de

funcionamiento normal. En este modo, el pasador

RB5/PGM está dedicado a la función de programación

y deja de ser un propósito general I / O pin. Durante la

programación, VDD se aplica a la patilla MCLR / VPP.

Para entrar en el modo de programación, VDD se

debe aplicar a la RB5/PGM, siempre que el bit está

establecido LVP. Los valores predeterminados LVP

bits a un (1 ") de la fábrica.

Nota 1: ThEl modo de programación e High

Voltage está siempre disponible,

independientemente del estado del bit

LVP, mediante la aplicación de VIHH al

pin MCLR.

2:While en el modo de bajo voltaje ICSP, el

pin RB5 ya no puede ser utilizado como

un propósito general pin I / O, y deben

mantenerse bajo durante el

funcionamiento normal para proteger

contra la entrada inadvertida modo

ICSP.

3:When con bajo voltaje programación

ICSP (LVP), el pull-up en RB5 se

desactiva. Si el bit TRISB 5 se borra,

estableciendo así RB5 como una salida,

poco LATB 5 también debe ser limpiado

para su correcto funcionamiento.

Yof Bajo el modo de programación de voltaje no se

utiliza, el bit LVP puede ser programado para un '0 'y

RB5/PGM se convierte en un I / O digital pin. Sin

embargo, el bit LVP sólo puede ser programado

cuando la programación se introduce con VIHH en

MCLR / VPP.

Cabe señalar que una vez que el bit LVP está

programado para 0, sólo el modo de programación de

alto voltaje es disponibles y el modo de sólo de

programación de alto voltaje se puede utilizar para

programar el dispositivo.

When usando ICSP baja tensión, la pieza debe ser

comple-recorrían 4.5V a 5.5V, si un borrado mayor

será ejecutado. Esto incluye la reprogramación del

código de protección de los bits de un control sobre el

estado de fuera de estado. Para todos los otros casos

de bajo voltaje ICSP, la pieza puede ser programado

en el voltaje de funcionamiento normal. Esto significa

que los ID de usuario únicas, o código de usuario

puede ser reprogramado o añadido.

Page 256: 39564c.en.es

PIC18FXX2

DS39564C-page224 2006 Microchip Technology Inc.

200.0 RESUMEN DE INSTRUCCIONES SET

El conjunto de instrucciones PIC18FXXX agrega

muchas-tos para mejorar los conjuntos de

instrucciones previas PICmicro, manteniendo al

mismo tiempo una fácil migración de estos conjuntos

de instrucciones PICmicro.

Mosinstrucciones t son una palabra de memoria de

programa único (16-bits), pero hay tres instrucciones

que requieren dos posiciones de memoria de

programa.

Eacinstrucción h sola palabra es una palabra de 16-bit

divide en un código de operación, que especifica el

tipo de instrucción y uno o más operandos, que

especifican además la operación de la instrucción.

Thconjunto e instrucción es muy ortogonal y se

agrupan en cuatro categorías básicas:

•Byte orientado

operaciones

•Orientada al bit

óperaciones

•Literal

operaciones

•Controle

óperaciones

La instrucción set PIC18FXXX resumen en la Tabla

20-2 lista el byte orientado,orientado a bits,literal

undcontrolar óperaciones. Tabla 20-1 muestra las

descripciones de los campos de código de operación.

Mostel byte orientado instruccións tienen tres

operandos:

1. El registro de archivo (especificada por 'f')

2. El destino del resultado

(Specified por 'd')

3. La memoria de acceso

(Specified por 'a')

Th'f' e archivo de registro designador especifica qué

archivo de registro se va a utilizar por la instrucción.

The destino designador 'd' especifica donde el

resultado de la operación se va a colocar. Si 'd' es

cero, el resultado se coloca en el registro WREG. Si

'd' es uno, el resultado se coloca en el archivo de

registro especificado en la instrucción.

Todos orientado a bits instrucciones tienen tres

operandos:

1. El registro de archivo (especificada por 'f')

2. El bit en el archivo de registro

(Specified por 'b')

3. La memoria de acceso

(Specified por 'a')

The bit campo designador 'b' se selecciona el número

del bit afectado por la operación, mientras que el

archivo de registro 'f' desig-nador representa el

número de archivo en el que se encuentra el bit.

Page 257: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 225

Theliteral instrucciones puede utilizar algunos de los

siguientes operandos:

• Un valor literal para ser cargado en un archivo de registro

(Specified por 'k')

• El registro FSR deseada para cargar el valor

literal en (especificada por 'f')

• No se requiere operando

(Specified por '-')

Thecontrol instrucciones puede utilizar algunos de los

siguientes operandos:

• Un programa de dirección de memoria (especificado por 'n')

• El modo de la convocatoria o Instrucciones de devolución

(Specified de 's')

• El modo de leer la tabla de instrucciones y

tabla de escritura (especificada por 'm')

• No se requiere operando

(Specified por '-')

All Instrucción son una sola palabra, a excepción de

tres dou-ble-word instrucciones. Estas tres

instrucciones se hicieron de palabra doble

instrucciones para que toda la información requerida

está disponible en estos 32 bits. En la segunda

palabra, los MSB 4-son 1. Si esta segunda palabra es

ejecutado el comando como una instrucción (por sí

mismo), se ejecutará como un NOP.

All Instrucción de una sola palabra se ejecutan en un

ciclo de instrucción individual, a menos que una

prueba condicional es verdadera o el contador de

programa se cambia como resultado de la instrucción.

En estos casos, la ejecución se lleva a dos ciclos de

instrucción con el ciclo de instrucción adicional (s)

ejecutado como un NOP.

The instrucciones de palabra doble ejecutar en dos

ciclos de instrucción.

Enciclo e instrucción consta de cuatro períodos del oscilador. Por lo tanto, para una frecuencia de oscilador de 4 MHz, el tiempo de ejecución de

instrucciones normal es de 1 μ s. Si una prueba

condicional es

true o el contador de programa se cambia como resultado de una instrucción, el tiempo de ejecución de la instrucción es 2 μ s. Tpalabra wo-instrucciones

de salto (si es verdadera) tomaría 3 μ s.

Figure 20-1 muestra los formatos generales que las

instrucciones pueden tener.

All ejemplos utilizan el formato 'Nnh' para

representar un número hexadecimal, donde 'H'

signifies un dígito hexadecimal.

The Instrucción Resumen Set, que se muestra en la

Tabla 20-2, se enumeran las instrucciones

reconocidas por el ensamblador de Microchip

(MPASMTM).

Sección 20.1 proporciona una descripción de cada instrucción.

Page 258: 39564c.en.es

PIC18FXX2

DS39564C-page226 2006 Microchip Technology Inc.

TABLE 20-1: DESCRIPCIONES DE CAMPO OPCODE

Field Description

un RAM poco acceso

a = 0: posición de la RAM en Access RAM (BSR registro se ignora)

a = 1: RAM bancaria especificada por BSR registro bbb Bidirección t dentro de un archivo de registro de 8-bit (0 a 7) BSR Bank Seleccione regístrate. Se utiliza para seleccionar el banco de memoria RAM actual. d DESTINOn Bit de selección;

d = 0: almacenar el resultado en WREG,

d = 1: almacenar el resultado en el archivo de registro f. dest DESTINOn sea el WREG registro o la ubicación del archivo de registro especificado F 8-bit registrar la dirección del archivo (0x00 a 0xFF) fs 12-Bit Register archivo de direcciones (0x000 a 0xFFF). Esta es la dirección de origen. fd 12-Bit Register archivo de direcciones (0x000 a 0xFFF). Esta es la dirección de destino. k Literal campo, los datos constantes o etiqueta (puede ser un bit 8, 12 bits o un valor de 20 bits) etiqueta Label nombre mm

*

* +

* -

+ *

The el modo del registro TBLPTR para leer la tabla de la tabla de escritura e

instrucciones. Sólo se utiliza con leer la tabla e instrucciones tabla de escritura:

No Cambio de registro (como TBLPTR con la Tabla lee y escribe) Post-

Incremento de registro (como TBLPTR con la Tabla lee y escribe) Post-

decremento registro (como TBLPTR con la Tabla lee y escribe)

PIncremento de re-registro (como TBLPTR con la Tabla lee y escribe) n The dirección relativa (2 Número de complemento) para obtener instrucciones relativas sucursales, o la

dirección directa para

Llamar /Branch y regreso instrucciones PRODH Product de byte alto Multiply Prödl Product de byte bajo Multiply s Fast Call / Return seleccionar el modo de bit.

s = 0: no se actualizan en / de la sombra de los registros

s = 1: ciertos registros cargados en / de los registros de sombra (modo rápido) u Unused o Sin cambios WREG Worrey registro (acumulador) x Don 't cuidado (0 ó 1)

The ensamblador generará código con x = 0. Es la forma recomendada de uso para la compatibilidad con todos

Microchip software de herramientas. TBLPTR 21-bit Tabla Pointer (señala a una ubicación de memoria de programa) TABLAT 8-bit Cierre la tabla TOS Top-de-Stack Ordenador

personal Program Contador

PCL Program Contador Byte Low PCH Program Contador Byte Alto PCLATH Program Contador Latch Byte Alto PCLATU Program Contador Latch Byte Alto GIE Global Bit de habilitación de interrupción WDT Watchdog Timer

Time Salida poco A

Poder-Down bit PD C, DC, Z, OV,

N AlabamaU bits de estado Carry Carry dígitos, cero, desbordamiento, Negativo

[] Opcional () Contenidos → Assigned a <> Register de bits ∈ Yon el conjunto de cursiva Término definido por el usuario (tipo de letra courier es)

Page 259: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 227

OPCODE b (BIT #) un

f (FILE #)

FIGURA 20-1: FORMATO GENERAL DE INSTRUCCIONES

Byte-orientedfilregistro de operaciones e

15 10 9 8 7 0

OPCode d un

f (FILE #)

d = 0 para el destino resultado que debe WREG registro d = 1 para el destino resultado ser archivo de registro (f) a = 0 para forzar el acceso del Banco a = 1 para BSR para seleccionar el banco f = 8-bit de archivo de registro de direcciones

Byte a byte operaciones de movimiento (2-word)

15 12 11 0

OPCode f (archivo de origen #)

15 12 11 0

1111f (archivo de destino #)

EJEMPLOSe Instrucción

ADDWF MYREG, W, B

MOVFF MYREG1, MYREG2

f = 12-bit de archivo de registro de direcciones

Bit-orientedfilregistro de operaciones e

15 12 11 9 8 7 0

BSF MYREG, bit, B

b = 3-bit posición de bit en el archivo de registro (f) a = 0 para forzar el acceso del Banco

a = 1 para BSR para seleccionar el banco

f = 8-bit de archivo de registro de direcciones

Literal operaciones

15 8 7 0

OPCODE k (literal)

MOVLW 0x7F

k = 8-bit de valor inmediato

Estafacontrol operaciones

LLAME, GOTO y Poder operaciones

15 8 7 0

OPCode n <7:00> (literal)

15 12 11 0

1111n <19:08> (Literal)

GOTO Etiqueta

n = 20-bit de valor inmediato

15 8 7 0

OPCODE S n <7:00> (literal) CALL MYFUNC

15 12 11 0 n <19:08> (literal)

S = Bit Fast

15 11 10 0

OPCODE n <10:00> (literal)

BRA MYFUNC

15

8 7

0

OPCODE n <7:00> (Literal) BC MYFUNC

Page 260: 39564c.en.es

PIC18FXX2

DS39564C-page228 2006 Microchip Technology Inc.

TABLE 20-2: SET DE INSTRUCCIONES PIC18FXXX

Mnemonic,

operando

s

Description

Ciclos

16-Bit Instrucción Palabra

Status

Afectado

Notas

MSB LSB

BYTE operaciones orientadas archivo de registro ADDWF f, d, f un

ADDWFC, d, f un

ANDWF, d, f un

CLRF, un COMF f,

d, f un CPFSEQ,

un f CPFSGT, un f

CPFSLT, un DECF

f, d, f un DECFSZ,

d , un DCFSNZ f,

d, f una INCF, d, f

una INCFSZ, d, f

una INFSNZ, d, f

una IORWF, d, f

una MOVF, d, a fs

MOVFF, fd

MOFVW f, f un

MULWF, un f

NEGF, un f RLCF,

d, f un RLNCF, d, f

un RRCF, d, f un

RRNCF, d, f un

SETF, un

SUBFWB f, d, a

SUBWF f, d, a

SUBWFB f, d, a

SWAPF f, d, f un

TSTFSZ, un

XORWF f, d, a

Anunciod WREG y f

Ladd WREG y seguir poco a f

AND WREG con f

f f Clear

Complemento

Compare f con WREG, skip =

Comparef con WREG, skip>

Comparar f con WREG, saltar

<Decrementa f

Decrement f, Saltar si es 0

Def crement, Omitir si no 0

Encrement f

Enf crement, Saltar si es 0

Enf crement, Omitir si no 0

Enclusive O WREG con f

MoVE f

MoVe fs (fuente) a la

palabra fd primero

(destino) 2 ª palabra

MoHe WREG a

Multiply WREG f con

f Niega f

Omnidireccionale izquierda a través de f Carry

Omnidireccionalf e

Izquierda (que no se

arrastren) Gire f Derecho a

través de Carry f Girar

Derecha (No Carry)

Set f

Sf ubtract de WREG con

préstamos

Subtract WREG de f

Restar WREG de f con

préstamos

Swap nibbles en f

Test f, vaya si 0

Exclusive O WREG con f

1

1

1

1

1

1 (2 o 3)

1 (2 o 3)

1 (2 o 3)

1

1 (2 o 3)

1 (2 o 3)

1

1 (2 o 3)

1 (2 o 3)

1

1

2

1

1

1

1

1

1

1

1

1

1

1

1

1 (2 o 3)

1

0010 01da0 ffff ffff

0010 0DA ffff ffff

0001 01DA ffff ffff

0110 101a ffff ffff

0001 11da ffff ffff

0110 001a ffff ffff

0110 010a ffff ffff

0110 000a ffff ffff

0000 01DA ffff ffff

0010 11da ffff ffff

0100 11da ffff ffff

0010 10da ffff ffff

0011 11da ffff ffff

0100 10da ffff ffff

0001 00da ffff ffff

0101 00da ffff ffff

110Ffff ffff ffff 0

111Ffff ffff ffff 1

0110 111a ffff ffff

0000 001a ffff ffff

0110 110 bis ffff ffff

0011 01DA ffff ffff

0100 01DA ffff ffff

0011 00da ffff ffff

0100 00da ffff ffff

0110 100 ffff ffff

0101 01DA ffff ffff

0101 11da ffff ffff

0101 10da ffff ffff

0011 10da ffff ffff

0110 011a ffff ffff

0001 10da ffff ffff

C, DC, Z, OV, N

C, DC, Z, OV, N

Z, N

Z

Z, N

Ning

uno

Ning

uno

Ning

uno

C, DC, Z, OV, N

Ninguno

Ninguno

C, DC, Z, OV, N

Ninguno

Ning

uno

Z, N

Z, N

Ning

uno

Ninguno

Ninguno

C, DC, Z, OV, N

C, Z, N

Z, N

C, Z, Z

N, N

Ningun

o

C, DC, Z, OV, N

C, DC, Z, OV, N

C, DC, Z, OV, N

Ning

uno

Ning

uno

Z, N

1, 2

1, 2

1,2

2

1, 2

4

4

1, 2

1, 2, 3, 4

1, 2, 3, 4

1, 2

1, 2, 3, 4

4

1, 2

1, 2

1

1, 2

1, 2

1, 2

1, 2

4

1, 2

BITOperaciones orientadas archivo de registro BCF f, b, f un BSF,

b, f un BTFSC, b, f

un BTFSS, b, f un

BTG, d, a

Bit f Clear

Bit f Set

Bif t Test, Omitir si f

Clear Bit Test, Skip si

f Set Bit Toggle

1

1

1 (2 o 3)

1 (2 o 3)

1

1001 bbba ffff ffff

1000 bbba ffff ffff

1011 bbba ffff ffff

1010 bbba ffff ffff

0111 bbba ffff ffff

Ning

uno

Ning

uno

Ning

uno

Ning

uno

Ning

uno

1, 2

1, 2

3, 4

3, 4

1, 2 NoTE 1: Whena PORT registro se modifica en función de sí mismo (por ejemplo, MOVF PORTB, 1, 0), El valor utilizado será

el valor presente en los propios pasadores. Por ejemplo, si el cerrojo de datos es '1 'para un pin configurado como

entrada y es accionada bajo por un dispositivo externo, los datos se escribirán de nuevo con un '0'.

2:Yof se ejecuta esta instrucción en el registro TMR0 (y, en su caso, d = 1), el prescaler se borrará si se ha asignado.

3:Yof Contador de Programa (PC) se modifica o la prueba condicional es verdadero, la instrucción requiere de dos ciclos.

El segundo ciclo es ejecutado como un NOP.

4:Sominstrucciones e son palabra de 2 instrucciones. La segunda palabra de estas instrucciones se ejecutará como un NOP, A menos que el

abetost palabra de la instrucción recupera la información incrustada en estos bits 16-. Esto garantiza que todas las

ubicaciones de memoria del programa tienen una instrucción válida.

5:Yof la Escritura de la tabla comienza el ciclo de escritura en la memoria interna, la grabación continuará hasta su terminación.

Page 261: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 229

TABLE 20-2: PIC18FXXX conjunto de instrucciones (CONTINUACIÓN)

Mnemonic,

operando

s

Description

Ciclos

16-Bit Instrucción Palabra

Status

Afectado

Notas

MSB LSB

CONTROOPERACIONES DE L BC n BN n BNC

BNN n n n

BNOV BNZ BOV

n n n BRA BZ n

LLAMADA n, s

CLRWDT -

DAW - GOTO n

NOP - NOP -

POP - PUSH -

rcall n de

RESET

RETFIE s

RETLW

RETURN k s

SLEEP -

Brancho si Carry Poder

Poder Negativo si si no

si no Llevar Branch

Branch negativo si no

Branch

desbordamiento si no

Branch Cero si Rama

Rama desbordamiento

incondicionalmente si

Zero

Californial subroutine1st palabra

2nd palabra

CleaWatchdog Timer r

Decimal Ajuste WREG

Ir a address1st palabra

2nd palabra

No Operación

No Operación

Correosparte superior de la

pila p regreso (TOS) Empuje

la parte superior de la pila de

regreso (TOS) Convocatoria

relativa

Softwardispositivo

electrónico de RESET

Retorno de habilitación de

interrupción

Return con literal en

WREG retorno de la

subrutina

Go en el modo de espera

1 (2)

1 (2)

1 (2)

1 (2)

1 (2)

2

1 (2)

1 (2)

1 (2)

2

1

1

2

1

1

1

1

2

1

2

2

2

1

1110 0010 nnnn nnnn

1110 0110 nnnn nnnn

1110 0011 nnnn nnnn

1110 0111 nnnn nnnn

1110 0101 nnnn nnnn

1110 0001 nnnn nnnn

1110 0100 nnnn nnnn

1101 0nnn nnnn nnnn

1110 0000 nnnn nnnn

1110 kkkk kkkk 110s

111Kkkk kkkk kkkk 1

0000 0000 0000 0100

0000 0000 0000 0111

111Kkkk kkkk 0 1111

111Kkkk kkkk kkkk 1

0000 0000 0000 0000

1111 xxxx xxxx xxxx

0000 0000 0000 0110

0000 0000 0000 0101

1101 1nnn nnnn nnnn

0000 0000 1111 1111

0000 0000 0001 000s

000Kkkk kkkk 0 1100

0000 0000 0001 001S

0000 0000 0000 0011

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

A, PD

C

Ninguno

Ning

uno

Ning

uno

Ning

uno

Ning

uno

Ning

uno

All

GIE / GIEH,

PEIA /

GIEL

Ninguno

Nonordeste

A, PD

4

NoTE 1: Whena PORT registro se modifica en función de sí mismo (por ejemplo, MOVF PORTB, 1, 0), El valor utilizado será

el valor presente en los propios pasadores. Por ejemplo, si el cerrojo de datos es '1 'para un pin configurado como

entrada y es accionada bajo por un dispositivo externo, los datos se escribirán de nuevo con un '0'.

2:Yof se ejecuta esta instrucción en el registro TMR0 (y, en su caso, d = 1), el prescaler se borrará si se ha asignado.

3:Yof Contador de Programa (PC) se modifica o la prueba condicional es verdadero, la instrucción requiere de dos ciclos.

El segundo ciclo es ejecutado como un NOP.

4:Sominstrucciones e son palabra de 2 instrucciones. La segunda palabra de estas instrucciones se ejecutará como un NOP, A menos que el

abetost palabra de la instrucción recupera la información incrustada en estos bits 16-. Esto garantiza que todas las

ubicaciones de memoria del programa tienen una instrucción válida.

5:Yof la Escritura de la tabla comienza el ciclo de escritura en la memoria interna, la grabación continuará hasta su terminación.

Page 262: 39564c.en.es

PIC18FXX2

DS39564C-page230 2006 Microchip Technology Inc.

TABLE 20-2: SET PIC18FXXX INSTRUCCIONES (CONTINUACIÓN)

Mnemonic,

operando

s

Description

Ciclos

16-Bit Instrucción Palabra

Status

Afectado

Notas

MSB LSB

LITERAOPERACIONES DE L LDDAW k

ANDLW IORLW

k k LFSR f, k

MOVLB

MOVLW k k k

MULLW

RETLW k

SUBLW k k

XORLW

Anunciod literal y literal WREG

Y con WREG Inclusive OR

literal con WREG Move literal

(12-bit) segunda palabra

to FSRx primera palabra

MoHe literal a BSR <3:00>

Mover literal a WREG

Multiply literal con WREG

Retorno con literal en

WREG Restar WREG

desde literal

Exclusive O literal con WREG

1

1

1

2

1

1

1

2

1

1

000Kkkk kkkk 0 1111

0000 kkkk kkkk 1011

000Kkkk kkkk 0 1001

1110 1110 00ff kkkk

111Kkkk kkkk 1 0000

0000 0001 0000 kkkk

000Kkkk kkkk 0 1110

0000 kkkk kkkk 1101

000Kkkk kkkk 0 1100

000Kkkk kkkk 0 1000

000Kkkk kkkk 0 1010

C, DC, Z, OV, Z

N, N

Z, N

Ning

uno

Ning

uno

Ning

uno

Ning

uno

Ning

uno

C, DC, Z, OV, N

Z, N

DATUNA MEMORIA ↔ OPERACIONES DEL PROGRAMA DE MEMORIA

TBLRD *

TBLRD *

+ TBLRD

* - * +

TBLRD

TBLWT*

TBLWT *

+ TBLWT

* - * +

TBLWT

TablLeer e

Table Lea con la Tabla de

incremento posterior lectura con

la tabla de decremento posterior

lectura con Escritura de la tabla

de incremento previo

Table Escriba con cuadro de

incremento posterior Escribir

con Escritura de la tabla de

decremento posterior con pre-

incremento

2

2 (5)

0000 0000 0000 1000

0000 0000 0000 1001

0000 0000 0000 1010

0000 0000 0000 1011

0000 0000 0000 1100

0000 0000 0000 1101

0000 0000 0000 1110

0000 0000 0000 1111

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

Ning

una

NoTE 1: Whena PORT registro se modifica en función de sí mismo (por ejemplo, MOVF PORTB, 1, 0), El valor utilizado será

el valor presente en los propios pasadores. Por ejemplo, si el cerrojo de datos es '1 'para un pin configurado como

entrada y es accionada bajo por un dispositivo externo, los datos se escribirán de nuevo con un '0'.

2:Yof se ejecuta esta instrucción en el registro TMR0 (y, en su caso, d = 1), el prescaler se borrará si se ha asignado.

3:Yof Contador de Programa (PC) se modifica o la prueba condicional es verdadero, la instrucción requiere de dos ciclos.

El segundo ciclo es ejecutado como un NOP.

4:Sominstrucciones e son palabra de 2 instrucciones. La segunda palabra de estas instrucciones se ejecutará como un NOP, A menos que el

abetost palabra de la instrucción recupera la información incrustada en estos bits 16-. Esto garantiza que todas las

ubicaciones de memoria del programa tienen una instrucción válida.

5:Yof la Escritura de la tabla comienza el ciclo de escritura en la memoria interna, la grabación continuará hasta su terminación.

Page 263: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 231

0000 1111 kkkk kkkk

0010 01DA ffff ffff

ADDLW AÑADIR literal a W

ADDWF ADD W af

Sintaxis: [Etiqueta] ADDLW k Sintaxis: [Etiqueta] ADDWF

f [, d [, a] Operands:

Operación:

0≤ k≤ 255

(W) + k → W Operands: 0≤ F≤ 255

d ∈ [0,1]

Status afectado: N, OV, C, DC, Z

W = 0XD9 REG = 0XC2

20.Un conjunto de instrucciones

Encoding:

Descripción: El contenido de W se añaden a la

8-Bit literal "k" y el resultado

se coloca en W.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

literatur

al 'k'

Proceso

Datun

Escriturae para W

Ejemplo:LDDA0x15 W

Antes de Instrucción

W = 0x10

Después de la instrucción

W = 0x25

un∈ [0,1]

Operación: (W) + (f) → dest Status

afectado: N, OV, C, DC, Z

Encoding:

Description: Agrega W a registrarse 'f'. Si "d" es 0, el

resultado se almacena en W. Si

"d" es 1, el resultado se almacena

en 'f' registro (por defecto). Si 'a'

es 0, el banco del acceso serán

seleccionados. Si 'a' es 1, el BSR

se utiliza.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Ejemplo:ADDWF REG, 0, 0

Antes de Instrucción

W = 0x17 REG = 0XC2

Después de la instrucción

Page 264: 39564c.en.es

PIC18FXX2

DS39564C-page232 2006 Microchip Technology Inc.

0000 1011 kkkk kkkk

0010 00da ffff ffff

ADDWFC ADD W y seguir poco a f

Sintaxis: [etiqueta] [ADDWFC f, d, [a]

Operandos: 0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (W) + (f) + (C) → dest Status

afectado: N, OV, C, DC, Z Encoding:

Descripción: Add W, el indicador de acarreo y 'f'

ubicación de los datos de la

memoria. Si "d" es 0, el resultado se

coloca en W. Si "d" es 1, el

resultado se coloca en la memoria 'f'

data ubica-ción. Si 'a' es 0, el banco

del acceso

será seleccionado. Si 'a' es 1, el BSR

no se puede anular.

Palabras: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Escriba a

destino

Ejemplo:ADDWFC REG, 0, 1

Antes de Instrucción Llevar a bit = 1 REG = 0x02

W = 0x4D

Después de la instrucción Llevar a bit = 0 REG = 0x02

W = 0x50

Y ANDLW literal con W

Sintaxis: [etiqueta] ANDLW k

Operands: 0 ≤ k≤ 255

Operación: (W) y.. k → W Estado

Afectado: N, Z

Encoding:

Descripción: El contenido de W se AND con la 8-bit

literal "k". El resultado se coloca

en W.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Read literal

'k ' Proceso

Datun

Escriturae para W

Ejemplo:AndlW 0x5F

Antes de Instrucción

W = 0xA3

Después de la instrucción

W = 0x03

Page 265: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 233

1110 0010 nnnn nnnn

0001 01DA ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Descodificar

Read literal

'N' Proceso

Datun

Escribir para PC

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

W = 0x17 REG = 0XC2

Después de la instrucción

Yof Carry = 1;

Ordenador personal

= address(AQUÍ +12) Yof Carry = 0;

Ordenador personal

= dirección (AQUÍ +2)

Y ANDWF W con f

Sintaxis: [etiqueta] [ANDWF f, d, [a]

Operandos: 0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (W) y.. (F) → dest

Status afectado: N, Z

Encoding:

Descripción: El contenido de W se AND'ed con 'f'

registro. Si "d" es 0, el resultado se

almacena en W. Si "d" es 1, el

resultado se almacena en 'f'

registro (por defecto). Si

'Una'Es 0, el banco del acceso

serán seleccionados. Si 'a' es 1, el

BSR no se sustituirán (por

defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Branch BC si Carry

Sintaxis: [etiqueta] BC n

Operands: -128 ≤ n≤ 127

Operación: si el bit de acarreo es '1 '

(PC) + 2 + 2n → Ordenador personal

Status afectados: Ninguno

Encoding:

Descripción: Si el bit de acarreo es '1 ',

entonces el programa

saltará.

Thcomplemento e 2 del número '2

n 'se añade a la PC. Desde el PC

se han incrementado a buscar la

siguiente instrucción, la nueva

dirección será PC +2 +2 n. Esta

instrucción es entonces

una instrucción de dos ciclos.

Words: 1

Ciclos: 1 (2) Actividad:

Ciclo Q

Yof Salto:

Q1 Q2 Q3 Q4

Ejemplo:ANDWF REG, 0, 0

Antes de Instrucción

Después de la instrucción

W = 0x02 REG = 0xC2

Si No Jump:

Q1 Q2 Q3 Q4

Descodificar

Read literal

'N' Proceso

Datun

Ningu

na

operació

n Ejemplo:HERE BC 5

Antes de Instrucción

PC = dirección (AQUÍ)

Page 266: 39564c.en.es

PIC18FXX2

DS39564C-page234 2006 Microchip Technology Inc.

1110 0110 nnnn nnnn

1001 bbba ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

W'f' rito

registro

Descodificar

Read literal

'N' Proceso

Datun

Escribir para PC

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Descodificar

Read literal

'N' Proceso

Datun

Ningu

na

operació

n

Yof Negativo = 1; Ordenador personal

= dirección (Jump) Yof Negativo = 0;

Ordenador personal

= dirección (AQUÍ +2)

BCF f Bit Clear

Sintaxis: [etiqueta] BCF f, b [, a]

Operandos: 0 ≤ F≤ 255

0≤ b≤ 7

un∈ [0,1]

Operación: 0 → f <b> Status

afectados: Ninguno

Codificación:

Descripción: Bit 'b' en 'f' registro se borra. Si 'a' es 0,

el banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' = 1, entonces el

banco será seleccionado según el

valor BSR (por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

BN Poder Negativo si

Sintaxis: [etiqueta] BN n

Operands: -128 ≤ n≤ 127

Operación: si poco negativo es '1 '(PC)

+ 2 + 2n → Ordenador personal

Status afectados: Ninguno

Encoding:

Description: Si el bit negativo es '1 ', el programa

saltará.

Thcomplemento e 2 del número '2

n 'se añade a la PC. Desde el PC

se han incrementado a buscar la

siguiente instrucción, la nueva

dirección será PC +2 +2 n. Esta

instrucción es entonces

una instrucción de dos ciclos.

Words: 1

Ciclos: 1 (2) Actividad:

Ciclo Q

Yof Salto:

Q1 Q2 Q3 Q4

Ejemplo:BCF FLAG_REG, 7, 0

Antes de Instrucción FLAG_REG = 0xc7

Después de la instrucción

FLAG_REG = 0x47

Si No Jump:

Q1 Q2 Q3 Q4

Ejemplo:HERE Jump BN

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción

Page 267: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 235

1110 0011 nnnn nnnn

1110 0111 nnnn nnnn

Descodificar

Read literal

'N' Proceso

Datun

Escribir para PC

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Descodificar

Read literal

'N' Proceso

Datun

Escribir para PC

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Descodificar

Read literal

'N' Proceso

Datun

No

operation

Descodificar

Read literal

'N' Proceso

Datun

Ningu

na

operació

n

Branch BNC si NO llevar

Sintaxis: [etiqueta] BNC n

Operands: -128 ≤ n≤ 127

Operación: si el bit de acarreo es '0 '

(PC) + 2 + 2n → Ordenador personal

Status afectados: Ninguno

Encoding:

Descripción: Si el bit de acarreo es '0 ', el

programa saltará.

Thcomplemento e 2 del número '2

n 'se añade a la PC. Desde el PC

se han incrementado a buscar la

siguiente instrucción, la nueva

dirección será PC +2 +2 n. Esta

instrucción es entonces

una instrucción de dos ciclos.

Words: 1

Ciclos: 1 (2) Actividad:

Ciclo Q

Yof Salto:

Q1 Q2 Q3 Q4

BNN Branch cuando no negativa

Sintaxis: [etiqueta] BNN n

Operands: -128 ≤ n≤ 127

Operación: si poco negativo es '0 '(PC)

+ 2 + 2n → Ordenador personal

Status afectados: Ninguno

Encoding:

Description: Si el bit negativo es '0 ', el programa

saltará.

Thcomplemento e 2 del número '2

n 'se añade a la PC. Desde el PC

se han incrementado a buscar la

siguiente instrucción, la nueva

dirección será PC +2 +2 n. Esta

instrucción es entonces

una instrucción de dos ciclos.

Words: 1

Ciclos: 1 (2) Actividad:

Ciclo Q

Yof Salto:

Q1 Q2 Q3 Q4

Si No Jump: Si No Jump:

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

Ejemplo:HERE BNC Jump

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción Yof Carry = 0;

PC = dirección (Jump) Yof Carry = 1;

PC = dirección (AQUÍ +2)

Ejemplo:HERE BNN Jump

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción Yof negativo = 0;

PC = dirección (Jump) Yof negativo = 1;

PC = dirección (AQUÍ +2)

Page 268: 39564c.en.es

PIC18FXX2

DS39564C-page236 2006 Microchip Technology Inc.

1110 0101 nnnn nnnn

1110 0001 nnnn nnnn

Descodificar

Read literal

'N' Proceso

Datun

Escribir para PC

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Descodificar

Read literal

'N' Proceso

Datun

Escribir para PC

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Descodificar

Read literal

'N' Proceso

Datun

No

operation

Descodificar

Read literal

'N' Proceso

Datun

Ningu

na

operació

n

Branch BNOV No si Overflow

Sintaxis: [etiqueta] BNOV n

Operands: -128 ≤ n≤ 127

Operación: si el bit de desbordamiento

es '0 '(PC) + 2 + 2n

→ Ordenador

personal

Status afectados: Ninguno

Encoding:

Descripción: Si el bit de desbordamiento es '0 ', el

programa saltará.

Thcomplemento e 2 del número '2

n 'se añade a la PC. Desde el PC

se han incrementado a buscar la

siguiente instrucción, la nueva

dirección será PC +2 +2 n. Esta

instrucción es entonces

una instrucción de dos ciclos.

Words: 1

Ciclos: 1 (2) Actividad:

Ciclo Q

Yof Salto:

Q1 Q2 Q3 Q4

BNZ Branch si no es cero

Sintaxis: [etiqueta] BNZ n

Operands: -128 ≤ n≤ 127

Operación: si el bit cero es '0 '

(PC) + 2 + 2n → Ordenador personal

Status afectados: Ninguno

Encoding:

Description: Si el bit es cero '0 ', entonces el

programa se ramifica.

Thcomplemento e 2 del número '2

n 'se añade a la PC. Desde el PC

se han incrementado a buscar la

siguiente instrucción, la nueva

dirección será PC +2 +2 n. Esta

instrucción es entonces

una instrucción de dos ciclos.

Words: 1

Ciclos: 1 (2) Actividad:

Ciclo Q

Yof Salto:

Q1 Q2 Q3 Q4

Si No Jump: Si No Jump:

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

Ejemplo:HERE BNOV Jump

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción Yof Overflow = 0;

PC = dirección (Jump) Yof Overflow = 1;

PC = dirección (AQUÍ +2)

Ejemplo:HERE BNZ Jump

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción Yof Cero = 0;

PC = dirección (Jump) Yof Zero = 1;

PC = dirección (AQUÍ +2)

Page 269: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 237

1101 0nnn nnnn nnnn

1000 bbba ffff ffff

Descodificar

Read literal

'N' Proceso

Datun

Escribir para PC

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

BRA Unconditional Branch

Sintaxis: [etiqueta] BRA n

Operands: -1024 ≤ n≤ 1023

Operación: (PC) + 2 + 2n → PC

afectada Estado: Ninguno

Encoding:

Descripción: Añade el número en complemento a 2

'2 N'A la PC. Desde el PC se han

incrementado a buscar la siguiente

instrucción, la nueva dirección

será PC +2 +2 n. Esta instrucción

es una

dos-Ciclo de instrucción.

Words: 1

Ciclos: 2

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Bit BSF Set f

Sintaxis: [etiqueta] BSF f, b [, a]

Operandos: 0 ≤ F≤ 255

0≤ b≤ 7

un∈ [0,1]

Operación: 1 → f <b> Status

afectados: Ninguno

Codificación:

Description: Bit 'b' en 'f' registro está establecido. Si 'a' es 0

Accesos Banco será seleccionado,

a lo largo de montar el valor BSR.

Si 'a' = 1, entonces el banco será

seleccionado según el valor BSR.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Escritur

aregistro

e 'f'

Ejemplo:HERE Jump BRA

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción

PC = dirección (Jump)

Ejemplo:BSF FLAG_REG, 7, 1

Antes de Instrucción FloridaAG_REG = 0x0A

Después de la instrucción FloridaAG_REG = 0x8A

Page 270: 39564c.en.es

PIC18FXX2

DS39564C-page238 2006 Microchip Technology Inc.

1011 bbba fffF ffff

1010 bbba ffff ffff

Descodificar

Leer

registro 'f' Datos del Proceso

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Archivo BTFSC Bit Test, Skip claro si

Sintaxis: [etiqueta] btfsc F, B [a],

Operandos: 0 ≤ F≤ 255

0≤ b≤ 7

un∈ [0,1]

Operación: skip if (f <b>) = 0

Status afectados: Ninguno

Encoding:

Descripción: Si 'b' en poco 'f' registro es 0, la

siguiente instrucción se omite.

Yobit f 'b' es 0, entonces la

instrucción siguiente exagerado

durante la ejecución de la

instrucción actual se descarta, y un

NOP es ejecutivoTed lugar,

haciendo de esta una instrucción de

dos ciclos. Si 'a' es 0, el banco del

acceso será seleccionado, a lo largo

de montar el valor BSR. Si 'a' = 1,

entonces el banco será

seleccionado según el valor BSR

(por defecto).

Words: 1

Ciclos: 1 (2)

Nota: 3 ciclos si skip y seguida

por una instrucción 2-

palabra.

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Archivo BTFSS Bit Test, Skip si Set

Sintaxis: [etiqueta] btfss F, B [a],

Operandos: 0 ≤ F≤ 255

0≤ b≤ 7

un∈ [0,1]

Operación: skip if (f <b>) = 1

Status afectados: Ninguno

Encoding:

Description: Si 'b' en poco 'f' registro es 1, la

siguiente instrucción se omite.

Yobit f 'b' es 1, entonces la

instrucción siguiente exagerado

durante la actual instruc-ción

ejecución, se descarta y un NOP

yos ejecuta en su lugar, haciendo

de esta una instrucción de dos

ciclos. Si 'a' es 0, el banco del

acceso será seleccionado, a lo largo

de montar el valor BSR. Si 'a' = 1,

entonces el banco será

seleccionado según el valor BSR

(por defecto).

Words: 1

Ciclos: 1 (2)

Nota: 3 ciclos si skip y seguida

por una instrucción 2-

palabra.

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Datos del Proceso

Ningu

na

operació

n Yof saltar:

Q1 Q2 Q3 Q4

Yof saltar:

Q1 Q2 Q3 Q4

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4

Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ejemplo: AQUÍ BTFSC BANDERA, 1, 0

Ejemplo:

AQUÍ

BTFSS

BANDERA,

1, 0 FALSE : FALSO : VERDAD

ERO : VERDAD

ERO :

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción Yof FLAG <1> = 0;

PC = dirección (TRUE) Yof FLAG <1> = 1;

PC = dirección (FALSO)

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción Yof FLAG <1> = 0;

PC = dirección (FALSO) Yof FLAG <1> = 1;

PC = dirección (TRUE)

Page 271: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 239

1110 0100 nnnn nnnn

0111 bbba ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

W'f' rito

registro

Descodificar

Read literal

'N' Proceso

Datun

Escribir para PC

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Descodificar

Read literal

'N' Proceso

Datun

Ningu

na

operació

n

Yof Overflow = 1; Ordenador personal

= address(Jump) Yof Overflow = 0;

Ordenador personal

= address(AQUÍ +2)

BTG f Bit Toggle

Sintaxis: [etiqueta] BTG F, B [a],

Operandos: 0 ≤ F≤ 255

0≤ b≤ 7

un∈ [0,1]

Operación: (f <b>) → f <b>

Estado afectado: Ninguno

Codificación:

Descripción: Bit 'b' en 'f' ubicación de memoria de datos

está invertida. Si 'a' es 0, el banco

del acceso serán seleccionados,

ignorando el valor de BSR. Si 'a' =

1, entonces el banco será

seleccionado según el valor BSR

(por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

BOV Branch si Overflow

Sintaxis: [etiqueta] BOV n

Operands: -128 ≤ n≤ 127

Operación: si el bit de desbordamiento

es '1 '(PC) + 2 + 2n

→ Ordenador

personal

Status afectados: Ninguno

Encoding:

Description: Si el bit de desbordamiento es '1 ',

entonces el programa saltará.

Thcomplemento e 2 del número '2

n 'se añade a la PC. Desde el PC

se han incrementado a buscar la

siguiente instrucción, la nueva

dirección será PC +2 +2 n. Esta

instrucción es entonces

una instrucción de dos ciclos.

Words: 1

Ciclos: 1 (2) Actividad:

Ciclo Q

Yof Salto:

Q1 Q2 Q3 Q4

Ejemplo:BTG PORTC, 4, 0

Antes de Instrucción:

PORTC = 0111 0101 [0x75]

Después de la instrucción: PORTC = 0110 0101 [0x65]

Si No Jump:

Q1 Q2 Q3 Q4

Ejemplo:HERE BOV Jump

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción

Page 272: 39564c.en.es

PIC18FXX2

DS39564C-page240 2006 Microchip Technology Inc.

1110 0000 nnnn nnnn

1110

1111

110s

k19kkk

k7kkk

kkkk

kkkk0

kkkk8

Descodificar

Read literal

'N' Proceso

Datun

No

operation

Descodificar

Read literal

'K' <7:00>,

Empuje PC

para

apilar

Read literal

'K'

<19:08>,

Escribir

para PC Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

BZ Branch si Zero

Sintaxis: [etiqueta] BZ n

Operands: -128 ≤ n≤ 127

Operación: si Zero bit es '1 '

(PC) + 2 + 2n → Ordenador personal

Status afectados: Ninguno

Encoding:

Descripción: Si el bit cero es '1 ', entonces el

programa se ramifica.

Thcomplemento e 2 del número '2

n 'se añade a la PC. Desde el PC

se han incrementado a buscar la

siguiente instrucción, la nueva

dirección será PC +2 +2 n. Esta

instrucción es entonces

una instrucción de dos ciclos.

Words: 1

Ciclos: 1 (2) Actividad:

Ciclo Q

Yof Salto:

Q1 Q2 Q3 Q4

Descodificar

Read literal

'N' Proceso

Datun

Escribir para PC

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Si No Jump:

Q1 Q2 Q3 Q4

LLAME llamada de subrutina

Sintaxis: [etiqueta] CONVOCATORIA [k,

s] Operandos: 0 ≤ k≤ 1048575

s∈ [0,1]

Operación: (PC) + 4 → AS, k → PC

<20:01>,

yof s = 1

(W) → WS,

(STATUS) → STATUSS, (BSR) → BSRS

Status afectados: Ninguno

Encoding:

Primera palabra (k <07:00>)

2nd palabra (k <19:08>)

Descripción: Llamada a subprograma de todo el rango

de memoria de 2 Mbytes. En

primer lugar, la dirección de

retorno (PC + 4) se inserta en la

pila de retorno. Si 's' = 1, los

registros W, STATUS y BSR

también se introducen en los

respectivos registros de sombra,

WS, STATUSS y BSRS. Si 's' = 0,

no hay actualización se produce

(por defecto). Entonces, 'k' el valor

de 20-bit se carga en PC <20:01>.

LLAME yos una instrucción de dos

ciclos.

Words: 2

Ciclos: 2

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Ejemplo:HERE BZ Jump

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción Yof Zero = 1;

PC = dirección (Jump) Yof Cero = 0;

PC = dirección (AQUÍ +2)

Ejemplo:HERE LLAMADA NO, 1

Antes de Instrucción

PC = dirección (AQUÍ)

Después de la instrucción Ordenador personal

= dirección (NO) AS = addressHER (E + 4) WS = W BSRS = BSR STATUSS = ESTADO

Page 273: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 241

0110 101a ffff ffff

0000 0000 0000 0100

Decódigo Ningu

na

operació

n

Proceso

Datun

Ningu

na

operació

n

CLRF Clear f

Sintaxis: [etiqueta] clrf f [, a] Operandos:

0 ≤ F≤ 255

un∈ [0,1]

Operación: 000h → F

1→ Z

Status afectado:

Codificación Z:

Descripción: Borra el contenido del registro

especificado. Si 'a' es 0, el banco

del acceso serán seleccionados,

ignorando el valor de BSR. Si 'a' =

1, entonces el banco será

seleccionado según el valor BSR

(por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Temporizador Watchdog CLRWDT Clear

Sintaxis: [etiqueta] CLRWDT Operandos:

Ninguno

Operación: 000h → WDT,

000h→ WDT postscaler,

1→ A,

1→ PD

Status afectado: A,

Encoding PD:

Description: CLRWDT instruction pone a cero el

temporizador de vigilancia.

También restablece el postscaler

del WDT. Bits de estado para PD

y se establecen.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

W'f' rito

registro

Ejemplo:CLRF FLAG_REG, 1

Antes de Instrucción FloridaAG_REG = 0x5A

Después de la instrucción FloridaAG_REG 0x00 =

Ejemplo:CLRWDT

Antes de Instrucción

WDT = Contador?

Después de la instrucción

WDContador T = 0x00 WDPostscaler T = 0 TO = 1 PD = 1

Page 274: 39564c.en.es

PIC18FXX2

DS39564C-page242 2006 Microchip Technology Inc.

0001 11da ffff ffff

0110 001a ffff ffff

COMF f Complemento

Sintaxis: [etiqueta] [COMF f, d, [a]

Operandos: 0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

CPFSEQ Comparar con W f, vaya si f = W

Sintaxis: [etiqueta] CPFSEQ f [, a]

Operandos: 0 ≤ F≤ 255

un∈ [0,1]

Operación: (f) - (W),

Operación: ( f) → dest esquiarsi p (f) = (W)

Status afectado: N, Z

Encoding:

Descripción: El contenido de 'f' registro es

complementado. Si "d" es 0, el

resultado se almacena en W. Si "d"

es 1, el resultado se almacena en

'f' registro (por defecto). Si

'Una'Es 0, el banco del acceso

serán seleccionados, ignorando el

valor de BSR. Si 'a' = 1, entonces

el banco será seleccionado según

el valor BSR (por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Escriba a

destino Ejemplo:COMF REG, 0, 0

Antes de Instrucción REG = 0x13

Después de la instrucción REG = 0x13

W = 0xEC

(Unsignecomparación

d) Estado afectado: Ninguno

Encoding:

Descripción: Compara el contenido de 'f' ubicación de

memoria de datos con el

contenido de W mediante la

realización de un entero sin signo

de resta.

Yof 'f' = W,lan la descabellada

instrucción

tion es descartado y un NOP yos

exe- lindod lugar, haciendo de esta una de dos

cycle instrucciones. Si 'a' es 0, el

banco del acceso será

seleccionado, a lo largo de montar

el valor BSR. Si 'a' = 1, entonces el

banco será seleccionado según el

valor BSR (por defecto).

Words: 1

Ciclos: 1 (2)

Nota: 3 ciclos si skip y seguida

por una instrucción 2-

palabra.

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Ningu

na

operació

n Yof saltar:

Q1 Q2 Q3 Q4

No

operation Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4

No

operation Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n No

operation Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ejemplo: AQUÍ

NEQUAL CPFSEQ REG, 0

: EQUAL :

Antes de Instrucción PC Dirección = AQUÍ W = ? REG = ?

Después de la instrucción

Yof REG = W;

Ordenador personal

= Address(EQUAL)

Page 275: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 243

Yof REG PC

≠ =

W;

Address(NEQUAL)

Page 276: 39564c.en.es

PIC18FXX2

DS39564C-page244 2006 Microchip Technology Inc.

0110 010a ffff ffff

0110 000a ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Ningu

na

operació

n Descodific

ar Leer

registro 'f' Proceso

Datun

No

operation

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

GreateR: Ordenador

personal

mineral de Instrucción W

= =

Address(AQUÍ) ?

Ordenador personal

= Address(AQUÍ) Después de la instrucción

W = ? Yof REG < W; r PC Instrucción = Dirección (LESS)

Yof REG REG Si >W, PC

PC = Dirección (MÁS) ≥ =

W;

Address(Alvo)

Yof REG PC

= W;

Dirección (NGREATER)

CPFSGT Comparar con W f, vaya si f> W

Sintaxis: [etiqueta] CPFSGT f [, a]

Operandos: 0 ≤ F≤ 255

un∈ [0,1]

Operación: (f) - (W),

esquiarsi p (f)> (W)

(comparación sin

signo)

Status afectados: Ninguno

Encoding:

Descripción: Compara el contenido de 'f' ubicación de

memoria de datos para el

contenido de la W mediante la

realización de un entero sin signo

de resta.

Yoel contenido de f 'f' son mayores que los contenidos de WREG,lan el

fetched instrucción es descartado y

un NOP yos ejecuta en su lugar,

haciendo de esta una instrucción

de dos ciclos. Si 'a' es

0, El banco del acceso será

selecciónted, anulando el valor

BSR. Si 'a' = 1, entonces el banco

será seleccionado según el valor

BSR (por defecto).

Words: 1

Ciclos: 1 (2)

Nota: 3 ciclos si skip y seguida por

una instrucción 2-palabra.

CPFSLT Comparar con W f, vaya si f <W

Sintaxis: [etiqueta] CPFSLT f [, a]

Operandos: 0 ≤ F≤ 255

un∈ [0,1]

Operación: (f) - (W),

esquiarsi p (f) <(W)

(comparación sin

signo)

Status afectados: Ninguno

Encoding:

Descripción: Compara el contenido de 'f' ubicación de

memoria de datos con el

contenido de W mediante la

realización de un entero sin signo

de resta.

Yoel contenido de f 'f' son menos

que el contenido de W, entonces

la instrucción exagerado se

descarta y un NOP yos ejecuta en

su lugar, haciendo de esta una

instrucción de dos ciclos. Si 'a' es

0, el banco del acceso serán

seleccionados. Si 'a' es 1, el BSR

no se sustituirán (por defecto).

Words: 1

Ciclos: 1 (2)

Nota: 3 ciclos si skip y seguida

por una instrucción 2-

palabra.

Q Actividad Ciclo:

Q1 Q2 Q3 Q4 Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Yof saltar:

Q1 Q2 Q3 Q4

Yof saltar:

Q1 Q2 Q3 Q4

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4 Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4

Ejemplo:HERE CPFSGT REG, 0

NGREATER:

Ejemplo:HERE CPFSLT REG, 1 NLESS

:

LESS :

Antes de Instrucción

Bef

Afte

Page 277: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 245

0000 01DA ffff ffff

0000 0000 0000 0111

CNT = 0x01 Z = 0

W = 0xA5 C = 0 Corriente continua

= 0

W = 0x05 C = 1 Corriente continua

= 0

W = 0x34 C = 1 Corriente continua

= 0

DAW Decimal Adjust registro W

Sintaxis: [etiqueta] DAW

Operandos: Ninguno

Operación: Si [W <>> 03:00 9] o [DC = 1] y luego

(W <03:00>) + 6 → W <3:00>;

más

(W <03:00>) → W <3:00>;

Yof [W <>> 07:04 9] o [C = 1] y luego

(W <07:04>) + 6 → W <7:04>;

más

(W <07:04>) → W <7:04>;

Status afectado:

Codificación C:

Descripción: DAW ajustars el valor de ocho bits

en W, resultante de la anterior

Ade-más de dos variables (cada

uno en formato BCD embalado) y

produce un resultado correcto

embalado BCD.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro W Proceso

Datun

Writo

W

Ejemplo 1:DAW

Antes de Instrucción

DECF Disminuir f

Sintaxis: [etiqueta] [DECF f, d, [a]

Operandos: 0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (f) - 1 → dest Status

afectados: C, DC, N, OV, Z

Encoding:

Descripción: Decrementa registro 'f'. Si "d" es 0, el

resultado se almacena en W. Si

"d" es 1, el resultado se almacena

en 'f' registro (por defecto). Si 'a'

es 0, el banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' = 1, entonces el

banco será seleccionado según el

valor BSR (por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Ejemplo:DiciembreF CNT, 1, 0

Antes de Instrucción

Después de la instrucción

CNT = 0x00 Z = 1

Después de la instrucción

EJEMPLOSe 2:

Antes de Instrucción

W = 0XCE C = 0 Corriente continua

= 0 Después de la instrucción

Page 278: 39564c.en.es

PIC18FXX2

DS39564C-page246 2006 Microchip Technology Inc.

0010 11da ffff ffff

0100 11da ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

DECFSZ Disminuir f, vaya si 0

Sintaxis: [etiqueta] [decfsz f, f, a] [] Operandos:

0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (f) - 1 → dest, Vaya si

el resultado = 0

Status afectados: Ninguno

Encoding:

Descripción: El contenido de 'f' registro son dic-

remented. Si "d" es 0, el resultado

se coloca en W. Si "d" es 1, el

resultado se coloca de nuevo en 'f'

registro (por defecto). Si el

resultado es 0, la siguiente

instrucción, que ya está

exagerado, se descarta, y un NOP

yos ejecuta en su lugar, lo que es

una instrucción de dos ciclos. Si 'a'

es 0, el banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' = 1, entonces el

banco será seleccionado según el

valor BSR (por defecto).

Words: 1

Ciclos: 1 (2)

Nota: 3 ciclos si skip y seguida por

una instrucción 2-palabra.

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

DCFSNZ f Decrementa, vaya si no es 0

Sintaxis: [etiqueta] [DCFSNZ f, d, [a]

Operandos: 0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (f) - 1 → dest, Vaya si

el resultado ≠ 0

Status afectados: Ninguno

Encoding:

Descripción: El contenido de 'f' registro son dic-

remented. Si "d" es 0, el resultado

se coloca en W. Si "d" es 1, el

resultado se coloca de nuevo en 'f'

registro (por defecto). Si el

resultado no es 0, la siguiente

instrucción, que ya está

exagerado, se descarta, y un NOP

es ejecutivoTed lugar, lo que es

una instrucción de dos ciclos. Si 'a'

es 0, el banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' = 1, entonces el

banco será seleccionado según el

valor BSR (por defecto).

Words: 1

Ciclos: 1 (2)

Nota: 3 ciclos si skip y seguida

por una instrucción 2-

palabra.

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Yof saltar:

Q1 Q2 Q3 Q4

Yof saltar:

Q1 Q2 Q3 Q4

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4

Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ejemplo: AQUÍ DECFSZ CNT, 1, 1 Ejemplo: AQUÍ DCFSNZ TEMP, 1, 0

CONTINU

GOTO

E LAZO ZERO

NZERO :

:

Antes de Instrucción

PC = Dirección (AQUÍ)

Después de la instrucción CNT = CNT - 1 Yof CNT = 0;

PC = Dirección (CONTINUE) Yof CNT ≠ 0;

PC = Dirección (AQUÍ +2)

Antes de Instrucción TEMP =?

Después de la instrucción

TEMP = TEMP - 1, si TEMP = 0; PC = Dirección (CERO)

Yof TEMP ≠ 0; PC = Dirección (NZERO)

Page 279: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 247

1110

1111

1111

k19kkk

k7kkk

kkkk

kkkk0

kkkk8

0010 10da ffff ffff

Descodificar

Read literal

'k '<7:00>,

Ningu

na

operació

n

Read literal

'K'

<19:08>,

Escribir

para PC No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Words: 2

Ciclos: 2

Q Actividad

Ciclo:

Q1

Q2

Q3

Q4

CNT = 0x00 Z = 1 C = 1 Corriente continua

= 1

GOTO Unconditional Branch

Sintaxis: [etiqueta] GOTO k

Operands: 0 ≤ k≤ 1048575

Operación: k → PC <20:01>

Estado afectado: Ninguno

Codificación:

1spalabra t (k <07:00>)

2nd palabra (k <19:08>)

Descripción: GOTO allows un salto

incondicional en cualquier

lugar dentro de todo

2 Gama de memoria Mbyte. 'K' El

valor de 20-bit se carga en PC

<20:01>. GOTO yos siempre una

instrucción de dos tiempos.

YoNCF f Incremento

Sintaxis: [etiqueta] [incf f, d, [a] Operandos:

0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (f) + 1 → dest Status

afectados: C, DC, N, OV, Z

Encoding:

Descripción: El contenido de 'f' registro se incrementa.

Si "d" es 0, el resultado se coloca

en W. Si "d" es 1, el resultado se

coloca de nuevo en 'f' registro (por

defecto). Si 'a' es 0, el banco del

acceso serán seleccionados,

ignorando el valor de BSR. Si 'a' =

1, entonces el banco será

seleccionado según el valor BSR

(por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Ejemplo:GOTO NO

Después de la instrucción

PC = Dirección (NO)

Ejemplo:INCF CNT, 1, 0

Antes de Instrucción CNT = 0xFF Z = 0 C =? DC =?

Después de la instrucción

Page 280: 39564c.en.es

PIC18FXX2

DS39564C-page248 2006 Microchip Technology Inc.

0011 11da ffff ffff

0100 10da ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

CNT = CNT + 1 REG = REG + 1 Yof CNT

= 0; Yof REG ≠ 0; Ordenador personal

= Dirección (CERO) Ordenador personal = Address(NZERO) Yof CNT

≠ 0; Yof REG = 0; Ordenador personal

= Address(NZERO) Ordenador personal = Address(CERO)

INCFSZ

Yof ncrement, vaya si 0

INFSNZ

Yof ncrement, vaya si no es 0

Sintaxis: [Etiqueta] INCFSZ f [, d [, a] Sintaxis: [Etiqueta] INFSNZ f [, d [, a]

Operands: 0≤ F≤ 255 Operands: 0≤ F≤ 255

d∈ [0,1]

un∈ [0,1] d∈ [0,1]

un∈ [0,1]

Operación: (F) + 1 → dest, Operación: (F) + 1 → dest,

esquiarp = 0 si el resultado esquiarp si el resultado ≠ 0

Status afectado: Ninguno Status afectado: Ninguno

Encoding: Encoding:

Descripción: Thcontenidos electrónicos de 'f' registro son

Descripción: Thcontenidos electrónicos de 'f' registro son incremented. Si "d" es 0, el

resultado es incremented. Si "d" es 0, el

resultado es lugard en W. Si 'd' es 1, el resultado es

lugard en W. Si 'd' es 1, el resultado es lugard vuelta en 'f' registro. (Por

defecto) lugard vuelta en 'f' registro (por

defecto). Yof el resultado es 0, la siguiente instrucción

Yof el resultado no es 0, el siguiente ción, Que ya está exagerado, es instrucción, que ya está

DISCArded, y un NOP yos

ejecutado insTead, por lo que es un ciclo de dos

exagerado, Se descarta, y un NOP

es ejecuciónTed lugar, lo que es una de dos

instrucción. Si 'a' es 0, el acceso cycle instrucciones. Si 'a' es 0, el

Banco serán seleccionados, anulando

Accesos Banco serán seleccionados, sobre- ªe BSR valor. Si a = 1, entonces el viajar en el valor BSR. Si 'a' = 1, entonces prohibirk se selecciona de acuerdo

con la ªe banco se selecciona según el

BSR valor (predeterminado). BSR valor (predeterminado).

Words: 1 Words: 1

Ciclos: 1(2) Ciclos: 1(2)

Nota: 3 ciclos si saltar y seguido Nota: 3 ciclos si saltar y seguido

Q Actividad Ciclo:

by una instrucción de 2 palabras.

Q Actividad Ciclo:

by una instrucción de 2 palabras.

Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Yof saltar:

Q1 Q2 Q3 Q4

Yof saltar:

Q1 Q2 Q3 Q4

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4

Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Ejemplo: AQUÍ INCFSZ CNT, 1, 0 Ejemplo: AQUÍ INFSNZ REG, 1, 0 NZerO : ZERO ZERO : NZERO

Antes de Instrucción

PC = Dirección (AQUÍ)

Después de la instrucción

Betanto Instrucción

PC = Dirección (AQUÍ)

Después de la instrucción

Page 281: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 249

0000 1001 kkkk kkkk

0001 00da ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Sintaxis: [Etiqueta] IORLW k Sintaxis: [Etiqueta] IORWF f [, d [, a]

Operands: 0≤ k≤ 255 Operands: 0≤ F≤ 255

Operación: (W). OR. k → W d∈ [0,1]

un∈ [0,1]

IORLW Inclusive OR literal con W IORWF Inclusive OR W con f

Status afectado: N, Z

Encoding:

Descripción: El contenido de W se OR'ed con los

ocho bits literal "k". El resultado

se coloca en W.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

literatur

al 'k'

Proceso

Datun

Escriturae para W

Ejemplo:IORL0x35 W

Antes de Instrucción

W = 0x9A

Después de la instrucción

W = 0xBF

Operación: (W) OR.. (F) → dest

Status afectado: N, Z

Encoding:

Description: Inclusive OR W con 'f' registro. Si "d" es

0, el resultado se coloca en W. Si

"d" es 1, el resultado se coloca de

nuevo en 'f' registro (por defecto).

Si 'a' es 0, el

Accesos Banco será seleccionado,

a lo largo de montar el valor BSR.

Si 'a' = 1, entonces el banco será

seleccionado según el valor BSR

(por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Ejemplo:IORWRESULTADO F, 0, 1

Antes de Instrucción RESULTADO = 0x13

W = 0x91

Después de la instrucción RESULTADO = 0x13

W = 0x93

Page 282: 39564c.en.es

PIC18FXX2

DS39564C-page250 2006 Microchip Technology Inc.

1110

1111 1110

0000 00ff

k7kkk k11kkk

kkkk

0101 00da ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Escribir W

REG = 0x22 W = 0x22

LFSR carga FSR

Sintaxis: [etiqueta] LFSR f, k

Operands: 0 ≤ F≤ 2

0≤ k≤ 4095

Operación: k → Estado FSRf

afectado: Ninguno

Codificación:

Descripción: El 12-bit literal "k" se carga en el

archivo de registro, seleccione

apuntada por 'f'.

Words: 2

Ciclos: 2

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Read literal

'K"MSB Proceso

Datun

Writo

literatur

aMSB

'k' l a

FSRfH Descodificar

Read literal

'K'LSB Proceso

Datun

Escrituraliteral e

'K'A FSRfL Ejemplo:LFSR 2, 0x3AB

Después de la instrucción FSR2H = 0x03 FSR2L = 0xAB

MOVMueva F f

Sintaxis: [etiqueta] [movf f, d, [a] Operandos:

0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: f → dest Status

afectado: N, Z Encoding:

Descripción: El contenido de 'f' registro se traslado a

un destino depende de la

condición de 'd'. Si "d" es 0, el

resultado se coloca en W. Si "d"

es 1, el resultado se coloca de

nuevo en 'f' registro (por defecto).

'F' ubicación puede ser en

cualquier lugar en el banco de 256

bytes. Si 'a' es

0, El banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' = 1, entonces el

banco será seleccionado según el

valor BSR (por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Ejemplo:MOVF REG, 0, 0

Antes de Instrucción REG = 0x22 W = 0xFF

Después de la instrucción

Page 283: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 251

0000 0001 kkkk kkkk

1100

1111

ffff

ffff

ffff

ffff

ffffs fffFd

REG1 REG2

= =

0x33 0x11

Después de la instrucción

REG1 = 0x33, REG2 = 0x33

MOVFF Move f af

Sintaxis: [etiqueta] MOVFF fs, fd

Operands: 0 ≤ fs ≤ 4095 0≤ fd ≤ 4095

Operación: (fs) → fd

Status afectados: Ninguno

Encoding:

1st palabra (fuente)

2nd palabra (destin.)

Descripción: El contenido del registro fuente "fs" se

trasladó a registro de destino

'fd ". Ubicación de la "fs" fuente puede estar en cualquier lugar en el espacio 4096 byte de datos (000h a FFFH) y ubicación

odestino f 'fd' también puede ser

en cualquier lugar de 000h a

FFFH.

Either fuente o destino puede ser

W (una situación especial utilidad).

MOVFF yos particularmente útil

para la transferencia de una

posición de memoria de datos a un

registro periférico (por ejemplo, el

búfer de transmisión o un puerto I /

O).

TheMOVFF INSTRUCCIONESn

No se puede utilizar el PCL, Tosu,

TOSH o TOSL como el registro de

destino.

Nota: TheMOVFF instrucción

hombrod no se puede

utilizar para mod-car

valores de interrupción

mientras que cualquier

interrupción está habilitada.

Vea la Sección 8.0 para

más información.

MOVLB literal a nibble bajo en BSR Move

Sintaxis: [etiqueta] MOVLB k

Operands: 0 ≤ k≤ 255

Operación: k → BSR Estado

afectado: Ninguno

Codificación:

Descripción: El 8-bit literal "k" se carga en el

Registro de selección de banco

(BSR).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Read literal

'k ' Proceso

Datun

Escrituralit

eral e 'K' a

BSR

Ejemplo:MOVLB 5

Antes de Instrucción BSR = registro 0x02

Después de la instrucción BSR = registro 0x05

Words: 2

Ciclos: 2 (3) Actividad

Ciclo Q:

Q1 Q2 Q3 Q4

Descodificar

Leer

Registe'f'

r (src)

Proceso

Datun

No

operation

Decódigo Ninguna

operación

Nficticia o

leer

Ningu

na

operació

n

Writo

Registe'f'

r (dest)

Ejemplo:MOVFF REG1, REG2

Antes de Instrucción

Page 284: 39564c.en.es

PIC18FXX2

DS39564C-page252 2006 Microchip Technology Inc.

0000 1110 kkkk kkkk

0110 111a ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Escritur

aregistro

e 'f'

W = 0x4F REG = 0x4F

MOVLW

Move literal a W

MOVWF

Move W af

Sintaxis: [Etiqueta] MOVLW k Sintaxis: [Etiqueta] MOVWF f [, a]

Operands:

Operativa:

Status afectado:

0≤ k≤ 255

k → W

Ninguno

Operands:

Operación:

0≤ F≤ 255

a ∈ [0,1]

(W) → F

Encoding: Status afectados

: Ninguno

Descripción: Los ocho bits literal "k" se carga en

W.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

literatur

al 'k'

Proceso

Datun

Escriturae para W

Ejemplo:MOVLW 0x5A

Después de la instrucción

W = 0x5A

Encoding:

Descripción: Mover datos de W para registrar 'f'.

Locatio'f' n puede estar en cualquier lugar en la

256 bytes banco. Si 'a' es 0, el

Accesos Banco será seleccionado,

a lo largo de montar el valor BSR.

Si 'a' = 1, entonces el banco será

seleccionado según el valor BSR

(por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Ejemplo:MOVWF REG, 0

Antes de Instrucción

W = 0x4F REG = 0xFF

Después de la instrucción

Page 285: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 253

0000 1101 kkkk kkkk

0000 001a ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Escritura

e

inscribe

PRODH:

Prödl

W PRODH

= =

0XE2 ?

Prödl = ? Después de la instrucción

W = 0XE2 PRODH = 0xAD Prödl = 0x08

REG W

= =

0XC4 0XB5

PRODH Prödl

= =

? ?

Después de la instrucción

W = 0XC4 REG = 0XB5 PRODH = 0x8A Prödl = 0x94

MULLW Multiply literal con W MULWF Multiply W con f

Sintaxis: [Etiqueta] MULLW k Sintaxis: [Etiqueta] MULWF f [, a]

Operands:

Operación:

0≤ k≤ 255

(W) X k → PRODH:

Prödl

Operands: 0≤ F≤ 255

a ∈ [0,1]

Status afectados: Ninguno

Encoding:

Descripción: Una multiplicación sin signo que se

auto-Ried a cabo entre el

contenido de W y el 8-bit literal

"k". La

16-bit resultado se coloca en

PRODH: par Prödl registro.

PRODH contiene el byte alto.

W no se modifica.

Ninguno de los indicadores

de estado se ven

afectados.

Tenga en cuenta que ni el

desbordamiento ni acarreo es

posible en esta operación. Un

resultado de cero es posible,

pero no se detecta.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

literatur

al 'k'

Proceso

Datun

Writo

registra

PRODH:

Prödl

Ejemplo:MULLW 0xC4

Antes de Instrucción

Operación: (W) x (f) → PRODH: Prödl

Status afectados: Ninguno

Encoding:

Descripción: Una multiplicación sin signo que se

auto-Ried a cabo entre el

contenido de W y 'f' la ubicación

del archivo de registro. El

resultado de 16-bit se almacena

en el PRODH: Prödl par de

registro. PRODH contiene el

byte alto. Tanto W y 'f' no se han

modificado. Ninguno de los

indicadores de estado se ven

afectados.

Tenga en cuenta que ni el

desbordamiento ni acarreo es

posible en esta operación. Un

resultado de cero es posible,

pero no se detecta. Si 'a' es 0,

el banco del acceso serán

seleccionados, ignorando el

valor de BSR. Si

'Una'= 1, entonces el banco

será seleccionado según el

valor BSR (por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Ejemplo:MULWF REG, 1

Antes de Instrucción

Page 286: 39564c.en.es

PIC18FXX2

DS39564C-page254 2006 Microchip Technology Inc.

0000

1111 0000

xxxx 0000

xxxx 0000

xxxx

0110 110

bis

del

Regla

mento

ffff ffff

Decódigo Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Descodificar

Leer

registro 'f' Proceso

Datun

W'f' rito

registro

Niega NEGF f

Sintaxis: [etiqueta] NEGF f [, a]

Operandos: 0 ≤ F≤ 255

un ∈ [0,1]

Operación: (f) + 1 → f Estado

Afectado: N, OV, C, DC, Z

Encoding:

Descripción: 'f' Location es negado con complemento

a dos. El resultado se coloca en "f"

de la ubicación de la memoria de

datos. Si 'a' es

0, El banco del acceso será

selecciónted, anulando el valor

BSR. Si 'a' = 1, entonces el banco

será seleccionado según el valor

BSR.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

NOP No operación Sintaxis:

[etiqueta] NOP Operandos:

Ninguno

Operación: Ninguna operación

Status afectados: Ninguno

Encoding:

Descripción: No hay operación.

Palabras: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Ejemplo:

Ninguno.

Ejemplo:NEGF REG, 1

Antes de Instrucción

REG = 0011 1010 [0x3A]

Después de la instrucción

REG = 1100 0110 [0XC6]

Page 287: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 255

0000 0000 0000 0110

0000 0000 0000 0101

Decódigo PUSH 2 PC

en la pila de

retorno

Ningu

na

operació

n

Ningu

na

operació

n

AS = 00345Ah Ordenador personal

= 000124h

AS = 0031A2h Stack (1 nivel hacia abajo)

= 014332h

Ordenador personal = 000126h AS = 000126h Stack (1 nivel hacia abajo)

= 00345Ah

Top Pop POP de Stack Return

Sintaxis: [etiqueta] POP

Operandos: Ninguno

Operación: (TOS) → bit cubo

Status afectados: Ninguno

Encoding:

Descripción: El valor TOS se retira la pila de retorno y

se descarta. El valor de TOS se

convierte en el valor ante-rior que

se inserta en la pila de retorno.

This instrucción se proporciona

para permitir al usuario gestionar

correctamente la pila de retorno

para incorporar una pila de

software.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Push Push Top of Stack Return

Sintaxis: [etiqueta] PUSH

Operandos: Ninguno

Operación: (PC +2) → AS

Status afectados: Ninguno

Encoding:

Descripción: El PC 2 se inserta en la parte superior de

la pila de retorno. El valor TOS

anterior es empujado hacia abajo

en la pila. Esta instrucción permite

implementar una pila de software

mediante la modificación de TOS,

y después lo empuja en la pila de

retorno.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Decódigo Ningu

na

operació

n

CorreosP TOS

value

No

operation

Ejemplo:POP GOTO NUEVO

Antes de Instrucción

Después de la instrucción

AS = 014332h PC = NUEVO

Ejemplo:PUSH

Antes de Instrucción

Después de la instrucción

Page 288: 39564c.en.es

PIC18FXX2

DS39564C-page256 2006 Microchip Technology Inc.

1101 1nnn nnnn nnnn

0000 0000 1111 1111

Rcall relativa Call

Sintaxis: [etiqueta] rcall n

Operands: -1024 ≤ n≤ 1023

Operación: (PC) + 2 → AS, (PC) + 2 +

2n → Ordenador

personal

Status afectados: Ninguno

Encoding:

Descripción: Llamada de subprograma con un salto hasta

1K de la ubicación actual. En

primer lugar, la dirección de

retorno (PC 2) se inserta en la pila.

A continuación, agregue el

complemento a 2 el número '2 n 'a

la PC. Desde el PC se han

incrementado a buscar la siguiente

instrucción, la nueva dirección

será PC +2 +2 n.

This instrucción es una

instrucción de dos ciclos.

Words: 1

Ciclos: 2

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

REPOS Restablecer

Sintaxis: [etiqueta] Operandos

RESET: Ninguno

Operación: Borrar todos los registros y banderas

que se ven afectados por un

reset MCLR.

Status afectados: Todos

Encoding:

Descripción: Esta instrucción proporciona una manera

de ejecutar un Reset MCLR en

software.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Comi

ence

de

nuev

oesta

blece

r

Ningu

na

operació

n

Ningu

na

operació

n Ejemplo:REINICIO

Después de la instrucción

Registros = Valor de Reajuste Banderas* = Valor de Reajuste

Descodificar

Read literal

'N' Empuje

para PC

apilar

Proceso

Datun

Escribir para PC

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Ejemplo:HERE rcall Saltar

Antes de Instrucción

PC = Dirección (AQUÍ)

Después de la instrucción PC = Dirección (Jump)

AS = Dirección (AQUÍ +2)

Page 289: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 257

0000 1100 kkkk kkkk

0000 0000 0001 000s

Decódigo Ningu

na

operació

n

Ningu

na

operació

n

correosp PC

de pila

Set GIEH o

GIEL No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Retfie Regreso de interrupción

Sintaxis: [etiqueta] retfie [s] Operandos: s

∈ [0,1]

Operación: (TOS) → PC,

1→ GIE / o GIEH PEIE /

GIEL, si s = 1

(WS) → W,

(STATUSS) → STATUS

(BSRS) → BSR,

PCLATU, PCLATH no se

modifican. Estado afectado: GIE / GIEH, PEIE / GIEL.

Encoding:

Descripción: El Retorno de interrupción. Stack se

extrae y Top-of-Stack (TOS) se

carga en el PC. Las interrupciones

están habilitadas estableciendo la

interrupción de prioridad alta o

baja mundial bit de habilitación. Si

's' = 1, el contenido de la sombra

registra WS, STATUSS BSRS y se

cargan en los registros

correspondientes, W, STATUS y

BSR. Si 's' = 0, no hay

actualización de estos registros se

produce (por defecto).

Words: 1

Ciclos: 2

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

RETLW retorno literal a W

Sintaxis: [etiqueta] RETLW k

Operands: 0 ≤ k≤ 255

Operación: k → W,

(TOS) → PC,

PCLATU, PCLATH no se han modificado

Status afectados: Ninguno

Encoding:

Descripción: W se carga con el literal de ocho bits

'K'. El contador de programa se

carga desde la parte superior de la

pila (la dirección de retorno). El

pestillo de alta dirección (PCLATH)

permanece sin cambios.

Words: 1

Ciclos: 2

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

literatur

al 'k'

Proceso

Datun

correosPC p

de pila,

escribir a W Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Ejemplo:

CALCUADRO L, W contiene la tabla

, Valor de

compensación

, W tiene ahora

; Tabla de

valores

Ejemplo:RETFIE 1

Después de interrupción PC = TOS W = LR = BSR BSRS STATUS = STATUSS GIE / GIEH, PEIE / GIEL = 1

:

TABLA

ADDWF PCL, W =

desplazamiento RETLW k0,

k1 Comience mesa RETLW;

:

:

RETLW kn; final de la tabla

Antes de Instrucción

W = 0x07

Después de la instrucción

W = valor de kn

Page 290: 39564c.en.es

PIC18FXX2

DS39564C-page258 2006 Microchip Technology Inc.

0011 01DA ffff ffff

0000 0000 0001 001S

Decódigo Ningu

na

operació

n

Proceso

Datun

correosp PC

de pila No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

REG = 1110 0110 C = 0

REG = 1110 0110 W = 1100 1100 C = 1

RETORNO Retorno de subrutina RLCF girar a la izquierda a través de f Carry

Sintaxis: [Etiqueta] RETURN [S] Sintaxis: [Etiqueta] RLCF f [, d [, a]

Operands: s∈ [0,1] Operands: 0≤ F≤ 255 Operación: (TOS) → PC, si s = 1

(WS) → W,

(STATUSS) → STATUS

(BSRS) → BSR,

PCLATU, PCLATH no se han modificado

Status afectados: Ninguno

Encoding:

Descripción: El Retorno de subrutina. La pila se extrae

y la parte superior de la pila (TOS)

se carga en el contador de

programa. Si 's' = 1, el contenido

de la sombra registra WS,

STATUSS BSRS y se cargan en

sus respondieron cor-registros, W,

el estado y BSR. Si 's' = 0, no hay

actualización de estos registros se

produce (por defecto).

Words: 1

Ciclos: 2

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

d ∈ [0, 1]

un∈ [0,

1]

Operación: (f <n>) → dest <n1>, (f <7>)

→ C,

(C) → dest <0>

Status afectado: C, N, Z

Encoding:

Descripción: El contenido de 'f' registro se rotan un

poco hacia la izquierda a través

del indicador de acarreo. Si "d" es

0, el resultado se coloca en W. Si

"d" es 1, el resultado se almacena

en 'f' registro (por defecto). Si 'a'

es 0, el banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' = 1, entonces el

banco será seleccionado según el

valor BSR (por defecto).

Cregistro f

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Ejemplo:REGRESAR

Después de interrupción

PC = TOS

Ejemplo:RLCF REG, 0, 0

Antes de Instrucción

Después de la instrucción

Page 291: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 259

0100 01DA ffff ffff

0011 00da ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Escriba a

destino

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

REG =

Después de la instrucción

1010 1011 Ejemplo:RRCF REG, 0, 0

Antes de Instrucción REG = 0101 0111 REG = 1110 0110

C = 0 Después de la

instrucción REG = 1110 0110 W = 0111 0011 C = 0

RLNCF Girar a la izquierda f (sin llevar)

Sintaxis: [etiqueta] [RLNCF f, d, [a] Operandos:

0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (f <n>) → dest <n+1>, (f <7>)

→ dest <0>

Status afectado: N, Z

Encoding:

Descripción: El contenido de 'f' registro se rotan un

poco a la izquierda. Si "d" es 0, el

resultado se coloca en W. Si 'd' es

1, el resultado se almacena en el

registro

'f '(por defecto). Si 'a' es 0, el

banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' es 1, entonces el

banco será seleccionado según

el valor BSR (por defecto).

registro f

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

RRCF Rotate Right f a través de Carry

Sintaxis: [etiqueta] [RRCF f, d, [a]

Operandos: 0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (f <n>) → dest <n-1>, (f

<0>) → C,

(C) → dest <7>

Status afectados: C, N, Z

Encoding:

Descripción: El contenido de 'f' registro se rotan un

poco a la derecha a través del

indicador de acarreo. Si "d" es 0,

el resultado se coloca en W. Si "d"

es 1, el resultado se coloca de

nuevo en 'f' registro (por defecto).

Si 'a' es 0, el banco del acceso

serán seleccionados, ignorando el

valor de BSR. Si 'a' es 1,

entonces el banco será

seleccionado según el valor BSR

(por defecto).

Cregistro f

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Ejemplo:RLNCF REG, 1, 0

Antes de Instrucción

Page 292: 39564c.en.es

PIC18FXX2

DS39564C-page260 2006 Microchip Technology Inc.

0110 100 A ffff ffff

0100 00da ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Escritur

aregistro

e 'f'

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

W = 1110 1011 REG = 1101 0111

RRNCF Rotate Right f (sin llevar)

Sintaxis: [etiqueta] [RRNCF f, d, [a]

Operandos: 0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (f <n>) → dest <n-1>, (f

<0>) → dest <7>

Status afectado: N, Z

Encoding:

Descripción: El contenido de 'f' registro se rotan un

poco a la derecha. Si "d" es 0, el

resultado se coloca en W. Si 'd' es

1, el resultado se coloca de nuevo

en registrarse

'f '(por defecto). Si 'a' es 0, el

banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' es 1, entonces el

banco será seleccionado según

el valor BSR (por defecto).

registro f

SETF Set f

Sintaxis: [etiqueta] setf f [, a]

Operandos: 0 ≤ F≤ 255

un∈ [0,1]

Operación: FFh → f Estado

afectado: Ninguno

Codificación:

Descripción: El contenido del regis-tro especificado se

ponen a FFh. Si 'a' es 0, el banco

del acceso será seleccionado, a lo

largo de montar el valor BSR. Si 'a'

es 1, entonces el banco será

seleccionado según el valor BSR

(por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Ejemplo:SETF REG, 1

Antes de Instrucción REG = 0x5A

Después de la instrucción

REG = 0xFF

EJEMPLOSe 1:RRNCF REG, 1, 0

Antes de Instrucción

REG = 1101 0111

Después de la instrucción

REG = 1110 1011

EJEMPLOSe 2:RRNCF REG, 0, 0

Antes de Instrucción

W = ? REG = 1101 0111

Después de la instrucción

Page 293: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 261

0101 01DA ffff ffff

0000 0000 0000 0011

Decódigo Ningu

na

operació

n

Proceso

Datun

Go

para

dormi

r

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

REG = 3 W = 2 C = 1

REG = 0 W = 2 C = 1 Z = 1; resultado es

cero N = 0

Entre en el modo SLEEP SLEEP

Sintaxis: [etiqueta] SLEEP Operandos:

Ninguno

Operación: 00h → WDT,

0→ WDT postscaler,

1→ A,

0→ PD

Status afectado: A,

Encoding PD:

Descripción: El bit de estado de apagado (PD) se

borra. El bit de estado de tiempo

de espera (TO) se establece.

Temporizador de vigilancia y su

postscaler se borran.

El procesador se pone en SLEEP

mode con el oscilador se detuvo.

Palabras: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

SUBFWB Resta f de W con préstamos

Sintaxis: [etiqueta] [SUBFWB f, d, [a] Operandos:

0 ≤ F≤ 255

d∈ [0, 1]

un∈ [0, 1]

Operación: (W) - (f) - (C) → dest Status

afectado: N, OV, C, DC, Z Encoding:

Descripción: Reste registro 'f' y llevar la bandera

(préstamos) de W (método de

complemento a 2). Si "d" es 0, el

resultado se almacena en W. Si

"d" es 1, el resultado se

almacena en 'f' registro (por

defecto). Si 'a' es

0, El banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' es 1, entonces el

banco será seleccionado según

el valor BSR (por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Ejemplo:DORMIR

Antes de Instrucción

TO =? PD =?

Después de la instrucción

TO = 1 † PD = 0

† Si las causas WDT wake-up, este bit se borra.

Ejemplo 1:SUBFWB REG, 1, 0

Antes de Instrucción

Después de la instrucción REG = FF W = 2

C = 0 Z = 0 N = 1; resultado es negativo

Ejemplo 2:SUBFWB REG, 0, 0

Antes de Instrucción REG = 2

W = 5 C = 1

Después de la instrucción REG = 2

W = 3 C = 1 Z = 0 N = 0; resultado es positivo

Ejemplo 3:SUBFWB REG, 1, 0

Antes de Instrucción

REG = 1 W = 2 C = 0

Después de la instrucción

Page 294: 39564c.en.es

PIC18FXX2

DS39564C-page262 2006 Microchip Technology Inc.

0000 1000 kkkk kkkk

0101 11da ffff ffff

W = 3 C = ?

REG = FFh, (2 de complemento) W = 2

C = 0; resultado es negativo Z = 0 N = 1

SUBLW Restar W desde literal

Sintaxis: [etiqueta] SUBLW k

Operands: 0 ≤ k≤ 255

Operación: k - (W) → W Estado

Afectado: N, OV, C, DC, Z

Encoding:

Descripción: W se resta de la de ocho bits literal 'k'.

El resultado se coloca

yon

W. Palabras: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

literatur

al 'k'

Proceso

Datun

Escriturae para W

EJEMPLOSe 1: Subl0x02 W

Antes de Instrucción

W = 1 C = ?

Después de la instrucción

W = 1 C = 1; resultado es positivo

Z = 0 N = 0

EJEMPLOSe 2:Subl0x02 W

Antes de Instrucción

W = 2 C =?

SUBWF Resta W de f

Sintaxis: [Etiqueta] SUBWF f, d [a]

[, Operandos: 0 ≤ F≤ 255

d∈ [0, 1]

un∈ [0,

1]

Operación: (f) - (W) → dest Status

afectado: N, OV, C, DC, Z

Encoding:

Descripción: Resta W del 'f' registro (método de

complemento a 2). Si "d" es 0, el

resultado se almacena en W. Si

"d" es 1, el resultado se

almacena en 'f' regis-tro (por

defecto). Si 'a' es 0, el banco del

acceso serán seleccionados,

ignorando el valor de BSR. Si 'a'

es

1, Entonces el banco será

seleccionado según el valor

BSR (por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

Ejemplo 1:SUBWF REG, 1, 0

Antes de Instrucción REG = 3

W = 2 C =?

Después de la instrucción Después de la instrucción

REG = 1

W = 0 W = 2 C = 1 ; Resultado es cero C = 1; resultado es

positivo Z = 1 Z = 0 N = 0 N = 0

EJEMPLOSe 3:

SUBLW 0x02 Ejemplo 2: SUBWF REG, 0, 0

Antes de Instrucción

W = FF, (complemento a 2) C = 0; resultado es negativo Z = 0 N = 1

Antes de Instrucción REG = 2

W = 2

Después de la instrucción

REG = 2

W = 0 C = 1; resultado es cero Z = 1 N = 0

Ejemplo 3:SUBWF REG, 1, 0

Antes de Instrucción REG = 1

W = 2 C =?

Después de la instrucción

Page 295: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 263

0101 10da ffff ffff

0011 10da ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

Escriba a

destino

Descodificar

Leer

registro 'f' Proceso

Datun

Writo de

destino

REG = 0x1B (0001 1011) W = 0X1A (0001 1010) C = 0

Después de la instrucción REG = 0x1B (0001 1011) W = 0x00 C = 1 Z = 1 ; Resultado es

cero N = 0 EJEMPLOSe 3:

S UBWFB REG, 1, 0

Antes de Instrucción REG = 0x03 (0000 0011) W = 0X0E (0000 1101) C = 1

Después de la instrucción REG = 0Axf5 (1111 0100)

, [2 de comp] W = 0X0E (0000 1101) C = 0 Z = 0 N = 1 ; Resultado es

negativo

SUBWFB Resta W de f con la Obtención de Préstamos

Sintaxis: [Etiqueta] SUBWFB f, d [a]

[, Operandos: 0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (f) - (W) - (C) → dest Status

afectado: N, OV, C, DC, Z Encoding:

Descripción: Restar W y la bandera de acarreo (bor-

fila) de 'f' registro (método de

complemento a 2). Si "d" es 0, el

resultado se almacena en W. Si

"d" es 1, el resultado se almacena

en 'f' registro (por defecto). Si 'a' es

0, el banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' es 1, entonces el

banco será seleccionado según el

valor BSR (por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Swapf f Permuta

Sintaxis: [etiqueta] [swapf f, d, [a] Operandos:

0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación: (f <03:00>) → dest <7:04>, (f

<07:04>) → dest

<3:00>

Status afectados: Ninguno

Encoding:

Descripción: Los nibbles superior e inferior de 'f' reg-

tro se intercambian. Si "d" es 0, el

resultado se coloca en W. Si "d" es

1, el resultado se coloca en 'f'

registro (por defecto). Si 'a' es 0, el

acceso

Bank será seleccionado, anulando

ªe BSR valor. Si 'a' es 1,

entonces el banco será

seleccionado según el valor BSR

(por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

EJEMPLOSe 1:SUBWFB REG, 1, 0

Antes de Instrucción

REG = 0x19 (0001 1001) W

= 0x0D (0000 1101) C = 1

Después de la instrucción

Ejemplo:SWAPF REG, 1, 0

Antes de Instrucción REG = 0x53

Después de la instrucción REG = 0x0C (0000 1011) REG = 0x35 W = 0x0D (0000 1101) C = 1 Z = 0 N = 0 ; Resultado es positivo

EJEMPLOSe 2:SUBWFB REG, 0, 0

Antes de Instrucción

Page 296: 39564c.en.es

PIC18FXX2

DS39564C-page264 2006 Microchip Technology Inc.

0000 0000 0000 10nn

nn =0

*

=1 *

+

=2 *

-

=3 +

*

TABLAT = 0XAA TBLPTR = 0x01A357 MEMORY (0x01A357) = 0x12 MEMORY (0x01A358) = 0x34

TBLRD Tabla Lee

Sintaxis: [etiqueta] TBLRD (*, * +, * -; + *)

Operandos: Ninguno

Operación: si * TBLRD, (Prog Mem (TBLPTR)) → TABLAT; TBLPTR - Sin cambios; yof TBLRD *

+, (Prog Mem (TBLPTR)) → TABLAT; (TBLPTR) +1 → TBLPTR; yof TBLRD *

-, (Prog Mem (TBLPTR)) → TABLAT; (TBLPTR) -1 → TBLPTR; yof TBLRD +

*, (TBLPTR) +1 → TBLPTR; (Prog Mem (TBLPTR)) → TABLAT;

Status afectados: Ninguno

Encoding:

TBLRD Tabla Read (continuación)

Ejemplo 1:TBLRD * +;

Antes de Instrucción TABLAT = 0x55 TBLPTR MEMORY (0x00A35

= 6) = 0x00A356

0x34

Después de la instrucción TABLAT = 0x34 TBLPTR = 0x00A357

Ejemplo 2:TBLRD + *;

Antes de Instrucción

Después de la instrucción TABLAT = 0x34 TBLPTR = 0x01A358

Descripción: Esta instrucción se utiliza para leer las

carpas con-de la memoria de programa (PM). Para hacer frente a la memoria de programa, un puntero llamado tabla de punteros (TBLPTR) se utiliza. Los TBLPTR un puntero (21-bit) puntos para cada byte en la memoria de programa. TBLPTR tiene un rango de direcciones de 2 Mbytes.

TBLPTR [0] = 0: byte menos significativo de la palabra de memoria de programa

TBLPTR [0] = 1: Byte más significativo de la palabra de memoria de programa

TheTBLRD instrucción puede modificar el valor de TBLPTR como sigue:

• ningún cambio

• incremento posterior

• post-decremento

• pre-incremento

Words: 1

Ciclos: 2

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Decódigo Ninguna operación

Ninguna operación

Ninguna operación

No operation

No la operación (lectura de memoria de programa)

Ninguna operación

No funcionamiento

(Auto judiciale TABLAT)

Page 297: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 265

0000 0000 0000 11nn

nn = 0

*

=1 *

+

=2 *

-

=3 +

*

Tabla TBLWT Escribir

Sintaxis: [etiqueta] TBLWT (*, * +, * -; + *)

Operandos: Ninguno

Operación: si * TBLWT, (TABLAT) → Registro de explotación; TBLPTR - Sin cambios; si TBLWT * +, (TABLAT) → Registro de explotación; (TBLPTR) +1 → TBLPTR; si TBLWT * -, (TABLAT) → Registro de explotación; (TBLPTR) -1 → TBLPTR;

(TBLPTR) +1 → TBLPTR; (TABLAT) → Registro de explotación;

Status afectados: Ninguno

Encoding:

Descripción: Esta instrucción usa los 3 LSB de la

TBLPTR para determinar cuál de la explotación 8 registra los datos se escriben en TABLAT. Los 8 registros de retención se utilizan para programar los contenidos del Pro-grama de memoria (PM). Consulte la Sección 5.0 para obtener información sobre la escritura en la memoria FLASH. Los TBLPTR un puntero (21-bit) puntos a cada byte en la memoria de programa. TBLPTR tiene una dirección 2 MBtye alcance. El LSB de la TBLPTR selecciona que byte de la ubicación de memoria de programa para acceder.

TBLPTR [0] = 0: byte menos significativo de la palabra de memoria de programa

TBLPTR [0] = 1: Byte más significativo de la palabra de memoria de programa

TheTBLWT instrucción puede modificar el valor de TBLPTR como sigue:

• ningún cambio

• incremento posterior

• post-decremento

• pre-incremento

Words: 1

Ciclos: 2

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Page 298: 39564c.en.es

PIC18FXX2

DS39564C-page266 2006 Microchip Technology Inc.

TABLAT = 0x55 TBLPTR = 0x00A357 HOLDING REGISTRO (0x00A356) = 0x55

TBLWT Tabla Write (Continuación)

Ejemplo 1:TBLWT * +;

Antes de Instrucción TABLAT = 0x55 TBLPTR = 0x00A356 HOLDING REGISTRO (0x00A356) = 0xFF

AfteInstrucciones (r finalización tabla de escritura)

Ejemplo 2:TBLWT + *;

Antes de Instrucción TABLAT = 0x34 TBLPTR = 0x01389A registro de explotación (0x01389A) = 0xFF registro de explotación (0x01389B) = 0xFF

After Instrucción (finalización tabla de escritura)

TABLAT = 0x34 TBLPTR = 0x01389B registro de explotación (0x01389A) = 0xFF registro de explotación (0x01389B) = 0x34

Descodificar

Ningu

na

operació

n

Ningu

na

operació

n

Ningu

na

operació

n Ningu

na

operació

n

Ninguna

operació

n (Leído

TABLAT)

Ningu

na

operació

n

Ninguna

operació

n

(Auto judiciale para Holding

Registro o memoria)

Page 299: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 267

0000 1010 kkkk kkkk

0110 011a ffff ffff

Descodificar

Leer

registro 'f' Proceso

Datun

No

operation

Yof CNT = 0x00, Ordenador personal

= Address(CERO) Yof CNT ≠ 0x00, Ordenador personal

= Dirección (NZERO)

TSTFSZ prueba f, vaya si 0

Sintaxis: [etiqueta] TSTFSZ f [, a]

Operandos: 0 ≤ F≤ 255

un∈ [0,1]

Operación: saltar si f = 0

Status afectados: Ninguno

Encoding:

Descripción: Si 'f' = 0, la siguiente instrucción, se

vendió durante el presente ins-

trucción ejecución, se descarta y

un NOP yos ejecutado, haciendo

de esta una instrucción de dos

ciclos. Si 'a' es 0, el banco del

acceso será seleccionado, a lo

largo de montar el valor BSR. Si 'a'

es 1,

lan el banco será seleccionado

según el valor BSR (por

defecto).

Words: 1

Ciclos: 1 (2)

Nota: 3 ciclos si skip y seguida por

una instrucción 2-palabra.

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

XORLW Exclusive OR literal con W

Sintaxis: [etiqueta] XORLW k

Operands: 0 ≤ k≤ 255

Operación: (W) XOR.. k → W Estado

Afectado: N, Z

Encoding:

Descripción: El contenido de W se XOR con la 8-bit

literal "k". El resultado se coloca

en W.

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

literatur

al 'k'

Proceso

Datun

Escriturae para W

Ejemplo:XORLW 0xAF

Antes de Instrucción

W = 0xB5

Después de la instrucción

W = 0x1A

Yof saltar:

Q1 Q2 Q3 Q4

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Yof saltar y seguido por instrucción de 2 palabras:

Q1 Q2 Q3 Q4

No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation No

operation Ningu

na

operació

n

Ningu

na

operació

n

No

operation

Ejemplo:HERE TSTFSZ CNT, 1 NZerO:

ZERO:

Antes de Instrucción

PC = Dirección (AQUÍ)

Después de la instrucción

Page 300: 39564c.en.es

PIC18FXX2

DS39564C-page268 2006 Microchip Technology Inc.

0001 10da ffff ffff

REG = 0x1A W = 0XB5

XORWF O-exclusiva con W f

Sintaxis: [etiqueta] [XORWF f, d, [a]

Operandos: 0 ≤ F≤ 255

d∈ [0,1]

un∈ [0,1]

Operación:. (W) XOR. (F) → dest

Status afectado: N, Z

Encoding:

Descripción: Exclusivo o el contenido de W con 'f'

registro. Si "d" es 0, el resultado se

almacena en W. Si "d" es 1, el

resultado se almacena en 'f' el

registro (por defecto). Si 'a' es 0, el

banco del acceso serán

seleccionados, ignorando el valor

de BSR. Si 'a' es 1, entonces el

banco será seleccionado según el

valor BSR (por defecto).

Words: 1

Ciclos: 1

Q Actividad Ciclo:

Q1 Q2 Q3 Q4

Descodificar

Leer

registro 'f' Proceso

Datun

Escriba a

destino

Ejemplo:XORWF REG, 1, 0

Antes de Instrucción

REG = 0XAF W = 0XB5

Después de la instrucción

Page 301: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 269

210.0 DESARROLLO DE APOYO

Los microcontroladores PICmicro ® son compatibles

con una amplia gama de herramientas de hardware y

desarrollo de software:

• Entorno de desarrollo integrado

- MPLAB ® IDE Software

• Ensambladores / compiladores / enlazadores

- MPASMTM Assembler

- MPLAB C17 y C18 MPLAB compiladores C

- Objeto MPLINKTM

vinculador / MPLIBTM

objeto Bibliotecario

• Simuladores

- Simulador MPLAB SIM Software

• Emuladores

- MPLAB ICE 2000 en circuito emulador

- ICEPIC ™ en circuito emulador

• In-Circuit Debugger

- MPLAB ICD

• Los programadores de dispositivos

- MATE ® PRO II Programador universal de dispositivos

- PICSTART ® Plus de nivel de entrada para el Desarrollo

Programador

The MPLAB IDE le permite:

• Editar los archivos de origen (ya sea asamblea o 'C')

• Un toque montar (o compilar) y descargar

emulador PICmicro y herramientas del

simulador (de forma automática actualizaciones

de toda la información del proyecto)

• Depurar usando:

- Los archivos de código fuente

- Archivo de lista absoluta

- Código máquina

Thcapacidad e para usar MPLAB IDE con

herramientas de depuración múltiples permite a los

usuarios cambiar fácilmente del simulador rentable a

un emulador con todas las funciones con un mínimo

de reciclaje.

21.2 MPASM Ensamblador

The ensamblador MPASM es un ensamblador de

todas las funciones de macro universal para todos los

PIC MCU.

The ensamblador MPASM tiene una interfaz de línea

de comandos y un shell de Windows. Se puede

utilizar como una aplicación independiente en un

Windows 3.x o mayor del sistema, o puede ser

utilizado a través de MPLAB IDE. El MPASM mon-bler

genera ficheros objeto reubicables para la MPLINK ®

• Bajos costos Juntas de demostración

objetivosenlazador t, Intel

standard archivos HEX, archivos MAP para

- PICDEMTM 1 Demonstration Board

- PICDEM 2 Demonstration Board

- 3 Demostración PICDEM Junta

- PICDEM 17 Demonstration Board

- KEELOQ ® Demonstration Board

21.1 MPLAB Integrated Development

Environment Software

The MPLAB IDE software aporta una facilidad de

desarrollo de software nunca antes vista en la 8-bits

microcontrolador mercado. El IDE MPLAB es una

aplicación basada en Windows ® que contiene:

• Una interfaz para herramientas de depuración

- Simulador

- Programador (se vende por separado)

- Emulador (se vende por separado)

- Depurador en circuito (se vende por separado)

• Un completo editor

• Un gerente de proyecto

• Barra de herramientas personalizable y asignación de claves

• Una barra de estado

• Ayuda en línea

Page 302: 39564c.en.es

PIC18FXX2

DS39564C-page270 2006 Microchip Technology Inc.

detail uso de la memoria y el símbolo de referencia, una abso-

lute LST archivo que contiene líneas de código fuente

y el código máquina generado, y un archivo de COD

para la depuración.

The características ensamblador MPASM incluyen:

• Integración en proyectos MPLAB IDE.

• definidas por el usuario macros para

simplificar el código ensamblador.

• Montaje Condicional para los archivos de

origen de usos múltiples.

• Directivas que permiten el control total sobre el

proceso de montaje.

21.3 MPLAB C17 y C18 MPLAB Los compiladores C

The MPLAB C17 y C18 MPLAB Development

Systems código son 'C' completo ANSI compiladores

para PIC17CXXX Microchip y la familia de

microcontroladores PIC18CXXX, respectivamente.

Estos compiladores ofrecen potentes capacidades de

integración y facilidad de uso que no se encuentra con

otros compiladores.

For fuente depuración más sencilla nivel, los

compiladores de proporcionar informaciones símbolo

que es compatible con la visualización de la memoria

MPLAB IDE.

Page 303: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 271

21.4 Objeto MPLINK vinculador / MPLIB objeto Bibliotecario

The enlazador objeto MPLINK combina objetos

reubicables creados por el ensamblador MPASM

MPLAB C17 y el compilador MPLAB C18 y C.

También puede vincular objetos reubicables de pre-

compilados bibliotecas, el uso de directivas de un

guión vinculador.

The bibliotecario objeto MPLIB es un bibliotecario de

código pre-compilado para ser utilizado con el

enlazador objeto MPLINK. Cuando una rutina de una

biblioteca se llama desde otro archivo fuente, sólo los

módulos que contienen rutina que se enlazará con la

aplicación. Esto permite que grandes bibliotecas para

ser utilizado de manera eficiente en muchas

aplicaciones diferentes. El bibliotecario objeto MPLIB

gestiona la creación y modificación de archivos de

biblioteca.

The MPLINK características enlazador de objeto incluyen:

• Integración con MPASM MPLAB C17 y

ensamblador y compilador MPLAB C18 C.

• Permite que todas las áreas de memoria que se

definen como secciones para proporcionar

flexibilidad en tiempo de enlace.

The MPLIB funciones bibliotecarias objetos incluyen:

• Es más fácil vincular porque las bibliotecas

individuales pueden incluirse en vez de

muchos archivos pequeños.

• Ayuda a mantener el código mantenible

mediante la agrupación de módulos

relacionados entre sí.

• Permite crear bibliotecas y módulos que se

añade, en la lista, reemplazado, eliminado o

extraído.

21.5 MPLAB SIM Software Simulador

The MPLAB SIM software simulador permite que el

código desarrollo en un entorno de PC de hospedaje

mediante la simulación de los microcontroladores de

la serie PICmicro a nivel de instrucciones. En

cualquier instrucción dada, las áreas de datos puede

ser examinado o modificado y estímulos se puede

aplicar a partir de un archivo, o definido por el usuario

pulse la tecla, para ninguna de las patas. La ejecución

se puede realizar en un solo paso, ejecutar hasta la

rotura, o trazar modo.

The MPLAB SIM es totalmente compatible con

simulador simbólico debug-ging utilizando el MPLAB

C17 y C18 MPLAB los compiladores com-C y el

ensamblador MPASM. El simulador de software

ofrece la flexibilidad necesaria para desarrollar y

depurar código fuera del entorno del laboratorio, por

lo que es una excelente herramienta para varios

proyectos de desarrollo de software.

21.6 MPLAB ICE High Performance

universal en circuito emulador

MPLAB IDE con

The MPLAB ICE universal de emulador en circuito

está destinado a proporcionar al ingeniero de

desarrollo de productos con un conjunto completo de

diseño de herramienta de microcontrolador para

PICmicro microcontroladores (MCUs). Software de

control de la ICE MPLAB emulador en circuito es

proporcionado por el entorno de desarrollo MPLAB

integrado (IDE), que permite editar, crear, descargar y

depurar código de un solo ambiente.

El ICE MPLAB 2000 es un emulador completamente

equipado con sistema de rastreo mejorado de disparo

y funciones de datos de seguimiento. Módulos

intercambiables procesador permiten que el sistema

sea fácilmente reconfigurado para la emulación de

procesadores diferentes. La arquitectura universal del

ICE MPLAB emulador en circuito permite la expansión

para soportar nuevos microcontroladores PICmicro.

The ICE MPLAB en circuito emulador sistema ha sido

diseñado como un sistema de emulación en tiempo

real, con funciones avanzadas que se encuentran

generalmente en las herramientas de desarrollo más

caros. La plataforma PC y el entorno Microsoft ®

Windows han sido elegidos para hacer mejor estas

características disponibles para usted, el usuario final.

21.7 ICEPIC en circuito emulador

The ICEPIC bajo costo, en circuito emulador es una

solución para el PIC16C5X Microchip Technology,

PIC16C6X, PIC16C7X y familias PIC16CXXX de One-

Time-Programmable 8-bit (OTP) microcontroladores.

El sistema mod-laridad puede apoyar diferentes

subconjuntos de productos PIC16C5X PIC16CXXX o

mediante el uso de módulos de personalidad

intercambiables, o placas hijas. El emulador es capaz

de emular sin circuitería de destino que esté presente.

Page 304: 39564c.en.es

PIC18FXX2

DS39564C-page272 2006 Microchip Technology Inc.

21.8 MPLAB ICD depurador en circuito

MicIn-Circuit rochip del depurador, MPLAB ICD, es

una poderosa erful, bajo costo, tiempo de ejecución

de la herramienta de desarrollo. Esta herramienta se

basa en la MCU FLASH PICmicro y se puede utilizar

para desarrollar para este y otros microcontroladores

PICmicro. El MPLAB ICD utiliza la depuración in-

circuit capaci-dad incorporada en los dispositivos

flash. Esta característica, junto con ProgrammingTM

In-Circuit Serial de Microchip protocolo, ofrece un

coste-efectiva en el circuito de depuración FLASH

desde la interfaz gráfica de usuario del entorno de

desarrollo integrado MPLAB. Esto permite a un

diseñador para desarrollar y depurar el código fuente

por variables watch-ción, de un solo paso a paso y el

establecimiento de puntos de quiebre. Corriendo a

toda velocidad permite pruebas de hardware en

tiempo real.

21.9 MATE PRO II Dispositivo universal

Programar

The MATE PRO II programador universal dispositivo

es un programador con todas las funciones, capaces

de funcionar en modo autónomo, así como el modo

PC-hosted. El programador PRO MATE II dispositivo

es conforme a norma CE.

The MATE PRO II programador dispositivo tiene

programable VDD y suministros VPP, que le permita

verificar la memoria programada en VDD VDD mínimo

y máximo para un máx imo-fiabilidad. Dispone de una

pantalla LCD para ver las instrucciones y mensajes de

error, claves para introducir comandos y un conjunto

modular de enchufe desmontable para soportar varios

tipos de paquetes. En el modo independiente, el

programador PRO MATE II dispositivo puede leer,

verificar, o programar dispositivos PICmicro. También

se puede ajustar la protección de código de este

modo.

21,10 PICSTART Plus Entry Level

Development Programador

El programador PICSTART Plus desarrollo es una

herramienta fácil de usar y de bajo costo,

programador prototipo. It con-conecta a la PC a través

de un COM (RS-232) del puerto. MPLAB Entorno de

desarrollo integrado de software hace que el uso del

programador simple y eficiente.

The PICSTART Plus programador desarrollo provee-

puertos PICmicro todos los dispositivos con un

máximo de 40 pines. Dispositivos más grandes

cantidad de pines, como el PIC16C92X y PIC17C76X,

pueden ser apoyados con un enchufe adaptador. El

programador PICSTART Plus desarrollo es conforme

a norma CE.

21,11 PICDEM 1 PICmicro Bajo Costo

Demonstration Junta

The PICDEM 1 tablero de demostración es una

simple tabla que demuestra la capacidad de varios de

los microcontroladores de Microchip. Los

microcontroladores apoyado son: PIC16C5X

(PIC16C54 a PIC16C58A), PIC16C61, PIC16C62X,

PIC16C71, PIC16C8X, PIC17C42, PIC17C43 y

PIC17C44. Todo el hardware y software necesario

está incluido para ejecutar programas básicos de

demostración. El usuario puede programar el

microcontrolador muestra ladores proporcionan con la

tarjeta de demostración PICDEM 1 en un dispositivo

programador PRO MATE II, o un programador

PICSTART Plus de desarrollo, y probar fácilmente el

firmware. El usuario también puede conectar la placa

de demostración PICDEM 1 al ICE MPLAB emulador

en circuito y descargue el firmware a la emu-lador

para la prueba. Un área de prototipo está disponible

para el usuario para construir algún hardware

adicional y conectarla a la toma de microcontrolador

(s). Algunas de las características incluyen una

interfaz RS-232, un potenciómetro para simulado

entrada analógica Interruptores de botón y ocho LEDs

conectados al puerto PORTB.

21,12 PICDEM 2 PIC16CXX Low Cost

Demonstration Board

The PICDEM 2 pensión demostración es un simple

dem-onstration placa que soporta los

microcontroladores PIC16C62, PIC16C64, PIC16C65,

PIC16C73 y PIC16C74. Todo el hardware necesario y

software se incluye para ejecutar los básicos de

demostración de programas. El usuario puede

programar los microcontroladores de ejemplo que se

proporcionan con el PICDEM 2 demostración bordo

de un programador de dispositivos PRO MATE II, o un

programador PICSTART Plus desarrollo, y probar

fácilmente el firmware. El ICE MPLAB en el circuito de

emulación Tor también puede ser utilizado con la

placa de demostración PICDEM 2 para probar

firmware. Un área de prototipo ha sido pro-

proporcionados a los que el usuario para añadir

hardware adicional y de la conexión a la toma de

microcontrolador (s). Algunas de las características

incluyen una interfaz RS-232, Interruptores de botón,

un potenciómetro para simulación de entradas

analógicas, una

sírial EEPROM para demostrar el uso del bus I2CTM

und cabeceras separadas para la conexión a una pantalla LCD

module y un teclado.

Page 305: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 273

21,13 PICDEM 3 PIC16CXXX Low Cost Demonstration Board

The PICDEM 3 Placa de demostración es un simple

dem-onstration tablero que soporta el PIC16C923 y

PIC16C924 en el paquete de PLCC. También

prestará apoyo a los futuros 44-pin PLCC

microcontroladores con una pantalla LCD módulo.

Todo el hardware y software necesario está incluido

para ejecutar los programas de demostración de

base. El usuario puede programar microcontroladores

de la muestra pro-provistos con la placa de

demostración PICDEM 3 en un dispositivo

programador PRO MATE II, o un programador

PICSTART Plus desarrollo con un enchufe adaptador

y probar fácilmente el firmware. El ICE MPLAB en el

circuito de emulación Tor también puede ser utilizado

con la placa de demostración PICDEM 3 para probar

firmware. Un área de prototipo ha sido pro-

proporcionados a los que el usuario de la adición de

hardware y de la conexión a la toma de

microcontrolador (s). Algunas de las características

incluyen una interfaz RS-232, Interruptores de botón,

un potenciómetro para simulación de entradas

analógicas, un termistor y encabezados separados

para la conexión a un módulo externo LCD y un

teclado. También se proporciona en la placa de

demostración PICDEM 3 es un panel LCD, con 4

comunes y los segmentos 12, que es capaz de tiempo

de visualización-ción, la temperatura y día de la

semana. La placa de demostración PICDEM 3 ofrece

un adicional de interfaz RS-232 y el software de

Windows para mostrar las señales de LCD

desmultiplexados en un PC. Una interfaz en serie

simple permite al usuario construir un demultiplexor

hardware para las señales de LCD.

21,14 PICDEM 17 Demonstration Board

La placa de demostración PICDEM 17 es una placa

de evaluación que demuestra las capacidades de

varios microcontroladores Microchip, incluyendo

PIC17C752, PIC17C756A, PIC17C762 y PIC17C766.

Todo el hardware necesario está incluido para

ejecutar programas básicos de demostración, que se

suministran en un disco de 3,5 pulgadas. Una muestra

programado está incluido y el usuario puede borrar y

programar con los otros programas de ejemplo

utilizando el programador PRO MATE II dispositivo, o

el programador PICSTART Plus desarrollo, y

fácilmente depurar y probar el código de ejemplo.

Además, el PICDEM 17 dem-onstration placa admite

la descarga de programas a ejecutar y fuera de la

memoria FLASH externa a bordo. La placa de

demostración PICDEM 17 es también utilizable con el

ICE MPLAB emulador en circuito, o el emulador

PicMaster y todos los programas de ejemplo se puede

ejecutar y modificar mediante cualquiera de emulador.

Ade-más, un área de prototipo generoso está

disponible para el hardware del usuario.

21,15 KEELOQ Evaluación y PROGRAMACIÓNg Herramientas

KEELOQ evaluación y herramientas de programación

compatible con HCS de Microchip Secure Data

Products. El HCS evalua-ción kit incluye una pantalla

LCD para mostrar los códigos de vestuarios, un

decodificador para decodificar transmisiones y una

interfaz de programación de transmisores de prueba

del programa.

Page 306: 39564c.en.es

PIC

18F

XX

2

TA

BL

E 2

1-1

: H

ER

RA

MIE

NT

AS

DE

DE

SA

RR

OL

LO

DE

M

ICR

OC

HIP

2

006 M

icro

chip

Technolo

gy In

c.

DS

39564C

-págin

a

257

PIC

12

CX

XX

PIC

14

00

0

PIC

16C

5X

PIC

16

C6

X

PIC

16

CX

XX

PIC

16

F6

2X

PIC

16

C7

X

PIC

16

C7X

X

PIC

16

C8X

/ P

IC1

6F

8x

PIC

16

F8

XX

PIC

16

C9

XX

PIC

17C

4X

P

IC1

7C

7X

X

PIC

18

CX

X2

PIC

18

FX

XX

24

CX

X /

25

CX

X /

93

HC

SX

XX

CX

X

M

CR

FX

XX

M

CP

25

10

Su

aveH

err

am

ien

tas

de c

on

su

mo

MPLAB®Integrado Entorno de desarrollo

MPLAB®C17 C Compiler MPLAB®C18 Compiler C MPASMTM Assembler /

MPLINKTM objeto vinculador

Em

úla

do

r

es

MPLAB®ICE en circuito emulador

**

ICEPICTM en circuito emulador

Dep

ura

do

r

MPLAB®ICD In-Circuit Depurador

*

*

Pro

gra

ma

do

r

s

PICSTART®PNivel de Entrada lus Desarrollo del programador

**

PRO MATE®II

Programador Universal Device

**

Dem

o B

oard

s y

ju

eg

os d

e E

va

l

PICDEMTM 1 Demostración Bordo

PICDEMTM 2 Demostración Bordo †

PICDEMTM 3 Demostración Bordo

PICDEMTM demostración 14A Bordo

PICDEMTM 17 Demostración Bordo

KEELOQ ® Kit de evaluación KEELOQ ® Kit Transponder mKit del programador de icroIDTM 125 kHz microIDTM

Kit del desarrollador

125 kHz anticolisión microIDTM

Kit del desarrollador

13,5Kit 6 MHz anticolisión microIDTM desarrollador

MCP2510 CAN Kit del desarrollador

* Póngase en contacto con el sitio web de Microchip Technology Inc. en www.microchip.com para obtener información sobre cómo utilizar el MPLAB ® ICD In-Circuit Debugger (DV164001) con PIC16C62, 63, 64, 65, 72, 73, 74, 76 77,.

** Contacto Microchip Technology Inc. para la fecha de disponibilidad. †Desarrollo de herramientas está disponible en dispositivos seleccionados.

Page 307: 39564c.en.es
Page 308: 39564c.en.es

PIC18FXX2

DS39564C-page258 2006 Microchip Technology Inc.

NOTAS:

Page 309: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 259

22.0 CARACTERÍSTICAS ELÉCTRICAS

Absolutos nominales

máximos (†)

Temperatura ambiente bajo . -55 ° C a +125 ° C Temperatura de almacenamiento -65 ° C a +150 ° C Tensión en

cualquier pin con respecto a VSS (excepto VDD, MCLR, y RA4) ........................ ................. A-0.3V (VDD + 0.3V)

Voltaje en VDD con respecto a VSS -0.3V a 7,5 V de tensión en MCLR con respecto a VSS (Nota 2)

................................................... ...................................... 0 V a 13,25 V Tensión en RA4 con respecto a Vss 0 V a 8,5

V, consumo de energía total (Nota 1) 1.0W Corriente máxima de salida del pin VSS 300 mA Máxima corriente en el

pin VDD 250 mA Corriente de entrada abrazadera, IIK (VI <0 o VI> VDD). ±20 mA pinza de corriente de salida, IOK

(VO <0 o VO> VDD) . ±20 Salida de mA Corriente máxima hundido por cualquier E / S 25 mA de corriente máxima de

salida de origen por cualquier pin I / O ...................................... .................................................. ............ 25 mA

Corriente máxima hundido por PORTA, PORTB, y PORTE (Nota 3) (Combinado) ............................................... ....

200 mA Máxima corriente procedente de PORTA, PORTB, y PORTE (No seTE 3) (Combinado)

.............................................. 200 mA Corriente máxima hundido por PORTC y PORTD (Nota 3) (Combinado)

............................................... ................... 200 mA Máxima corriente de origen por PORTC y PORTD (Nota 3)

(Combinado) ............................................... .............. 200 mA

Nota 1: Correosdisipación wer se calcula como

sigue:

PDIS = VDD x {IDD - IOH +} {(VDD-VOH) x} + IOH (Vol. X IOL)

2:Voltagpicos ea continuación VSS en el pin MCLR / VPP, induciendo corrientes superiores a 80 mA, pueden

causar latchup.

Así, Una resistencia en serie de 50-100Ω hombrod Cuando se esté aplicando un nivel "bajo" al pin

MCLR / VPP, en lugar de tirar directamente a este pin VSS.

3:PORTD y PORTE no está disponible en los dispositivos PIC18F2X2.

AVISO †: Destaca por encima de las especificadas en los "valores nominales máximos absolutos" puede causar

daños permanentes en el dispositivo. Esta es una operación Puntuación de estrés sólo y funcional del dispositivo en

esas u otras condiciones superiores a las indicadas en los listados de operación de esta especificación no es

implicado. La exposición a las condiciones del régimen máximo durante períodos prolongados puede afectar a la

fiabilidad del dispositivo.

Page 310: 39564c.en.es

PIC18FXX2

DS39564C-page260 2006 Microchip Technology Inc.

Vo

ltaje

V

olt

aje

FIGURA 22-1: PIC18FXX2 VOLTAJE FRECUENCIA GRAPH (INDUSTRIAL)

6.0V

5.5V

5.0V

4.5V

4,0 V

3.5V

3.0V

2.5V

2.0V

PIC18FXXX

4.2V

Frecuencia

40 MHz

FIGURA 22-2: PIC18LFXX2 VOLTAJE FRECUENCIA GRAPH (INDUSTRIAL)

6.0V

5.5V

5.0V

4.5V

4,0 V

3.5V

3.0V

2.5V

2.0V

PIC18LFXXX

4.2V

4 MHz Frecuencia

40 MHz

FMAX = (16,36 MHz / V) (VDDAPPMIN - 2,0 V) + 4 MHz

Nota: VDDAPPMIN es la tensión mínima del dispositivo PICmicro ® en la aplicación.

Page 311: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 261

22.1 DC Características: PIC18FXX2 (Industrial ampliada) PIC18LFXX2 (Industrial)

PIC18LFXX2

(Industrial) StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso industrial

PIC18FXX2

(Industrial ampliada)

StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso industrial

-40 ° C ≤ TLa≤ +125 ° C durante largos Param

No.

Símbolo

Característica

Min

Typ

Mamáx

Unidades

Condiciones

D001

VDD Tensión de alimentación

PIC18LFXX2 2.0 - 50.5 V HS, XT, RC y LP modo Osc

D001 PIC18FXX2 4.2 - 50.5 V D002 VDR RAM Retención de

Datos

Voltaje (1)

1.5 - - V

D003 VPOR VDD tensión de

arranque to garantizar

interna de encendido

señal de reset

- - 00.7 V Consulte la Sección 3.1 (Power-on Reset) para obtener más información

D004 SVDD Tasa Rise VDD

to garantizar interna

Correoswer-on reset de señal

0.05 - - V / ms

Consulte la Sección 3.1 (Power-on Reset) para obtener más información

D005

VBOR Brown-out reset Voltage

PIC18LFXX2

BORV1: BORV0 = 11 1,98 - 2,14 V 85°C≥ T≥ 25°C

BORV1: BORV0 = 10 2,67 - 2,89 V BORV1: BORV0 = 01 4,16 - 40.5 V BORV1: BORV0 = 00 4,45 - 4,83 V

D005 PIC18FXX2

BORV1: BORV0 = 1x N.A. - N.A. V Fuera del rango de voltaje de operación del dispositivo BORV1: BORV0 = 01 4,16 - 40.5 V

BORV1: BORV0 = 00 4,45 - 4,83 V Leyenda: El sombreado de filas es ayudar en la legibilidad de la mesa.

Noe 1: This es el límite al que VDD se puede bajar en el modo SLEEP, o durante el reinicio del aparato, sin perder

datos de la RAM.

2:Thelectrónico actual de suministro es principalmente una función de la tensión de funcionamiento y la

frecuencia. Otros factores, tales como I / O pin de carga y conmutación de interés, tipo de oscilador, patrón

interno de ejecución del código y de la temperatura, también tienen un impacto en el consumo de corriente.

Thcondiciones electrónicos de prueba para todas las mediciones de IDD en modo de funcionamiento activo son:

OSC1 onda cuadrada = externa, a partir del carril-a-carril, todos los pines de E / S de tres estados, se retiró a VDD

MCLR = VDD; WDT activado / desactivado según lo especificado.

3:La corriente de apagado en el modo SLEEP no dependen del tipo de oscilador. Al apagar corriente se mide

con la parte en modo SLEEP, con todos los pines de E / S de alta impedancia estado ligado a las

características y VDD o VSS, y todos los que se suman delta actual discapacitados (como WDT, Timer1

oscilador, BOR,. ..).

4:For RC osc configuración actual a través de REXT no está incluido. La corriente a través del resistor puede estar

estimard por la fórmula Ir = VDD/2REXT (mA) con REXT en kOhm.

5:The LVD y módulos BOR compartir una gran parte de la circuitería. La Δ IBOR y Δ IlvD corrientes no son

aditivos.

Once uno de estos módulos está habilitado, el otro también puede ser activado sin penalización adicional.

Page 312: 39564c.en.es

PIC18FXX2

DS39564C-page262 2006 Microchip Technology Inc.

22.1 DC Características: PIC18FXX2 (Industrial ampliada)

PIC18LFXX2 (Industrial) (Continuación)

PIC18LFXX2

(Industrial) StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso industrial

PIC18FXX2

(Industrial ampliada)

StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso industrial

-40 ° C ≤ TLa≤ +125 ° C durante largos Param

No.

Símbolo

Característica

Min

Typ

Mamáx

Unidades

Condiciones

D010

IDD Corriente de suministro (2,4)

PIC18LFXX2 -

-

-

-

-

-

-

-

-

0.5

0.5

1,2

0.3

0.3

1,5

0.3

0.3

.75

1

1,25

2

1

1

3

1

1

3

mA

mA

mA

mA

mA

mA

mA

mA

mA

XT osc configuración

VDD = 2,0 V, +25°C, FOSC = 4

MHz

VDD = 2.0V, -40°C a +85°C, FOSC = 4

MHz VDD = 4.2V, -40°C a +85°C, FOSC =

4 MHz RC osc configuración

VDD = 2,0 V, +25°C, FOSC = 4

MHz

VDD = 2.0V, -40°C a +85°C, FOSC = 4

MHz

VDD = 4.2V, -40°C a +85°C, FOSC = 4

MHz

Comércio osc configuración

VDD = 2,0 V, +25°C, FOSC = 4

MHz

VDD = 2.0V, -40°C a +85°C, FOSC = 4

MHz

VDD = 4.2V, -40°C a +85°C, FOSC = 4

MHz

D010 PIC18FXX2 -

-

-

-

-

-

-

-

-

1,2

1,2

1,2

1,5

1,5

1,6

.75

.75

0.8

10.5

2

3

3

4

4

2

3

3

mA

mA

mA

mA

mA

mA

mA

mA

mA

XT osc configuración

VDD = 4.2V, +25°C, FOSC = 4 MHz

VDD = 4.2V, -40°C a +85°C, FOSC = 4 MHz

VDD = 4.2V, -40°C a +125°C, FOSC = 4 MHz

RC osc configuración

VDD = 4.2V, +25°C, FOSC = 4 MHz

VDD = 4.2V, -40°C a +85°C, FOSC = 4 MHz

VDD = 4.2V, -40°C a +125°C, FOSC = 4 MHz

Comércio osc configuración

VDD = 4.2V, +25°C, FOSC = 4 MHz

VDD = 4.2V, -40°C a +85°C, FOSC = 4 MHz

VDD = 4.2V, -40°C a +125°C, FOSC = 4 MHz

D010La PIC18LFXX2 -

14

30

μ La

LP osc, FOSC = 32 kHz, WDT deshabilitado

VDD = 2.0V, -40°C a +85°C

D010La PIC18FXX2 -

-

40

50

70

100

μ La

μ La

LP osc, FOSC = 32 kHz, WDT deshabilitado

VDD = 4.2V, -40°C a

+85°VDD = 4.2V C, -40°C a

+125°C Leyenda: El sombreado de filas es ayudar en la legibilidad de la mesa.

Noe 1: This es el límite al que VDD se puede bajar en el modo SLEEP, o durante el reinicio del aparato, sin perder

datos de la RAM.

2:Thelectrónico actual de suministro es principalmente una función de la tensión de funcionamiento y la

frecuencia. Otros factores, tales como I / O pin de carga y conmutación de interés, tipo de oscilador, patrón

interno de ejecución del código y de la temperatura, también tienen un impacto en el consumo de corriente.

Thcondiciones electrónicos de prueba para todas las mediciones de IDD en modo de funcionamiento activo son:

OSC1 onda cuadrada = externa, a partir del carril-a-carril, todos los pines de E / S de tres estados, se retiró a VDD

MCLR = VDD; WDT activado / desactivado según lo especificado.

3:La corriente de apagado en el modo SLEEP no dependen del tipo de oscilador. Al apagar corriente se mide

con la parte en modo SLEEP, con todos los pines de E / S de alta impedancia estado ligado a las

características y VDD o VSS, y todos los que se suman delta actual discapacitados (como WDT, Timer1

oscilador, BOR,. ..).

4:For RC osc configuración actual a través de REXT no está incluido. La corriente a través del resistor

puede ser estimado por la fórmula Ir = VDD/2REXT (mA) con REXT en kOhm.

Page 313: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 263

5:The LVD y módulos BOR compartir una gran parte de la circuitería. La Δ IBOR y Δ IlvD corrientes no son aditivos.

Once uno de estos módulos está habilitado, el otro también puede ser activado sin penalización adicional.

Page 314: 39564c.en.es

PIC18FXX2

DS39564C-page264 2006 Microchip Technology Inc.

22.1 DC Características: PIC18FXX2 (Industrial ampliada)

PIC18LFXX2 (Industrial)

(Continuación)

PIC18LFXX2

(Industrial) StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso industrial

PIC18FXX2

(Industrial ampliada)

StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso industrial

-40 ° C ≤ TLa≤ +125 ° C durante largos Param

No.

Símbolo

Característica

Min

Typ

Mamáx

Unidades

Condiciones

D010C

IDD Corriente de suministro (2,4) (Continuación)

PIC18LFXX2 -

10

25

mLa

EC, ECIO configuraciones osc

VDD = 4.2V, -40°C a +85°C

D010C PIC18FXX2 -

10

25

mA

EC, ECIO configuraciones osc

VDD = 4.2V, -40°C a +125°C

D013 PIC18LFXX2 -

-

-

0.6

10

15

2

15

25

mA

mA

mA

HS osc configuración

FOSC = 4 MHz, VDD = 2.0V

FOSC = 25 MHz, VDD =

5.5V HS + PLL

configuraciones osc FOSC =

10 MHz, VDD = 5.5V D013 PIC18FXX2 -

-

10

15

15

25

mA

mA

HS osc configuración

FOSC = 25 MHz, VDD =

5.5V HS + PLL

configuraciones osc FOSC =

10 MHz, VDD = 5.5V D014 PIC18LFXX2

-

15

55 μ La

Timer1 osc configuración

FOSC = 32 kHz, VDD = 2.0V

D014 PIC18FXX2 -

-

-

-

200

250

μ La

μ La

Timer1 osc configuración

FOSC = 32 kHz, VDD = 4.2V, -40°C a +85°C

FOSC = 32 kHz, VDD = 4.2V, -40°C a

+125°C

D020

YoPD Al apagar corriente (3)

PIC18LFXX2 -

-

-

.08

0.1

3

0.9

4

10

μLa

μLa

μLa

VDD = 2,0 V, +25°C

VDD = 2.0V, -40°C a

+85°VDD = 4.2V C, -40°C a

+85°C D020

D021B

PIC18FXX2 -

-

-

0.1

3

15

0.9

10

25

μLa

μLa

μLa

VDD = 4.2V, +25°C

VDD = 4.2V, -40°C a

+85°VDD = 4.2V C, -40°C a

+125°C Leyenda: El sombreado de filas es ayudar en la legibilidad de la mesa.

Noe 1: This es el límite al que VDD se puede bajar en el modo SLEEP, o durante el reinicio del aparato, sin perder

datos de la RAM.

2:Thelectrónico actual de suministro es principalmente una función de la tensión de funcionamiento y la

frecuencia. Otros factores, tales como I / O pin de carga y conmutación de interés, tipo de oscilador, patrón

interno de ejecución del código y de la temperatura, también tienen un impacto en el consumo de corriente.

Thcondiciones electrónicos de prueba para todas las mediciones de IDD en modo de funcionamiento activo son:

OSC1 onda cuadrada = externa, a partir del carril-a-carril, todos los pines de E / S de tres estados, se retiró a VDD

MCLR = VDD; WDT activado / desactivado según lo especificado.

3:La corriente de apagado en el modo SLEEP no dependen del tipo de oscilador. Al apagar corriente se mide

con la parte en modo SLEEP, con todos los pines de E / S de alta impedancia estado ligado a las

características y VDD o VSS, y todos los que se suman delta actual discapacitados (como WDT, Timer1

oscilador, BOR,. ..).

4:For RC osc configuración actual a través de REXT no está incluido. La corriente a través del resistor

puede ser estimado por la fórmula Ir = VDD/2REXT (mA) con REXT en kOhm.

5:The LVD y módulos BOR compartir una gran parte de la circuitería. La Δ IBOR y Δ IlvD corrientes no son aditivos.

Page 315: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 265

Once uno de estos módulos está habilitado, el otro también puede ser activado sin penalización adicional.

Page 316: 39564c.en.es

PIC18FXX2

DS39564C-page266 2006 Microchip Technology Inc.

22.1 DC Características: PIC18FXX2 (Industrial ampliada)

PIC18LFXX2 (Industrial)

(Continuación)

PIC18LFXX2

(Industrial) StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso industrial

PIC18FXX2

(Industrial ampliada)

StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso industrial

-40 ° C ≤ TLa≤ +125 ° C durante largos Param

No.

Símbolo

Característica

Min

Typ

Mamáx

Unidades

Condiciones

D022

Δ IWDT

Módulo de corriente diferencial

Washingtontchdog Timer

PIC18LFXX2

-

-

-

.75

2

10

10.5

8

25

μLaμLaμLa

VDD = 2,0 V, +25°C

VDD = 2.0V, -40°C a

+85°VDD = 4.2V C, -40°C a

+85°C D022 Washingtontchdog Timer

PIC18FXX2

-

-

-

7

10

25

15

25

40

μLaμLaμLa

VDD = 4.2V, +25°C

VDD = 4.2V, -40°C a

+85°VDD = 4.2V C, -40°C a

+125°C D022La Δ IBOR Brown-out Reset

(5)

PIC18LFXX2

-

-

-

29

29

33

35

45

50

μLaμLaμLa

VDD = 2,0 V, +25°C

VDD = 2.0V, -40°C a

+85°VDD = 4.2V C, -40°C a

+85°C D022La Brown-out Reset

(5)

PIC18FXX2

-

-

-

36

36

36

40

50

65

μLaμLaμLa

VDD = 4.2V, +25°C

VDD = 4.2V, -40°C a

+85°VDD = 4.2V C, -40°C a

+125°C D022B Δ DVCI Detección de bajo

voltaje (5)

PIC18LFXX2

-

-

-

29

29

33

35

45

50

μLaμLaμLa

VDD = 2,0 V, +25°C

VDD = 2.0V, -40°C a

+85°VDD = 4.2V C, -40°C a

+85°C D022B Detección de bajo

voltaje (5)

PIC18FXX2

-

-

-

33

33

33

40

50

65

μLaμLaμLa

VDD = 4.2V, +25°C

VDD = 4.2V, -40°C a

+85°VDD = 4.2V C, -40°C a

+125°C D025 Δ ITMR

1 Timer1 oscilador

PIC18LFXX2 -

-

-

5,2

5,2

6,5

30

40

50

μLaμLaμLa

VDD = 2,0 V, +25°C

VDD = 2.0V, -40°C a

+85°VDD = 4.2V C, -40°C a

+85°C D025 Timer1 oscilador

PIC18FXX2 -

-

-

6,5

6,5

6,5

40

50

65

μLaμLaμLa

VDD = 4.2V, +25°C

VDD = 4.2V, -40°C a

+85°VDD = 4.2V C, -40°C a

+125°C Leyenda: El sombreado de filas es ayudar en la legibilidad de la mesa.

Noe 1: This es el límite al que VDD se puede bajar en el modo SLEEP, o durante el reinicio del aparato, sin perder

datos de la RAM.

2:Thelectrónico actual de suministro es principalmente una función de la tensión de funcionamiento y la

frecuencia. Otros factores, tales como I / O pin de carga y conmutación de interés, tipo de oscilador, patrón

interno de ejecución del código y de la temperatura, también tienen un impacto en el consumo de corriente.

Thcondiciones electrónicos de prueba para todas las mediciones de IDD en modo de funcionamiento activo son:

OSC1 onda cuadrada = externa, a partir del carril-a-carril, todos los pines de E / S de tres estados, se retiró a VDD

MCLR = VDD; WDT activado / desactivado según lo especificado.

3:La corriente de apagado en el modo SLEEP no dependen del tipo de oscilador. Al apagar corriente se mide

con la parte en modo SLEEP, con todos los pines de E / S de alta impedancia estado ligado a las

características y VDD o VSS, y todos los que se suman delta actual discapacitados (como WDT, Timer1

oscilador, BOR,. ..).

4:For RC osc configuración actual a través de REXT no está incluido. La corriente a través del resistor puede estar

estimard por la fórmula Ir = VDD/2REXT (mA) con REXT en kOhm.

5:The LVD y módulos BOR compartir una gran parte de la circuitería. La Δ IBOR y Δ IlvD corrientes no son

aditivos.

Once uno de estos módulos está habilitado, el otro también puede ser activado sin penalización adicional.

Page 317: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 267

22.2 DC Características: PIC18FXX2 (Industrial ampliada) PIC18LFXX2 (Industrial)

DC CARACTERÍSTICAS

Param

StaCondiciones ndard operativos (a menos que se indique lo contrario)

Óperating temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso

industrial

-40 ° C ≤ TLa≤ +125 ° C durante largos

No. símbolo característico Unidades Min Max Condiciones

VILEntrada de Bajo Voltaje

I / O ports:

D030 con TTL tampón Vss 0,15 V VDD VDD <4,5 V

D030A - 0,8 V 4,5 V ≤ VDD ≤ 50,5 V

D031 con tampón de disparador de Schmitt

RC3 y RC4

Vss

Vss

00,2 V VDD

00,3 V VDD

D032 MCLR VSS 0,2 V VDD

D032A OSC1 (en los modos XT, HS y LP)

und T1OSI

VSS 0,3 V VDD

D033 OSC1 (en modo RC y CE)(1) 0,2 V VDD VSS VIH Entrada de

Alta Tensión

I / O ports:

D040 con TTL tampón 0,25 VDD +

0.8V

VDD V VDD <4,5 V

D040A 2,0 V 4,5 V VDD ≤ VDD ≤ 50,5 V

D041 con tampón de disparador de Schmitt

RC3 y RC4

00,8 VDD

00,7 VDD

VDD VDD V

V

D042 MCLR, OSC1 (CE modo) 0,8 VDD VDD V

D042A OSC1 (en los modos XT, HS y LP)

und T1OSI

00,7 VDD VDD V

D043 OSC1 (modo RC)(1) 00,9 VDD VDD V IIL Entrada

de corriente de fuga (2,3)

D060 puertos E / S .02 ±1μ A VSS ≤ VPIN ≤ VDD, Pin de alta impedancia

D061 MCLR - ±1μ A Vss ≤ VPIN ≤ VDD

D063 OSC1 - ±1μ A Vss ≤ VPIN ≤ VDD

UIP Weak Pull-up actual

D070 IPURB PORTB débil pull-up actual 50 450 μ A VDD = 5 V, VPIN = VSS

Nota 1: Yon configuración oscilador RC, el pin OSC1/CLKI es una entrada Schmitt Trigger. No se recomienda que el

PICmicro dispositivo se acciona con un reloj externo en el modo RC.

2:The fugas de corriente en el pin MCLR es fuertemente dependiente del nivel de tensión aplicado. Los

niveles especificados representan las condiciones normales de funcionamiento. Mayor corriente de

fuga puede ser medida en diferentes voltajes de entrada.

3:Corriente negativa se define como corriente suministrada por el pasador.

4:El parámetro se caracteriza pero no probado.

Page 318: 39564c.en.es

PIC18FXX2

DS39564C-page268 2006 Microchip Technology Inc.

22.2 DC Características: PIC18FXX2 (Industrial ampliada)

PIC18LFXX2 (Industrial)

(Continuación)

DC CARACTERÍSTICAS

StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso

industrial

-40 ° C ≤ TLa≤ +125 ° C durante

largos

Param

No.

Símbolo

Characteristic

Men

Max

Unidads

Condiciones

D080

D080A

D083

D083La

VOL OBaja Tensión utput

I /O Ports OSC2/CLKO

(modo RC)

-

-

-

-

0,6

0,6

00.6

0,6

V

V

V

V

IOL = 8,5 mA, VDD = 4.5V,

-40°C a +85°C

IOL = 7,0 mA, VDD = 4.5V,

-40°C a +125°C

IOL = 1,6 mA, VDD = 4.5V,

-40°C a +85°C

IOL = 1,2 mA, VDD = 4.5V,

-40°C a +125°C

D090

D090A

D092

D092La

VOH Output High Voltage (3)

Puertos I / O OSC2/CLKO

(modo RC)

VDD - 0,7

VDD - 0,7

VDD - 0,7

VDD - 0,7

-

-

-

-

V

V

V

V

IOH = -3,0 mA, VDD = 4.5V,

-40°C a +85°C

IOH = -2,5 mA, VDD = 4.5V,

-40°C a +125°C

IOH = -1,3 mA, VDD = 4.5V,

-40°C a +85°C

IOH = -1,0 mA, VDD = 4.5V,

-40°C a +125°C

D150 VOD Abrir la purga de alto voltaje - 8,5 V RA4 pin

D100(4)

D101

D102

COSC2

CIO

CB

Especificaciones Carga

capacitiva en los pines de

salida

OSC2 pin

Todas las E / S del

OSC2 y (en el modo

RC)

SCL, SDA

-

-

-

15

50

400

pF

pF

pF

Yon XT, HS y los modos LP

cuando el reloj externo se

utiliza para conducir OSC1

To adaptarse a la sincronización de CA

Specificaciones

En el modo I2C NoTE 1: Yon configuración oscilador RC, el pin OSC1/CLKI es una entrada Schmitt Trigger. No se recomienda que el

PICmicro dispositivo se acciona con un reloj externo en el modo RC.

2:The fugas de corriente en el pin MCLR es fuertemente dependiente del nivel de tensión aplicado. Los

niveles especificados representan las condiciones normales de funcionamiento. Mayor corriente de

fuga puede ser medida en diferentes voltajes de entrada.

3:Negativelectrónico actual se define como corriente suministrada por el pasador.

4:Parameter se caracteriza pero no probado.

Page 319: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 269

FIGURA 22-3: características de débil detecta el voltaje

VDD

VLVD

(LVDIF establecido por hardware)

(LVDIF se pueden borrar en software)

37

LVDIF

TABLE 22-1: BAJA TENSIÓN CARACTERÍSTICAS detectar

Standaª Condiciones de funcionamiento (a menos que se indique lo contrario)

Óperating temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso

industrial

-40 ° C ≤ TLa≤ +125 °C durante

largos

Param

No.

Símbolo

Característica

Min

Typ

Max

Unidades

Condiciones

D420 VLEnferme

dad venérea LTensión VD en

transición VDD de

mayor a menor

LVV = 0001 1,98 2,06 2,14 V T≥ 25°C

LVV = 0010 2,18 2,27 2,36 V T≥ 25°C

LVV = 0011 2,37 2,47 2,57 V T≥ 25°C

LVV = 0100 2,48 2,58 2,68 V LVV = 0101 2,67 2,78 2,89 V LVV = 0110 2,77 2,89 3,01 V LVV = 0111 2,98 30.1 3,22 V LVV = 1000 3,27 3,41 3,55 V LVV = 1001 3,47 3,61 3,75 V LVV = 1010 3,57 3,72 3,87 V LVV = 1011 3,76 3,92 4,08 V LVV = 1100 3,96 4,13 4,3 V LVV = 1101 4,16 4,33 4,5 V LVV = 1110 4,45 4,64 4,83 V

Page 320: 39564c.en.es

PIC18FXX2

DS39564C-page270 2006 Microchip Technology Inc.

TABLE 22-2: REQUISITOS DE MEMORIA DE PROGRAMACIÓN

DC Características

StaCondiciones ndard operativos (a menos que se indique lo contrario)

Óperating temperatura de -40 ° C ≤ TLa≤ +85 ° C durante

industrial

-40 ° C ≤ TLa≤ +125 ° C durante largos Param

No.

Sym

Característica

Min

Typ †

Mamáx

Unidades

Condiciones

D110

D113

VPP

IDDP

Internal Programa Memoria

Especificaciones de programación

Voltage en MCLR / VPP pin

Corriente de suministro durante

Programación

9.00

-

-

-

13,25

10

V

mLa

D120

D121

D122

D123

D124

ED

VDRW

Trocío

TRETD

TREF

Datos EEPROM Memoria

Celular Endurance

VDD para lectura / escritura

Erase / Writo tiempo de ciclo

Característica de retención

Número total de borrado / escritura

Ciclos de actualización antes

de(1)

100K

VMIN

-

40

1M

1M

-

4

-

10M

-

5,5

-

-

-

E /

W V

ms

Sír

E / W

-40°C a +85°C

Usando EECON para leer /

escribir VMIN = tensión

mínima de operación

Siempre y cuando no se

violen otras

especificaciones

-40 ° C a +85 ° C

D130

D131

D132

D132A

D132B

D133

D133La

D133A

D134

EP

VPR

VIE

VIW

VPEW

TIE

TIW

TIW

TRETD

Programa Flash Memory

Celular Endurance

VDD para Leer

VDD para Bloquear Borrar

VDD para Borrado

temporizado externo o

escritura

VDD para la Auto-timed Escribir

Bloquear ICSP Erase Cycle Time

ICSP Borrar o Escribir Tiempo de ciclo

(Exinternamente cronometrados)

Self oportuna Escribir Tiempo de ciclo

Característica de retención

10K

VMI

N

40.5

40.5

VMIN

-

1

-

40

100K

-

-

-

-

4

-

2

-

-

5,5

5,5

5,5

5,5

-

-

-

-

E /

W V

V

V

V

ms

ms

ms

Sír

-40°C a +85°C

VMIN = Tensión mínima

de operación

Usando el puerto ICSP

Usando el puerto ICSP

VMIN = Tensión mínima

de operación

VDD ≥

4.5V VDD

≥ 4.5V

Siempre y cuando no se

violen otras

especificaciones † Los datos de "Typ" columna está en 5.0V, 25 ° C a menos que se indique lo contrario. Estos parámetros

son orientativos diseño único y no están probados.

NoTE 1: Refer la Sección 6.8 para una discusión más detallada sobre los datos EEPROM resistencia.

Page 321: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 271

F Ftodos P Período H Alto R Subir Yo

Inválido (Hi-impedancia) V Válido L

I2C sólo Bajo Z Hi-impedancia

AA output acceso Alto Alto BUF Autobús gratuito Helow Helow

22.3 AC (Timing) Características

22.3.1 TIEMPO DE PARÁMETROS SIMBOLOGÍA

The símbolos de parámetro de tiempo

han de seguir uno de los siguientes

formatos:

abejan

creard

1. TppS2ppS

2. TPPS

3. TCC: ST

4. Ts

(Especificaciones I2C

solamente)

(especificaciones I2C

solamente) T F Frecuencia T Tiempo

Helowercase letras (pp) y sus significados: pp

cc CCP1 osc OSC1

ck CLKO rd RD

cs CS rw RD o WR

di IDE sc SCK

hacer SDO ss SS

dt Los datos en

t0 T0CKI

yoo I /O puerto

t1 T1CKI

mc MCLR wr WR Mayúsculas letras y su significado:

S

TCC: ST (especificaciones I2C

solamente) CC

HD mantenga presionado SETUP SU

ST

DAT entrada de retención de datos condición STO PARADA

STUna condición START

Page 322: 39564c.en.es

PIC18FXX2

DS39564C-page272 2006 Microchip Technology Inc.

22.3.2 CONDICIONES DE TIEMPO

Thtemperatura y voltajes e especifica en la Tabla 22-3

se aplican a todas las especificaciones de

sincronización a menos que se indique lo contrario.

Figura 22-4 se especifican las condiciones de carga

de las especificaciones de tiempo.

TABLE 22-3: Especificaciones de temperatura y voltaje - CA

CA CARACTERÍSTICAS

StCondiciones Andard operativos (a menos que se indique lo contrario)

Operango de temperatura de -40 ° C ≤ TLa≤ +85 ° C para uso industrial

-40 ° C ≤ TLa≤ +125 ° C durante largos

Operégimen de voltaje VDD amplia como se describe en la sección de especificaciones DC 22,1 y

Sección 22.2.

LC piezas operar a temperaturas industriales solamente.

FIGURA 22-4: CONDICIONES DE CARGA DE LAS ESPECIFICACIONES DEL DISPOSITIVO DE TIEMPO

Cargar condition 1 Cargue la condición 2

VDD / 2

RL Pin CL

Pin

CL

RL = 464Ω

VSS

VSS CL = 50 pF para todos los pines excepto OSC2/CLKO

und incluyendo D y E como salidas de los puertos

Page 323: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 273

22.3.3 diagramas de tiempo Y ESPECIFICACIONES

Figura 22-5: CALENDARIO RELOJ EXTERNO (todos los modos excepto PLL)

Q4 T1 T2 T3 T4 T1

OSC1

CLKO

13 3 4 4

2

TABLE 22-4: REQUISITOS EXTERNOS DEL RELOJ DE TIEMPO

Papára

m.

No.

Símbolo

Característica

Men

Max

Unidades

Condiciones

1A FOSC External CLKI Frecuencia(1)

Oscillator Frecuencia(1)

DC

DC

DC

00.1

4

4

4

5

40

25

4

4

25

10

6.25

200

MHz

MHz

MHz

MHz

MHz

MHz

MHz

kHz

CE, ECIO, -40°C a +85°C

CE, ECIO, +85°C a +125°C

RC osc

XT osc

HS osc

HS + PLL osc, -40°C a +85°C

HS + PLL osc, +85°C a +125°C

LP modo Osc

1 ASC External Período CLKI(1)

OSCILLPeríodo ator(1)

25

40

250

250

40

100

160

25

-

-

-

10.000

250

250

250

-

ns

ns

ns

ns

ns

ns

ns

μs

CE, ECIO, -40°C a +85°C

CE, ECIO, +85°C a +125°C

RC osc

XOsc T

HS osc

HS + PLL osc, -40°C a +85°C

HS + PLL osc, +85°C a +125°C

LP osc

2 TCY Instruction tiempo de

ciclo(1) 100

160

-

-

ns

ns

TCY = 4/FOSC, -40°C a +85°C =

4/FOSC TCY, +85°C a +125°C

3 TosL,

TosH Reloj Externo (OSC1)

Tiempo de Alta o Baja 30

20.5

10

-

-

-

ns

μ

s

ns

XT osc

LP osc

HS osc

4 TosR,

TOSF Reloj Externo (OSC1)

Tiempo de subida o

caída

-

-

-

20

50

7.5

ns

ns

ns

XT osc

LP osc

HS osc NoTE 1: Período Instrucción ciclo (TCY) es igual a cuatro veces el oscilador de base de tiempo de entrada período

para todas las configuraciones excepto PLL. Todos los valores indicados se basan en los datos de

caracterización para ese tipo de oscilador en particular bajo condiciones de operación estándar con el

código de dispositivo de ejecución. Sobrepasar estos límites especificados puede dar lugar a una

operación del oscilador inestable y / o superior al consumo actual esperado. Todos los dispositivos se

prueban para funcionar a "MIN". Valores con un reloj externo aplicada al pasador OSC1/CLKI. Cuando

una entrada de reloj externo se utiliza, el "max". Límite de tiempo de ciclo es "DC" (sin reloj) para todos

los dispositivos.

Page 324: 39564c.en.es

PIC18FXX2

DS39564C-page274 2006 Microchip Technology Inc.

TABLE 22-5: PLL ESPECIFICACIONES reloj de temporización (VDD = 4,2 V a 5,5 V)

Param

No.

Sym

Característica

Men

Typ †

Max

Unidades

Condiciones

- FOSC Oscillator Rango de frecuencia 4 - 10 MHz HS modo sólo - FSYS En-Chip VCO frecuencia del sistema 16 - 40 MHz HS modo sólo

- trc PLL Start-up Time (Tiempo de bloqueo) - - 2 ms - Δ CLK CLKO Estabilidad (Jitter) -2 - +2 %

† Los datos de "Typ" columna está a 5 V, 25°C a menos que se indique lo contrario. Estos parámetros son

orientativos diseño único y no están probados.

Figura 22-6: CLKO Y CALENDARIO E / S

Q4 Q1 Q2 Q3

OSC1

10 11

CLKO

13 12

14 19 18 16

I /O Pin (Entrada)

I /O Pin (Salida)

1715

Old Valor Nuevo valor

20, 21

Nota:Refer a la Figura 22-4 para condiciones de carga.

Page 325: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 275

TABLE 22-6: CLKO y E / S Requisitos de temporización

Param.

No.

Símbolo

Característica

Men

Typ

Mamáx

Unidades

Condicións

10 TosH2ckL OSC1↑ a CLKO↓ - 75 200 ns (Nota 1)

11 TosH2ckH OSC1↑ a CLKO↑ - 75 200 ns (Nota 1)

12 TckR CLKO tiempo de subida - 35 100 ns (Nota 1)

13

14

TckF CLKO el tiempo de caída - 35 100 ns (Nota 1)

TckL2ioV CLKO↓ to Puerto de salida válido - - 0.5 TCY + 20

ns (Nota 1)

15 TioV2ckH Port en válido antes CLKO ↑ 0,25 TCY + 25

- - ns (Nota 1)

16 TckH2ioI Puerto en suspenso tras CLKO ↑ 0 - - ns (Nota 1)

17 TosH2ioV OSC1↑ (Ciclo Q1) al puerto fuera válido - 50 150 ns

18

18A

TosH2ioI OSC1↑ (Q2 ciclo) a Port de

entrada no válido (I / O en

el tiempo de retención)

PIC18FXXX 100 - - ns

PIC18LFXXX 200 - - ns

19 TioV2osH Port entrada válida para OSC1↑ (I /O en

el tiempo de configuración) 0 - - ns

20

20A

TioR Puerto de salida de tiempo de subida

PIC18FXXX - 10 25 ns PIC18LFXXX - - 60 ns VDD = 2V

21

21A

TioF Puerto de salida de tiempo de caída

PIC18FXXX - 10 25 ns PIC18LFXXX - - 60 ns VDD = 2V

22 †† TINP YoNT pin tiempo de alta o baja TCY - - ns 23 †† TRBP RB7: RB4 tiempo INT cambio alto o bajo TCY - - ns 24 †† TRCP RC7: INT RC4 cambio de hora alta o baja 20 ns

†† Estos parámetros son eventos asíncronos no relacionadas con los bordes de reloj interno.

NoTE 1: Medigencias son tomadas en el modo RC, donde la producción es de 4 x CLKO TOSC.

FIGURA 22-7: RESET, temporizador de vigilancia, OSCILLATOR TIMER START-UP Y ENCENDIDO

AUTOMÁTICO DE DISTRIBUCION

VDD

MCLR

Internal 30

CorreosR

33 PWRT

Time-out 32

OSC

Time-out

Interno

Reestablece

r

Watchdog Temporizador de reinicio

31 34 34

I /O Pins

Nota:Refer a la Figura 22-4 para condiciones de carga.

Page 326: 39564c.en.es

PIC18FXX2

DS39564C-page276 2006 Microchip Technology Inc.

Figura 22-8: BROWN-OUT TIEMPO REAJUSTE

VDD

VIRVST

BVDD

35

VBGAP = Típica 1.2V

Act vace Tensión de referencia interna

Internal tensión de referencia estable 36

TABLE 22-7: RESET, temporizador de guarda, OSCILADOR START-UP TIMER, TEMPORIZADOR

DE ENCENDIDO Y BROWN-OUT REQUISITOS DE REAJUSTE

Param.

No.

Símbolo

Característica

Min

Typ

Max

Unidades

Condiciones

30 TmcL MCLR por ancho de pulso (bajo) 2 - - μs

31 TWDT WatchdoTimer g tiempo de espera

(No postscaler) 7 18 33 ms

32 AST Oscillation Puesta en marcha del temporizador Período

1024 TOSC

- 1024 TOSC

- ASC = OSC1 período

33 TPWRT Correoswer hasta Intervalo del temporizador

28 72 132 ms

34 TIoz I /O Hi-Low impedancia de MCLR

o Reset Watchdog Timer - 2 - μ

s

35 TBOR Brown-out reset Pulse Width 200 - - μ

s VDD ≤ BVDD (ver

D005)

36 TIVRST Time para referencia interna

Voltage hacerse estable - 20 500 μ

s

37 TLEnferm

edad venérea

Helow Voltaje Detección de ancho de pulso

200 - - μ

s VDD ≤ VLVD (ver

D420)

Page 327: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 277

FIGURA 22-9: TIMER0 y TIMER1 HORARIOS reloj externo

T0CKI

4041

42

T1OSO/T1CKI

4546

47 48

TMR0 o

TMR1

Nota:Refer a la Figura 22-4 para condiciones de carga.

TABLE 22-8: TIMER0 y TIMER1 REQUISITOS reloj externo

Param

No.

Símbolo

Ch.aracteristic

Min

Mhacha

Unidads

Conditions

40 Tt0H T0CKMe ancho de pulso de alta No preescalador

0.5TCY + 20 - ns Ingenioh preescalador

10 - ns 41 Tt0L T0CKI ancho de pulso baja No

preescalador 0.5TCY + 20 - ns

Ingenioh preescalador

10 - ns 42 Tt0P T0CKI Período No

preescalador TCY + 10 - ns

Ingenioh preescalador

GrDevorador de:

20 ns o TCY + 40

N

- ns N = valor

preescala

(1, 2, 4, ..., 256) 45 Tt1H T1CKMe High

Time Sincrónico, sin prescaler 0.5TCY + 20 - ns Síncrono,

ingenioh

prescaler

PIC18FXXX 10 - ns PIC18LFXXX 25 - ns

Asincrónico PIC18FXXX 30 - ns PIC18LFXXX 50 - ns

46 Tt1L T1CKI Menor

Time Síncrono, no prescaler 0.5TCY + 5 - ns Síncrono, con

prescaler PIC18FXXX 10 - ns PIC18LFXXX 25 - ns

Asincrónico PIC18FXXX 30 - ns PIC18LFXXX 50 - ns

47 Tt1P T1CKYo

período

entrada

Sincrónico GrDevorador de:

20 ns o TCY + 40

N

- ns N = valor

preescala

(1, 2, 4, 8) Comoynchronous 60 - ns

Ft1 T1CKI oscilador de entrada Rango de frecuencia DC 50 kHz 48 Tcke2tmrYo DElay desde el borde externo del reloj T1CKI

al incremento de temporizador 2 TOSC 7

TOSC -

Page 328: 39564c.en.es

PIC18FXX2

DS39564C-page278 2006 Microchip Technology Inc.

Figura 22-10: Captura / Comparación / PWM (CCP1 HORARIOS Y CCP2)

CCPx (Capture Mode)

50 51

52

CCPx (Compare o Modo PWM)

5354

Nota:Refer a la Figura 22-4 para condiciones de carga.

TABLE 22-9: Captura / Comparación / PWM (CCP1 REQUISITOS Y CCP2)

Param.

No.

Símbolo

Característica

Men

Mamáx

Unidades

Condiciones

50 TccL CCPx tiempo

de entrada baja No preescalador 0.5 TCY + 20 - ns

Con

Preescalador

PIC18FXXX 10 - ns

PIC18LFXXX 20 - ns

51 TccH CCPx hora

de entrada No preescalador 0.5 TCY + 20 - ns Con

Preescalador

PIC18FXXX 10 - ns

PIC18LFXXX 20 - ns

52 TccP CCPx período entrada 3 TCY + 40

N

- ns N = preescala

valor (1,4 o 16)

53 TccR Salida CCPx tiempo de caída

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

54 TccF Salida CCPx tiempo de caída

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

Page 329: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 279

Figura 22-11: TIEMPO PARALLEL PORT SLAVE (PIC18F4X2)

RE2/CS

RE0 / RD

RE1/WR

65

RD7: RD0

62

64

63

Nota:Refiérase a la Figura 22-4 para condiciones de carga.

TABLE 22-10: REQUISITOS DE ESCLAVOS DEL PUERTO PARALELO (PIC18F4X2)

Param.

No.

Símbolo

Característica

Min

Mhacha

Unidades

Condiciones

62 TdtV2WRH Los datos de validez antes de WR↑ o CS↑

(Setup tiempo) 20

25 -

- ns

ns Extended Temp. Alcance

63 TwrH2dtI WR↑ o CS↑ to datos no

válidos

(Tiempo de retención)

PIC18FXXX 20 - ns

PIC18LFXXX 35 - ns VDD = 2V

64 TrdL2dtV RD↓ und CS↓ to datos de salida válido -

- 80

90 ns

ns Extended Temp. Alcance

65 TrdH2dtI RD↑ o CS↓ to datos de salida no válido 10 30 ns

66 TibfINH INHI bit del bit indicador FIB se borran de

↑ o CS↑ - 3 TCY

WR

Page 330: 39564c.en.es

PIC18FXX2

DS39564C-page280 2006 Microchip Technology Inc.

FIGURA 22-12: Ejemplo SPI TIEMPO MODO MASTER (CKE = 0)

SS

70

SCK

(CKP = 0)

71 72 78 79

SCK

(CKP = 1)

8079 78

SDO

IDE

MSb

MSB en

74

75, 76

blo6 ------ 1

bit6 ---- 1

LSb

LSb En

73

Nota:Refer a la Figura 22-4 para condiciones de carga.

TABLE 22-11: Ejemplo SPI REQUISITOS MODE (modo maestro, CKE = 0)

Param.

No.

Símbolo

Característica

Men

Max

Unidades

Condiciones

70 TssL2scH,

TssL2scL SS↓ a SCK↓ o SCK↑ Input TCY - ns

71

71A

Tsch SCK hora de entrada

(Eslavoe modo) Continuo 1,25 TCY + 30 - ns Single Byte 40 - ns (Nota 1)

72

72A

TsCl SCK de entrada mínimo histórico

(Eslavoe modo) Continuo 1,25 TCY + 30 - ns Single Byte 40 - ns (Nota 1)

73 TdiV2scH,

TdiV2scL Configurar la hora del SDI de entrada de datos a SCK borde

100 - ns

73A TB2B Last flanco de reloj de Byte1 al borde de reloj de primera Byte2

1.5 TCY + 40 - ns (Nota 2)

74 TscH2diL,

TscL2diL El tiempo de retención de los datos de entrada SDI a SCK borde

100 - ns

75 TdoR SSalida DO tiempo de subida de datos

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

76 TdoF SDO salida de datos tiempo de caída

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

78 TscR Salida SCK tiempo de subida

(Modo Master) PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

79 TscF SSalida CK tiempo de caída (modo Master)

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

80 TscH2doV,

TscL2doV SDO salida de datos válidos después de SCK

EDGe

PIC18FXXX - 50 ns PIC18LFXXX - 150 ns VDD = 2V

NoTE 1: Recuadernillos el uso del parámetro # 73A.

2:Only si el parámetro # 71A y # 72A se utilizan.

Page 331: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 281

FIGURA 22-13: Ejemplo SPI TIEMPO MODO MASTER (CKE = 1)

SS

81

SCK

(CKP = 0)

SCK (CKP = 1)

SDO

71 72

73

80

MSb

bit6 ------ 1

79

78 LSb

75, 76

IDE MSb bit6 ---- 1 LSb

74

Nota:Refer a la Figura 22-4 para condiciones de carga.

TABLE 22-12: Ejemplo SPI REQUISITOS MODE (modo maestro, CKE = 1)

Param.

No.

Símbolo

Característica

Men

Mhacha

Unidades

Condiciones

71

71A

Tsch SCK hora de entrada

(Modo esclavo) Continuo 1.25 TCY + 30 - ns

Single Byte 40 - ns (Nota 1)

72

72A

TscL SCK tiempo de entrada baja

(Modo esclavo) Continuo 1.25 TCY + 30 - ns Single Byte 40 - ns (Nota 1)

73 TdiV2scH,

TdiV2scL Configurar la hora del SDI de entrada de datos a SCK borde

100 - ns

73A TB2B Last flanco de reloj de Byte1 al borde de reloj de primera Byte2

1.5 TCY + 40 - ns (Nota 2)

74 TscH2diL,

TscL2diL El tiempo de retención de los datos de entrada SDI a SCK borde

100 - ns

75 TDOR SSalida DO tiempo de subida de datos

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns Enfermedad

venéreaD =

2V 76 TdoF SDO salida de datos tiempo de caída

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns Enfermedad

venéreaD =

2V 78 TscR Salida SCK tiempo de subida (modo Master)

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns Enfermedad

venéreaD =

2V 79 TSCF SCSalida de K tiempo de caída (modo Master)

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns Enfermedad

venéreaD =

2V 80 TscH2doV,

TscL2doV SDO datos válidos después de SCK salida

borde

PIC18FXXX - 50 ns PIC18LFXXX - 150 ns Enfermedad

venéreaD =

2V 81 TdoV2scH,

TdoV2scL SDO datos de configuración de salida a SCK borde TCY - ns

NoTE 1: Recuadernillos el uso del parámetro # 73A.

2:Only si el parámetro # 71A y # 72A se utilizan.

Page 332: 39564c.en.es

PIC18FXX2

DS39564C-page282 2006 Microchip Technology Inc.

Figura 22-14: Ejemplo ESCLAVO TIEMPO MODO SPI (CKE = 0)

SS

70

SCK

(CKP = 0) 83

71 72 78 79

SCK

(CKP = 1)

80 79 78

SDO MSb bit6 ------ 1 LSb

75, 76 77

IDE

MSb En bit6 ---- 1 LSB en

74 73

Nota:Refer a la Figura 22-4 para condiciones de carga.

TABLE 22-13: Ejemplo REQUISITOS DE MODO SPI (TIMING SLAVE MODE (CKE = 0))

Param. No. símbolo característico Unidades Min Max Condiciones

70 TssL2scH, TssL2scL

SS↓ to SCK↓ or SCK↑ yonput TCY - ns

71 Tsch SCK hora de entrada (modo esclavo) Continua 1,25 TCY + 30 - ns

71A Single Byte 40 - ns (Nota 1)

72 TsCl tiempo de entrada SCK baja (modo esclavo) Continua 1,25 TCY + 30 - ns

72A Single Byte 40 - ns (Nota 1)

73 TdiV2scH, TdiV2scL

Stiempo etup de SDI de entrada de datos hasta el borde SCK 100 - ns

73A TB2B flanco de reloj del último Byte1 al borde primer reloj de 1,5 Byte2 TCY + 40 - ns (Nota 2)

74 TscH2diL, TscL2diL

Hviejo tiempo de SDI de entrada de datos hasta el borde SCK 100 - ns

75 TDOR SDO salida de datos de tiempo de levantamiento PIC18FXXX - 25 ns

PIC18LFXXX - 60 ns VDD = 2V

76 TdoF SDO datos de salida tiempo de caída PIC18FXXX - 25 ns

PIC18LFXXX - 60 ns VDD = 2V

77 TssH2doZ SS↑ to salida de alta impedancia SDO 10 50 ns

78 TSCR salida SCK tiempo de subida (modo maestro) PIC18FXXX - 25 ns

PIC18LFXXX - 60 ns VDD = 2V

79 TSCF salida SCK tiempo de caída (Master mode) PIC18FXXX - 25 ns

PIC18LFXXX - 60 ns VDD = 2V

80 TscH2doV, TscL2doV

83 TscH2ssH,

TscL2ssH

SDO datos válidos después de SCK borde PIC18 salidaFXXX - 50 ns

PIC18LFXXX - 150 ns VDD = 2V

SS↑ after SCK borde TCY 1,5 + 40 - ns

Noe 1: Requires el uso del parámetro # 73A.

2:Oólo si el parámetro # 71A # 72A y se utilizan.

Page 333: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 283

Figura 22-15: Ejemplo ESCLAVO TIEMPO MODO SPI (CKE = 1)

82

SS

70

SCK 83 (CKP = 0)

71 72

SCK (CKP = 1)

SDO

IDE

80

MSb bit6 ------ 1 LSb

75, 76 77

MSB en bit6 ---- 1 LSB en

74

Nota:Refer a la Figura 22-4 para condiciones de carga.

TABLE 22-14: Ejemplo SPI REQUISITOS modo esclavo (CKE = 1)

Param. No. Symbol Ch.aracteristic Min Mhacha

Unidads

Conditions

70 TssL2scH,

TssL2scL SS↓ to SCK↓ o SCK↑ enponer TCY - ns

71

71A TscH SCK hora de entrada

(Slave modo) Continuous 1,25 TCY + 30 - ns Single Byte 40 - ns (Nota 1)

72

72A TsCl SCK de entrada mínimo histórico

(Slave modo) Continuous 1,25 TCY + 30 - ns Single Byte 40 - ns (Nota 1)

73A TB2B Last flanco de reloj de Byte1 al borde primer reloj de Byte2

1,5 TCY + 40 - ns (Nota 2)

74 TscH2diL,

TscL2diL Hold tiempo de SDI de entrada de datos a SCK borde 100 - ns

75 TDOR SDO salida de datos de tiempo de levantamiento

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

76 TdoF SDO la salida de datos tiempo de caída PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

77 TssH2doZ SS↑ to SDO salida de alta impedancia 10 50 ns 78 TscR SCSalida de K tiempo de subida

(modo Master) PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

79 TscF SCSalida de K tiempo de caída (modo Master)

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

80 TscH2doV,

TscL2doV SDO datos válidos después de SCK salida

edge

PIC18FXXX - 50 ns PIC18LFXXX - 150 ns VDD = 2V

82 TssL2doV SDO datos válidos después de SS

salida↓ borde PIC18FXXX - 50 ns PIC18LFXXX - 150 ns VDD = 2V

83 TscH2ssH,

TscL2ssH SS↑ después borde SCK 1,5 TCY + 40 - ns

Noe 1: Requires el uso del parámetro # 73A.

2:Oólo si el parámetro # 71A # 72A y se utilizan.

Page 334: 39564c.en.es

PIC18FXX2

DS39564C-page284 2006 Microchip Technology Inc.

FIGURA 22-16: BUS I2C START / STOP BITS DE DISTRIBUCION

SCL

SDLa

90

91

92

93

START

Condición

Condición de parada

Nota:Refiérase a la Figura 22-4 para condiciones de carga.

TABLE 22-15: Bus I2C START / STOP BITS REQUISITOS (modo esclavo)

Param.

No.

Símbolo

Característica

Men

Mhacha

Unidades

Conditions

90 TSU: STA ESTRELLAT condición

Setup vez

100 kHz modo 4700 - ns Only relevantes para la repetida

La condición de arranque 400 kHz modo 600 -

91 THD: STA

ESTRELLAT condición

El tiempo de retención

100 kHz modo 4000 - ns Después de este

período, el primer pulso

de reloj se genera 400 kHz modo 600 -

92 TSU: STO STOP condición

Setup vez

100 kHz modo 4700 - ns 400 kHz modo 600 -

93 THD: STO

STOP condición

El tiempo de retención

100 kHz modo 4000 - ns 400 kHz modo 600 -

FIGURA 22-17: BUS I2C DISTRIBUCION DE DATOS

SCL

103

90

100 101

102

106107

SDEn A

SDUna salida

91 92

109 109

110

Nota:Refiérase a la Figura 22-4 para condiciones de carga.

Page 335: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 285

TABLE 22-16: REQUISITOS DE DATOS I2C BUS (modo esclavo)

Param.

No.

Symbol

Characteristic

Min

Max

Unidads

Condiciones

100 MUSLO Clock hora 100 kHz modo 4.0 - μs

PIC18FXXX debe operar a un

mínimo de 1,5 MHz 400 kHz modo 0.6 - μ

s PIC18FXXX debe operar a un

mínimo de 10 MHz SSP Módulo 1.5 TCY -

101 TLOW Clock mínimo histórico

100 kHz modo 4.7 - μs

PIC18FXXX debe operar a un

mínimo de 1,5 MHz 400 kHz modo 1.3 - μ

s PIC18FXXX debe operar a un

mínimo de 10 MHz SSP Módulo 1.5 TCY -

102 TR SDUn tiempo y

lugar SCL 100 kHz modo - 1000 ns 400 kHz modo 20 + 0,1 CB 300 ns CB se especifica a partir de

10 a 400 pF

103 TF SDA y tiempo de

caída SCL 100 kHz modo - 1000 ns Enfermedad venéreaD≥ 4.2V

400 kHz modo 20 + 0,1 CB 300 ns Enfermedad venéreaD≥ 4.2V

90 TSU: STA STCondición

ART tiempo de

preparación

100 kHz modo 4.7 - μs

Only relevantes para la repetida

La condición de arranque 400 kHz modo 0,6 - μ

s 91 THD: STA ESTRELLAT

condición sostener

time

100 kHz modo 4.0 - μs

Después de este período, el

primer pulso de reloj se

genera 400 kHz modo 0.6 - μ

s 106 THD: DAT Datun tiempo de

retención de entrada 100 kHz modo 0 - ns 400 kHz modo 0 0.9 μ

s 107 TSU: DAT Datun tiempo de

configuración de entrada

100 kHz modo 250 - ns (No sete 2) 400 kHz modo 100 - ns

92 TSU: STO STOCondición

P configuración

de tiempo

100 kHz modo 4.7 - μs

400 kHz modo 0.6 - μ

s 109 TAA Output vigor a

partir del reloj 100 kHz modo - 3500 ns (No sete 1) 400 kHz modo - - ns

110 TBUF Bus tiempo libre 100 kHz modo 4,7 - μs

Time el bus debe estar libre

antes de una nueva

transmisión puede comenzar 400 kHz modo 1.3 - μ

s D102 CB Bus carga capacitiva - 400 pF Noe 1: Latransmisor sa, el dispositivo debe proporcionar este tiempo mínimo de retardo interno para cerrar la región sin definir

(min. 300 ns) del flanco de bajada de SCL para evitar la generación no deseada de START o STOP condiciones.

2:Un dispositivo de modo rápido bus I2C se puede utilizar en un sistema de bus I2C modo estándar, pero el requisito TSU: DAT ≥ 250 ns

must entonces se reunieron. Esto automáticamente será el caso si el dispositivo no se estira el periodo bajo de la

señal SCL. Si tal dispositivo se estira el periodo bajo de la señal SCL, que debe emitir el bit de datos junto a la línea

SDA.

TR max. + TSU: DAT = 1000 + 250 = 1250 ns (de acuerdo a la especificación del bus I2C modo estándar) antes de la línea SCL es

puesto en libertad.

Page 336: 39564c.en.es

PIC18FXX2

DS39564C-page286 2006 Microchip Technology Inc.

FIGURA 22-18: MASTER BUS I2C SSP START / STOP BITS FORMAS DE ONDA DE DISTRIBUCION

SCL

SDLa

91 93

90 92

START

Condición

Condición de parada

Nota:Refer a la Figura 22-4 para condiciones de carga.

TABLE 22-17: MASTER BUS I2C SSP START / STOP BITS REQUISITOS

Param.

No.

Símbolo

Característica

Men

Mamáx

Unidades

Conditions

90 TSU: STA ESTRELLAT condición

Setup vez

100 kHz modo 2(TOSC) (BRG + 1) - ns Onlrelevante para

la condición de

START repetida y 400 kHz modo 2(TOSC) (BRG + 1) -

1 MHz modo(1) 2(TOSC) (BRG + 1) -

91 THD: STA

ESTRELLAT condición

Hold tiempo

100 kHz modo 2(TOSC) (BRG + 1) - ns Después de este

período, el primer

pulso de reloj se

genera

400 kHz modo 2(TOSC) (BRG + 1) -

1 MHz modo(1) 2(TOSC) (BRG + 1) -

92 TSU: STO STOP condición

Setup vez

100 kHz modo 2(TOSC) (BRG + 1) - ns 400 kHz modo 2(TOSC) (BRG + 1) -

1 MHz modo(1) 2(TOSC) (BRG + 1) -

93 THD: STO

STOP condición

Hold tiempo

100 kHz modo 2(TOSC) (BRG + 1) - ns 400 kHz modo 2(TOSC) (BRG + 1) -

1 MHz modo(1) 2(TOSC) (BRG + 1) -

NoTE 1: Maximum capacitancia pin = 10 pF para todos los pines I2C.

FIGURA 22-19: MASTER BUS I2C SSP MOMENTO DE DATOS

SCL

SDA En

103 100

90 106

91

101

107

102

92

SDUna salida

109 109 110

Nota:Refer a la Figura 22-4 para condiciones de carga.

Page 337: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 287

TABLE 22-18: Master SSP DATOS I2C BUS REQUISITOS

Param.

No.

Símbolo

Característica

Men

Mamáx

Unidades

Condiciones

100 ThigH Reloj máximo histórico

100 kHz modo 2 (TOSC) (BRG + 1) - ms 400 kHz modo 2 (TOSC) (BRG + 1) - ms

1 MHz modo(1) 2 (TOSC) (BRG + 1)

- ms

101 TLOW Reloj de tiempo bajo

100 kHz modo 2 (TOSC) (BRG + 1) - ms 400 kHz modo 2 (TOSC) (BRG + 1) - ms

1 MHz modo(1) 2 (TOSC) (BRG + 1)

- ms

102 TR SDA y SCL

rise tiempo 100 kHz modo - 1000 ns CB se especifica a partir de

10 a 400 pF 400 kHz modo 20 + 0,1 CB 300 ns

1 MHz modo(1) - 300 ns

103 TF SDA y SCL

fall Tiempo 100 kHz modo - 1000 ns VDD ≥ 40,2 V

400 kHz modo 20 + 0,1 CB 300 ns VDD ≥ 40,2 V

90 TSU: STA Fecha de Inicio

de estado de

configuración

100 kHz modo 2 (TOSC) (BRG + 1) - ms Onlrelevante

para la condición

de START

repetida y

400 kHz modo 2 (TOSC) (BRG + 1) - ms

1 MHz modo(1) 2 (TOSC) (BRG + 1)

- ms

91 THD: STA

Hora de inicio

condición de

retención

100 kHz modo 2 (TOSC) (BRG + 1) - ms Después de este

período, el primer pulso

de reloj se genera 400 kHz modo 2 (TOSC) (BRG + 1) - ms

1 MHz modo(1) 2 (TOSC) (BRG + 1)

- ms

106 THD: DAT

La

entrada

de datos

el tiempo

de espera

100 kHz modo 0 - ns 400 kHz modo 0 0,9 ms

107 TSU: DAT La entrada

de datos

de

configurac

ión

momento

100 kHz modo 250 - ns (Nota 2)

400 kHz modo 100 - ns

92 TSU: STO Detener el

tiempo estado

de

configuración

100 kHz modo 2 (TOSC) (BRG + 1) - ms 400 kHz modo 2 (TOSC) (BRG + 1) - ms

1 MHz modo(1) 2 (TOSC) (BRG + 1)

- ms

109 TAA Output vigor a

partir del reloj 100 kHz modo - 3500 ns 400 kHz modo - 1000 ns

1 MHz modo(1) - - ns

110 TBUF Bus tiempo libre 100 kHz modo 4.7 - ms Time el bus debe estar

libre antes de una nueva

transmisión puede

comenzar

400 kHz modo 1.3 - ms

D102 CB Bus carga capacitiva - 400 pF NoTE 1: Maximum capacitancia pin = 10 pF para todos los pines I2C.

2:Un dispositivo de modo rápido bus I2C se puede utilizar en un sistema de bus I2C modo estándar, pero el

parámetro # 107 ≥ 250 ns entonces se deben cumplir. Esto automáticamente será el caso si el dispositivo

no se estira el periodo bajo de la señal SCL. Si tal dispositivo se estira el periodo bajo de la señal SCL, que

debe emitir el bit de datos junto a la

SDA línea, el parámetro # 102 + # parámetro 107 = 1000 + 250 = 1250 ns (para el modo kHz 100) antes de

la línea SCL se libera.

Page 338: 39564c.en.es

PIC18FXX2

DS39564C-page288 2006 Microchip Technology Inc.

FIGURA 22-20: USART SÍNCRONO TRANSMISIÓN (maestro / esclavo) TIEMPO

RC6/TX/CK

pin

RC7/RX/DT pin

121 121

120

Nota: Refiérase a la Figura 22-4 para condiciones de carga.

122

TABLE 22-19: USART REQUISITOS transmisión síncrona

Param.

No.

Símbolo

Característica

Min

Mamáx

Unidades

Condiciones

120 TckH2dtV XMIT SYNC (MASTER & SLAVE)

Reloj alta a la salida de datos

válido

PIC18FXXX

-

50

ns

PIC18LFXXX - 150 ns VDD = 2V

121 Tckr Reloj hacia fuera tiempo de subida y tiempo de bajada

(Modo Master)

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

122 Tdtr Datun tiempo de subida y el tiempo de caída fuera

PIC18FXXX - 25 ns PIC18LFXXX - 60 ns VDD = 2V

FIGURA 22-21: USART Receive sincrónica (maestro / esclavo) TIEMPO

RC6/TX/CK pin

RC7/RX/DT pin

125

126

Nota: Refiérase a la Figura 22-4 para condiciones de carga.

TABLE 22-20: USART SÍNCRONO RECIBIR LOS REQUISITOS

Param.

No.

Símbolo

Característica

Min

Mhacha

Unidades

Condiciones

125 TdtV2ckl SYNC VN (MASTER & SLAVE)

Retención de datos antes de CK ↓ (DT tiempo de retención)

10

-

ns

126 TckL2dtl Datuna bodega después de CK ↓

(Tiempo de espera DT) PIC18FXXX 15 - ns PIC18LFXXX 20 - ns VDD = 2V

Page 339: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 289

TABLE 22-21: A / D CONVERTER CARACTERÍSTICAS: PIC18FXX2 (INDUSTRIAL ampliada)

PIC18LFXX2 (INDUSTRIAL)

Parsoy

No.

Symbol

Characteristic

Min

Typ

Max

Unidads

Condicións

La01 NR Resolución - - 10 bit La03 EIL Yoerror de linealidad ntegral - - <± 1 LSb VREF = VDD = 5.0V La04 EDL Difereerror de linealidad ntial - - <± 1 LSb VREF = VDD = 5.0V La05 EG Gain error - - <± 1 LSb VREF = VDD = 5.0V La06 EOFF Offset error - - <±1,5 LSb VREF = VDD = 5.0V La10 - Monotonicity guaranteed(2) - VSS≤ VAIN≤ VREF

La20

La20A VREF Reference Voltaje

(VREFH - VREFL) 1.8V

3V -

- -

- V

V Enfermedad

venéreaD

<3,0 V VDD ≥

3.0V La21 VREFH Reference de alta tensión AVSS - AVDD + 0,3 V V La22 VREFL Reference de baja tensión AVSS - 0,3 V - VREFH V La25 VAIN Tensión de entrada analógica AVSS - 0,3 V - AVDD + 0,3 V V Enfermedad venéreaD≥

2,5V(Noe 3) La30 ZAIN Reelogió la impedancia de la

fuente de tensión analógica - - 2.5 kΩ (Nota 4)

La50 IREF VREF de entrada de corriente (Nota 1)

-

- -

- 5

150 μ La

μ La Duriadquisición VAIN ng

During conversión A / D ciclo Noe 1: Vss ≤ VAIN≤ VREF

2:Tnunca Un resultado de la conversión A / D disminuye con un aumento en el voltaje de entrada, y no tiene códigos que faltan.

3:Fo VDD <2,5 V, VAIN debe limitarse a <0,5 VDD.

4:Mamáimpedancia ximo permitido para la fuente de tensión analógica es 10 kΩ . Esto requiere mayores tiempos de

adquisición.

FIGURA 22-22: A TIEMPO conversión A / D

BSF ADCON0, GO

Q4

(Nota 2)

131

A / D CLK

A-DATA /

D

132

9 8 7

130

. . . . . .

2 1 0

ADRES

ADSI

GO

SAMPLE

OLD_DATA

SAMPLING DETENIDO

NUEVO_DA

TOS

TCY

HECHO

Nota 1: Si la fuente A / D se selecciona del reloj como RC, un tiempo de TCY se añade antes del A / D comienza reloj.

Thse permite que el DORMIR instrucción a ejecutar.

2:Thestá es un mínimo retardo RC (típicamente 100 ns), que también desconecta el condensador de sujeción desde la entrada analógica.

Page 340: 39564c.en.es

PIC18FXX2

DS39564C-page290 2006 Microchip Technology Inc.

TABLE 22-22: A REQUISITOS conversión A / D

Param

No.

SyMbol

Ch.aracteristic

Men

Mhacha

Unidades

Condiciones

130 TAD Un reloj / D período PIC18FXXX 1,6 20(4) μ s ASC base

PIC18FXXX 2,0 60.0

μ s A / D RC modo

131 TCNV Tiempo de conversión

(Sint incluyendo el tiempo de adquisición) (Nota 1)

11 12 TAD

132 TACQ Acquisition tiempo (Nota 2) 5

10 -

- μ s

μ s VREF = VDD = 5.0V

VREF = VDD = 2.5V

135 TSWC Tiempo de conmutación de convertir →

muestra - (Nota 3)

NoTE 1: LaDRES registro puede ser leído en el ciclo TCY siguiente.

2:The tiempo para la celebración de condensador para adquirir el "Nuevo" tensión de entrada, cuando el valor

de entrada nueva no ha cambiado en más de 1 LSB de la tensión última muestra. La impedancia de la

fuente (RS) en los canales de entrada es 50Ω . Vea la Sección 17.0 para más información sobre el

examen adquisición tiempo.

3:On el siguiente ciclo Q4 del reloj del dispositivo.

4:Thtiempo e del período de reloj A / D es dependiente de la frecuencia y el dispositivo divisor de reloj TAD.

Page 341: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 291

5.5 V

5.0 V Typical: estadístico decir a 25 ° C

Maximo: mean + 3σ (-40 °C a 125 ° C) Minimo: mean - 3σ (-40 ° C a 125 ° C)

4.5 V

4.0 V

3.5 V

3,0V

2.5 V

2,0V

Yo

DD

(mA

) Y

oD

D

(mA

)

23,0 DC y características AC GRÁFICOS Y TABLAS

Nota: Thgráficos y tablas electrónicas proporcionadas después de esta nota es un resumen estadístico basado

en un número limitado de muestras y se proporcionan sólo con fines informativos. Las características de

rendimiento que figuran en este documento no se han probado ni garantizado. En algunos gráficos o

tablas, los datos presentados pueden estar fuera del rango de operación especificado (por ejemplo, fuera

del rango especificado de suministro de energía) y por lo tanto, fuera de la gama justificada.

"Typical"Representa la media de la distribución en 25°C. "Máximo" o "mínimo" representa (media + 3σ ) O (media -

3σ )

respectivamente, En donde σ yosa desviación estándar, sobre el rango de temperatura.

Figura 23-1: TÍPICO IDD vs FOSC SOBRE VDD (HS MODE)

12

Typical: estadístico decir a 25 ° C

10Maximo: mean + 3σ (-40 °C a 125 ° C) Mínimo:mean - 3σ (-40 ° C a 125 ° C)

8

6

5.5 V

5.0 V

4.5 V

4.0 V

3.5 V

4 3,0V

2 2.5V

2.0 V

0

4 6 8 1 0 12 1 4 1 6 18 2 0 2 2 24 2 6

F OS C (M H z)

FIGURA 23-2: MÁXIMO IDD vs FOSC MÁS DE VDD (HS MODE)

12

10

8

6

4

2

0

4 6 8 10 1 2 14 1 6 1 8 20 22 2 4 26

F OS C (M H z)

Page 342: 39564c.en.es

PIC18FXX2

DS39564C-page292 2006 Microchip Technology Inc.

IDD

(m

A)

IDD

(m

A)

Figura 23-3: TÍPICO IDD vs FOSC SOBRE VDD (SA / PLL MODE)

20

18 Typical: estadístico decir a 25 ° C

Máximo:mean + 3σ (-40 °C a 125 ° C) Minimo: mean - 3σ (-40 ° C a 125 ° C)

16

5.5V

14 5.0V

12 4.5V

10 4.2V

8

6

4

2

0

4 5 6 7 8 9 10

FOSC (MHz)

FIGURA 23-4: MÁXIMO IDD vs FOSC MÁS DE VDD (SA / PLL MODE)

20

18 Typical: estadístico decir a 25 ° C

Máximo:mean + 3σ (-40 °C a 125 ° C) Minimo: mean - 3σ (-40 ° C a 125 ° C)

16

14

12

10

5.5V

5.0V

4.5V

4.2V

8

6

4

2

0

4 5 6 7 8 9 10

FOSC (MHz)

Page 343: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 293

(UA)

DD Yo

Iden

tifi

c

ació

nD

(

μA

)

IDD

(μA

)

Figura 23-5: TÍPICO IDD vs FOSC SOBRE VDD (XT MODE)

2,000

1,800

1,600

1,400

Typical: estadístico decir a 25 ° C Maximo: mean + 3σ (-40 °C a 125 ° C) Mínimo:mean - 3σ (-40 ° C a 125 ° C)

50,5 V

50,0 V

40,5 V

1,200

1,000

800

600

40,0 V

30,5 V

30,0 V

20,5 V

20,0 V

400

200

0

0,0 0,5 1,0 1,5 2,0 2,5 3,0 3,5 4,0

FOSC (MHz)

FIGURA 23-6: MÁXIMO IDD vs FOSC MÁS DE VDD (XT MODE)

2.000

1.800

1.600

Typical: estadístico decir a 25 ° C Maximo: mean + 3σ (-40 °C a 125 ° C) Mínimo:mean - 3σ (-40 ° C a 125 ° C)

5.5V

5.0V

1.400

1.200

1.000

800

600

4.5V

4,0 V

3.5V

3.0V

2.5V

2.0V

400

200

0

0.0 0,5 1,0 1,5 2,0 2,5 3,0 3,5 4,0

FOSC (MHz)

Page 344: 39564c.en.es

PIC18FXX2

DS39564C-page294 2006 Microchip Technology Inc.

Yo

DD

(uA

) Y

oD

D

(uA

)

FIGURA 23-7: TÍPICO IDD vs FOSC SOBRE VDD (en modo LP)

100

Typical: estadístico decir a 25 ° C 90Máximo:mean + 3σ (-40 °C a 125 ° C)

Minimo: mean - 3σ (-40 ° C a 125 ° C)

80

5.5V

70

5.0V

60

4.5V

50

4,0 V

40 3.5V

30

20

3.0V

2.5V

2.0V

10

0

20 30 40 50 60 70 80 90 100

FOSC(KHz)

FIGURA 23-8: MÁXIMO IDD vs FOSC MÁS DE VDD (en modo LP)

140

120

Typical: estadístico decir a 25 ° C Máximo:mean + 3σ (-40 °C a 125 ° C) Minimo: mean - 3σ (-40 ° C a 125 ° C)

5.5V

100 5.0V

4.5V

80

4,0 V

3.5V 60

3.0V

40

2.5V

2.0V

20

0

20 30 40 50 60 70 80 90 100

FOSC (kHz)

Page 345: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 295

IDD

(m

A)

IDD

(m

A)

Figura 23-9: TÍPICO IDD vs FOSC SOBRE VDD (CE MODE)

16

Typical: estadístico decir a 25 ° C

14 Maximo: mean + 3σ (-40 °C a 125 ° C) Mínimo:mean - 3σ (-40 ° C a 125 ° C)

12

5.5V

5.0V

4.5V

10 4.2V

4,0 V

8

6 30,5 V

4

3.0V

2

2.5V

2.0V 0

4 8 12 16 20 24 28 32 36 40

FOSC (MHz)

FIGURA 23-10: MÁXIMO IDD vs FOSC MÁS DE VDD (CE MODE)

16

Typical: estadístico decir a 25 ° C

14 Maximo: mean + 3σ (-40 °C a 125 ° C) Mínimo:mean - 3σ (-40 ° C a 125 ° C)

5.5V

5.0V

12

4.5V

10 4.2V

4,0 V

8

3.5V

6

4 3.0V

2 2.5V

20,0 V

0

4 8 12 16 20 24 28 32 36 40

FOSC (MHz)

Page 346: 39564c.en.es

PIC18FXX2

DS39564C-page296 2006 Microchip Technology Inc.

(UA)

PD Yo Max (70C)

Typ (25C)

Typical: estadístico decir a 25 ° C

Máximo:mean + 3σ (-10 °C a 70 ° C) Mínimo:mean - 3σ (-10 ° C a 70 ° C)

Mamáx (+70 ° C)

Typ (+25 ° C)

Funcionamiento por encima de 4 MHz, no se recomienda.

3.3kΩ

5,1 kΩ

10kΩ

100kΩ

IDD

(μA

) F

req

(kH

z)

FIGURA 23-11: TÍPICO Y MÁXIMA IDD vs VDD

(Timer1 como oscilador principal, 32,768 kHz, C1 y C2 pF = 47)

180

160

140

120

100

80

60

40

20

0

2,0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

VDD (V)

FIGURA 23-12: PROMEDIO FOSC vs VDD para varios valores de R (RC

MODE, C = 20 pF, +25°C)

4.500

4.000

3.500

3.000

2.500

2.000

1.500

1.000

500

0

2.0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

Enfermedad

venéreaD (V)

Page 347: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 297

3.3kΩ

5,1

10kΩ

100kΩ

3.3kΩ

5,1 kΩ

10kΩ

100kΩ

Fre

q (

MH

z)

Fre

q (

kH

z)

FIGURA 23-13: PROMEDIO FOSC vs VDD para varios valores de R (RC

MODE, C = 100 pF, +25°C)

2.000

1.800

1.600

1.400

1.200

1.000

800

600

400

200

0

2.0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

Enfermedad

venérea

D(V)

FIGURA 23-14: PROMEDIO FOSC vs VDD para varios valores de R (RC

MODE, C = 300 pF, +25°C)

800

700

600

500

400

300

200

100

0

2.0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

VDD (V)

Page 348: 39564c.en.es

PIC18FXX2

DS39564C-page298 2006 Microchip Technology Inc.

Mamáx (125C)

Mamáx (85 º C)

Typ (25C)

Device

Held en

Reset

Device

en

Dormir

Mam

áx (-40 ° C a +125 °

C)

Max

(+85 ° C)

Typ (+25 °

C)

Typical: estadístico decir a 25 ° C Maximo: mean + 3σ (-40 °C a 125 ° C) Minimo: mean - 3σ (-40 ° C a 125 ° C)

IDD

( μA

) IP

D (

uA

)

FIGURA 23-15: IPD vs VDD, -40°C a +125°C (modo de ahorro, todos los periféricos con

discapacidad)

100

10

1

00.1

0,01

2.0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

VDD (V)

FIGURA 23-16: Δ IBOR vs VDD POR TEMPERATURA (BOR ENABLED, VBOR = 2.00 - 2.16V)

90

80

70

Dispositivo Lugar:

60 de RESET

Mamáx (+125 ° C)

50 Max (+85 ° C)

40

Typ (+25 ° C)

30

Dispositivo en

20 SLEEP

10

0

2,0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

Enfermedad

venéreaD (V)

Page 349: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 299

(UA)

PD Yo

Max (70C)

Typ (25C)

Mamáx (125C)

Mamáx (85 º C)

Typ (25C)

Typical: estadístico decir a 25 ° C Maximo: mean + 3σ (-10 °C a 70 ° C) Mínimo:mean - 3σ (-10 ° C a 70 ° C)

Mamáx (+70 ° C)

Typ (+25 ° C)

Typical: estadístico decir a 25 ° C Maximo: mean + 3σ (-40 °C a 125 ° C) Minimo: mean - 3σ (-40 ° C a 125 ° C)

Mamáx (+125 °

C)

Mamáx (+85 ° C)

Typ (+25 ° C)

IPD

( μA

) IP

D

(μA

)

FIGURA 23-17: TÍPICO Y MÁXIMO Δ ITMR1 vs VDD POR TEMPERATURA (-10°C a +70°C, TIMER1

CON OSCILADOR, XTAL = 32 kHz, C1 y C2 = 47 pF)

14

12

10

8

6

4

2

0

2,0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

Enfermedad

venérea

D(V)

FIGURA 23-18: TÍPICO Y MÁXIMO Δ IWDT vs VDD POR TEMPERATURA (WDT ENABLED)

70

60

50

40

30

20

10

0

2,0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

VDD (V)

Page 350: 39564c.en.es

PIC18FXX2

DS39564C-page300 2006 Microchip Technology Inc.

Max

(125C)

MAX

(85C)

Typ

(25C)

Min

(-40C)

Mamáx (125C)

Mamáx (125C)

Typ (25C)

Typ (25C) Yo

DD

( μA

) W

DT

Pe

río

do

(m

s)

FIGURA 23-19: Típico, mínimo y máximo WDT PERIODO vs VDD (-40°C a +125°C)

50

Typical: estadístico decir a 25 ° C

45Maximo: mean + 3σ (-40 °C a 125 ° C) Mínimo:mean - 3σ (-40 ° C a 125 ° C)

40

Mamáx

(+125 ° C)

35

Mamáx

(+85 ° C)

30

25

Typ (+25 °

C)

20

15

Men (-40 °C)

10

5

0

2.0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

VDD (V)

FIGURA 23-20: Δ IlvD vs VDD POR TEMPERATURA (LVD HABILITADA, VLVD = 4.5 - 4.78V)

90

80

Mamáx (+125 ° C)

70

60

Max (+125 ° C)

50

Typ (+25 ° C)

40

30

20

10

LVDIF es

fijado por

hardware

0

Typ (+25 ° C)

LVDIF

estado es

desconocid

o

LVDIF puede

borrar

firmware

2.0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

VDD (V)

Page 351: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 301

Mhacha

Typ (25C)

Min

Typ (25C)

Min

Mhacha

Mamáx

Typ (+25 ° C)

Men

VO

H (

V)

VO

H (

V)

FIGURA 23-21: Típico, mínimo y máximo VOH vs IOH (VDD = 5 V, -40°C a +125°C)

5,5

5.0

4,5

4.0

3,5

3,0

2,5

2,0

1,5

1,0

0,5

0,0

0 5 10 15 20 25

IOH (-mA)

FIGURA 23-22: Típico, mínimo y máximo VOH vs IOH (VDD = 3 V, -40°C a +125°C)

3,0

2,5

2,0 Mamáx

1,5

Typ (+25 ° C)

1,0

Men

0,5

0,0 0 5 10 15 20 25

IOH (-mA)

Page 352: 39564c.en.es

PIC18FXX2

DS39564C-page302 2006 Microchip Technology Inc.

Typ (25C)

Max

Typ (25C)

Max

Typical: estadístico decir a 25 ° C

Maximo: mean + 3σ (-40 °C a 125 ° C) Mínimo:mean - 3σ (-40 ° C a 125 ° C)

Mamáx

Typ (+25 ° C)

VO

L (

V)

VO

L (

V)

FIGURA 23-23: TÍPICO Y MÁXIMO VOLUMEN vs IOL (VDD = 5 V, -40°C a +125°C)

1,8

1,6

1,4

1,2

1,0

0,8

0,6

0,4

0,2

0,0

0 5 10 15 20 25

YoOL (-MA)

FIGURA 23-24: TÍPICO Y MÁXIMO VOLUMEN vs IOL (VDD = 3 V, -40°C a +125°C)

2,5

2,0

Typical: estadístico decir a 25 ° C Maximo: mean + 3σ (-40 °C a 125 ° C) Minimo: mean - 3σ (-40 ° C a 125 ° C)

1,5

1,0 Mamáx

0,5

Typ (+25 ° C)

0,0 0 5 10 15 20 25

YoOL (-mA)

Page 353: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 303

VIN

(V

) V

IN (

V)

FIGURA 23-25: MÍNIMA Y MÁXIMA VIN vs VDD (INPUT ST, -40°C a +125°C)

4.0

3,5

Typical: estadístico decir a 25 ° C Maximo: mean + 3σ (-40 °C a 125 ° C) Mínimo:mean - 3σ (-40 ° C a 125 ° C)

VIH Max

3,0

2,5

VIH Min

2,0 VIL máx

1,5

1,0

0,5

VIL Min

0,0 2,0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

VDD (V)

FIGURA 23-26: MÍNIMA Y MÁXIMA VIN vs VDD (TTL ENTRADA, -40°C a +125°C)

1,6

1,4

Typical: estadístico decir a 25 ° C Maximo: mean + 3σ (-40 °C a 125 ° C) Minimo: mean - 3σ (-40 ° C a 125 ° C)

VTH (Max)

1,2

VTH (Min)

1,0

0,8

0,6

0,4

0,2

0,0 2,0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

VDD (V)

Page 354: 39564c.en.es

PIC18FXX2

DS39564C-page304 2006 Microchip Technology Inc.

-40C

25C

85C

125C

VIH Max

Typical: estadístico decir a 25 ° C Maximo: mean + 3σ (-40 °C a 125 ° C) Mínimo:mean - 3σ (-40 ° C a 125 ° C)

VILmax

VIH Min

VIL Min

-40° C

+25 ° C

+85 ° C

1 25 ° C

VIN

(V

) D

No

lin

ea

lid

ad

iff

ere

nti

al

o In

teg

ral

(LS

B)

FIGURA 23-27: MÍNIMA Y MÁXIMA VIN vs VDD (INPUT I2C, -40°C a +125°C)

3,5

3,0

2,5

2,0

1,5

1,0

0,5

0,0 2,0 2,5 3,0 3,5 4,0 4,5 5,0 5,5

VDD (V)

FIGURA 23-28: A / D NO LINEALIDAD vs VREFH (VDD = VREFH, -40°C a +125°C)

4

30.5

3

20.5

2

10.5

1

00.5

0

2 2,5 3 3,5 4 4,5 5 5,5

VDD y VREFH (V)

Page 355: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 305

Typ (25C)

Max (-40C a 125C)

DN

on

lin

ea

rilt

y i

ffe

ren

tia

l o

In

teg

ral

(LS

B)

FIGURA 23-29: A / D NO LINEALIDAD vs VREFH (VDD = 5 V, -40°C a +125°C)

3

2,5

2

1,5

Mamáx (-40 ° C a +125

° C)

1

Typ (+25 °

C)

0,5

0

2 2,5 3 3,5 4 4,5 5 5,5

VREFH (V)

Page 356: 39564c.en.es

PIC18FXX2

DS39564C-page306 2006 Microchip Technology Inc.

NOTAS:

Page 357: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 307

240.0 Información sobre el embalaje

24.1 Paquete de Información de marcado

28-Lead SPDIP Ejemplo

XXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXX

YYWWNNN

PYoC18F242-I/SP e3

0610017

28-SOIC plomo

Ejemplo

XXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXX

YYWWNNN

PIC18F242-E/SO e3

0610017

40-Lead PDIP Ejemplo

XXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXX

YYWWNNN

PIC18F442-I / P e3

0610017

Leyenda: XX ... X información específica del cliente

Y el código Año (último dígito del año calendario)

YCódigo de año y (2 últimos dígitos del año

calendario) Código WW Week (semana del 01 de

enero es la semana 01 ")

Código alfanumérico NNN trazabilidad

e3 Pb-libre designación JEDEC para Matte Estaño (Sn)

*Thipaquete s es Pb-libre. El Pb-libre designación JEDEC ( e3 ) Californian se encuentra en el embalaje exterior para

este paquete.

Nota: En el caso de que el número completo Microchip parte no se pueden marcar en

una línea, se trasladará a la siguiente línea, lo que limita el número de

caracteres disponibles para información específica del cliente.

Page 358: 39564c.en.es

PIC18FXX2

DS39564C-page308 2006 Microchip Technology Inc.

PackagMarcado e Información (Continuación)

44-Lead TQFP Examplio

XXXXXXXXXX XXXXXXXX

XXXXXXXXXX YYWWNNN

PIC18F452 -E/ PT e3

0610017

44-Lead PLCC Examplio

XXXXXXXXXX XXXXXXXX XXXXXXXXXX YYWWNNN

PIC18F442 -I / L e3

0610017

Page 359: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 309

24.2 Detalles del paquete

The secciones siguientes proporcionan los detalles técnicos de los paquetes.

28-Lead dual de plástico delgado en línea (SP) - 300 Cuerpo mil (PDIP)

Nota: For los dibujos de paquetes más recientes, consulte la Especificación de embalaje Microchip

ubicada en http://www.microchip.com/packaging

E1

D

2

n 1 α

E A2

La

c L

β La1 B1

eBB p

Unidads PULGADAS* MILÍMETROSS

DLímites IMENSIÓN

MichiganN

NOM MassachusettsX

MichiganN

NOM MassachusettsX

Number de pins n 28 28 Ppicazón p .100 2,54 Ap para plano de asiento L

a .140 .150 .160 3,56 3,81 4,06

MoEspesor del paquete LDED A2 .125 .130 .135 3,18 3,30 3,43 Base sobre el plano de asientos A1 .015 0,38 Shoulder al ancho de los hombros E .300 .310 .325 7,62 7,87 8,26 MoAncho del paquete LDED E1 .275 .285 .295 6,99 7,24 7,49 OveraLongitud ll D 1,345 1,365 1,385 34,16 34,67 35,18 Tip para plano de asiento L .125 .130 .135 3,18 3,30 3,43 Pastod Espesor c .008 .012 .015 0,20 0,29 0,38 Upper Ancho plomo B1 .040 0.05

3 .065 1,02 1,33 1,65

Lower Ancho plomo B .016 .019 .022 0,41 0,48 0,56 OveraEspacio entre hileras ll § eB .320 .350 .430 8,13 8,89 10,92 Mold Proyecto Top Angle α 5 10 15 5 10 15 Mold Proyecto ángulo inferior β 5 10 15 5 10 15 *Controlling Parámetro

§FirmarCaracterísticas ificant

Notas:

DIMENSIÓN D y E1 no incluyen flash molde o protuberancias. Flash de molde o salientes no deberá exceder .010 "(0,254 mm) por

lado. JEDEC equivalente: MO-095

Dibujarción N º C04-070

Page 360: 39564c.en.es

PIC18FXX2

DS39564C-page310 2006 Microchip Technology Inc.

28-Lead Plástica de contorno pequeño (SO) - Wide Body, 300 mil (SOIC)

Nota: For los dibujos de paquetes más recientes, consulte la Especificación de embalaje Microchip

ubicada en http://www.microchip.com/packaging

E

E1 p

D

B

2

n 1

α

45°

c

A A2

φ

β L A1

Unidades PULGAD

AS* MILLIMETERS

Límites de dimensiones

MIN NOM MassachusettsX

MEN NOM MassachusettsX

Número de pins n 28 28 Ppicazón p 0.05

0 1,27 Altura total La 0.09

3 0.099

0.104

2.36 2,50 2,64 MoEspesor del paquete LDED A2 0.08

8 0.091

0.094

2.24 2.31 2,39 StandofF§ A1 0.00

4 0.008

0.012

0.10 0,20 0,30 Ancho total E 0.39

4 0.407

0.420

10.01 10,34 10.67 Ancho del paquete moldeado E1 0.28

8 0.295

0.299

7,32 7,49 7,59 Longitud total D 0.69

5 0.704

0.712

17,65 17,87 18.08 Chaflán Distancia h 0.01

0 0.020

0.029

0.25 0,50 0,74 Foot Longitud L 0.01

6 0.033

0.050

0,41 0,84 1,27 Foot Top Angle φ 0 4 8 0 4 8 Plomo Espesor c 0.00

9 0.011

0.013

0.23 0,28 0,33 Pastod Ancho B 0.01

4 0.017

0.020

0.36 0.42 0,51 Mold Proyecto Top Angle α 0 12 15 0 12 15 Proyecto de Mold ángulo inferior β 0 12 15 0 12 15 *El control de los parámetros

§SCaracterísticas ignificant

Notas:

Dimensiones D y E1 no incluyen flash molde o protuberancias. Flash de molde o salientes no deberá exceder .010 "(0,254 mm)

por lado. JEDEC equivalente: MS-013

Dibujo N º C04-052

Page 361: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 311

40-Lead Plastic Dual In-line (P) - 600 Cuerpo mil (PDIP)

Nota: For los dibujos de paquetes más recientes, consulte la Especificación de embalaje Microchip

ubicada en http://www.microchip.com/packaging

E1

D

n 1

E

A A2

cL

β La1B1

eBB p

Número de pins

Pitch

Unidades

Límites de

di

me

nsi

ón

n

p

MichiganN

YoNCHES*

NOM

40

0.100

MassachusettsX

MIN

MILLIMETERS

NOM

40

2.54

MassachusettsX

Ap para un paquete plano de asiento

moldeado A2 Espesor

Base al plano de asiento A1

SHoulder al ancho de los hombros E

moldeado paquete Ancho E1

Longitud total D

Tip a plano de asiento L Plomo B1 c

Grosor Ancho Alto Plomo

HeloEl plomo wer Ancho B Espacio

entre hileras general §eB

Mold Proyecto Top Angle α

Proyecto de Mold ángulo inferior

β

*El control de los parámetros

§SCaracterísticas

ignificant

Notas:

0.160

0.140

0.015

0.59

5

0.530

2,045

0.120

0.008

0.030

0.014

0.620

5

5

0.175

0.150

0.60

0

0.545

2,058

0.130

0.012

0.050

0.018

0.650

10

10

0.190

0.160

0.62

5

0.560

20.065

0.135

0.015

0.070

0.022

0.680

15

15

4.06

3,56

0,38

15,11

13.46

51.94

3.05

0,20

0,76

0,36

15,75

5

5

4,45

3,81

15,24

13,84

52,26

3.30

0.29

1.27

0.46

16.51

10

10

4,83

4,06

15.88

14,22

52,45

3,43

0,38

1,78

0,56

17.27

15

15

Dimensiones D y E1 no incluyen flash molde o protuberancias. Flash de molde o salientes no deberá exceder .010 "(0,254 mm) por

lado. JEDEC equivalente: MO-011

Dibujo N º C04-016

Page 362: 39564c.en.es

PIC18FXX2

DS39564C-page312 2006 Microchip Technology Inc.

44-Lead plástica delgada cuádruple Flatpack (PT) 10x10x1 mm cuerpo, 1.0/0.10 mm Forma de entrega (TQFP)

Nota: For los dibujos de paquetes más recientes, consulte la Especificación de embalaje Microchip

ubicada en http://www.microchip.com/packaging

E

E1

#conduce

n1 = p

B

D1 D

2

1

n

CH x 45 ° α

La

c

φ

β La1 A2 L F

Naciones Unidassu YoNCHES

MILÍMETROS* DLímites IMENSIÓN Michigan

N NOM Massach

usettsX MichiganN

NOM MassachusettsX Number de pins n 44 44

Ploch p .031 0.80 Pins por cada cara n1 11 11 OveraAltura ll L

a .039 .043 .047 1.00 1.10 1.20

Molded Espesor del paquete La2 .037 .039 .041 0.95 1.00 1.05 StandofF La1 .002 .004 .006 0.05 0.10 0.15 Foot Longitud L .018 .024 .030 0.45 0.60 0.75 Footprint (referencia) F .039 REF. 1,00 REF. Foot Ángulo φ 0 3.5 7 0 3.5 7 OveraAncho ll E .463 .472 .482 11.75 12.00 12.25 OveraLongitud ll D .463 .472 .482 11.75 12.00 12.25 Molded Ancho del paquete E1 .390 .394 .398 9.90 10.00 10.10 Molded Longitud de Empaque D1 .390 .394 .398 9.90 10.00 10.10 Pastod Espesor c .004 .006 .008 0.09 0.15 0.20 Pastod Ancho B .012 .015 .017 0.30 0.38 0.44 PChaflán de esquina en una CH .025 .035 .045 0.64 0.89 1.14 Mold Proyecto de Top Angle α 5 10 15 5 10 15 Mold Proyecto de ángulo inferior β 5 10 15 5 10 15 *Controlling Parámetro

Notas:

DIMENSIONES D y E1 no incluyen flash molde o protuberancias. El moho flash o salientes no excederá de 0,010 "(0,254 mm) por

lado REF:. Dimensión de referencia, por lo general sin tolerancia, con fines informativos solamente.

See ASME Y14.5M

JedeC equivalente: MS-026

Dibujarción N º C04-076

Revoluciónzada 07/22/05

Page 363: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 313

c

44-Lead plástico portador de chip con plomo (L) - Square (PLCC)

Nota: For los dibujos de paquetes más recientes, consulte la Especificación de embalaje Microchip

ubicada en http://www.microchip.com/packaging

E

E1

#conduce = n1

D D1

n 1 2

CH2 x 45 ° CH1 x 45 °

La3α

La2 Un

35°

B1

BA1 β

p

E2 D2

Unidades YoNCHES*

MILLIMETERS DimenLímites sión

MEN NOM MassachusettsX

MichiganN

NOM MassachusettsX Número de pins n 44 44

Pitch p 0.050 1,27

Pins por cada cara n1 11 11 Altura total La 0.16

5 0.173

0.180

4,19 4,39 4.57 MoEspesor del paquete LDED A2 .145 .153 0.16

0 3,68 3,87 4.06

Standoff § A1 0.020

.028 0.035

0.51 0,71 0.89 Side un chaflán Altura A3 0.02

4 0.029

0.034

0.61 0,74 0.86 Chaflán de esquina 1 CH1 0.04

0 0.045

0.050

1.02 1,14 1.27 Chaflán de esquina (otros) CH2 0.00

0 0.005

0.010

0,00 0,13 0,25 Ancho total E 0.68

5 0.690

0.695

17.40 17,53 17.65 OveraLongitud ll D 0.68

5 0.690

0.695

17.40 17,53 17.65 MoAncho del paquete LDED E1 0.65

0 0.653

0.656

16,51 16,59 16,66 MoLongitud de Empaque LDED D1 0.65

0 0.653

0.656

16,51 16,59 16,66 FootprAncho int E2 0.59

0 0.620

0.630

14.99 15,75 16,00 FootprLongitud int D2 0.59

0 0.620

0.630

14.99 15,75 16,00 Pastod Espesor c 0.00

8 0.01

1 0.01

3 0,20 0,27 0.33

Ancho de plomo superior B1 0.026

0.029

0.032

0,66 0,74 0,81 Helower Ancho plomo B 0.01

3 0.020

0.021

0,33 0,51 0.53 Mold Proyecto Top Angle α 0 5 10 0 5 10 Mold Proyecto ángulo inferior β 0 5 10 0 5 10 *El control de los parámetros

§Característica significativa

Notas:

Dimensiones D y E1 no incluyen flash molde o protuberancias. Flash de molde o salientes no deberá exceder .010 "(0,254 mm)

por lado. JEDEC equivalente: MO-047

Dibujo N º C04-048

Page 364: 39564c.en.es

PIC18FXX2

DS39564C-page314 2006 Microchip Technology Inc.

NOTAS:

Page 365: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 315

APÉNDICE A: HISTORIAL DE REVISIONES

Revisión A (junio de 2001)

OHoja de datos riginal para la familia PIC18FXX2.

Revisión B (agosto de 2002)

This de revisión incluye la DC y AC Características

Gráficos y cuadros. Las especificaciones eléctricas en

la Sección 22.0 se han actualizado y se han realizado

pequeñas correcciones al texto de hoja de datos.

Revisión C (octubre de 2006)

Packagindiagramas g actualizado.

APÉNDICE B: DISPOSITIVO DE DIFERENCIAS

Thdiferencias entre los dispositivos electrónicos que

figuran en esta hoja de datos se muestran en la Tabla

B-1.

TABLE B-1: DIFERENCIAS DE DISPOSITIVOS

Featura PIC18F242 PIC18F252 PIC18F442 PIC18F452

Programa Memoria (Kbytes) 16 32 16 32

Memoria de datos (bytes) 768 1536 768 1536

A / D Canales 5 5 8 8

Puerto Paralelo Esclavo (PSP) No No Vosotross

Yes

PackagTipos de correos

28-pin DIP

28Pines SOIC

28-Pin DIP

28-pin SOIC

40-Pin DIP

44-pin PLCC

44-pin TQFP

40-Pin DIP

44Pines PLCC

44Pines TQFP

Page 366: 39564c.en.es

PIC18FXX2

DS39564C-page316 2006 Microchip Technology Inc.

APÉNDICE C: CONSIDERACIONES DE CONVERSIÓN

This apéndice discute las consideraciones para con-

vertir a las versiones anteriores de un dispositivo a los

que aparecen en esta hoja de datos. Normalmente,

estos cambios se deben a las diferencias en la

tecnología de proceso utilizado. Un ejemplo de este

tipo de conversión es de un PIC16C74A a un

PIC16C74B.

No aplicable

APÉNDICE D: MIGRACIÓN DE BASE A LOS DISPOSITIVOS MEJORADOS

En esta sección se describe cómo migrar desde un

dispositivo de línea de base (es decir, PIC16C5X) a

un dispositivo mejorado MCU (es decir, PIC18FXXX).

Thsiguiente dirección son la lista de modificaciones sobre el

PIC16C5X familia de microcontroladores:

Actualmente no disponible

Page 367: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 317

APÉNDICE E: MIGRACIÓN DE MEDIO ALCANCE A LOS DISPOSITIVOS MEJORADOS

Una discusión detallada de las diferencias entre los

dispositivos de gama media MCU (es decir,

PIC16CXXX) y los dispositivos mejorada (es decir,

PIC18FXXX) se proporciona en AN716, "Migración de

diseños de PIC16C74A/74B a PIC18F442". Los

cambios discutido, mientras que este dispositivo

específico, son generalmente aplicables a todas

intermedio a migraciones del dispositivo mejorada.

ThiNota s La aplicación está disponible como número Literatura

DS00716.

APÉNDICE F: MIGRACIÓN DE GAMA ALTA A LOS DISPOSITIVOS MEJORADOS

Una discusión detallada de la vía de migración y dife-

rencias entre los dispositivos de gama alta MCU (es

decir, PIC17CXXX) y los dispositivos mejorada (es

decir, PIC18FXXX) se proporciona en AN726,

"PIC17CXXX a PIC18FXXX migración". Esta nota de

aplicación está disponible en Literatura Número

DS00726.

Page 368: 39564c.en.es

PIC18FXX2

DS39564C-page318 2006 Microchip Technology Inc.

NOTAS:

Page 369: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 319

ÍNDICE

La

A / D ............................................... .................................... 181

A / D Converter Flag (bit ADIF) ................................. 183

A /D interrupción Converter, Configuración ....................... 184

AcquisitioRequisitos n ........................................ 184

ADCON0 Registro ................................................ .... 181

ADCON1 Registro ................................................ .... 181

ADRESH Registro ................................................ .... 181

ADRESH / ADRESL Registros .................................. 183

ADRESL Register ................................................ .... 181

Analog pines del puerto ............................................... . 99,100

Analog pines del puerto, configuración .................................. 186

Asociard registros ............................................... 188

CONFIGURACg del módulo ............................................ 184

Conversion del reloj (TAD) ........................................... 186

ConversioEstado n (GO / DONE Bit) .......................... 183

Conversións ................................................. ............ 187

Características Convertidor ........................................ 287

Ecuaciones

Tiempo de adquisición de ............................................... 185

Minimum Tiempo de carga .................................. 185

Ejemplos

Calculating el mínimo requerido

Tiempo de adquisición de ...................................... 185

Resultado Registros ................................................ ....... 187

Disparo de Eventos Especiales (CCP) ............................ 120,188

TAD en función Frecuencias de funcionamiento del dispositivo

.................... 186 Nosotrose del Disparador CCP2 .......................................... 188

Índices absolutos máximos ............................................. 259

AC (Timing) Características ............................................. 269

Load Condiciones para la sincronización de dispositivos

Especificacións ................................................. .. 270

Simbología de parámetros ............................................. 269

Temperaturaey Especificaciones Voltaje - AC ......... 270

Timing Condiciones ................................................ .... 270

Flag ACKSTAT Estado ............................................... ...... 155

ADCON0 Registro ................................................ ............ 181

GO / DONE Bit ................................................ ........... 183

ADCON1 Registro ................................................ ............ 181

ADDLW ................................................. ........................... 217

ADDWF ................................................. ........................... 217

ADDWFC ................................................. ........................ 218

ADRESH Registro ................................................ ............ 181

ADRESH / ADRESL Registros ........................................... 183

ADRESL Register ................................................ ............ 181

De analógico a Digital Converter. Ver A / D

ANDLW ................................................. ........................... 218

ANDWF ................................................. ........................... 219

Ensamblador

MPASM Ensamblador ................................................ .. 253

B

Baud Generador de velocidad ............................................... ........ 151

BC ................................................. ................................... 219

BCF ................................................. ................................. 220

Flag BF Estado ............................................... .................. 155

Page 370: 39564c.en.es

PIC18FXX2

DS39564C-page320 2006 Microchip Technology Inc.

Block Diagramas

Convertidor A / D .............................................. ............ 183

Analog Modelo de entrada ............................................... ... 184

Baud Generador de velocidad .............................................. 151

Capture Modo de operación ......................................... 119

Compare Modo de funcionamiento ....................................... 120

Helow Voltaje Detección

Fuente de referencia externa ............................. 190

Internal Fuente de referencia ............................... 190

MSSP

I2C Modo ................................................ ......... 134

MSSP (SPI Mode) ............................................. ...... 125

El Chi-p Restaurar Circuito ............................................... . 25

Puerto Paralelo Esclavo (PORTD y PORTE) ............... 100

PIC18F2X2 ................................................. ................. 8

PIC18F4X2 ................................................. ................. 9

PLL ................................................. ........................... 19

PORTC (Anulación de salida de periferia) ........................ 93

PORTD (I / O Mode) ........................................... ......... 95

PORTE (I / O Mode) ........................................... ......... 97

PWM Funcionamiento (simplificado) .................................... 122

RA3: RA0 y RA5 pines del puerto ..................................... 87

RA4/T0CKI Pin .............................................. ............ 88

RA6 Pin ................................................ ..................... 88

RB2: RB0 pines del puerto ............................................... ..... 91

RB3 Pin ................................................ ..................... 91

RB7: RB4 pines del puerto ............................................... ..... 90

Table Lea Operación ............................................... 55

Table Escriba Operación ............................................... . 56

Table Graba en la memoria flash del Programa ................. 61

Timer0 en el modo de 16-bit ............................................ .. 104

Timer0 en modo 8-bit ............................................ .... 104

Tiempor1 ................................................. .................... 108

Timer1 (16-bit R / W Mode) ....................................... 108

Tiempor2 ................................................. .................... 112

Tiempor3 ................................................. .................... 114

Timer3 (16-bit R / W Mode) ....................................... 114

USART

Recepción asincrónica .................................... 174

Asíncrona Transmisión ................................... 172

Watchdog Temporizador ................................................ ...... 204

BN ................................................. ................................... 220

BNC ................................................. ................................ 221

BNN ................................................. ................................ 221

BNOV ................................................. .............................. 222

BNZ ................................................. ................................. 222

BOR. Véase Brown-out reset

BOV ................................................. ................................ 225

BRA ................................................. ................................ 223

BRG. Ver generador de velocidad de transmisión

Brown-out Reset (BOR) ........................................... .......... 26

BSF ................................................. ................................. 223

BTFSC ................................................. ............................ 224

BTFSS ................................................. ............................ 224

BTG ................................................. ................................ 225

Bus de colisión Durante una condición de parada .......................... 163

BZ ................................................. ................................... 226

Page 371: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 321

C

CTODO ................................................. ............................... 226

Capture (CCP Module) ............................................. ........ 119

Asociard registros ............................................... 121

CCP Configuración de las clavijas ............................................. 119

CCPR1H: Registros CCPR1L ................................... 119

Interrupción Software ................................................ ..... 119

Timer1/Timer3ModSelección e ................................ 119

Capture / Compare / PWM (CCP) ........................................ 117

Capture Mode. Ver captura

CCP1 ................................................. ....................... 118

CCPR1H Registro ............................................ 118

CCPR1L Register ............................................ 118

CCP2 ................................................. ....................... 118

CCPR2H Registro ............................................ 118

CCPR2L Register ............................................ 118

Compare Mode. Ver Comparar

INTERACCIOn de dos módulos CCP ............................. 118

PWM Mode. Ver PWM

Tiempor Recursos ................................................ ...... 118

ClockinEsquema g / ciclo de instrucción .................................... 39

CLRF ................................................. ............................... 227

CLRWDT ................................................. ......................... 227

BacalaoEjemplos E

16 x 16 Firmado Multiply rutina ................................. 72

16 x 16 Rutina Multiplicar sin signo ............................. 72

8 x 8 Firmado Multiply rutina ..................................... 71

8 x 8 Rutina Multiplicar sin signo ................................. 71

Changing Entre prescalers captura ................... 119

Data EEPROM Read ............................................... .. 67

Datuna rutina EEPROM Actualizar ................................ 68

Data EEPROM Escribir ............................................... ... 67

Borrado de un programa de flash Row Memoria .................. 60

Fast Register Stack ............................................... ..... 39

How para borrar RAM (Banco1) Utilizar

Indirect Direccionamiento ............................................ 50

Inicializaciónzing PORTA ................................................ ...... 87

Inicializaciónzing PORTB ................................................ ...... 90

Inicializaciónzing PORTC ................................................ ...... 93

Inicializaciónzing PORTD ................................................ ...... 95

Inicializaciónzing PORTE ................................................ ...... 97

Loading el SSPBUF (SSPSR) Registro ................. 128

Reading una palabra de memoria de programa Flash ................ 59

Saving STATUS, WREG y BSR

Registros en la memoria RAM ............................................... 85

Writing de memoria de programa Flash ..................... 62-63

Bacalaoe Protección ................................................ ............... 195

COMF ................................................. .............................. 228

Compare (CCP Module) ............................................. ...... 120

Asociard registros ............................................... 121

CCP Configuración de las clavijas ............................................. 120

CCPR1 Registro ................................................ ....... 120

Interrupción Software ................................................ ..... 120

Special disparador de eventos ........................ 109,115,120,188

Timer1/Timer3ModSelección e ................................ 120

Configuration Bits ................................................ ............. 195

Context ahorro durante interrupciones ....................................... 85

ConversioConsideraciones n .............................................. 314

CPFSEQ ................................................. ......................... 228

CPFSGT ................................................. .......................... 229

CPFSLT ................................................. .......................... 229

Page 372: 39564c.en.es

PIC18FXX2

DS39564C-page322 2006 Microchip Technology Inc.

D

Datuna memoria EEPROM

Asociard Registra ................................................ . 69

EEADR Registro ................................................ ........ 65

EECON1 Registro ................................................ ...... 65

EECON2 Registro ................................................ ...... 65

Open Durante Código de Protección ................................. 68

Protection Contra espurias Escribir ............................. 68

Reading ................................................. .................... 67

Ucantar ................................................. ......................... 68

WVerifique rito ................................................ ................ 68

Writing ................................................. ....................... 67

Memoria de datos ................................................ ..................... 42

GeneraPropósito l Registra ....................................... 42

Mamáp para PIC18F242/442 ............................................ 43

Mamáp para PIC18F252/452 ............................................ 44

SpeciaFunción l Registros ........................................ 42

DAW ................................................. ............................... 230

DC y AC Características

Graphs y tablas ............................................... ... 289

DC Características ................................................ 261 ....,265

DCFSNZ ................................................. ......................... 231

DECF ................................................. .............................. 230

DECFSZ ................................................. ......................... 231

Development Apoyo ................................................ ...... 253

DeLas diferencias vice ................................................ ........... 313

Devicio general ................................................ .................. 7

Características ................................................. ...................... 7

Directivat Direccionamiento ................................................ ............... 51

Ejemplo ................................................. .................... 49

E

Características eléctricas ................................................ .. 259

Errata ................................................. .................................. 5

F

AbetoInstrucciones MWare ................................................ ....... 211

FloridaASH memoria del programa ............................................... .... 55

Asociard Registra ................................................ . 63

Control Registra ................................................ ....... 56

Erasí Secuencia ................................................ ........ 60

Borrado ................................................. ...................... 60

Open Durante Código de Protección ................................. 63

Reading ................................................. .................... 59

TABLAT Registro ................................................ ....... 58

TPuntero capaz ................................................ ............. 58

Boundaries Sobre la base de la Operación ........................ 58

TLímites capaces Pointer .......................................... 58

Table Lee y Escribe Tabla .................................. 55

Block Diagramas

Lee de la memoria de programa Flash ....... 59

Writing a ................................................ .................... 61

Protection Contra espurias Escribe ................... 63

UnexpecteTerminación d .................................... 63

WVerifique rito ................................................ ........ 63

G

GLlamar eneral Apoyo Dirección ......................................... 148

GOTO ................................................. ............................. 232

Page 373: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 323

Yo

I /O Ports ................................................ ............................. 87

I2C (módulo MSSP)

Pulse ACK ................................................ ................ 139

Lectura / Escriturae información de bit (R / W Bit) ....................... 139

I2C (SSP Module)

Pulse ACK ................................................ ................ 138

I2C Recepción modo maestro .............................................

155

I2C Modo

Reloj estiramiento ................................................ ....... 144

I2C Modo (MSSP Module) ............................................ ....

134

Registros ................................................. ................. 134

I2Módulo C

Pulse ACK ................................................ ........ 138,139

AGRADECIMIENTOSTiming e Secuencia ............................... 158

Baud Generador de velocidad ............................................... 151

Bus Collision

Repitend condición de arranque ............................ 162

ESTRELLAT Estado ............................................. 160

Reloj Arbitraje ................................................ ....... 152

Efecto de un RESET .............................................. ...... 159

GeneraLlamar l Dirección de Apoyo ................................. 148

Modo Maestro ................................................ ............ 149

Open ................................................. ........ 150

Repitend Comience a contar Condición ................. 154

Master Modo condición de arranque ............................... 153

Transmisión Modo Maestro ...................................... 155

Multi-Master Comunicación, colisión de autobuses

unArbitraje d ................................................ .. 159

Multi-Master Modo ................................................ ... 159

Open ................................................. ................ 138

Lectura / Escriturae información de bit (R / W bits) ............... 138,139

Serial Clock (RC3/SCK/SCL) ................................... 139

Slave Mode ................................................ .............. 138

Adresinag ................................................. ...... 138

Recepción ................................................. ........ 139

Transmisión ................................................. ... 139

Eslavoe Timing Mode (10-bit Recepción,

SEN = 0) .............................................. ............ 142

Eslavoe Timing Mode (10-bit Recepción,

SEN = 1) .............................................. ............ 147

Eslavoe Timing Mode (10-bit) Transmisión ................ 143

Eslavoe Timing Mode (7 bits Recepción,

SEN = 0) .............................................. ............ 140

Eslavoe Timing Mode (7 bits Recepción,

SEN = 1) .............................................. ............ 146

Eslavoe Timing Mode (7 bits de transmisión) .................. 141

SLEEP Operación ................................................ .....

159

STOP Timing Estado ........................................... 158

ICEPIC en circuito emulador ............................................. . 254

YoD Ubicaciones ................................................ ............. 195,210

INCF ................................................. ................................ 232

INCFSZ ................................................. ........................... 233

En circuit depurador ................................................ .......... 210

In-Circuit Serial Programming (ICSP) ...................... 195,210

Indirect Direccionamiento ................................................ ............ 51

INDF y FSR Registros ........................................... 50

Indirect Direccionamiento Operación ............................................ 51

Indirect Archivo Operando ............................................... ........... 42

INFSNZ ................................................. ........................... 233

Instruction Ciclo ................................................ ................. 39

Instruction Flow / Pipelining .............................................. ... 40

Instruction Formato ................................................ ............ 213

Page 374: 39564c.en.es

PIC18FXX2

DS39564C-page324 2006 Microchip Technology Inc.

Instruction Ajuste ................................................ .................. 211

ADDLW ................................................. ................... 217

ADDWF ................................................. ................... 217

ADDWFC ................................................. ................ 218

ANDLW ................................................. ................... 218

ANDWF ................................................. ................... 219

BC ................................................. ........................... 219

BCF ................................................. ........................ 220

BN ................................................. ........................... 220

BNC ................................................. ........................ 221

BNN ................................................. ........................ 221

BNOV ................................................. ..................... 222

BNZ ................................................. ........................ 222

BOV ................................................. ........................ 225

BRA ................................................. ........................ 223

BSF ................................................. ......................... 223

BTFSC ................................................. .................... 224

BTFSS ................................................. .................... 224

BTG ................................................. ........................ 225

BZ ................................................. ........................... 226

CTODO ................................................. ....................... 226

CLRF ................................................. ...................... 227

CLRWDT ................................................. ................ 227

COMF ................................................. ..................... 228

CPFSEQ ................................................. ................. 228

CPFSGT ................................................. ................. 229

CPFSLT ................................................. .................. 229

DAW ................................................. ....................... 230

DCFSNZ ................................................. ................. 231

DECF ................................................. ...................... 230

DECFSZ ................................................. ................. 231

GOTO ................................................. ..................... 232

INCF ................................................. ....................... 232

INCFSZ ................................................. ................... 233

INFSNZ ................................................. ................... 233

IORLW ................................................. .................... 234

IORWF ................................................. .................... 234

LFSR ................................................. ...................... 235

MOVF ................................................. ..................... 235

MOVFF ................................................. ................... 236

MOVLB ................................................. ................... 236

MOVLW ................................................. .................. 237

MOVWF ................................................. .................. 237

MULLW ................................................. ................... 238

MULWF ................................................. ................... 238

NFEAG ................................................. ...................... 239

NOP ................................................. ........................ 239

POP ................................................. ........................ 240

PUSH ................................................. ...................... 240

RCALL ................................................. .................... 241

RESET ................................................. .................... 241

RETFIE ................................................. ................... 242

RETLW ................................................. ................... 242

REEncienda ................................................. ................. 243

RLCF ................................................. ...................... 243

RLNCF ................................................. .................... 244

RRCF ................................................. ...................... 244

RRNCF ................................................. ................... 245

SETF ................................................. ...................... 245

DORMIR ................................................. .................... 246

SUBFWB ................................................. ................ 246

SUBLW ................................................. ................... 247

SUBWF ................................................. ................... 247

SUBWFB ................................................. ................ 248

Swapf ................................................. ................... 248

Page 375: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 325

TBLRD ................................................. .................... 249

TBLWT ................................................. .................... 250

TSTFSZ ................................................. ................... 251

XORLW ................................................. ................... 251

XORWF ................................................. ................... 252

Tabla Resumen ................................................ ........ 214

Instruccións en la memoria de programa ........................................ 40

Two-Word Instrucciones .............................................. . 41

ENT interrupción (RB0/INT). Ver fuentes de interrupción

INTCON Registrarse

RBit BIF ................................................ ...................... 90

INTCON registros ................................................ ....... 75-77

Inter-Integred Circuito. Ver I2C

Interrupt Fuentes ................................................ .............. 195

A /D conversión completa ........................................ 184

Capture Completo (CCP) ......................................... 119

Compare completo (CCP) ....................................... 120

INT0 ................................................. .......................... 85

Interrupt-on-Change (RB7: RB4) ............................... 90

PORTB, Interrupción-on-Change .................................... 85

RB0/INT Pin, Externo .............................................. .. 85

TMR0 ................................................. ........................ 85

TMR0 Overflow ................................................ ........ 105

TMR1 Desbordamiento ................................................ 107,109

TMR2 a PR2 Partido .............................................. ... 112

TMR2 a PR2 Partido (PWM) ............................ 111,122

TMR3 desbordamiento ................................................ 113,115

USART recepción / transmisión completa ........................ 165

Interrupts ................................................. ........................... 73

Logic ................................................. .......................... 74

Interrupciones, Los bits de habilitación

CCP1 Active (Bit CCP1IE) ...................................... 119

Interrupts, bits de la bandera

A / D Converter Flag (bit ADIF) .................................. 183

CCP1 Bandera (Bit CCP1IF) .......................................... 119

CCP1IF Flag (Bit CCP1IF) ....................................... 120

Interrupt-on-Change (RB7: RB4) Bandera

(Bit RBIF) .............................................. ............. 90

IORLW ................................................. ............................ 234

IORWF ................................................. ............................ 234

IPR Registra ................................................ ............... 82-83

K

KEELOQ Herramientas de Evaluación y Programación ................... 256

L

LFSR ................................................. ............................... 235

Lookup Tablas

Calculard GOTO ................................................ ....... 41

Table Lee, Escribe en la tabla ......................................... 41

Helow Tensión Detectar ............................................... ........... 189

Características Convertidor ......................................... 267

Efectos de un RESET .............................................. .... 193

Open ................................................. ................ 192

CurrenConsumo t ....................................... 193

Duanillo SLEEP ................................................ .. 193

ReferencTensión e Punto de ajuste ............................ 193

Typical Aplicación ................................................ ... 189

LVD. Ver Detect Baja Tensión. ......................................... 189

Page 376: 39564c.en.es

PIC18FXX2

DS39564C-page326 2006 Microchip Technology Inc.

M

Maestro SSP (MSSP) Descripción general del módulo ........................... 125

Maestro Synchronous Serial Port (MSSP). Ver

MSSP. Maestro Synchronous Serial Port. Ver MSSP

Memory Organización

Memoria de datos ................................................ ............. 42

Programa Memoria ................................................ ....... 35

Requisitos de memoria de programación .............................. 268

Migration desde el inicio a dispositivos mejorados ................ 314

Migration de gama alta a dispositivos mejorados ............... 315

Migration de medio rango de dispositivos mejorados ............ 315

MOVF ................................................. ............................. 235

MOVFF ................................................. ........................... 236

MOVLB ................................................. ........................... 236

MOVLW ................................................. .......................... 237

MOVWF ................................................. .......................... 237

MPLAB C17 y C18 MPLAB compiladores C ..................... 253

MPLAB ICD depurador en circuito ..................................... 255

MPLAB ICE de alto rendimiento universal en circuito

Emulator con MPLAB IDE ....................................... 254

MPLAB Integrado de Desarrollo

Environment Software ............................................. 253

Objeto MPLINK vinculador / MPLIB Bibliotecario de objetos ............... 254

MSSP ................................................. .............................. 125

Control Registros (general) ...................................... 125

Enabling SPI I / O ............................................. ......... 129

Open ................................................. ................ 128

TConexión RUEBAS ................................................ .. 129

Módulo MSSP

SPI modo Maestro ............................................... ...... 130

SPI Master. / Slave Conexión ................................. 129

SPI modo esclavo ............................................... ........ 131

MULLW ................................................. ........................... 238

MULWF ................................................. ........................... 238

N

NFEAG ................................................. .............................. 239

NOP ................................................. ................................ 239

O

OpcodDescripciones de campo e ............................................... 212

OPTION_REG Registrarse

Bit PSA ................................................ .................... 105

T0CBit S ................................................ .................. 105

T0PS2: T0PS0 Bits .............................................. ..... 105

T0SE Bit ................................................ ................... 105

Oscillator Configuración ................................................ ...... 17

CE ................................................. ............................. 17

ECIO ................................................. ......................... 17

HS ................................................. ............................. 17

HS + PLL ............................................... .................... 17

LP ................................................. ............................. 17

RC ................................................. ............................. 17

RCIO ................................................. ......................... 17

XT ................................................. ............................. 17

Oscillator Selección ................................................ .......... 195

Oscillator, Timer1 .............................................. 107,109,115

Oscillator, timer3 ............................................... .............. 113

Oscillator, WDT ............................................... ................. 203

Page 377: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 327

P

Packaging ................................................. ....................... 305

Detalles ................................................. ..................... 307

EstropearInformación rey ................................................ . 305

Puerto Paralelo Esclavo

PORTD ................................................. ................... 100

Puerto Paralelo Esclavo (PSP) ........................................... 95,100

Asociard registros ............................................... 101

RE0/RD/AN5 Pin ............................................ .... 99,100

RE1/WR/AN6 Pin ............................................ ... 99,100

RE2/CS/AN7 Pin ............................................ .... 99,100

Seleccione (Bit PSPMODE) ...................................... 95,100

PIC18F2x2 Pin Funciones

MCLR / VPP ................................................. ................. 10

OSC1/CLKI ............................................... ................. 10

OSC2/CLKO/RA6 ............................................. ......... 10

RA0/AN0 ............................................... ..................... 10

RA1/AN1 ............................................... ..................... 10

RA2/AN2/VREF- ............................................ .............. 10

RA3/AN3/VREF + ............................................. ............ 10

RA4/T0CKI ............................................... .................. 10

RA5/AN4/SS/LVDIN ........................................... ........ 10

RB0/INT0 ............................................... .................... 11

RB1/INT1 ............................................... .................... 11

RB2/INT2 ............................................... .................... 11

RB3/CCP2 ............................................... .................. 11

RB4 ................................................. ........................... 11

RB5/PGM ............................................... .................... 11

RB6/PGC ............................................... .................... 11

RB7/PGD ............................................... .................... 11

RC0/T1OSO/T1CKI ................................................. .. 12

RC1/T1OSI/CCP2 ................................................. ..... 12

RC2/CCP1 ................................................. ................ 12

RC3 /SCK / SCL ............................................... ............ 12

RC4 /SDI / SDA ............................................... ............. 12

RC5 /SDO ................................................. .................. 12

RC6/TX/CK ................................................. ............... 12

RC7 / RX / DT ............................................... ................. 12

VDD ................................................. ............................ 12

VSS ................................................. ............................ 12

PIC18F4x2 Pin Funciones

MCLR / VPP ................................................. ................. 13

OSC1/CLKI ............................................... ................. 13

OSC2/CLKO ............................................... ............... 13

RA0/AN0 ............................................... ..................... 13

RA1/AN1 ............................................... ..................... 13

RA2/AN2/VREF- ............................................ .............. 13

RA3/AN3/VREF + ............................................. ............ 13

RA4/T0CKI ............................................... .................. 13

RA5/AN4/SS/LVDIN ........................................... ........

13

RB0/INT ............................................... ...................... 14

RB1 ................................................. ........................... 14

RB2 ................................................. ........................... 14

RB3 ................................................. ........................... 14

RB4 ................................................. ........................... 14

RB5/PGM ............................................... .................... 14

RB6/PGC ............................................... .................... 14

RB7/PGD ............................................... .................... 14

RC0/T1OSO/T1CKI ................................................. .. 15

RC1/T1OSI/CCP2 ................................................. ..... 15

RC2/CCP1 ................................................. ................ 15

RC3 /SCK / SCL ............................................... ............ 15

RC4 /SDI / SDA ............................................... ............. 15

RC5 /SDO ................................................. .................. 15

RC6/TX/CK ................................................. ............... 15

Page 378: 39564c.en.es

PIC18FXX2

DS39564C-page328 2006 Microchip Technology Inc.

RC7 / RX / DT ............................................... ................. 15

RD0 /PSP0 ................................................. ................ 16

RD1 /PSP1 ................................................. ................ 16

RD2 /PSP2 ................................................. ................ 16

RD3 /PSP3 ................................................. ................ 16

RD4 /PSP4 ................................................. ................ 16

RD5 /PSP5 ................................................. ................ 16

RD6 /PSP6 ................................................. ................ 16

RD7 /PSP7 ................................................. ................ 16

RE0/RD/AN5 ............................................. ................. 16

RE1/WR/AN6 ............................................. ................ 16

RE2/CS/AN7 ............................................. ................. 16

VDD ................................................. ........................... 16

VSS ................................................. ........................... 16

PIC18FXX2 Voltaje-Frecuencia Gráfico

(Industrial) ............................................... ................. 260

PIC18LFXX2 Voltaje-Frecuencia Gráfico

(Industrial) ............................................... ................. 260

PICDEM 1 PICmicro Bajo Costo

Demonstration Consejo ............................................... 255

PICDEM 17 Demonstration Board ................................... 256

PICDEM 2 PIC16CXX Bajo Costo

Demonstration Consejo ............................................... 255

PICDEM 3 PIC16CXXX Bajo Costo

Demonstration Consejo ............................................... 256

Entrada PICSTART Plus Nivel de Desarrollo

Programador ................................................. ............ 255

PIE Registros ................................................ ................ 80-81

Pinout I / O Descripciones

PIC18F2X2 ................................................. ............... 10

PIR Registra ................................................ ................ 78-79

PLL Time Lock-out ............................................. ................ 26

Pointer, FSR ............................................... ....................... 50

POP ................................................. ................................ 240

POR. Ver Power-on reset

PORTA

Asociard Registra ................................................ . 89

LATUn registro ................................................ ........... 87

PORTA Registro ................................................ ........ 87

TRISUn registro ................................................ .......... 87

PORTB

Asociard Registra ................................................ . 92

LATB Registro ................................................ ........... 90

PORTB Registro ................................................ ........ 90

RB0/INT Pin, Externo .............................................. .. 85

RB7: RB4 de interrupción en-Change Flag (Bit RBIF) .......... 90

TRISB Registro ................................................ .......... 90

PORTC

Asociard Registra ................................................ . 94

LATC Registro ................................................ ........... 93

PORTC Registro ................................................ ........ 93

RC3 /SCK / SCL Pin .............................................. ..... 139

RC7 / RX / DT Pin .............................................. .......... 168

TRISC Registro ................................................ ... 93,165

PORTD

Asociard Registra ................................................ . 96

LATD Registro ................................................ ........... 95

Puerto Paralelo Esclavo (PSP) Función ............................ 95

PORTD Registro ................................................ ........ 95

TRISD Registro ................................................ .......... 95

Page 379: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 329

PORTE

Analog pines del puerto ............................................... . 99,100

Asociard Registra ................................................ . 99

LATE Registro ................................................ ............ 97

PORTE Registro ................................................ ........ 97

PSP Mode Select (Bit PSPMODE) .................... 95,100

RE0/RD/AN5 Pin ............................................ .... 99,100

RE1/WR/AN6 Pin ............................................ ... 99,100

RE2/CS/AN7 Pin ............................................ .... 99,100

TRISE Registro ................................................ .......... 97

Postscaler, WDT

Asignación (PSA Bit) ............................................. .. 105

RataE Seleccione (T0PS2: T0PS0 Bits) ............................. 105

Switching Entre Timer0 y WDT ...................... 105

PoderDesplegable Modo. Ver DORMIR

Poder-On reset (POR) ............................................ .......... 26

Oscillator Start-up Timer (OST) ................................. 26

Power-up Timer (PWRT) ........................................... . 26

Pre-escalador, Capture ............................................... ............ 119

Pre-escalador, Timer0 ............................................... .............. 105

Asignación (PSA Bit) ............................................. .. 105

RataE Seleccione (T0PS2: T0PS0 Bits) ............................. 105

Switching Entre Timer0 y WDT ...................... 105

Pre-escalador, Timer2 ............................................... .............. 122

MATE PRO II Programador universal de dispositivos ................... 255

Producto Sistema de Identificación ........................................... 327

Program Contador

Ordenador personalL Register ................................................ .............. 39

PCLATH Registro ................................................ ....... 39

PCLATU Registro ................................................ ....... 39

Programa Memoria

Interrupt Vector ................................................ .......... 35

Mamápy Stack para PIC18F442/242 ............................ 36

Mamápy Stack para PIC18F452/252 ............................ 36

RESET Vector ................................................ ............ 35

Program Verificación y Protección de código ....................... 207

Asociard registros ............................................... 207

Programación, Instrucciones de dispositivos ................................... 211

PSP.See puerto esclavo paralelo.

Pulse modulación de ancho. Ver PWM (CCP Module).

PUSH ................................................. .............................. 240

PWM (CCP Module) ............................................. ............ 122

Asociard registros ............................................... 123

CCPR1H: Registros CCPR1L ................................... 122

Duty Ciclo ................................................ ................ 122

EJEMPLOSFrecuencias E / Resoluciones ........................... 123

Período ................................................. ...................... 122

Configuración para el funcionamiento PWM

........................................ 123

TMR2 a PR2 Partido ......................................... 111,122

Q

Reloj Q ................................................ ............................ 122

R

RAM. Ver memoria de datos

RC Oscilador ................................................ ...................... 18

RCTODO ................................................. ............................. 241

RCSTUn Registro

Bit SPEN ................................................ .................. 165

Register Archivo ................................................ ....................... 42

Page 380: 39564c.en.es

PIC18FXX2

DS39564C-page330 2006 Microchip Technology Inc.

Registres

ADCON0 (Control A / D 0) ......................................... 181

ADCON1 (Control A / D 1) ......................................... 182

CCP1CON y CCP2CON

(Capture / Compare / PWMControle) ................... 117

CONFIG1H (Configuración 1 Alto) .......................... 196

CONFIG2H (High configuración 2) .......................... 197

CONFIG2L (configuración 2 Bajo) ........................... 197

CONFIG3H (Configuración 3 alto) .......................... 198

CONFIG4L (Configuración 4 Bajo) ........................... 198

CONFIG5H (High Configuración 5) .......................... 199

CONFIG5L (Configuración 5 Bajo) ........................... 199

CONFIG6H (High configuración 6) .......................... 200

CONFIG6L (Configuración 6 Bajo) ........................... 200

CONFIG7H (Configuración 7 Alta) .......................... 201

CONFIG7L (Configuración 7 Bajo) ........................... 201

Devid1 (Dispositivo ID Register 1) ............................... 202

Devid2 (Dispositivo ID Register 2) ............................... 202

EECON1 (datos EEPROM Control 1) .................... 57,66

File Resumen ................................................ ........ 46-48

INTCON (Control de Interrupción) ........................................ 75

INTCON2 (Interrupt Control 2) ................................... 76

INTCON3 (Interrupción de control 3) ................................... 77

Derechos de propiedad intelectual1 (Prioridad Peripheral Interrupt 1) ......................... 82

Derechos de propiedad intelectual2 (Peripheral Interrupt Prioridad 2) ......................... 83

LVDCON (LVD Control) ........................................... 191

OSCCON (Control del oscilador) .................................... 21

PIE1 (Peripheral Interrupt Enable 1) .......................... 80

PIE2 (Peripheral Interrupt Enable 2) .......................... 81

PIR1 (Peripheral Interrupt Request 1) ....................... 78

PIR2 (Solicitud de interrupción periférica 2) ....................... 79

RCON (Registro de control) ........................................... 84

RCON (Control de RESET) ............................................ 53

RCSTA ..................... (recepción de estado y control) 167

SSPCON1 (MSSP Control 1)

I2C Modo ................................................ ......... 136

Modo SPI ................................................ ......... 127

SSPCON2 (MSSP Control 2)

I2C Modo ................................................ ......... 137

SSPSTAT (Estado MSSP)

I2C Modo ................................................ ......... 135

Modo SPI ................................................ ......... 126

ESTADO ................................................. .................... 52

STKPTR (Stack Pointer) ............................................ 38

T0CON (Timer0 Control) ......................................... 103

T1CON (Timer 1 Control) ........................................ 107

T2CON (Temporizador 2 Control) ........................................ 111

T3CON (timer3 Control) ......................................... 113

TRISE ................................................. ....................... 98

TXSTA (transmisión de control y estado) ..................... 166

WDTCON (Control Watchdog Timer) ...................... 203

RESET ................................................. ............... 25,195,241

MarrónSalida de reset (BOR) ........................................... 195

Cambiar MCLR (durante el sueño) ....................................

25

MCLR Reset (Operación Normal) .............................. 25

Oscillator Start-up Timer (OST) ............................... 195

Power-on Reset (POR) ....................................... 25,195

Power-up Timer (PWRT) ......................................... 195

Programable Brown-out Reset (BOR) .................... 25

RInstrucción ESET ................................................ ..... 25

Pila Reposición Total ............................................... .......... 25

Stack Desbordamiento Cambiar .............................................. 25

Watchdog Timer (WDT) Reset .................................. 25

Page 381: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 331

RETFIE ................................................. ........................... 242

RETLW ................................................. ............................ 242

REEncienda ................................................. ......................... 243

ReVisión Historia ................................................ ............... 313

RLCF ................................................. ............................... 243

RLNCF ................................................. ............................ 244

RRCF ................................................. .............................. 244

RRNCF ................................................. ............................ 245

S

SCI. Ver USART

SCK ................................................. ................................. 125

SDI ................................................. .................................. 125

SDO ................................................. ................................ 125

Reloj Serial, SCK .............................................. ............... 125

Serial Interfaz de Comunicación. Ver USART

SeDatos RIAL, SDI ............................................. .............. 125

SeDatos rial Out, SDO ............................................. .......... 125

Serial Peripheral Interface. Ver SPI

SETF ................................................. ............................... 245

Eslavoynchronization e Seleccione S ........................................... 131

Eslavoe Seleccione, SS .............................................. ................ 125

DORMIR ................................................. .............. 195,205,246

Software Simulator (MPLAB SIM) .................................... 254

Special Disparador de eventos. Ver Comparar

Special Características de la CPU ............................................ 195

Configuration Registros ................................... 196-201

SpeciaFunción l Registra ............................................... . 42

Mapa ................................................. ........................... 45

SPI

Modo Maestro ................................................ ............ 130

Reloj Serial ................................................ .............. 125

SeDatos Rial en ............................................... ............ 125

Serial Data Out ............................................... ......... 125

Eslavoe Seleccione ................................................ ............. 125

Reloj SPI ................................................ ................. 130

Modo SPI ................................................ ................. 125

SPI Master / Slave Conexión .......................................... 129

Módulo SPI

Asociard registros ............................................... 133

Bus Modo de compatibilidad ........................................... 133

Efectos de un RESET .............................................. .... 133

Master /Conexión Slave ......................................... 129

Slave Mode ................................................ .............. 131

Eslavoe Seleccione Sincronización .................................. 131

Tiempo Synch Slave ............................................... .. 131

DORMIR Operación ................................................ ..... 133

SS ................................................. ................................... 125

SSP

I2C Modo. Ver I2C

Modo SPI ................................................ ................. 125

SPI Mode. Ver SPI

SSPBUF Registro ................................................ .... 130

SSPSR Registro ................................................ ...... 130

TMR2 salidas por cambio de reloj ............................ 111,112

Flag SSPOV Estado ............................................... ........... 155

SSPSTAT Registrarse

R /Bit W ................................................ ............. 138,139

Los bits de estado

Significance, y las condiciones de iniciación

for RCON Registro ............................................. 27

SUBFWB ................................................. ......................... 246

SUBLW ................................................. ........................... 247

SUBWF ................................................. ........................... 247

SUBWFB ................................................. ......................... 248

Swapf ................................................. ........................... 248

Page 382: 39564c.en.es

PIC18FXX2

DS39564C-page332 2006 Microchip Technology Inc.

T

TABLAT Registro ................................................ ............... 58

Table las operaciones de puntero (tabla) ........................................ 58

TBLPTR Registro ................................................ ............... 58

TBLRD ................................................. ............................ 249

TBLWT ................................................. ............................ 250

Time-ouSecuencia t ................................................ ........... 26

Time-out en diversas situaciones ................................... 27

Tiempor0 ................................................. ............................. 103

16-biTimer t Modo Lee y Escribe ...................... 105

Asociard registros ............................................... 105

Clock Source Edge Select (Bit T0SE) ..................... 105

Clock de selección de fuente (Bit T0CS) ............................... 105

Open ................................................. ................ 105

Overflow interrupción ................................................ .... 105

Prescaler. Ver preescalador, Timer0

Tiempor1 ................................................. ............................. 107

16-bit modo lectura / escritura ........................................... 109

Asociard registros ............................................... 110

Open ................................................. ................ 108

Oscillator ................................................. .......... 107,109

OInterrupción verflow ............................................. 107,109

Special Event Trigger (CCP) ............................ 109,120

TMR1H Registro ................................................ ...... 107

TMR1L Registro ................................................ ....... 107

Tiempor2 ................................................. ............................. 111

Asociard registros ............................................... 112

Open ................................................. ................ 111

MensajesCaler. Ver postscaler, Timer2

PR2 Registro ................................................ 111 ....,122

Prescaler. Ver preescalador, Timer2

SSP Shift reloj ............................................... 0.111,112

TMR2 Registro ................................................ ......... 111

TMR2 a PR2 interrupción del partido ................... 111,112,122

Tiempor3 ................................................. ............................. 113

Asociard registros ............................................... 115

Open ................................................. ................ 114

Oscillator ................................................. .......... 113,115

OInterrupción verflow ............................................. 113,115

Special Event Trigger (CCP) ................................... 115

TMR3H Registro ................................................ ...... 113

TMR3L Registro ................................................ ....... 113

Timing Diagramas

Bus Collision

TReconocer y ransmit ..................... 159

Conversión A / D .............................................. .......... 287

AGRADECIMIENTOSSecuencia e .......................................... 158

Baud Generador de velocidad de reloj de Arbitraje ............ 152

BRG Cambiar Debido a SDA arbitraje durante

La condición de arranque ............................................. 161

Brown-out Reset (BOR) ........................................... 274

Bus Collision

Comience condición (SDA solamente) .............................. 160

Bus de colisión Durante una repetida

La condición de arranque (caso 1) .............................. 162

Bus de colisión Durante una repetida

La condición de arranque (caso 2) .............................. 162

Bus de colisión Durante una condición de arranque

(SCL = 0) .............................................. ........... 161

Bus de colisión Durante una condición de parada

(Case 1) ............................................... ............ 163

Bus de colisión Durante una condición de parada

(Case 2) ............................................... ............ 163

Captura / Comparación / PWM (CCP1 y CCP2) ............ 276

CLKO y E / S ............................................. ............. 272

Sincronización del reloj ............................................. 145

Page 383: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 333

Ejemplo SPI modo Maestro (CKE = 0) ..................... 278

Ejemplo SPI modo Maestro (CKE = 1) ..................... 279

EJEMPLOSe SPI en modo Esclavo (CKE = 0) ....................... 280

EJEMPLOSe SPI en modo Esclavo (CKE = 1) ....................... 281

Reloj externo (todos los modos excepto PLL) .................... 271

Primer Tiempo Bit START ............................................ 153

I2C-Bus de datos ............................................... .............

282

I2Bus C START / STOP Bits ......................................

282

I2C Modo Maestro (Recepción, 7-bit de direcciones)

........... 157

I2C Modo Maestro (Transmisión,

7 o la dirección de 10-bit) ......................................... 156

I2C Esclavo modo de intervalo (10-bit Recepción,

SEN = 0) .............................................. ............ 142

I2C Esclavo modo de intervalo (10-bit) Transmisión

......... 143

I2C Esclavo modo de intervalo (de 7 bits Recepción,

SEN = 0) .............................................. ............ 140

I2C Esclavo modo de intervalo (de 7 bits Recepción,

SEN = 1) .............................................. .... 146,147

I2C Esclavo modo de intervalo (7 bits de transmisión)

........... 141

Helow Tensión Detectar ............................................... ... 192

Datos maestros SSP I2C Bus ........................................

284

Maestro SSP I2C Bus START / STOP Bits ..................

284

Puerto Paralelo Esclavo (PIC18F4X2) .............................. 277

Puerto Paralelo Esclavo (Leer) ........................................ 101

Puerto Paralelo Esclavo (Write) ........................................ 100

Salida PWM ................................................ ............. 122

REPEAt la condición de arranque ......................................... 154

RESET, Watchdog Timer (WDT),

Oscilador Start-up Timer (OST) y

Power-up Timer (PWRT) ................................. 273

Sincronización de esclavo .............................................. 131

Esclavor Modo de llamada general Dirección de secuencia

(7 o 10-bit de modo de dirección) .............................. 148

Tiempo de subida lenta (MCLR atado a VDD) ......................... 33

SPI Mode (Modo Maestro) ......................................... 130

SPI Mode (Modo esclavo con CKE = 0) ..................... 132

SPI Mode (Modo esclavo con CKE = 1) ..................... 132

StoCondición p recibir o transmitir en modo .............. 158

Time-ouSecuencia en t POR w / PLL activado

(MCLR atado a VDD) ........................................... 33

Time-out Secuencia de Encendido

(MCLR no está atado a VDD)

Californiase 1 ................................................ ................ 32

Californiase 2 ................................................ ................ 32

Time-out Secuencia de Encendido

(MCLR atado a VDD) ........................................... 32

Timer0 y Timer1 reloj externo ........................... 275

Timing para la transición entre Timer1 y

OSC1 (HS con PLL) .......................................... 23

Transition Entre Timer1 y OSC1

(HS, XT, LP) ........................................... ............ 22

Transition Entre Timer1 y OSC1

(RC, CE) ............................................... ............. 23

Transition de OSC1 a Timer1 oscilador ................ 22

USART Transmisión asíncrona maestro ........... 173

Transmisión asíncrona USART Maestro

(Back to Back) ............................................. ..... 173

USARRecepción T asíncrono ............................ 175

USART sincrónico Receive (Master / Slave) ......... 286

USART síncrono Recepción

(Master Mode, SREN) ...................................... 178

USART Transmisión síncrona ......................... 177

USART Synchronous Transmission

(Master / Slave) ............................................. ..... 286

Page 384: 39564c.en.es

PIC18FXX2

DS39564C-page334 2006 Microchip Technology Inc.

USART Synchronous Transmission

(A través de TXEN) .............................................. 177

Washingtonke-up de su sueño a través de interrupción .......................... 206

Timing Diagramas Requisitos

Maestro SSP I2C Bus START / STOP Bits ..................

284

Timing Requisitos

Conversión A / D .............................................. .......... 288

Captura / Comparación / PWM(CCP1 y CCP2) ............ 276

CLKO y E / S ............................................. ............. 273

EJEMPLOSe SPI Mode (Modo Maestro, CKE = 0) .......... 278

EJEMPLOSe SPI Mode (Modo Maestro, CKE = 1) .......... 279

Ejemplo SPI Mode (Modo Slave, CKE = 0) ............ 280

Ejemplo SPI en modo Esclavo (CKE = 1) ....................... 281

Reloj externo ................................................ .......... 271

I2C bus de datos (modo esclavo) .....................................

283

Datos maestros SSP I2C Bus ........................................

285

Puerto Paralelo Esclavo (PIC18F4X2) ............................. 277

RESET, contador de tiempo del perro guardián, el oscilador de puesta en marcha

Tiempor, Power-up Timer y

Brown-ouRequisitos camisetas Cambiar ....................... 274

Timer0 y Timer1 reloj externo .......................... 275

USART síncrono Recibir ................................. 286

USARTransmisión síncrona T ........................ 286

Timing Especificaciones

PLL Reloj ................................................ ................ 272

TRISRegistrarse E

Bit PSPMODE ................................................ ..... 95,100

TSTFSZ ................................................. .......................... 251

Dos Word instrucciones

EJEMPLOSCasos e ................................................ .......... 41

TXSTA Registrarse

Bit BRGH ................................................ ................. 168

U

Universal síncrona Asíncrono

Recibirr transmisor. Ver USART

USART ................................................. ............................ 165

Modo asíncrono ................................................ 172

Asociard registros, recepción ........................ 175

Asociard registros, transmisión ....................... 173

Rereceptor ................................................. ......... 174

Transmitter ................................................. ...... 172

Baud Tipo de Generador (BRG) ................................... 168

Asociard registros ....................................... 168

Baud Error Rate, Cálculo ........................... 168

Baud Formula de .......................................... 168

Velocidad de transferencia para el modo asíncrono

(BRGH = 0) .............................................. 170

Velocidad de transferencia para el modo asíncrono

(BRGH = 1) .............................................. 171

Velocidad de transferencia para el modo síncrono ................. 169

High Velocidad de transmisión Select (Bit BRGH)

................. 168

Muestreo ................................................. ......... 168

Enable Serial Port (SPEN Bit) ................................. 165

Synchronous modo maestro ...................................... 176

Asociard registro, recepción ..................... 178

Asociard registros, transmisión ....................... 176

Recepción ................................................. ....... 178

Transmisión ................................................. .. 176

Synchronous Modo esclavo ........................................ 179

Asociard registros, recepción ........................ 180

Asociard registros, transmisión ....................... 179

Recepción ................................................. ....... 180

Transmisión ................................................. .. 179

Page 385: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 335

W

Washingtonke-up de SLEEP ............................................. . 195,205

Usíng Alarmas ................................................ ........ 205

Watchdog Timer (WDT) ........................................... 195,203

Asociard registros ............................................... 204

Control Registro ................................................ ....... 203

Postscaler ................................................. ....... 203,204

PROGRAMACIÓNConsideraciones g .................................. 203

RC Oscilador ................................................ ............ 203

Time-ouPeríodo t ................................................ ....... 203

OMAL ................................................. ............................. 153

OMAL Indicador de estado ............................................ 153,155,158

WWW, On-Line Support ............................................. .......... 5

X

XORLW ................................................. ........................... 251

XORWF ................................................. .......................... 252

Page 386: 39564c.en.es

PIC18FXX2

DS39564C-page336 2006 Microchip Technology Inc.

NOTAS:

Page 387: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 337

EL SITIO WEB MICROCHIP

Microchip ofrece soporte en línea a través de nuestro

sitio WEB en www.microchip.com. Este sitio web se

utiliza como un medio para hacer que los archivos e

información fácilmente disponibles para los clientes.

Accesible a través de su navegador de Internet

favorito, el sitio web contiene la siguiente información:

•Soporte de producto - Hojas de datos y erratas,

notas de aplicaciones y programas de ejemplo,

recursos de diseño, guías del usuario y los

documentos de soporte de hardware, las últimas

versiones de software y software de archivado

•General Soporte Técnico - Preguntas más

frecuentes (FAQ), las solicitudes de apoyo

técnico, grupos de discusión en línea, consultor

Microchip Lista de Miembros programa

•Empresas de Microchip - Selector de productos

y guías de pedidos, las últimas notas de prensa

Microchip, listado de seminarios y eventos,

listas de ventas de Microchip oficinas,

distribuidores y representantes de fábrica

CAMBIO DE CLIENTE DE NOTIFICACIÓN DE SERVICIO

Microchip servicio al cliente de notificación ayuda a

mantener a los clientes actuales de los productos de

Microchip. Los suscriptores recibirán notificación por

correo electrónico cada vez que haya cambios,

actualizaciones, revisiones o erratas relacionadas con

una familia de productos especificados o herramienta

de desarrollo de interés.

To registro, acceda al sitio web de Microchip en

www.microchip.com, Haga clic en Notificación al

cliente Cambiar y siga las instrucciones de registro.

ATENCIÓN AL CLIENTE

Los usuarios de los productos de Microchip pueden

recibir ayuda a través de varios canales:

• Distribuidor o Representante

• Oficina de ventas local

• Field Application Engineer (FAE)

• Asistencia técnica

• Desarrollo de Sistemas de Información de la Línea

Los clientes deben comunicarse con su ingeniero de

aplicación de distribuidor, representante o campo

(FAE) para la ayuda. Oficinas de ventas locales

también están disponibles para ayudar a los clientes.

Una lista de oficinas de venta y las ubicaciones se

incluye en el reverso de este documento.

Technical apoyo está disponible a través del sitio

web en: http://support.microchip.com

Page 388: 39564c.en.es

PIC18FXX2

LECTOR DE RESPUESTA

Yot es nuestra intención ofrecerle la mejor documentación posible para asegurar el uso exitoso de su Microchip

producto. Si desea enviar sus comentarios sobre la organización, la claridad, la temática y las formas en que nuestra

documentación un mejor servicio, por favor envíe sus comentarios al Director de Publicaciones técnico al (480) 792-

4150.

Motivose incluir la siguiente información, y utilizar este esquema para proporcionarnos sus comentarios sobre este documento.

A:Technical Gerente de Publicaciones

RE: Solicitud de Información

TotaPáginas de l Sent

De: Nombre

Empresa

Dirección

Ciudad / Estado / Código postal / País

Teléfono: () -

Aplicación (opcional):

Would Quieres una respuesta? Sí No

FAX: (_) -

Dispositivo:

PIC18FXX2 Literature Número: DS39564C

Preguntas:

1. ¿Cuáles son las mejores características de este documento?

2. ¿Cómo este documento satisfacer sus necesidades de hardware y desarrollo de software?

3. ¿Se encuentra la organización de este documento fácil de seguir? Si no, ¿por qué?

4. ¿Qué adiciones al documento crees que mejorar la estructura y el tema?

5. ¿Qué cancelación del documento podría hacerse sin afectar la utilidad general?

6. ¿Hay alguna información incorrecta o engañosa (qué y dónde)?

7. ¿Cómo mejoraría usted este documento?

Page 389: 39564c.en.es

PIC18FXX2

DS39564C-page 328 Información Anticipada sobre 2006 Microchip

Technology Inc.

Page 390: 39564c.en.es
Page 391: 39564c.en.es

PIC18FXX2

2006 Microchip Technology Inc. DS39564C páginas 329

PIC18FXX2 PRODUCTO SISTEMA DE IDENTIFICACIÓN

Torden o u obtener información, por ejemplo, en materia de precios o de entrega, consulte a la fábrica o la oficina de ventas de la lista.

PART NO. - X / XX XXX Ejemplos:

Dispositivo

Temperaturae Alcanc

e

Package Papáttern

un) PIC18LF452 - I / P 301 = temp

Industrial, paquete PDIP, adultos límites

VDD, patrón QTP # 301..

b) PIC18LF242 -. I / SO = temp Industrial,

Device PIC18FXX2(1), PIC18FXX2T(2); Rango

VDD 4.2V a 5.5V SOIPaquete C, adultos límites VDD.

c) PIC18F442 - E / P = temperatura

extendido,. PIC18LFXX2(1), PIC18LFXX2T(2);

Rango VDD de 2.5V a 5.5V

PDIPaquete P, normal VDD

límites.

Temperatura

Alcance

Yo = -40°C a +85°C (Industrial) E = -

40°C a +125°C (Extended)

Paquete PT = TQFP (Thin Flatpack Quad) Noe 1: F = Standard Rango de

tensión SO = SOIC LF = WidRango de voltaje e

SP = DIP plástico Flaco 2:T = yon cinta y carrete - SOIC, P = PDIP PLCCY TQFP

L = PLCC paquetes solamente.

Tamborileon QTP, SQTP, código o Requerimientos Especiales

(Blank otra manera)

Page 392: 39564c.en.es

Mundialmente-VENTAS Y SERVICIO E

AMERICAS Corporate Oficina 2355 West Chandler Boulevard.

Velero, AZ 85224-6199

Tel: 480-792-7200

Fax: 480-792-7277

TeSoporte chnical:

http://support.microchip.co

m Nosotrosb Dirección:

www.microchip.com

Atlantun Alpharetta, GA

Tel: 770-640-0034

Fax: 770-640-0307

Boston

Nosotrosstboroug

h, MA Tel.: 774-

760-0087

Fax: 774-760-0088

Chicago Itasca, IL

Tel: 630-285-0071

Fax: 630-285-0075

Dallas Addison, TX

Tel: 972-818-7423

Fax: 972-818-2924

Detroit Farmington Hills, MI

Tel: 248-538-2250

Fax: 248-538-2260

Kokomo Kokomo, IN

Tel: 765-864-8360

Fax: 765-864-8387

Helos Angeles

Mission Viejo, CA

Tel.: 949-462-

9523

Fax: 949-462-9608

Santuna Clara

Santun Clara, CA

Tel.: 408-961-

6444

Fax: 408-961-6445

Torona Mississauga, Ontario,

Canadá

Tel: 905-673-0699

Fax: 905-673-6509

ASIA / PACÍFICO

Asia Pacífico Oficina

Suites 3707-14, Piso 37

Torre 6, El Portal de

Habour City, Kowloon

Hong Kong

Tel: 852-2401-1200

Fax: 852-2401-3431

Australia - Sydney Tel: 61-2-9868-6733

Fax: 61-2-9868-6755

Mentóna - Beijing Tel: 86-10-8528-2100

Fax: 86-10-8528-2104

Mentóna - Chengdu

Tel: 86-28-8665-5511

Fax: 86-28-8665-7889

Mentóna - Fuzhou

Tel: 86-591-8750-3506

Fax: 86-591-8750-3521

Mentóna - Hong Kong SAR

Tel: 852-2401-1200

Fax: 852-2401-3431

Mentóna - Qingdao

Tel: 86-532-8502-7355

Fax: 86-532-8502-7205

Mentóna - Shanghai Tel: 86-21-5407-5533

Fax: 86-21-5407-5066

Mentóna - Shenyang

Tel: 86-24-2334-2829

Fax: 86-24-2334-2393

China - Shenzhen

Tel: 86-755-8203-2660

Fax: 86-755-8203-1760

Mentóna - Shunde

Tel: 86-757-2839-5507

Fax: 86-757-2839-5571

Mentóna - Wuhan

Tel: 86-27-5980-5300

Fax: 86-27-5980-5118

China - Xian

Tel: 86-29-8833-7250

Fax: 86-29-8833-7256

ASIA / PACÍFICO

India - Bangalore Tel: 91-80-4182-8400

Fax: 91-80-4182-8422

India - Nueva Delhi

Tel: 91-11-4160-8631

Fax: 91-11-4160-8632

India - Pune

Tel: 91-20-2566-1512

Fax: 91-20-2566-1513

Japan - Yokohama

Tel: 81-45-471 - 6166

Fax: 81-45-471-6122

Korea - Gumi Tel: 82-54-473-4301

Fax: 82-54-473-4302

Korea - Seúl Tel: 82-2-554-7200

Fax: 82-2-558-5932 o

82-2-558-5934

Malasia - Penang

Tel: 60-4-646-8870

Fax: 60-4-646-5086

Filipinas - Manila

Tel: 63-2-634-9065

Fax: 63-2-634-9069

Singapur Tel: 65-6334-8870

Fax: 65-6334-8850

Taiwan - Hsin Chu

Tel: 886-3-572-9526

Fax: 886-3-572-6459

Taiwan - Kaohsiung Tel: 886-7-536-4818

Fax: 886-7-536-4803

Taiwan - Taipéi Tel: 886-2-2500-6610

Fax: 886-2-2508-0102

Thailand - Bangkok

Tel: 66-2-694-1351

Fax: 66-2-694-1350

EUROPA

Austria - Wels

Tel: 43-7242-2244-3910

Fax: 43-7242-2244-393

Denmark - Copenhague Tel: 45-4450-2828

Fax: 45-4485-2829

Francoe - París Tel: 33-1-69-53-63-20

Fax: 33-1-69-30-90-79

Alemány - Munich Tel: 49-89-627-144-0

Fax: 49-89-627-144-44

Italy - Milán Tel: 39-0331-742611

Fax: 39-0331-466781

Nordestetherlands - Drunen

Tel: 31-416-690399

Fax: 31-416-690340

Spain - Madrid Tel: 34-91-708-08-90

Fax: 34-91-708-08-91

UK - Wokingham Tel: 44-118-921-5869

Fax: 44-118-921-5820

08.29/ 06

Page 393: 39564c.en.es

DS39564C-page 330 2006 Microchip Technology Inc.