Post on 08-Aug-2015
2006 Microchip Technology Inc. DS39564C
PIC18FXX2
Hoja de datos
High-Performance, flash mejorado
Microcontroladores de 10 bits A / D
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
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.
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
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
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.
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.
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
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 docerrors@microchip.com 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.
2006 Microchip Technology Inc. DS39564C páginas 7
PIC18FXX2
NOTAS:
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
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.
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.
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.
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)
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)
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)
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)
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)
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)
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)
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.
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
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
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
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:
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
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
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.
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)
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.
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.
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.
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).
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 '.
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 '.
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 '.
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 '.
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
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.
DS39564C-page38 2006 Microchip Technology Inc.
PIC18FXX2
NOTAS:
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.
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
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.
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.
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
DS39564C-page44 2006 Microchip Technology Inc.
PIC18FXX2
Fase de reloj interno
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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.
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.
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
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
DS39564C-page62 2006 Microchip Technology Inc.
PIC18FXX2
NOTAS:
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)
DS39564C-page64 2006 Microchip Technology Inc.
PIC18FXX2
Noe 1: Tablpuntos e puntero a un byte en la memoria del programa.
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.
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
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
DS39564C-page68 2006 Microchip Technology Inc.
PIC18FXX2
<21:00>
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
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
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.
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.
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
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.
2006 Microchip Technology Inc. DS39564C páginas 75
PIC18FXX2
NOTAS:
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.
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
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)
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
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.
2006 Microchip Technology Inc. DS39564C páginas 81
PIC18FXX2
NOTAS:
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)
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
:
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.
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
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
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.
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.
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
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:
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
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
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
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
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
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
2006 Microchip Technology Inc. DS39564C páginas 97
PIC18FXX2
NOTAS:
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.
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.
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.
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.
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.
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.
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>).
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.
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.
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.
DS39564C-page108 2006 Microchip Technology Inc.
PIC18FXX2
3:PorSalida ipheral Habilitar sólo está activa si periférico seleccionado es activo.
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
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
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.
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
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
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.
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
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.
2006 Microchip Technology Inc. DS39564C páginas 117
PIC18FXX2
NOTAS:
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
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.
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
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.
DS39564C-page122 2006 Microchip Technology Inc.
PIC18FXX2
NOTAS:
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
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
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.
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.
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.
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
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.
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
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
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.
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.
DS39564C-page134 2006 Microchip Technology Inc.
PIC18FXX2
NOTAS:
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
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
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
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
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
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
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.
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:
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á.
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.
2006 Microchip Technology Inc. DS39564C páginas 145
PIC18FXX2
NOTAS:
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
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
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
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
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
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↓
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↓
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↓
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.
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)
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
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
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
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.
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.
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.
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
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
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)
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
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.
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.
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
PIC18FXX2
2006 Microchip Technology Inc. DS39564C-página 145
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
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
UA permanecerá fijado.
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 '
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
PIC18FXX2
DS39564C-page150 2006 Microchip Technology Inc.
Set / Reset, S, P, WCOL
(SSPSTAT) Conjunto SSPIF,
BCLIF
Reconjunto ACKSTAT, PEN (SSPCON2)
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.
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.
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.
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
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
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.
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).
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
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
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
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.
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.
PIC18FXX2
2006 Microchip Technology Inc. DS39564C páginas 161
SDLa
SCL
BCLIF
Seautobús t colisión de interrupción (BCLIF)
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
PIC18FXX2
2006 Microchip Technology Inc. DS39564C páginas 163
SSPIF y BCLIF se borran en software.
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
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
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'
PIC18FXX2
2006 Microchip Technology Inc. DS39564C páginas 167
NOTAS:
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).
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
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
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
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.
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
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
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
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
PIC18FXX2
2006 Microchip Technology Inc. DS39564C páginas 177
LK
TRMT SPEN
Baud Generador de velocidad
TX9 TX9D
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.
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
PIC18FXX2
DS39564C-page180 2006 Microchip Technology Inc.
8
Bus de Datos
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.
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
PIC18FXX2
2006 Microchip Technology Inc. DS39564C páginas 183
bits clara.
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
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'
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'.
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.
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.
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:
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
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.
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.
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
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Ω )
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
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 - -
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
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.
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>).
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
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
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
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.
PIC18FXX2
DS39564C-page204 2006 Microchip Technology Inc.
NOTAS:
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.
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
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
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
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
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
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
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
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
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.
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.
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.
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.
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
PIC18FXX2
2006 Microchip Technology Inc. DS39564C páginas 219
30000Dh CONFIG7H - EBTRB - - - - - -
Leyenda: Las celdas sombreadas no están implementadas.
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 '.
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.
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
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.
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.
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.
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)
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
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.
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.
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.
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
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
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Í)
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
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)
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)
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
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)
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
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
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
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)
PIC18FXX2
2006 Microchip Technology Inc. DS39564C páginas 243
Yof REG PC
≠ =
W;
Address(NEQUAL)
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
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
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)
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
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
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
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
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
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
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
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]
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
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)
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
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
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
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
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
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
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
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)
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
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)
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
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
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
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.
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.
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.
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.
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.
PIC18FXX2
DS39564C-page258 2006 Microchip Technology Inc.
NOTAS:
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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
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.
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
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
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.
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.
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.
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)
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 -
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
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
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.
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.
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.
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.
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.
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.
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.
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.
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
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.
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.
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)
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)
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)
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)
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)
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)
PIC18FXX2
2006 Microchip Technology Inc. DS39564C páginas 297
3.3kΩ
5,1
kΩ
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)
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)
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)
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)
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)
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)
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)
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)
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)
PIC18FXX2
DS39564C-page306 2006 Microchip Technology Inc.
NOTAS:
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.
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
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
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
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
2α
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
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
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
PIC18FXX2
DS39564C-page314 2006 Microchip Technology Inc.
NOTAS:
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
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
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.
PIC18FXX2
DS39564C-page318 2006 Microchip Technology Inc.
NOTAS:
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
PIC18FXX2
DS39564C-page336 2006 Microchip Technology Inc.
NOTAS:
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
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?
PIC18FXX2
DS39564C-page 328 Información Anticipada sobre 2006 Microchip
Technology Inc.
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)
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
DS39564C-page 330 2006 Microchip Technology Inc.