Sei sulla pagina 1di 438

PIC18F2455/2550/4455/4550

Ficha de Dados
28/40/44-Pin, de alto desempenho,
Avanado Flash, USB microcontroladores
com tecnologia nanoWatt
v 2009 Microchip Technology Inc. DS39632E
Observe os seguintes detalhes sobre o recurso de proteo de cdigo em dispositivos Microchip:



Microchip produtos atendem as especificaes contidas no seu especial Microchip Folha de Dados.
Microchip acredita que a sua famlia de produtos uma das famlias mais seguras de seu tipo no mercado hoje, quando utilizado na
destina forma e em condies normais.
Existem mtodos desonestos e possivelmente ilegais usados para violar o recurso de proteo de cdigo. Todos estes mtodos, para a nossa
conhecimento, exigir o uso dos produtos Microchip de uma maneira fora das especificaes de funcionamento constantes Dados da Microchip
Folhas. Provavelmente, a pessoa que faz isso est envolvida em roubo de propriedade intelectual.
Microchip est disposta a trabalhar com o cliente que se preocupa com a integridade de seu cdigo.
Nem Microchip nem qualquer outro fabricante de semicondutores pode garantir a segurana de seu cdigo. Proteo de cdigo no
significa que estamos garantindo o produto como "inquebrvel".


Proteo do cdigo est em constante evoluo. Ns, da Microchip esto empenhados em melhorar continuamente as caractersticas do nosso cdigo de
proteo
produtos. Tentativas de quebrar recurso de proteo de cdigo da Microchip pode ser uma violao da Lei de Direitos Autorais do Milnio Digital. Se tais atos
permitir o acesso no autorizado ao seu software ou outro trabalho com direitos autorais, voc pode ter o direito de processar por alvio ao abrigo desta lei.
As informaes contidas nesta publicao a respeito do dispositivo
aplicaes e afins fornecida apenas para sua convenincia
e podem ser substitudas por atualizaes. de sua responsabilidade a
garantir que a sua aplicao encontra-se com suas especificaes.
MICROCHIP NO FAZ REPRESENTAO OU
GARANTIAS DE QUALQUER TIPO EXPRESSA OU
IMPLCITA, escrita ou oral, ESTATUTRIO OU
OUTRA, relacionados com a informao,
INCLUINDO, SEM LIMITAO sua condio,
Qualidade, desempenho, COMERCIALIZAO OU
ADEQUAO A UM FIM. Microchip exime de qualquer responsabilidade
decorrentes de informaes e sua utilizao. Utilizao de Microchip
dispositivos de suporte de vida e / ou aplicaes de segurana inteiramente
risco do comprador, eo comprador concorda em defender, indemnizar e
isentar Microchip de todos e quaisquer danos, reclamaes,
ternos, ou despesas decorrentes de tal uso. Nenhuma licena
transmitida, de forma implcita ou no, em qualquer Microchip
direitos de propriedade intelectual.
Marcas
O nome eo logotipo Microchip, o logotipo da Microchip, dsPIC,
KEELOQ, KEELOQ logotipo, MPLAB, PIC, PIC, PICSTART,
rfPIC e UNI / O so marcas registadas da Microchip registrado
Tecnologia Incorporated nos EUA e em outros pases.
Filterlab, Hampshire, HI-TECH C, Termistor atividade Linear,
MXDEV, MXLAB, SEEVAL eo controle integrado
Solutions Company so marcas registadas da Microchip registrado
Tecnologia incorporada no U.S.A.
Idade analgico-para-o-Digital, Aplicao Maestro, CodeGuard,
dsPICDEM, dsPICDEM.net, dsPICworks, dsSPEAK, ECAN,
EconoMonitor, FanSense, HI-TIDE, de srie In-Circuit
Programao ICSP, Mindi, MiWi, MPASM, MPLAB Certified
logotipo, MPLIB, MPLINK, mTouch, Polvo, Cdigo Onisciente
Gerao, PICC, PICC-18, PICDE, PICDEM.net, PICkit,
PICtail, PIC32 logotipo, ICE REAL, rfLAB, selecione o modo, a Total
Endurance, TSHARC, UniWinDriver, WiperLock e ZENA
so marcas registadas da Microchip Technology Incorporated nos
U.S.A. e outros pases.
SQTP uma marca da Microchip Technology Incorporated servio
nos E.U.A.
Todas as outras marcas comerciais aqui mencionadas so de propriedade
de seus
respectivas empresas.
2009 Microchip Technology Incorporated, Impresso na
U.S.A. Todos os direitos reservados.
Impresso em papel reciclado.
Microchip recebeu ISO/TS-16949: a certificao 2002 para sua mundial
sede, projeto e instalaes de fabricao de wafer em Chandler e
Tempe, Arizona; Gresham, Oregon e design centros na Califrnia
e na ndia. Processos do sistema de qualidade da empresa e procedimentos
so para o seu PIC MCUs e dsPIC DSCs, cdigo KEELOQ pulando
dispositivos, EEPROMs seriais, microperipherals, memria no voltil e
produtos analgicos. Alm disso, o sistema de qualidade da Microchip para o projeto
e fabricao de sistemas de desenvolvimento certificada ISO 9001:2000.
DS39632E pgina ii v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
28/40/44-Pin, High-Performance, Enhanced Flash,
Microcontroladores USB com nanoWatt Tecnologia
Universal Serial Bus Caractersticas:
USB V2.0 Compliant
Baixa Velocidade (1.5 Mb / s) e velocidade mxima (12 Mb / s)
Suporta controle de interrupo, Isochronous e massa
Transferncias
Suporta at 32 pontos de extremidade (16 bidirecional)
1 Kbyte RAM Acesso duplo para USB
Transceiver USB On-Chip com tenso On-Chip
Regulador
Interface para Off-Chip USB Transceiver
Transmisso de porta paralela (SPP) para transmisso USB
transferncias (somente dispositivos 40/44-pin)
Destaques perifricos:




Dissipador de alta Corrente / Fonte: 25 mA/25 mA
Trs Interrupes Externas
Quatro mdulos Temporizador (Timer0 para Timer3)
At 2 Capture / Compare / modules PWM (CCP):
- Capture 16-bit, max. resoluo de 5,2 ns (TCY/16)
- Comparar 16-bit, max. resoluo de 83,3 ns (TCY)
- Sada de PWM: resoluo PWM de 1 a 10-bit
Avanado Capture / Compare / PWM (PEAC) mdulo:
- Vrios modos de sada
- Polaridade selecionvel
- Programvel tempo morto
- Auto-desligamento e reinicializao automtica
Avanado mdulo USART:
- Apoio nibus LIN
Mestre Synchronous mdulo Serial Port (MSSP)
Apoiar 3-Wire SPI (todos os quatro modos) e I2C
Modos de mestre e escravo
10-Bit, At 13-Channel conversor analgico-digital
(A / D) com mdulo programvel Tempo de Aquisio
Comparadores analgicos duplos com Multiplexing Input

Poder de gesto Modos:








Run: CPU, Perifricos em
Idle: off CPU, Perifricos em
Sono: CPU off, Perifricos off
Correntes modo ocioso para baixo a 5.8 A Tpico
Dormir correntes de modo at 0,1 A Tpico
Timer1 oscilador: 1.1 A Tpico, 32 kHz, 2V
Watchdog Timer: 2,1 A Tpico
Duas Velocidades Oscillator Start-up




Estrutura flexvel oscilador:
Quatro modos de cristal, incluindo alta preciso PLL
para USB
Dois modos de relgio externo, de at 48 MHz
Interno bloco oscilador:
- 8 freqncias selecionveis pelo usurio, a partir de 31 kHz
a 8 MHz
- User-ajustvel para compensar desvio de freqncia
Oscilador secundrio usando Timer1 @ 32 kHz
Opes oscilador duplos permitem microcontrolador e
Mdulo USB para funcionar em diferentes velocidades de clock
Relgio prova de falhas Monitor:
- Permite o desligamento seguro se houver relgio pra
Caractersticas especiais do microcontrolador:
C Compiler arquitetura otimizada com opcional
Alargado conjunto de instrues
100.000 Erase / Write Ciclo Avanado do Flash
Memria de programa tpico
1.000.000 Erase / Write Cycle dados EEPROM
Memria tpica
Flash / EEPROM de dados de reteno:> 40 anos
Auto-programvel em Controle de Software
nveis de prioridade para Interrupes
8 x 8 Single-Cycle Multiplicador Hardware
Watchdog Timer Extended (WDT):
- Perodo programvel de 41 ms para 131s
Proteo de cdigo programvel
5V Single-Fornecimento de srie In-Circuit
Programao (ICSP ) atravs de dois pinos
Debug In-Circuit (CID), atravs de dois pinos
Opcional Dedicado CID / ICSP Porto (44-pin, TQFP
s pacote)
Faixa de tenso de operao Wide (2.0V a 5.5V)
I / O
10-Bit CCP / PEAC
A / D (CH) (PWM)
10
10
13
13
2/0
2/0
1/1
1/1
EUSART
MSSP
SPP
SPI
Y
Y
Y
Y
Mestre
I2C
Y
Y
Y
Y
Comparadore
s
2
2
2
2
Timers
8/16-Bit
1/3
1/3
1/3
1/3
Memria de Programa
Dispositivo
Memria de Dados
Flash # nica palavra SRAM EEPROM
(Bytes) Instrues (bytes) (bytes)
24K
32K
24K
32K
12288
16384
12288
16384
2048
2048
2048
2048
256
256
256
256
PIC18F2455
PIC18F2550
PIC18F4455
PIC18F4550
24
24
35
35
No
No
Sim
Sim
1
1
1
1
v 2009 Microchip Technology Inc. DS39632E-pgina 1
PIC18F2455/2550/4455/4550
Diagramas Pin
28-Pin PLCC, SOIC
MCLR/VPP/RE3
RA0/AN0
RA1/AN1
RA2/AN2/VREF-/CVREF
RA3/AN3/VREF +
RA4/T0CKI/C1OUT/RCV
RA5/AN4/SS/HLVDIN/C2OUT
VSS
OSC1/CLKI
OSC2/CLKO/RA6
RC0/T1OSO/T13CKI
RC1/T1OSI/CCP2(1)/ UOE
RC2/CCP1
VUSB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
28
27
26
25
24
23
22
21
20
19
18
17
16
15
RB7/KBI3/PGD
RB6/KBI2/PGC
RB5/KBI1/PGM
RB4/AN11/KBI0
RB3/AN9/CCP2(1)/ VPO
RB2/AN8/INT2/VMO
RB1/AN10/INT1/SCK/SCL
RB0/AN12/INT0/FLT0/SDI/SDA
VDD
VSS
RC7/RX/DT/SDO
RC6/TX/CK
RC5 / D + / VP
RC4/D-/VM
40-Pin PDIP
MCLR/VPP/RE3
RA0/AN0
RA1/AN1
RA2/AN2/VREF-/CVREF
RA3/AN3/VREF +
RA4/T0CKI/C1OUT/RCV
RA5/AN4/SS/HLVDIN/C2OUT
RE0/AN5/CK1SPP
RE1/AN6/CK2SPP
RE2/AN7/OESPP
VDD
VSS
OSC1/CLKI
OSC2/CLKO/RA6
RC0/T1OSO/T13CKI
RC1/T1OSI/CCP2(1)/ UOE
RC2/CCP1/P1A
VUSB
RD0/SPP0
RD1/SPP1
PIC18F2455PI
C18F2550
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
40
39
38
37
36
35
34
33
32
31
30
29
28
27
26
25
24
23
22
21
RB7/KBI3/PGD
RB6/KBI2/PGC
RB5/KBI1/PGM
RB4/AN11/KBI0/CSSPP
RB3/AN9/CCP2(1)/ VPO
RB2/AN8/INT2/VMO
RB1/AN10/INT1/SCK/SCL
RB0/AN12/INT0/FLT0/SDI/SDA
VDD
VSS
RD7/SPP7/P1D
RD6/SPP6/P1C
RD5/SPP5/P1B
RD4/SPP4
RC7/RX/DT/SDO
RC6/TX/CK
RC5 / D + / VP
RC4/D-/VM
RD3/SPP3
RD2/SPP2
Nota 1: RB3 o pino alternativo para CCP2 multiplexao.
PIC18F4455PI
C18F4550
DS39632E-pgina 2 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
Diagramas Pin (Continuao)
RC6/TX/CKRC5/D + / VPRC4/D-
/VMRD3/SPP3RD2/SPP2RD1/SPP1RD0/S
PP0VUSBRC2/CCP1/P1ARC1/T1OSI/CCP
2(1)/ UOENC / ICPORTS(2)
4443424140393837363534
44-Pin TQFP
44-Pin QFN
4443424140393837363534
RC6/TX/CKRC5/D + / VPRC4/D-
/VMRD3/SPP3RD2/SPP2RD1/SPP1RD0/S
PP0VUSBRC2/CCP1/P1ARC1/T1OSI/CCP
2(1)/ UOERC0/T1OSO/T13CKI
33
32
31
30
29
28
27
26
25
24
23
NC / ICCK(2)/ ICPGC(2)NC / ICDT(2)/
ICPGD(2)
1213141516171819202122
RC7/RX/DT/SDO
RD4/SPP4
RD5/SPP5/P1B
RD6/SPP6/P1C
RD7/SPP7/P1D
VSS
VDD
RB0/AN12/INT0/FLT0/SDI/SDA
RB1/AN10/INT1/SCK/SCL
RB2/AN8/INT2/VMO
RB3/AN9/CCP2(1)/ VPO
1
2
3
4
5
6
7
8
9
10
11
PIC18F4455
PIC18F4550
33
32
31
30
29
28
27
26
25
24
23
NC / ICRST(2)/ ICVPP(2)
RC0/T1OSO/T13CKI
OSC2/CLKO/RA6
OSC1/CLKI
VSS
VDD
RE2/AN7/OESPP
RE1/AN6/CK2SPP
RE0/AN5/CK1SPP
RA5/AN4/SS/HLVDIN/C2OUT
RA4/T0CKI/C1OUT/RCV
Nota 1:
2:
RB3 o pino alternativo para CCP2 multiplexao.
Caractersticas especiais ICPORT disponvel em circunstncias selecionados. Ver Seo 25.9 "Caractersticas ICPORT Especiais (44-Pin TQFP
Package Only) " para mais informaes.
v 2009 Microchip Technology Inc.
RB3/AN9/CCP2(1)
1213141516171819202122
RC7/RX/DT/SDO
RD4/SPP4
RD5/SPP5/P1B
RD6/SPP6/P1C
RD7/SPP7/P1D
VSS
VDD
VDD
RB0/AN12/INT0/FLT0/SDI/SDA
RB1/AN10/INT1/SCK/SCL
RB2/AN8/INT2/VMO
1
2
3
4
5
6
7
8
9
10
11
PIC18F4455
PIC18F4550
OSC2/CLKO/RA6
OSC1/CLKI
VSS
VSS
VDD
VDD
RE2/AN7/OESPP
RE1/AN6/CK2SPP
RE0/AN5/CK1SPP
RA5/AN4/SS/HLVDIN/C2OUT
RA4/T0CKI/C1OUT/RCV
DS39632E-pgina 3
PIC18F2455/2550/4455/4550
ndice analtico
1.0 Viso Geral do Dispositivo 7
2.0 Configuraes de oscilador 23
3.0 Modos de gerenciamento de energia 35
4.0 Repor 45
5.0 Organizao da memria 59
6.0 Memria Flash Programa 81
7.0 Dados da memria EEPROM 91
8,0 8 x 8 Equipamento 97
9.0 Interrupes 99
10,0 Portas I / O 113
11,0 Timer0 Module 127
12,0 Timer1 Module 131
13,0 Timer2 Module 137
14,0 Timer3 Module 139
15,0 Capture / Compare / PWM (CCP) Mdulos 143
16,0 Captura Enhanced / Compare / PWM (PEAC) 151
17,0 Universal Serial Bus (USB) 165
18,0 Transmisso Porta Paralela 191
19,0 Mestre Synchronous Porta Serial Module (MSSP) 197
20,0 avanado Synchronous Asynchronous Receiver Transmitter Universal (EUSART) ........................................ ....................... 243
21,0 10-Bit Analog-to-Digital Converter (A / D) Module 265
22,0 Comparador 275
23,0 Comparador Module Voltagem de referncia 281
24,0 High / Low-Voltage Detect 285
25,0 Recursos especiais do CPU 291
26,0 Instruction Set Resumo 313
27,0 Desenvolvimento 363
28,0 Caractersticas eltricas 367
29,0 DC e AC Caractersticas Grficos e Tabelas 407
30,0 Embalagem 409
Apndice A: Reviso 419
Apndice B: Dispositivo 419
Apndice C: Consideraes de converso 420
Anexo D: Migrao da linha de base para Avanado 420
Apndice E: Migrao De Mid-Range para dispositivos aprimorados 421
Apndice F: Migrao De High-End para Avanado 421
ndice 423
O Web Site Microchip 433
Cliente Servio de mudana de Notificao 433
Suporte ao Cliente 433
Resposta do leitor 434
PIC18F2455/2550/4455/4550 Identificao do Produto Sistema 435
DS39632E-pgina 4 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
Para nossos clientes
nossa inteno proporcionar aos nossos valiosos clientes com a melhor documentao possvel para garantir o uso bem-sucedido de sua Microchip
produtos. Para este fim, vamos continuar a melhorar as nossas publicaes para melhor atender s suas necessidades. Nossas publicaes sero
refinados e
reforada medida que novos volumes e atualizaes so introduzidos.
Se voc tiver quaisquer perguntas ou comentrios sobre esta publicao, favor contatar o Departamento de Comunicao de Marketing via
E-mail para docerrors@microchip.com ou fax o Leitor Formulrio de Resposta no verso da folha de dados para (480) 792-4150. Ns
acolher o seu feedback.
Dados mais atuais Folha
Para obter a verso mais up-to-date desta folha de dados, por favor registre em nosso site mundial em:
http://www.microchip.com
Voc pode determinar a verso de uma folha de dados, examinando o seu nmero literatura encontrada no canto inferior do lado de fora de qualquer
pgina.
O ltimo caractere do nmero literatura o nmero da verso (por exemplo, DS30000A a verso A do documento DS30000).
Errata
Uma folha de errata, descrevendo diferenas operacionais menores de folha de dados e solues recomendadas, podem existir par a a corrente
dispositivos. Como as questes de documentao do dispositivo / tornar-se conhecido para ns, vamos publicar uma folha de errata. A errata vai
especificar a reviso
de silcio e reviso do documento a que se aplica.
Para determinar se uma folha de errata existe para um determinado dispositivo, verifique com um dos seguintes
procedimentos:
Web site mundial da Microchip; http://www.microchip.com
Seu escritrio local de vendas Microchip (ver ltima pgina)
Quando entrar em contato com um escritrio de vendas, por favor especifique qual dispositivo, reviso de silcio e folha de dados (incluir o nmero de
literatura) que voc est
usando.
Sistema de Notificao ao Cliente
Registe-se no nosso site em www.microchip.com para receber as informaes mais atualizadas sobre todos os nossos produtos.
v 2009 Microchip Technology Inc. DS39632E-pgina 5
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E-pgina 6 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
1.0 Viso geral do dispositivo
1.1.3
Este documento contm informaes especficas do dispositivo para
os seguintes dispositivos:
PIC18F2455
PIC18F2550
PIC18F4455
PIC18F4550
PIC18LF2455
PIC18LF2550
PIC18LF4455
PIC18LF4550
VRIAS OPES OSCILLATOR
E CARACTERSTICAS
Todos os dispositivos na PIC18F2455/2550/4455/4550
Oferecemos famlia de doze opes diferentes de oscilador,
permitindo
usurios uma ampla gama de opes de desenvolvimento de
aplicaes
hardware. Estes incluem: Quatro modos de cristal usando cristais ou de cermica
ressonadores.
Quatro modos de relgio externo, oferecendo a opo de
utilizando dois pinos de entrada do oscilador (e uma diviso por
quatro
sada do relgio) ou um pino (entrada do oscilador, com a
segundo pino transferido to geral I / O).
Um bloco do oscilador interno, que fornece uma
8 MHz de clock ( 2% de preciso) e um INTRC
fonte (cerca de 31 kHz, estvel ao longo do
temperatura e VDD), bem como uma variedade de
Seis freqncias de clock selecionveis pelo usurio, entre
125 kHz a 4 MHz, para um total de 8 relgio
freqncias. Esta opo libera um pino de oscilador para
usar como um propsito geral adicional I / O.
A Circuito multiplicador de bloqueio de fase (PLL) de freqncia,
disponvel tanto para o cristal de alta velocidade e
Modos de oscilador externo, o que permite uma ampla
gama de velocidades de clock de 4 MHz a 48 MHz.
operao do relgio duplo assncrona, permitindo que o
Mdulo USB para executar a partir de uma alta freqncia
oscilador, enquanto o resto do microcontrolador
cronometrado a partir de um oscilador de baixa potncia interna.
Alm de sua disponibilidade como fonte do relgio, o interno
bloco oscilador fornece uma fonte de referncia estvel que
d os recursos adicionais para familiares robusto
operao:
Fail-safe Monitor de Relgio: Esta opo constantemente
monitora a fonte de clock principal contra um
sinal de referncia fornecido pelo interno
oscilador. Se ocorrer uma falha no relgio, o controlador
comutada para o bloco oscilador interno, permitindo
para operao de baixa velocidade contnua ou um seguro
desligamento do aplicativo.
Duas Velocidades Start-up: Esta opo permite que o
oscilador interno para servir como fonte de relgio
da Power-on Reset, ou wake-up do sono
modo, at que o relgio principal fonte disponvel.
Esta famlia de dispositivos oferece as vantagens de todas
Microcontroladores PIC18 - ou seja, de alta computacional
desempenho a um preo econmico - com a adio
de alta resistncia programa Flash, aprimorada
memria. Em adio a estas caractersticas, o
PIC18F2455/2550/4455/4550 famlia apresenta o projeto
melhorias que fazem estes microcontroladores um log-
escolha iCal para muitos de alto desempenho, potncia sensitiva
aplicaes.
1.1
1.1.1
Novos recursos do ncleo
nanoWatt TECNOLOGIA
Todos os dispositivos na PIC18F2455/2550/4455/4550
famlia incorporar uma gama de recursos que pode signifi-
reduzir significativamente o consumo de energia durante a
operao.
Os principais itens incluem:
Suplentes modos de execuo: Ao cronometrar o controlador
a partir da fonte ou a Timer1 oscilador interno
bloco, o consumo de energia durante a execuo de cdigo
pode ser reduzido em tanto como 90%.
Mltiplos Modos de inactividade: O controlador tambm pode ser
executado
com o seu core desativado, mas os perifricos ainda
ativo. Nesses estados, o consumo de energia pode ser
reduzida ainda mais, para menos de 4% do normal
requisitos de operao.
On-the-Fly Modo Switching: O
modos de gerenciamento de energia so invocados pelo cdigo
do usurio
durante a operao, permitindo ao utilizador a incorporar
idias de economia de energia para a sua aplicao de
design de software.
Baixo consumo em mdulos principais: O poder
as exigncias para os Timer1 eo Watchdog
Temporizador so minimizados. Ver Seo 28.0
"Caractersticas eltricas" para valores.
1.1.2 Universal Serial Bus (USB)
Dispositivos na famlia PIC18F2455/2550/4455/4550
incorporar uma inteiramente caracterizado Universal Serial Bus
mdulo de comunicao que seja compatvel com o USB
Specification Revision 2.0. O mdulo suporta tanto
comunicao de baixa velocidade e de velocidade total para todos
os su-
portados tipos de transferncia de dados. Alm disso, incorpora o
seu prprio
transceptor on-chip e 3.3V regulador e suporta
a utilizao de transceptores externas e reguladores de tenso.
v 2009 Microchip Technology Inc. DS39632E-pgina 7
PIC18F2455/2550/4455/4550
1.2 Outras caractersticas especiais 1.3
Endurance de memria: As clulas do Flash aprimorados
tanto para a memria de programa e dados de EEPROM est
avaliado para durar por muitos milhares de apagar / escrever
ciclos - at 100 mil para a memria de programa e
1.000.000 para EEPROM. A reteno de dados sem
atualizao conservadora, estima-se ser maior
de 40 anos.
Auto-programao: Estes dispositivos podem escrever para
seus prprios espaos de memria do programa sob interno
controle de software. Usando uma rotina bootloader,
localizada no bloco de boot protegido no topo
memria de programa, torna-se possvel criar um
aplicao que pode atualizar-se no campo.
Alargado conjunto de instrues: O
PIC18F2455/2550/4455/4550 famlia introduz
uma extenso opcional para o conjunto de instrues PIC18,
que acrescenta oito novas instrues e um cadastradas
Literal offset Modo de endereamento. Esta extenso,
ativado como uma opo de configurao do dispositivo, tem
foi projetado especificamente para otimizar o re-entrantes
cdigo de aplicao inicialmente desenvolvida em alto nvel
linguagens como C.
Maior CCP Mdulo: No modo de PWM, esta
mdulo fornece 1, 2 ou 4 sadas moduladas para
controlando meia ponte e ponte completa motoristas.
Outras caractersticas incluem auto-desligamento para
desativar sadas PWM em interrupo ou outra escolha
condies e auto-restart para reativar sadas
uma vez que a condio foi eliminada.
Maior USART enderevel: Esta srie
mdulo de comunicao capaz de padro
Operao RS-232 e oferece suporte para o LIN
protocolo de nibus. Os sinais RX / DT TX / CK e pode
ser invertido, eliminando a necessidade de inverter
tampes. Outras melhorias incluem Automatic
Baud Taxa de Deteco e um 16-bit Taxa de Transmisso
Gerador para uma melhor resoluo. Quando o
microcontrolador est a utilizar o oscilador interno
bloco, o EUSART fornece operao estvel
aplicaes que falam para o mundo exterior, sem
usando um cristal externo (ou o seu acompanhante
Exigncia de energia).
10-Bit A / D Converter: Este mdulo incorpora
O tempo de aquisio programveis, permitindo uma
do canal a ser seleccionado e uma converso para ser
iniciados, sem esperar por um perodo de amostragem e
assim, reduzir a sobrecarga de cdigo.
Dedicado CID / ICSP Porto: Estes dispositivos
introduzir o uso de depurador e programao
os pinos que no sejam multiplexados com outros micro-
caractersticas do controlador. Oferecido como uma opo no
select
pacotes, este recurso permite aos usurios desenvolver I / O
aplicaes de uso intensivo, mantendo a capacidade de
programa e depurao no circuito.
Detalhes sobre Famlia Individual
Usurios
Dispositivos na famlia PIC18F2455/2550/4455/4550 so
Disponvel em embalagens de 28 pinos e 40/44-pin. Bloquear
diagramas para os dois grupos so mostradas na Figura 1-1
e Figura 1-2.
Os dispositivos so diferenciadas umas das outras em seis
maneiras:
1. Memria de programa flash (24 Kbytes para
PIC18FX455devices, 32 Kbytesfor
PIC18FX550 dispositivos).
Canais de A / D (10 para dispositivos de 28 pinos, 13 para
Dispositivos 40/44-pin).
Portas de I / O (3 portas bidirecionais e uma entrada nica
porta em dispositivos de 28 pinos, 5 portas bidirecionais em
Dispositivos 40/44-pin).
CCP e Enhanced CCP implementao
(Dispositivos de 28 pinos tem duas CCP padro
mdulos, dispositivos 40/44-pin ter um padro
Mdulo CCP e um mdulo PEAC).
Transmisso Porta Paralela (presente apenas em
Dispositivos 40/44-pin).
2.
3.
4.
5.
Todas as outras caractersticas dos dispositivos desta famlia so
idnticos.
Estes encontram-se resumidos na Tabela 1-1.
A pinagem para todos os dispositivos esto listados na Tabela 1-2 e
Tabela 1-3.
Como todos os dispositivos Microchip PIC18, os membros da
PIC18F2455/2550/4455/4550 famlia esto disponveis como
ambos os dispositivos padro e baixa tenso. Padro
dispositivos com memria flash avanado, designado com
um "F" no nmero da pea (como PIC18F2550)
acomodar uma variedade de 4.2V a 5.5V VDD operacional.
Peas de baixa tenso, designados por "LF" (tais como
PIC18LF2550), funo em uma faixa estendida VDD
de 2.0V a 5.5V.
DS39632E-pgina 8 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 1-1: Recursos do dispositivo
PIC18F2455
DC - 48 MHz
24576
12288
2048
256
19
Portas A, B, C, (E)
4
2
0
MSSP,
Maior USART
1
No
10 canais de entrada
2
POR, BOR,
REAJUSTE Instruo,
Pilha completa,
Stack Underflow
(PWRT, OST)
MCLR (opcional),
WDT
Sim
Sim
75 instrues;
83 com estendida
Conjunto de instrues
ativado
28-Pin PDIP
28-Pin SOIC
PIC18F2550
DC - 48 MHz
32768
16384
2048
256
19
Portas A, B, C, (E)
4
2
0
MSSP,
Maior USART
1
No
10 canais de entrada
2
POR, BOR,
REAJUSTE Instruo,
Pilha completa,
Stack Underflow
(PWRT, OST)
MCLR (opcional),
WDT
Sim
Sim
75 instrues;
83 com estendida
Conjunto de instrues
ativado
28-Pin PDIP
28-Pin SOIC
PIC18F4455
DC - 48 MHz
24576
12288
2048
256
20
4
1
1
MSSP,
Maior USART
1
Sim
13 canais de entrada
2
POR, BOR,
REAJUSTE Instruo,
Pilha completa,
Stack Underflow
(PWRT, OST)
MCLR (opcional),
WDT
Sim
Sim
75 instrues;
83 com estendida
Conjunto de instrues
ativado
40-Pin PDIP
44-Pin QFN
44-Pin TQFP
PIC18F4550
DC - 48 MHz
32768
16384
2048
256
20
4
1
1
MSSP,
Maior USART
1
Sim
13 canais de entrada
2
POR, BOR,
REAJUSTE Instruo,
Pilha completa,
Stack Underflow
(PWRT, OST)
MCLR (opcional),
WDT
Sim
Sim
75 instrues;
83 com estendida
Conjunto de instrues
ativado
40-Pin PDIP
44-Pin QFN
44-Pin TQFP
Caractersticas
Freqncia de operao
Memria de programa (Bytes)
Memria de programa (instrues)
Memria de Dados (Bytes)
Os dados da memria EEPROM (Bytes)
Fontes de interrupo
I / O Ports
Timers
Capture / Compare / Mdulos PWM
Aprimorado de captura /
Compare / Mdulos PWM
Comunicao Serial
Universal Serial Bus (USB)
Mdulo
Transmisso de porta paralela (SPP)
10-Bit Mdulo Analgico-Digital
Comparadores
Redefine (e atrasos)
Portas A, B, C, D, E Portas A, B, C, D, E
Programvel de Baixa Tenso
Descobrir
Redefinio Programmable Brown-out
Conjunto de instrues
Pacotes
v 2009 Microchip Technology Inc. DS39632E-pgina 9
PIC18F2455/2550/4455/4550
Figura 1-1:
Tabela de Ponteiro de <21>
inc / dezembro lgica
21
20
8
PCLATU PCLATH
PIC18F2455/2550 (28-PIN) DIAGRAMA DE BLOCO
Barramento de dados <8>
Dados Trava
Memria de Dados
(2 Kbytes)
Trava endereo
12
Endereo Dados <12>
4
BSR
12
FSR0
FSR1
FSR2
inc / dezembro
lgica
4
Acessar
Banco
12
PORTB
RB0/AN12/INT0/FLT0/SDI/SDA
RB1/AN10/INT1/SCK/SCL
RB2/AN8/INT2/VMO
RB3/AN9/CCP2(3)/ VPO
RB4/AN11/KBI0
RB5/KBI1/PGM
RB6/KBI2/PGC
RB7/KBI3/PGD
PORTA
RA0/AN0
RA1/AN1
RA2/AN2/VREF-/CVREF
RA3/AN3/VREF +
RA4/T0CKI/C1OUT/RCV
RA5/AN4/SS/HLVDIN/C2OUT
OSC2/CLKO/RA6
8
PCU PCH PCL
Contador de programa
31 Nvel Stack
Trava endereo
Memria de Programa
(24/32 Kbytes)
Dados Trava
8
STKPTR
Trava mesa
Bus Instruo <16>
Trava ROM
Endereo
Decodificar
IR
8
Instruo
Decodificar e
Controle
Mquina de Estado
Sinais de Controle
PRODH Prdl
3
OSC1(2)
OSC2(2)
T1OSI
T1OSO
MCLR(1)
VDD, VSS
VUSB
Interno
Oscilador
Bloquear
INTRC
Oscilador
8 MHz
Oscilador
Single-alimentao
Programao
No circuito
Debugger
Power-up
Cronmetro
Oscilador
Start-up timer
Power-on
Restabelecer
Co de guarda
Cronmetro
Brown-out
Restabelecer
Fail-safe
Relgio monitor
Gap Band
Referncia
Bitop
8
8
ALU <8>
8
8 x 8 Multiply
8
W
8
8
8
PORTC
RC0/T1OSO/T13CKI
RC1/T1OSI/CCP2(3)/ UOE
RC2/CCP1
RC4/D-/VM
RC5 / D + / VP
RC6/TX/CK
RC7/RX/DT/SDO
Tenso USB
Regulador
PORTE
MCLR/VPP/RE3(1)
BOR
HLVD
Dados
EEPROM
Timer0 Timer1 Timer2 Timer3
Comparador CCP1 CCP2 MSSP EUSART
ADC
10-Bit
USB
Nota 1:
2:
3:
RE3 multiplexado com MCLR e s est disponvel quando o Redefine MCLR esto desativados.
OSC1/CLKI e OSC2/CLKO s esto disponveis nos modos de oscilador selecionados e quando estes pinos no esto sendo usados como digitais I / O. Referir
a Seo 2.0 "Configuraes oscilador" para obter informaes adicionais.
RB3 o pino alternativo para CCP2 multiplexao.
DS39632E-pgina 10 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
Figura 1-2:
Tabela de Ponteiro de <21>
inc / dezembro lgica
21
20
8
PCLATU PCLATH
PIC18F4455/4550 (40/44-PIN) DIAGRAMA DE BLOCO
Barramento de dados <8>
Dados Trava
Memria de Dados
(2 Kbytes)
Trava endereo
12
Endereo Dados <12>
4
BSR
12
FSR0
FSR1
FSR2
inc / dezembro
lgica
PORTC
RC0/T1OSO/T13CKI
RC1/T1OSI/CCP2(4)/ UOE
RC2/CCP1/P1A
RC4/D-/VM
RC5 / D + / VP
RC6/TX/CK
RC7/RX/DT/SDO
4
Acessar
Banco
12
PORTA
RA0/AN0
RA1/AN1
RA2/AN2/VREF-/CVREF
RA3/AN3/VREF +
RA4/T0CKI/C1OUT/RCV
RA5/AN4/SS/HLVDIN/C2OUT
OSC2/CLKO/RA6
8
PCU PCH PCL
Contador de programa
31 Nvel Stack
PORTB
RB0/AN12/INT0/FLT0/SDI/SDA
RB1/AN10/INT1/SCK/SCL
RB2/AN8/INT2/VMO
RB3/AN9/CCP2(4)/ VPO
RB4/AN11/KBI0/CSSPP
RB5/KBI1/PGM
RB6/KBI2/PGC
RB7/KBI3/PGD
Trava endereo
Memria de Programa
(24/32 Kbytes)
Dados Trava
8
STKPTR
Trava mesa
Bus Instruo <16>
Trava ROM
Endereo
Decodificar
IR
8
Instruo
Decodificar e
Controle
Mquina de Estado
Sinais de Controle
PRODH Prdl
3
Interno
Oscilador
Bloquear
INTRC
Oscilador
8 MHz
Oscilador
Single-alimentao
Programao
No circuito
Debugger
Power-up
Cronmetro
Oscilador
Start-up timer
Power-on
Restabelecer
Co de guarda
Cronmetro
Brown-out
Restabelecer
Fail-safe
Relgio monitor
Gap Band
Referncia
Bitop
8
8
ALU <8>
8
PORTE
8 x 8 Multiply
8
W
8
8
8
PORTD
VDD, VSS
OSC1(2)
OSC2(2)
T1OSI
T1OSO
ICPGC(3)
ICPGD(3)
ICPORTS(3)
ICRST(3)
MCLR(1)
VUSB
RD0/SPP0: RD4/SPP4
RD5/SPP5/P1B
RD6/SPP6/P1C
RD7/SPP7/P1D
RE0/AN5/CK1SPP
RE1/AN6/CK2SPP
RE2/AN7/OESPP
MCLR/VPP/RE3(1)
Tenso USB
Regulador
BOR
HLVD
Dados
EEPROM Timer0 Timer1 Timer2 Timer3
Comparador
Nota 1:
2:
3:
4:
ECCP1 CCP2 MSSP EUSART
ADC
10-Bit
USB
RE3 multiplexado com MCLR e s est disponvel quando o Redefine MCLR esto desativados.
OSC1/CLKI e OSC2/CLKO s esto disponveis nos modos de oscilador selecionados e quando estes pinos no esto sendo usados como digitais I / O. Referir
a Seo 2.0 "Configuraes oscilador" para obter informaes adicionais.
Estes pinos s esto disponveis em pacotes de 44-pin TQFP sob certas condies. Consulte Seo 25.9 "Caractersticas especiais ICPORT
(44-Pin nico pacote TQFP) " para obter informaes adicionais.
RB3 o pino alternativo para CCP2 multiplexao.
v 2009 Microchip Technology Inc. DS39632E-pgina 11
PIC18F2455/2550/4455/4550
TABELA 1-2: PIC18F2455/2550 DESCRIES pinagem I / O
Pin
Nmero
PDIP,
SOIC
1
Eu
P
Eu
9
Eu
Eu
10
O
O
I / O
-
-
TTL
ST
Pin
Tipo
Tampo
Tipo
Nome do pino Descrio
MCLR/VPP/RE3
MCLR
VPP
RE3
OSC1/CLKI
OSC1
CLKI
OSC2/CLKO/RA6
OSC2
CLKO
RA6
ST
Master Clear (entrada) ou programao tenso (entrada).
Limpar entrada Master (Reset). Este pino um baixo ativo
Repor o dispositivo.
Programao de tenso de entrada.
Entrada digital.
Cristal oscilador ou entrada de clock externo.
AnalogOscillator entrada cristal ou fonte de entrada de clock externo.
Entrada de fonte de clock AnalogExternal. Sempre associado com pino
funo OSC1. (Veja pin OSC2/CLKO).
Cristal oscilador ou sada de clock.
Sada de cristal oscilador. Ligaes de cristal ou ressonador em
Modo de oscilador de cristal.
Nos modos de seleo, OSC2 pin sadas CLKO que tem 1/4 do
frequncia de OSC1 e indica a taxa de ciclo de instruo.
Propsito pino I / O em geral.
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com CMOS levelsI = Entrada
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
DS39632E-pgina 12 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 1-2: PIC18F2455/2550 DESCRIES pinagem I / O (Continuao)
Pin
Nmero
PDIP,
SOIC
2
I / O
Eu
3
I / O
Eu
4
I / O
Eu
Eu
O
5
I / O
Eu
Eu
6
I / O
Eu
O
Eu
7
I / O
Eu
Eu
Eu
O
- -
TTL
Anlogo
TTL
Anlogo
-
-
Digital I / O.
A entrada analgica 4.
SPI escravo seleto de entrada.
High / Low-Voltage Detect entrada.
Comparador de sada 2.
Veja o pino OSC2/CLKO/RA6.
ST
ST
-
TTL
Digital I / O.
Timer0 entrada de clock externo.
Comparador uma sada.
Entrada VN externo USB transceptor.
TTL
Anlogo
Anlogo
Digital I / O.
A entrada analgica 3.
A (alta) tenso de entrada de referncia / D.
TTL
Anlogo
Anlogo
Anlogo
Digital I / O.
A entrada analgica 2.
A (baixo) entrada de tenso de referncia / D.
Sada analgica de referncia de comparao.
TTL
Anlogo
Digital I / O.
Entrada analgica 1.
TTL
Anlogo
Digital I / O.
Entrada analgica 0.
Pin
Tipo
Tampo
Tipo
Nome do pino Descrio
PORTA uma porta de I / O bidirecional.
RA0/AN0
RA0
AN0
RA1/AN1
RA1
AN1
RA2/AN2/VREF-/CVREF
RA2
AN2
VREF-
CVREF
RA3/AN3/VREF +
RA3
AN3
VREF +
RA4/T0CKI/C1OUT/RCV
RA4
T0CKI
C1OUT
VN
RA5/AN4/SS /
HLVDIN/C2OUT
RA5
AN4
SS
HLVDIN
C2OUT
RA6
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com CMOS levelsI = Entrada
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
v 2009 Microchip Technology Inc. DS39632E-pgina 13
PIC18F2455/2550/4455/4550
TABELA 1-2: PIC18F2455/2550 DESCRIES pinagem I / O (Continuao)
Pin
Nmero
PDIP,
SOIC
Pin
Tipo
Tampo
Tipo
Nome do pino Descrio
PORTB uma porta de I / O bidirecional. PORTB podem ser software
programado para internos fracos pull-ups em todas as entradas.
RB0/AN12/INT0/FLT0 /
SDI / SDA
RB0
AN12
INT0
FLT0
SDI
SDA
RB1/AN10/INT1/SCK /
SCL
RB1
AN10
INT1
SCK
SCL
RB2/AN8/INT2/VMO
RB2
AN8
INT2
VMO
RB3/AN9/CCP2/VPO
RB3
AN9
CCP2(1)
VPO
RB4/AN11/KBI0
RB4
AN11
KBI0
RB5/KBI1/PGM
RB5
KBI1
PGM
RB6/KBI2/PGC
RB6
KBI2
PGC
RB7/KBI3/PGD
RB7
KBI3
PGD
21
I / O
Eu
Eu
Eu
Eu
I / O
22
I / O
Eu
Eu
I / O
I / O
23
I / O
Eu
Eu
O
24
I / O
Eu
I / O
O
25
I / O
Eu
Eu
26
I / O
Eu
I / O
27
I / O
Eu
I / O
28
I / O
Eu
I / O
TTL
TTL
ST
Digital I / O.
Pino de interrupo-on-mudana.
In-Circuit Debugger e pino de dados de programao ICSP.
TTL
TTL
ST
Digital I / O.
Pino de interrupo-on-mudana.
In-Circuit Debugger e ICSP pino do relgio de programao.
TTL
TTL
ST
Digital I / O.
Pino de interrupo-on-mudana.
ICSP Low-Voltage Programao permitir pin.
TTL
Anlogo
TTL
Digital I / O.
A entrada analgica 11.
Pino de interrupo-on-mudana.
TTL
Anlogo
ST
-
Digital I / O.
A entrada analgica 9.
Capturar dois input / Comparar 2 output/PWM2 sada.
Sada externa USB transceiver VPO.
TTL
Anlogo
ST
-
Digital I / O.
A entrada analgica 8.
Interrupo externa 2.
Sada externa USB transceiver VMO.
TTL
Anlogo
ST
ST
ST
Digital I / O.
A entrada analgica 10.
Interrupo externa 1.
Synchronous entrada de clock serial / sada para o modo SPI.
Synchronous entrada de clock serial / sada para o modo I2C.
TTL
Anlogo
ST
ST
ST
ST
Digital I / O.
A entrada analgica 12.
0 interrupo externa.
Entrada Fault PWM (CCP1 mdulo).
Dados SPI dentro
I2C dados de I / O.
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com CMOS levelsI = Entrada
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
DS39632E-pgina 14 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 1-2: PIC18F2455/2550 DESCRIES pinagem I / O (Continuao)
Pin
Nmero
PDIP,
SOIC
11
I / O
O
Eu
12
I / O
Eu
I / O
O
13
I / O
I / O
15
Eu
I / O
Eu
16
Eu
I / O
O
17
I / O
O
I / O
18
I / O
Eu
I / O
O
-
14
8, 19
20
-
P
P
P
ST
ST
ST
-
-
-
-
-
Digital I / O.
EUSART assncrona receber.
EUSART dados sncronos (ver TX / CK).
Dados SPI fora.
Veja MCLR/VPP/RE3 pin.
Interno USB 3.3V sada do regulador de tenso, alimentao positiva para
interna transceptor USB.
Referncia de terra para a lgica e I / O dos pinos.
Alimentao positiva para a lgica e I / O dos
pinos.
ST
-
ST
Digital I / O.
EUSART assncrona transmitir.
EUSART sncrona relgio (ver RX / DT).
TTL
-
TTL
Entrada digital.
Diferencial USB alm de linha (entrada / sada).
VP entrada USB externo transceptor.
TTL
-
TTL
Entrada digital.
Diferencial USB menos de linha (entrada / sada).
VM entrada USB externo transceptor.
ST
ST
Digital I / O.
Captura de um input / Compare 1 output/PWM1 sada.
ST
CMOS
ST
-
Digital I / O.
Timer1 entrada do oscilador.
Capturar dois input / Comparar 2 output/PWM2 sada.
Sada externa USB transceiver OE.
ST
-
ST
Digital I / O.
Timer1 sada do oscilador.
Timer1/Timer3 entrada de clock externo.
Pin
Tipo
Tampo
Tipo
Nome do pino Descrio
PORTC uma porta de I / O bidirecional.
RC0/T1OSO/T13CKI
RC0
T1OSO
T13CKI
RC1/T1OSI/CCP2/UOE
RC1
T1OSI
CCP2(2)
UOE
RC2/CCP1
RC2
CCP1
RC4/D-/VM
RC4
D-
VM
RC5 / D + / VP
RC5
D +
VP
RC6/TX/CK
RC6
TX
CK
RC7/RX/DT/SDO
RC7
RX
DT
SDO
RE3
VUSB
VSS
VDD
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com CMOS levelsI = Entrada
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
v 2009 Microchip Technology Inc. DS39632E-pgina 15
PIC18F2455/2550/4455/4550
TABELA 1-3:
Nome do pino
MCLR/VPP/RE3
MCLR
VPP
RE3
OSC1/CLKI
OSC1
CLKI
OSC2/CLKO/RA6
OSC2
CLKO
13 32 30
Eu
Eu
14 33 31
O
O
-
-
PIC18F4455/4550 DESCRIES pinagem I / O
Nmero Pin
PDIP
1
Pin tampo
QFN TQFP Tipo Tipo
18 18
Eu
P
Eu
ST
Descrio
Master Clear (entrada) ou programao tenso (entrada).
Limpar entrada Master (Reset). Este pino um baixo ativo
Repor o dispositivo.
Programao de tenso de entrada.
Entrada digital.
ST
Cristal oscilador ou entrada de clock externo.
AnalogOscillator entrada cristal ou fonte de entrada de clock externo.
Entrada de fonte de clock AnalogExternal. Sempre associado
Pino Funo OSC1. (Veja pin OSC2/CLKO).
Cristal oscilador ou sada de clock.
Sada de cristal oscilador. Ligaes de cristal ou
ressonador no modo oscilador de cristal.
No modo RC, OSC2 pin sadas CLKO que tem 1/4
a frequncia de OSC1 e indica a instruo
taxa de ciclo.
Propsito pino I / O em geral.
RA6 I / O TTL
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com nveis CMOS I = Input
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
3: Estes pinos no so Conecte a menos que o bit de configurao ICPRT est definido. Para NC / ICPORTS, o pino no
Ligao a menos ICPRT est definido eo bit configurao de depurao est desmarcada.
DS39632E-pgina 16 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 1-3:
Nome do pino
PIC18F4455/4550 DESCRIES pinagem I / O (Continuao)
Nmero Pin
PDIP
2
Pin tampo
Tipo Tipo
QFN TQFP
19 19
I / O
Eu
3 20 20
I / O
Eu
4 21 21
I / O
Eu
Eu
O
5 22 22
I / O
Eu
Eu
6 23 23
I / O
Eu
O
Eu
7 24 24
I / O
Eu
Eu
Eu
O
- - - -
TTL
Anlogo
TTL
Anlogo
-
-
Digital I / O.
A entrada analgica 4.
SPI escravo seleto de entrada.
High / Low-Voltage Detect entrada.
Comparador de sada 2.
Veja o pino OSC2/CLKO/RA6.
ST
ST
-
TTL
Digital I / O.
Timer0 entrada de clock externo.
Comparador uma sada.
Entrada VN externo USB transceptor.
TTL
Anlogo
Anlogo
Digital I / O.
A entrada analgica 3.
A (alta) tenso de entrada de referncia / D.
TTL
Anlogo
Anlogo
Anlogo
Digital I / O.
A entrada analgica 2.
A (baixo) entrada de tenso de referncia / D.
Sada analgica de referncia de comparao.
TTL
Anlogo
Digital I / O.
Entrada analgica 1.
TTL
Anlogo
Digital I / O.
Entrada analgica 0.
Descrio
PORTA uma porta de I / O bidirecional.
RA0/AN0
RA0
AN0
RA1/AN1
RA1
AN1
RA2/AN2/VREF- /
CVREF
RA2
AN2
VREF-
CVREF
RA3/AN3/VREF +
RA3
AN3
VREF +
RA4/T0CKI/C1OUT /
VN
RA4
T0CKI
C1OUT
VN
RA5/AN4/SS /
HLVDIN/C2OUT
RA5
AN4
SS
HLVDIN
C2OUT
RA6
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com nveis CMOS I = Input
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
3: Estes pinos no so Conecte a menos que o bit de configurao ICPRT est definido. Para NC / ICPORTS, o pino no
Ligao a menos ICPRT est definido eo bit configurao de depurao est desmarcada.
v 2009 Microchip Technology Inc. DS39632E-pgina 17
PIC18F2455/2550/4455/4550
TABELA 1-3:
Nome do pino
PIC18F4455/4550 DESCRIES pinagem I / O (Continuao)
Nmero Pin
PDIP
Pin tampo
QFN TQFP Tipo Tipo
Descrio
PORTB uma porta de I / O bidirecional. PORTB podem ser
software
programado para internos fracos pull-ups em todas as entradas.
RB0/AN12/INT0 /
FLT0/SDI/SDA
RB0
AN12
INT0
FLT0
SDI
SDA
RB1/AN10/INT1/SCK /
SCL
RB1
AN10
INT1
SCK
SCL
RB2/AN8/INT2/VMO
RB2
AN8
INT2
VMO
RB3/AN9/CCP2/VPO
RB3
AN9
CCP2(1)
VPO
RB4/AN11/KBI0/CSSPP
RB4
AN11
KBI0
CSSPP
RB5/KBI1/PGM
RB5
KBI1
PGM
RB6/KBI2/PGC
RB6
KBI2
PGC
RB7/KBI3/PGD
RB7
KBI3
PGD
33 9 8
I / O
Eu
Eu
Eu
Eu
I / O
TTL
Anlogo
ST
ST
ST
ST
Digital I / O.
A entrada analgica 12.
0 interrupo externa.
Entrada de falha maior PWM (ECCP1 mdulo).
Dados SPI dentro
I2C dados de I / O.
34 10 9
I / O
Eu
Eu
I / O
I / O
TTL
Anlogo
ST
ST
ST
TTL
Anlogo
ST
-
TTL
Anlogo
ST
-
TTL
Anlogo
TTL
-
TTL
TTL
ST
TTL
TTL
ST
TTL
TTL
ST
Digital I / O.
A entrada analgica 10.
Interrupo externa 1.
Synchronous entrada de clock serial / sada para o modo SPI.
Synchronous entrada de clock serial / sada para o modo I2C.
Digital I / O.
A entrada analgica 8.
Interrupo externa 2.
Sada externa USB transceiver VMO.
Digital I / O.
A entrada analgica 9.
Capturar dois input / Comparar 2 output/PWM2 sada.
Sada externa USB transceiver VPO.
Digital I / O.
A entrada analgica 11.
Pino de interrupo-on-mudana.
SPP sada de controle select chip.
Digital I / O.
Pino de interrupo-on-mudana.
ICSP Low-Voltage Programao permitir pin.
Digital I / O.
Pino de interrupo-on-mudana.
In-Circuit Debugger e ICSP pino do relgio de programao.
Digital I / O.
Pino de interrupo-on-mudana.
In-Circuit Debugger e pino de dados de programao ICSP.
35 11 10
I / O
Eu
Eu
O
36 12 11
I / O
Eu
I / O
O
37 14 14
I / O
Eu
Eu
O
38 15 15
I / O
Eu
I / O
39 16 16
I / O
Eu
I / O
40 17 17
I / O
Eu
I / O
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com nveis CMOS I = Input
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
3: Estes pinos no so Conecte a menos que o bit de configurao ICPRT est definido. Para NC / ICPORTS, o pino no
Ligao a menos ICPRT est definido eo bit configurao de depurao est desmarcada.
DS39632E-pgina 18 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 1-3:
Nome do pino
PIC18F4455/4550 DESCRIES pinagem I / O (Continuao)
Nmero Pin
PDIP
15
Pin tampo
QFN TQFP Tipo Tipo
34 32
I / O
O
Eu
16 35 35
I / O
Eu
I / O
O
17 36 36
I / O
I / O
O
23 42 42
Eu
I / O
Eu
24 43 43
Eu
I / O
Eu
25 44 44
I / O
O
I / O
26 1 1
I / O
Eu
I / O
O
ST
ST
ST
-
Digital I / O.
EUSART assncrona receber.
EUSART dados sncronos (ver TX / CK).
Dados SPI fora.
ST
-
ST
Digital I / O.
EUSART assncrona transmitir.
EUSART sncrona relgio (ver RX / DT).
TTL
-
TTL
Entrada digital.
Diferencial USB alm de linha (entrada / sada).
VP entrada USB externo transceptor.
TTL
-
TTL
Entrada digital.
Diferencial USB menos de linha (entrada / sada).
VM entrada USB externo transceptor.
ST
ST
TTL
Digital I / O.
Captura de um input / Compare 1 output/PWM1 sada.
Sada PWM maior CCP1, canal A.
ST
CMOS
ST
-
Digital I / O.
Timer1 entrada do oscilador.
Capturar dois input / Comparar 2 output/PWM2 sada.
Sada externa USB transceiver OE.
ST
-
ST
Digital I / O.
Timer1 sada do oscilador.
Timer1/Timer3 entrada de clock externo.
Descrio
PORTC uma porta de I / O bidirecional.
RC0/T1OSO/T13CKI
RC0
T1OSO
T13CKI
RC1/T1OSI/CCP2 /
UOE
RC1
T1OSI
CCP2(2)
UOE
RC2/CCP1/P1A
RC2
CCP1
P1A
RC4/D-/VM
RC4
D-
VM
RC5 / D + / VP
RC5
D +
VP
RC6/TX/CK
RC6
TX
CK
RC7/RX/DT/SDO
RC7
RX
DT
SDO
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com nveis CMOS I = Input
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
3: Estes pinos no so Conecte a menos que o bit de configurao ICPRT est definido. Para NC / ICPORTS, o pino no
Ligao a menos ICPRT est definido eo bit configurao de depurao est desmarcada.
v 2009 Microchip Technology Inc. DS39632E-pgina 19
PIC18F2455/2550/4455/4550
TABELA 1-3:
Nome do pino
PIC18F4455/4550 DESCRIES pinagem I / O (Continuao)
Nmero Pin
PDIP
Pin tampo
QFN TQFP Tipo Tipo
Descrio
PORTD uma porta bidirecional I / O ou Transmisso
Porta Paralela (SPP). Estes pinos tm buffers de entrada TTL
quando o mdulo SPP est habilitado.
RD0/SPP0
RD0
SPP0
RD1/SPP1
RD1
SPP1
RD2/SPP2
RD2
SPP2
RD3/SPP3
RD3
SPP3
RD4/SPP4
RD4
SPP4
RD5/SPP5/P1B
RD5
SPP5
P1B
RD6/SPP6/P1C
RD6
SPP6
P1C
RD7/SPP7/P1D
RD7
SPP7
P1D
19 38 38
I / O
I / O
ST
TTL
ST
TTL
ST
TTL
ST
TTL
ST
TTL
ST
TTL
-
ST
TTL
-
ST
TTL
-
Digital I / O.
Transmisso de dados da porta paralela.
Digital I / O.
Transmisso de dados da porta paralela.
Digital I / O.
Transmisso de dados da porta paralela.
Digital I / O.
Transmisso de dados da porta paralela.
Digital I / O.
Transmisso de dados da porta paralela.
Digital I / O.
Transmisso de dados da porta paralela.
Sada PWM maior CCP1, canal B.
Digital I / O.
Transmisso de dados da porta paralela.
Sada PWM maior CCP1, canal C.
Digital I / O.
Transmisso de dados da porta paralela.
Sada PWM maior CCP1, canal D.
20 39 39
I / O
I / O
21 40 40
I / O
I / O
22 41 41
I / O
I / O
27 2 2
I / O
I / O
28 3 3
I / O
I / O
O
29 4 4
I / O
I / O
O
30 5 5
I / O
I / O
O
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com nveis CMOS I = Input
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
3: Estes pinos no so Conecte a menos que o bit de configurao ICPRT est definido. Para NC / ICPORTS, o pino no
Ligao a menos ICPRT est definido eo bit configurao de depurao est desmarcada.
DS39632E-pgina 20 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 1-3:
Nome do pino
PIC18F4455/4550 DESCRIES pinagem I / O (Continuao)
Nmero Pin
PDIP
8
Pin tampo
QFN TQFP Tipo Tipo
25 25
I / O
Eu
O
9 26 26
I / O
Eu
O
10 27 27
I / O
Eu
O
- - -
6, 29
-
P
P
P
12, 31 6, 30,
31
ST
Anlogo
-
-
-
-
-
Digital I / O.
A entrada analgica 7.
SPP sada ativar a sada.
Veja MCLR/VPP/RE3 pin.
Referncia de terra para a lgica e I / O dos pinos.
Alimentao positiva para a lgica e I / O dos
pinos.
Interno USB 3.3V sada do regulador de tenso, positivo
fornecer para o transceptor USB.
No Connect ou dedicado CID / ICSP relgio porto.
In-Circuit Debugger relgio.
ICSP programao do relgio.
No Connect ou dedicado CID / ICSP relgio porto.
Dados In-Circuit Debugger.
Dados de programao ICSP.
No Connect ou dedicado CID / ICSP porta Reset.
Limpar entrada Master (Reset).
Programao de tenso de entrada.
Sem emulao de dispositivo Connect ou 28 pinos.
Ativar emulao de dispositivo de 28 pinos quando conectado
a VSS.
No Connect.
ST
Anlogo
-
Digital I / O.
A entrada analgica 6.
SPP relgio sada 2.
ST
Anlogo
-
Digital I / O.
A entrada analgica 5.
SPP relgio uma sada.
Descrio
PORTE uma porta de I / O bidirecional.
RE0/AN5/CK1SPP
RE0
AN5
CK1SPP
RE1/AN6/CK2SPP
RE1
AN6
CK2SPP
RE2/AN7/OESPP
RE2
AN7
OESPP
RE3
VSS
VDD
VUSB
NC / ICCK / ICPGC(3)
ICCK
ICPGC
NC / ICDT / ICPGD(3)
ICDT
ICPGD
NC / ICRST / ICVPP(3)
ICRST
ICVPP
NC / ICPORTS(3)
ICPORTS
NC
11, 32 7, 8, 7, 28
28, 29
18
-
37
-
37
12
I / O
I / O
- - 13
I / O
I / O
- - 33
Eu
P
- - 34 P
ST
ST
ST
ST
-
-
-
- 13 - - -
Legenda: = TTL compatvel inputCMOS = entrada compatvel CMOS TTL ou sada
ST = entrada Schmitt Trigger com nveis CMOS I = Input
O = OutputP = Potncia
Nota 1: Atribuio alternativo para CCP2 quando CCP2MX bit configurao est desmarcada.
2: Atribuio padro para CCP2 quando CCP2MX bit de configurao est definido.
3: Estes pinos no so Conecte a menos que o bit de configurao ICPRT est definido. Para NC / ICPORTS, o pino no
Ligao a menos ICPRT est definido eo bit configurao de depurao est desmarcada.
v 2009 Microchip Technology Inc. DS39632E-pgina 21
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E-pgina 22 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
2.0
2.1
OSCILADOR
CONFIGURATIONS
Viso global
2.2 Tipos de oscilador
Dispositivos na famlia PIC18F2455/2550/4455/4550
incorporar um oscilador e microcontrolador diferente
sistema de relgio de dispositivos PIC18F anteriores. A adi-
o do mdulo USB, com as suas necessidades especficas
para uma fonte de clock estvel, tornam necessrio fornecer
uma fonte de clock separado, que compatvel com ambos
Especificaes USB de baixa velocidade e de velocidade mxima.
Para atender a essas exigncias, PIC18F2455 /
2550/4455/4550 dispositivos incluem um novo ramo do relgio para
fornecer um relgio de 48 MHz para operao USB full-speed.
Uma vez que expulso do relgio fonte primria, um
sistema adicional de prescalers e postscalers tem
foi adicionada para acomodar uma vasta gama de oscilador
freqncias. Uma viso geral da estrutura do oscilador
mostrado na Figura 2-1.
Outras caractersticas de osciladores utilizados na PIC18 reforada
microcontroladores, como o bloco de oscilador interno
e relgio de comutao, permanecem os mesmos. Eles so
discutido mais adiante neste captulo.
PIC18F2455/2550/4455/4550 dispositivos podem ser operados
em doze modos distintos de oscilador. Em contraste com pr-
rior PIC18 maior microcontroladores, quatro deles
modos envolvem a utilizao de dois tipos de oscilador de uma vez.
Os usurios podem programar o FOSC3: FOSC0 Configurao
bits para selecionar um desses modos:
XTCrystal / ressonador
HSHigh velocidade cristal / ressonador
HSPLL alta velocidade cristal / ressonador
com PLL ativado
4. Relgio ECExternal com FOSC / 4 Sada
5. Relgio ECIOExternal com I / O em RA6
6. ECPLL relgio externo com PLL ativado
e FOSC / 4 Sada em RA6
7. ECPIO relgio externo com PLL habilitado,
I / O em RA6
8. INTHS oscilador interno usado como
Microcontrolador Clock Source, HS
Oscilador usado como USB Clock Source
9. Intio oscilador interno usado como
Microcontrolador Clock Source, CE
Oscilador usado como USB Fonte de relgio,
Digital I / O em RA6
10. INTCKO oscilador interno usado como
Microcontrolador Clock Source, CE
Oscilador usado como USB Fonte de relgio,
FOSC / 4 Sada em RA6
1.
2.
3.
2.1.1 CONTROLE DE OSCILADOR
O funcionamento do oscilador em PIC18F2455/2550 /
4455/4550 dispositivos controlada atravs de duas configura-
registros de rao e dois registros de controle. Configurao
registradores, CONFIG1L e CONFIG1H, selecione o
modo de oscilador e opes prescaler / postscaler USB.
Como os bits de configurao, estes so definidos quando o
dispositivo est
programado e deixado em que a configurao at o
dispositivo reprogramado.
O registo OSCCON (Register 2-2) seleciona a atividade
Modo de relgio, que utilizado principalmente no controle de
relgio
mudana nos modos de potncia gerenciados. A sua utilizao est
discutido 2.4.1 "Control Oscillator
Registrar-se ".
O registo OSCTUNE (Register 2-1) usado para aparar
a fonte de frequncia INTRC, bem como a escolha
fonte de clock de baixa freqncia que impulsiona vrios especial
caractersticas. A sua utilizao descrito em Seo 2.2.5.2
"OSCTUNE Register".
2.2.1 MODOS oscilador e
OPERAO USB
Devido aos requisitos nicos do mdulo USB,
uma abordagem diferente para a operao do relgio necessrio.
Em
dispositivos anteriores PIC , todos os principais e relgios
perifricos
foram conduzidos por uma nica fonte de oscilador; usuais
fontes foram primrio, secundrio ou o interno oscilao
tor. Com PIC18F2455/2550/4455/4550 dispositivos, o pri-
mary oscilador torna-se parte do mdulo USB e
no pode ser associado a qualquer outra fonte de relgio. Assim,
o mdulo USB deve ser cronometrado do relgio primrio
origem, no entanto, o ncleo microcontrolador e outros
perifricos podem ser cronometrado separadamente do
osciladores secundrias ou internas como antes.
Devido aos requisitos de tempo impostos pela USB
necessrio um relgio interno de um ou outro de 6 MHz ou 48
MHz.
enquanto o mdulo USB est ativada. Felizmente, o
microcontrolador e outros perifricos, no so necessrios
para executar a esta velocidade de relgio quando se utiliza o
primrio
oscilador. Existem diversas opes para atingir o
Mdulo exigncia relgio USB e ainda fornecer fle-
dade para cronometrar o resto do dispositivo a partir do primrio
fonte de oscilador. Estes so detalhados na Seo 2.3
"Definies do oscilador para USB".
v 2009 Microchip Technology Inc. DS39632E-pgina 23
PIC18F2455/2550/4455/4550
Figura 2-1: PIC18F2455/2550/4455/4550 CLOCK ESQUEMA
PIC18F2455/2550/4455/4550
PLLDIV
| 12
| 10
PLL Prescaler
|6
|5
|4
|3
|2
|1
111
110
101
MUX
100
011
010
001
000
HSPLL, ECPLL,
XTPLL, ECPIO
CPUDIV
PLL postscaler
|6
|4
|3
|2
11
10
01
00
1
0
CPU
IDLEN
MUX
Perifricos
|4
0
FSEN
1
(4 MHz somente entrada)
96 MHz
PLL
|2
USBDIV
0
1
USB Clock Source
Oscilador primrio
OSC2
Dormir
OSC1
USB
Perifrico
CPUDIV
Postscaler
oscilador
|4
|3
|2
|1
11
10
01
00
XT, HS, CE, ECIO
Primrio
Relgio
FOSC3: FOSC0
T1OSC
Oscilador secundrio
T1OSO
T1OSCEN
Permitir
Oscilador
OSCCON <6:04>
8 MHz
INTOSC
postscaler
Interno
Oscilador
Bloquear
8 MHz
Fonte
INTRC
Fonte
4 MHz
2 MHz
1 MHz
500 kHz
250 kHz
125 kHz
111
110
101
MUX 100
011
010
001
Oscilador interno
T1OSI
Relgio
Controle
FOSC3: FOSC0 OSCCON <1:00>
8 MHz
(INTOSC)
31 kHz (INTRC)
131 kHz
000
0
OSCTUNE <7>
Opo de fonte de clock
para outros mdulos
WDT, PWRT, FSCM
e duas velocidades Start-up
DS39632E-pgina 24 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
2.2.2 Oscilador de cristal / cermica
RESONATORS
TABELA 2-1: CAPACITOR PARA SELEO
Ressonadores cermicos
Freq
4.0 MHz
8.0 MHz
16,0 MHz
OSC1
33 pF
27 pF
22 pF
OSC2
33 pF
27 pF
22 pF
No HS, HSPLL, XT e modos de oscilador XTPLL, um
cristal ou ressonador cermico ligado ao OSC1
e OSC2 pinos para estabelecer oscilao. Figura 2-2
mostra as conexes de pinos.
O design do oscilador requer o uso de um corte paralelo
cristal.
Nota: Utilizao de um cristal de corte srie pode dar uma
fre-
cia de o fabricante de cristal
especificaes.
Os valores dos capacitores tpicos usados:
Modo
XT
HS
Os valores dos capacitores so apenas para orientao design.
Estes condensadores foram testados com os ressonadores
listados abaixo para bsico start-up e operao. Estes
Os valores no so otimizados.
Diferentes valores de capacitores pode ser obrigado a produzir
operao oscilador aceitvel. O usurio deve testar
o desempenho do oscilador sobre o esperado
Faixa de VDD e temperatura para a aplicao.
Veja as notas de acordo com o quadro 2-2 para obter
informao.
Ressonadores usado:
4.0 MHz
8.0 MHz
16,0 MHz
Ao utilizar ressonadores de cermica com freqncias
acima de 3,5 MHz, modo HS recomendado em XT
modo. Modo SH podem ser utilizados em qualquer VDD para os
quais
o controlador avaliado. Se HS selecionado, o ganho do
oscilador pode ultrapassagem do ressonador. Portanto, um
resistncia em srie deve ser colocado entre a OSC2
pin e do ressonador. Como um bom ponto de partida, o
valor recomendado de RS 330 . .
Figura 2-2: CRYSTAL / cermica
OPERAO RESONATOR
(XT, HS OU HSPLL
CONFIGURAO)
OSC1
A
Interno
Lgica
Dormir
C1(1)
XTAL
RS(2)
C2(1)
OSC2
RF(3)
PIC18FXXXX
Nota 1: Ver Quadro 2-1 e Quadro 2-2 para os valores iniciais de
C1 e C2.
2: A resistncia em srie (RS) pode ser necessria para a AT
tira cristais de corte.
3: RF varia de acordo com o modo do oscilador escolhida.
v 2009 Microchip Technology Inc. DS39632E-pgina 25
PIC18F2455/2550/4455/4550
TABELA 2-2: CAPACITOR PARA SELEO
Oscilador de cristal
Cristal
Freq
4 MHz
4 MHz
8 MHz
20 MHz
Valores tpicos de capacitores
Testado:
C1
27 pF
27 pF
22 pF
15 pF
C2
27 pF
27 pF
22 pF
15 pF
Relgio de
Ext. Sistema
Aberto
Figura 2-3: EXTERNO entrada de clock
OPERAO (HS OSC
CONFIGURAO)
OSC1
Osc Tipo
XT
HS
PIC18FXXXX
OSC2
(Modo HS)
2.2.3 EXTERNO entrada de clock
Os valores dos capacitores so apenas para orientao design.
Estes condensadores foram testados com os cristais referidos
abaixo bsica start-up e operao. Estes valores
no so otimizados.
Diferentes valores de capacitores pode ser obrigado a produzir
operao oscilador aceitvel. O usurio deve testar
o desempenho do oscilador sobre o esperado
Faixa de VDD e temperatura para a aplicao.
Veja as notas que seguem esta tabela para o adicional
informao.
Cristais usado:
4 MHz
8 MHz
20 MHz
Nota 1: Capacitncia maior aumenta a estabilidade
do oscilador, mas tambm aumenta o
tempo de arranque.
2: Quando estiver operando abaixo de 3V VDD, ou
quando
utilizando certos ressonadores cermicos em qualquer
tenso, pode ser necessrio usar o
Modo HS ou mudar para um oscilador de cristal.
3: Uma vez que cada ressonador / cristal tem o seu
prprio
caractersticas, o usurio deve consultar
o fabricante ressonador / cristal para
appropriatevaluesofexternal
componentes.
4: Rs pode ser necessria para evitar distorcer
cristais com baixo nvel de especificao da unidade.
5: Sempre verificar o desempenho do oscilador mais
VDD e o intervalo de temperatura que
esperado para a aplicao.
Um postscaler interna permite aos usurios selecionar um relgio
frequncia diferente do que a do cristal ou ressonador.
Diviso de frequncia determinada pelo CPUDIV
Bits de configurao. Os usurios podem selecionar uma freqncia
de clock
da frequncia do oscilador, ou 1/2, 1/3 ou 1/4 da
freqncia.
Um relgio externo podem tambm ser utilizados quando o micro-
controlador est no modo oscilador HS. Neste caso, o
OSC2/CLKO pino deixada em aberto (Figura 2-3).
Os modos de oscilador CE, ECIO, ECPLL e ECPIO
requerem uma fonte de relgio externo a ser ligado ao
Pin OSC1. No h tempo start-up oscilador necessrio
depois de um Power-on Reset ou depois de uma sada de sono
modo.
Na CE e os modos de oscilador ECPLL, o oscilador
frequncia dividida por 4 est disponvel no pino OSC2.
Este sinal pode ser utilizado para fins de ensaio ou
sincronizar outra lgica. A Figura 2-4 mostra o pino
conexes para o modo de oscilador CE.
FIGURA 2-4: Relgio externo
Operao de entrada
(CE E ECPLL
CONFIGURAO)
OSC1/CLKI
Relgio de
Ext. Sistema
FOSC / 4
PIC18FXXXX
OSC2/CLKO
Os modos de oscilador ECIO e ECPIO funcionar como o
CE e modos ECPLL, exceto que o pino OSC2
torna-se um objetivo geral pino I / O adicional. O I / O
pin torna bit 6 da PORTA (RA6). Figura 2-5 mostra
as conexes de pinos para o modo de oscilador ECIO.
FIGURA 2-5: Relgio externo
Operao de entrada
(ECIO E ECPIO
CONFIGURAO)
OSC1/CLKI
Relgio de
Ext. Sistema
RA6
PIC18FXXXX
I / O (OSC2)
O postscaler interna para reduzir a freqncia de clock em
XT e modos SH tambm est disponvel em CE e ECIO
modos.
DS39632E-pgina 26 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
2.2.4 PLL multiplicador de frequncia 2.2.5 INTERNO DO BLOCO OSCILADOR
PIC18F2455/2550/4255/4550 dispositivos incluem uma Fase
Circuito circuito (PLL) bloqueado. Isto fornecido especificamente
para aplicaes USB com osciladores e de velocidade mais baixos
tambm pode ser usado como uma fonte de relgio do
microcontrolador.
O PLL habilitado em HSPLL, XTPLL, ECPLL e
Modos de oscilador ECPIO. Ele projetado para produzir um
fixo de 96 MHz relgio de referncia a partir de uma entrada MHz
fixo 4.
A sada pode ser ento dividido e utilizado tanto para o
USB eo clock do ncleo microcontrolador. Porque o
PLL tem uma frequncia de entrada fixa e de sada, existem
oito opes prescaling para coincidir com a entrada do oscilador
a frequncia do PLL.
Tambm existe uma opo postscaler separado para derivar
o relgio a partir do microcontrolador de PLL. Isto permite que o
Perifrico USB e um microcontrolador para usar a mesma
entrada do oscilador e ainda operam no relgio diferente
velocidades. Em contraste com a postscaler para XT, HS e CE
modos, as opes disponveis so de 1/2, 1/3, 1/4 e 1/6
da sada do PLL.
Os modos HSPLL, ECPLL ECPIO e fazer uso de
o modo de oscilador HS para freqncias de at 48 MHz.
O divisor divide a entrada do oscilador por at 12 a
produzir a unidade de 4 MHz para o PLL. O modo XTPLL
s pode usar uma frequncia de entrada de 4 MHz que impulsiona
o PLL directamente.
Os dispositivos incluem PIC18F2455/2550/4455/4550
bloco interno oscilador que gera dois diferentes
sinais de relgio, ou pode ser usado como o microcontrolador
fonte de relgio. Se o perifrico USB no for utilizado, o
oscilador interno pode eliminar a necessidade de externa
circuitos osciladores nas OSC1 e / ou pinos OSC2.
A sada principal (INTOSC) uma fonte de clock de 8 MHz
que pode ser usado para conduzir directamente o relgio do
dispositivo. Ele
Tambm conduz a postscaler INTOSC que pode proporcionar uma
faixa de freqncias de clock de 31 kHz a 4 MHz. O
INTOSC sada ativada quando a freqncia de clock
a partir de 125 kHz a 8 MHz selecionado.
A outra fonte o oscilador de relgio interno RC
(INTRC), que fornece uma sada nominal de 31 kHz.
INTRC est habilitado, se for selecionado como o relgio do
dispositivo
fonte, mas tambm ativado automaticamente quando qualquer um
dos
So ativado:




Power-up timer
Fail-safe Monitor de Relgio
Watchdog Timer
Duas Velocidades Start-up
Estas caractersticas so discutidas em maior detalhe nas
Seo 25,0 "Caractersticas especiais da CPU".
A freqncia de clock source (INTOSC direta, INTRC
direta ou INTOSC postscaler) selecionado, configurando
os bits IRCF do registo OSCCON (pgina 33).
Figura 2-6: PLL DIAGRAMA DE BLOCO
(MODE HS)
2.2.5.1 Modos de oscilador interno
HS / EC / ECIO / XT oscilador Ativar
PLL Ativar
(A partir de CONFIG1H Register)
OSC2
Oscilador
e
OSC1
Prescaler
FIN
FOUT
Fase
Comparador
Quando o oscilador interno utilizado como o micro-
fonte de relgio do controlador, um do outro oscilador
modos (relgio externo ou cristal externo / ressonador)
devem ser utilizados como fonte de relgio USB. A escolha de uma
a fonte do relgio USB for determinado pelo nomeadamente
Modo oscilador interno.
Existem quatro modos distintos disponveis:
1.
2.
3.
MUX
SYSCLK
Lao
Filtre
| 2 4 VCO
4.
INTHS modo: O relgio USB fornecida pela
oscilador no modo HS.
INTXT modo: O relgio USB fornecida pela
oscilador em modo XT.
INTCKO modo: O relgio USB fornecida por um
entrada do relgio externo OSC1/CLKI; OSC2 o /
CLKO pin sadas FOSC / 4.
Modo intio: O relgio USB fornecida por um
entrada do relgio externo OSC1/CLKI; OSC2 o /
CLKO pino funciona como um I / O (RA6) digital.
Desses quatro modos, s o modo de intio libera uma
pin adicional (OSC2/CLKO/RA6) para a porta uso de E / S.
v 2009 Microchip Technology Inc. DS39632E-pgina 27
PIC18F2455/2550/4455/4550
2.2.5.2 OSCTUNE Registrar 2.2.5.3
A sada do oscilador interno foi calibrado
na fbrica, mas pode ser ajustada no utilizador aplica-
o. Isso feito por escrito para o registro OSCTUNE
(Registrar 2-1). A sensibilidade do ajuste constante
toda a faixa de afinao.
O relgio INTOSC ir estabilizar dentro de 1 ms. Cdigo exe-
cution continua durante este turno. No h nenhuma indicao
que ocorreu a mudana.
O registo OSCTUNE tambm contm o bit INTSRC.
O bit INTSRC permite aos usurios selecionar quais interna
oscilador fornece a fonte de relgio quando a 31 kHz
opo de freqncia selecionada. Isso abordado em maior
detalhe na 2.4.1 "Mdulo de Controle Register".
Interno oscilador de freqncia de sada
e Deriva
O bloco oscilador interno calibrado na fbrica
para produzir uma frequncia de sada INTOSC de 8,0 MHz.
No entanto, esta freqncia pode ser movimentado como VDD ou
tempe-
mudanas tura, que podem afetar a operao do controlador
numa variedade de maneiras.
A baixa freqncia INTRC oscilador opera indepen-
dentemente da fonte INTOSC. Quaisquer mudanas em INTOSC
entre a tenso e a temperatura no so necessariamente
refletido por mudanas na INTRC e vice-versa.
CADASTRE-SE 2-1:
R/W-0
INTSRC
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
OSCTUNE: TUNING OSCILADOR REGISTRAR
U-0
-
U-0
-
R/W-0
TUN4
R/W-0
TUN3
R/W-0
Tun2
R/W-0
Tun1
R/W-0
Tun0
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
INTSRC: Interno oscilador de baixa frequncia de seleco de fonte bit
1= Dispositivo relgio 31,25 kHz derivado de 8 MHz fonte INTOSC (diviso por 256 enabled)
0= 31 kHz dispositivo de relgio derivado diretamente do INTRC oscilador interno
Unimplemented: Leia como '0 '
TUN4: tun0: Frequncia pedaos de Ajuste
01111 = Freqncia mxima


00001
00000 = Freqncia Center. Mdulo oscilador est funcionando na freqncia calibrada.
11111


10000 = Freqncia mnima
bit 6-5
bit 4-0
DS39632E-pgina 28 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
2.2.5.4 Compensando INTOSC Deriva
possvel ajustar a frequncia por INTOSC
modificando o valor no registo OSCTUNE. Isto tem
nenhum efeito sobre a frequncia de relgio fonte INTRC.
Ajustando a fonte INTOSC exige saber quando
fazer o ajuste, em que direo deve ser
feita e, em alguns casos, como uma grande mudana
necessrio. Quando se utiliza o EUSART, por exemplo, um
ajuste pode ser necessrio quando se comea a gerar
enquadrando erros ou recebe os dados com erros, enquanto em
Modo assncrono. Erros de enquadramento indicam que a
frequncia de relgio do dispositivo demasiado elevado, para
ajustar para este,
diminuir o valor na OSCTUNE para reduzir o relgio
freqncia. Por outro lado, erros nos dados podem suge-
rem que a velocidade do clock muito baixo, para compensar,
incrementar OSCTUNE para aumentar a freqncia de clock.
Tambm possvel verificar a velocidade do relgio do dispositivo
contra
um relgio de referncia. Podem ser utilizados dois temporizadores:
um temporizador
cronometrado pelo relgio perifrica, enquanto que a outra est
temporizados pela fonte de referncia fixo, tal como o
Timer1 oscilador. Ambos os timers so apagadas, mas o timer
temporizados pela referncia gera interrupes. Quando
ocorre uma interrupo, o temporizador com clock internamente
lido
e ambos os temporizadores so apagadas. Se o clock internamente
valor do temporizador for maior do que o esperado, o interno
bloco oscilador est correndo muito rpido. Para ajustar para isso,
diminuir o registo OSCTUNE.
Finalmente, um mdulo CCP pode usar Timer1 free-running (ou
Timer3), cronometrado pelo bloco interno e um oscilador
evento externo com um perodo conhecido (ou seja, a energia AC
freqncia). O tempo do primeiro evento capturado no
CCPRxH: CCPRxL registra e est registrado para uso
mais tarde. Quando o segundo evento provoca uma captura, o
tempo do primeiro evento subtrado a partir do momento da
segundo evento. Uma vez que o perodo do evento externo
conhecida, a diferena de tempo entre os eventos podem ser
calculado.
Se o tempo medido muito maior do que a cal-
lated tempo, o bloco oscilador interno est funcionando muito
rpido, para compensar, diminuir o registo OSCTUNE.
Se o tempo medido muito menor do que a calculada
tempo, o bloco oscilador interno est muito lento, para
compensar, incrementar o registo OSCTUNE.
v 2009 Microchip Technology Inc. DS39632E-pgina 29
PIC18F2455/2550/4455/4550
2.3 Configuraes de oscilador para USB
Quando estes dispositivos so usados para a conectividade USB,
que deve ter um 6 MHz ou 48 MHz de clock para
Funcionamento USB, dependendo se a baixa velocidade ou
Modo Full-Speed est sendo usado. Isso pode exigir algum
premeditao na seleo de uma freqncia de oscilador e
a programao do dispositivo.
A ampla gama de configuraes possveis do oscilador
compatvel com o funcionamento USB mostrado na Tabela 2-3.
activo e a fonte de relgio do controlador um dos
modos de oscilador primrio (XT, HS ou CE, com ou sem
o PLL).
Esta restrio no se aplica se o microcontrolador
fonte de relgio o oscilador secundrio ou interno
bloco oscilador.
2.3.2 FUNCIONAMENTO USB DIFERENTE E
RELGIOS microcontrolador
2.3.1 Operao de baixa velocidade
O relgio para o modo USB de baixa velocidade derivado do
cadeia oscilador primrio e no diretamente do PLL. Ele
dividido por 4 MHz para produzir o relgio real 6.
Devido a isso, o microcontrolador pode usar apenas um
frequncia de relgio de 24 MHz quando o mdulo USB
O mdulo USB, em qualquer modo, pode ser executado asynchro-
nously em relao ao ncleo do microcontrolador e
outros perifricos. Isso significa que os aplicativos podem usar
o oscilador principal para o relgio USB enquanto o micro-
controlador executado a partir de uma fonte de clock separado a
um menor
velocidade. Se for necessrio para executar o aplicativo inteiro
a partir de uma nica fonte de clock de operao, full-speed
proporciona uma maior seleo de relgio microcontrolador
freqncias.
TABELA 2-3: OSCILLATOR opes de configurao para a operao USB
PLL Diviso
(PLLDIV2: PLLDIV0)
N / D(1)
Modo Relgio
(FOSC3: FOSC0)
CE, ECIO
MCU Diviso Relgio
(CPUDIV1: CPUDIV0)
Nenhum (00)
| 2 (01)
| 3 (10)
| 4 (11)
Microcontrolador
Frequncia
48 MHz
24 MHz
16 MHz
12 MHz
48 MHz
24 MHz
16 MHz
12 MHz
48 MHz
32 MHz
24 MHz
16 MHz
40 MHz
20 MHz
13,33 MHz
10 MHz
48 MHz
32 MHz
24 MHz
16 MHz
24 MHz
12 MHz
8 MHz
6 MHz
48 MHz
32 MHz
24 MHz
16 MHz
Oscilador de entrada
Freqncia
48 MHz
48 MHz | 1 2 (111) CE, ECIO Nenhum (00)
| 2 (01)
| 3 (10)
| 4 (11)
ECPLL, ECPIO | 2 (00)
| 3 (01)
| 4 (10)
| 6 (11)
40 MHz | 1 0 (110) CE, ECIO Nenhum (00)
| 2 (01)
| 3 (10)
| 4 (11)
ECPLL, ECPIO | 2 (00)
| 3 (01)
| 4 (10)
| 6 (11)
24 MHz | 6 (101) HS, CE, ECIO Nenhum (00)
| 2 (01)
| 3 (10)
| 4 (11)
HSPLL, ECPLL, ECPIO | 2 (00)
| 3 (01)
| 4 (10)
| 6 (11)
Legenda:
Nota 1:
Todas as freqncias de clock, com exceo de 24 MHz, esto exclusivamente associado com a operao full-speed USB (USB relgio de
48 MHz).
Negrito utilizado para destacar as selees de clock que so compatveis com o funcionamento USB de baixa velocidade (clock do sistema
de 24 MHz,
Relgio USB de 6 MHz).
S vlido quando o bit de configurao USBDIV est desmarcada.
DS39632E-pgina 30 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 2-3: OSCILLATOR opes de configurao para a operao USB (continuao)
PLL Diviso
(PLLDIV2: PLLDIV0)
| 5 (100)
Modo Relgio
(FOSC3: FOSC0)
HS, CE, ECIO
MCU Diviso Relgio
(CPUDIV1: CPUDIV0)
Nenhum (00)
| 2 (01)
| 3 (10)
| 4 (11)
HSPLL, ECPLL, ECPIO | 2 (00)
| 3 (01)
| 4 (10)
| 6 (11)
16 MHz | 4 (011) HS, CE, ECIO Nenhum (00)
| 2 (01)
| 3 (10)
| 4 (11)
HSPLL, ECPLL, ECPIO | 2 (00)
| 3 (01)
| 4 (10)
| 6 (11)
12 MHz | 3 (010) HS, CE, ECIO Nenhum (00)
| 2 (01)
| 3 (10)
| 4 (11)
HSPLL, ECPLL, ECPIO | 2 (00)
| 3 (01)
| 4 (10)
| 6 (11)
8 MHz | 2 (001) HS, CE, ECIO Nenhum (00)
| 2 (01)
| 3 (10)
| 4 (11)
HSPLL, ECPLL, ECPIO | 2 (00)
| 3 (01)
| 4 (10)
| 6 (11)
4 MHz | 1 (000) XT, HS, CE, ECIO Nenhum (00)
| 2 (01)
| 3 (10)
| 4 (11)
HSPLL, ECPLL, XTPLL,
ECPIO
| 2 (00)
| 3 (01)
| 4 (10)
| 6 (11)
Legenda:
Microcontrolador
Frequncia
20 MHz
10 MHz
6,67 MHz
5 MHz
48 MHz
32 MHz
24 MHz
16 MHz
16 MHz
8 MHz
5,33 MHz
4 MHz
48 MHz
32 MHz
24 MHz
16 MHz
12 MHz
6 MHz
4 MHz
3 MHz
48 MHz
32 MHz
24 MHz
16 MHz
8 MHz
4 MHz
2,67 MHz
2 MHz
48 MHz
32 MHz
24 MHz
16 MHz
4 MHz
2 MHz
1,33 MHz
1 MHz
48 MHz
32 MHz
24 MHz
16 MHz
Oscilador de entrada
Freqncia
20 MHz
Nota 1:
Todas as freqncias de clock, com exceo de 24 MHz, esto exclusivamente associado com a operao full-speed USB (USB relgio de
48 MHz).
Negrito utilizado para destacar as selees de clock que so compatveis com o funcionamento USB de baixa velocidade (clock do sistema
de 24 MHz,
Relgio USB de 6 MHz).
S vlido quando o bit de configurao USBDIV est desmarcada.
v 2009 Microchip Technology Inc. DS39632E-pgina 31
PIC18F2455/2550/4455/4550
2.4 Fontes relgio e oscilador
Comutao
A freqncia de oscilao internos Seleccionar bits
IRCF2: IRCF0, selecione a sada do interno freqncia
bloco oscilador para conduzir o relgio do dispositivo. As opes so
a fonte INTRC, a fonte INTOSC (8 MHz) ou um
das frequncias derivadas do INTOSC postscaler
(31 kHz a 4 MHz). Se o bloco de oscilador interno
fornecendo o relgio do dispositivo, mudando os membros dessas
pedaos ter uma mudana imediata no mercado interno oscil-
sada de lator. Em Redefine dispositivo, a sada padro
freqncia do bloco oscilador interno fixado em 1 MHz.
Quando uma freqncia de 31 kHz de sada selecionado
(IRCF2: IRCF0 = 000), os usurios podem escolher qual inter-
oscilador nal atua como a fonte. Isto feito com a
Bit INTSRC no registo OSCTUNE (OSCTUNE <7>).
Definir este bit seleciona INTOSC como um relgio kHz 31,25
fonte, permitindo a sada de diviso por 256 da
INTOSC postscaler. Clearing INTSRC seleciona INTRC
(Nominalmente 31 kHz) como a fonte do relgio.
Esta opo permite aos usurios selecionar o sintonizvel e mais
INTOSC preciso como uma fonte de relgio, mantendo
economia de energia com uma velocidade muito baixa relgio.
Independentemente
da definio de INTSRC, INTRC permanece sempre
fonte de relgio para recursos como o temporizador de Watchdog
ea prova de falhas Monitor de Relgio.
Os USTOS, IOFS e pedaos T1RUN indicar qual relgio
fonte est fornecendo o relgio do dispositivo. Os USTOS
bit indica que o Oscillator Start-up timer (OST) tem
expirou eo relgio principal fornecer o dispositivo
relgio nos modos de relgio primrios. O bit indica IOFS
quando o bloco oscilador interno estabilizou e
fornecendo o relgio do dispositivo em modo relgio de RC. O
T1RUN bit (T1CON <6>) indica quando o Timer1 oscil-
lator est fornecendo o relgio do dispositivo no relgio secundrio
modos. Nos modos de potncia gerenciados, apenas um deles
trs bits ser definido a qualquer momento. Se nenhum destes bits
forem
definido, o INTRC est fornecendo o relgio ou o interno
bloco oscilador apenas comeou e ainda no estvel.
O bit IDLEN determina se o dispositivo entra em sono
um modo, ou um dos modos inactivo, quando o DORMIR
instruo executada.
O uso dos bits de controlo da bandeira e na OSCCON
registo discutida em mais detalhe no Seo 3.0
"Modos de gerenciamento de energia".
Nota 1: O oscilador Timer1 deve estar habilitado para
selecionar a fonte de relgio secundrio. O
Timer1 oscilador ativado, definindo o
T1OSCEN pouco no controle Timer1 regis-
ter (T1CON <3>). Se o oscilador Timer1
no habilitado, ento qualquer tentativa de selecionar um
fonte de relgio secundrio ir ser ignorado.
2: Recomenda-se que o Timer1
oscilador ser operacional e estvel antes
migrando para ele como a fonte de relgio, de outro
sbio, um longo atraso pode ocorrer enquanto
o Timer1 oscilador comea.
Como os dispositivos anteriores PIC18 avanados, o
PIC18F2455/2550/4455/4550 famlia inclui um recurso
que permite que a fonte de relgio do dispositivo para ser ligado a
partir de
o oscilador de um relgio alternativo, de baixa freqncia
fonte. Esses dispositivos oferecem duas relgio alternativo
fontes. Quando uma fonte de relgio alternativa estiver ativada,
os diversos modos de operao poder geridas so
disponvel.
Basicamente, existem trs fontes de relgio para estes
dispositivos:
osciladores primrios
osciladores Secundrio
bloco oscilador interno
O osciladores primrios incluem o cristal externo
e modos de ressonador, os modos do relgio externo e
o bloco oscilador interno. O modo especial
definido pela FOSC3: FOSC0 bits de configurao. O
detalhes destes modos so cobertos anteriormente neste
captulo.
O osciladores secundrias so as fontes externas
no ligado aos pinos OSC1 e OSC2. Estes
fontes podem continuar a funcionar mesmo depois do
controlador colocado em um modo de gerenciamento de energia.
PIC18F2455/2550/4455/4550 dispositivos oferecem o Timer1
oscilador como um oscilador secundrio. Este oscilador, em todos
modos de gesto de energia, muitas vezes a base de tempo para
funes como um relgio de tempo real (RTC). A maioria
muitas vezes, um relgio de cristal 32.768 kHz est conectado
entre o RC0/T1OSO/T13CKI e RC1/T1OSI /
UOE pinos. Como o XT e SH circuitos modo de oscilador,
carregamento condensadores esto tambm ligados a partir de cada
pino
cho. O oscilador Timer1 discutido em maior
detalhe na Seo 12.3 "Timer1 oscilador".
Para alm de ser uma fonte de relgio principal, o interno
bloco oscilador est disponvel como um poder de gesto
fonte de clock mode. A fonte INTRC tambm usado como
a fonte de relgio para vrias caractersticas especiais, tais como
o WDT e no-Safe Monitor de Relgio.
2.4.1 OSCILADOR registro de controle
O registo OSCCON (Register 2-2) controla vrios
aspectos da operao do relgio do dispositivo, tanto em
operao full-poder e nos modos power-gerenciados.
Relgio do Sistema Select bits, SCS1: SCS0, selecione o
fonte de relgio. As fontes de clock disponveis so
relgio primrio (definido pelo FOSC3: FOSC0 configura-
bits de rao), o relgio secundrio (Timer1 oscilador) e
o bloco oscilador interno. As mudanas fonte de relgio
imediatamente depois de um ou mais dos bits gravado,
aps um breve intervalo de transio do relgio. Os bits de SCS
so apagadas em todas as formas de Reset.
DS39632E-pgina 32 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
2.4.2 TRANSITIONS OSCILLATOR
PIC18F2455/2550/4455/4550 dispositivos contm circuitos
para evitar relgio "falhas" quando se alterna entre
fontes de relgio. Uma pequena pausa no relgio do dispositivo
ocorre
durante o interruptor de relgio. A durao desta pausa o
soma de dois ciclos da fonte de relgio velho e trs para
quatro ciclos da nova fonte de relgio. Esta frmula
assume que a nova fonte de relgio estvel.
Transies relgio so discutidos em maior detalhe em
Seo 3.1.2 "Insero de gerenciamento de energia Modes".
CADASTRE-SE 2-2:
R/W-0
IDLEN
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
OSCCON: registro de controle OSCILADOR
R/W-1
IRCF2
R/W-0
IRCF1
R/W-0
IRCF0
R(1)
USTOS
R-0
IOFS
R/W-0
SCS1
R/W-0
SCS0
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
IDLEN: Ocioso Habilitar bit
1= O dispositivo entra em modo de espera DORMIR instruo
0= O dispositivo entra em modo de suspenso DORMIR instruo
IRCF2: IRCF0: Internos Frequency Oscillator Selecionar pedaos
111 = 8 MHz (unidades INTOSC diretamente do relgio)
110 = 4 MHz
101 = 2 MHz
100 = 1 MHz(3)
011 = 500 kHz
010 = 250 kHz
001 = 125 kHz
000 = 31 kHz (a partir de qualquer um ou INTOSC/256 INTRC
directamente)(2)
USTOS: Oscillator Start-up Time-out bit Estado(1)
1= Oscillator Start-up timer tempo limite expirou; oscilador primrio est sendo executado
0= Oscillator Start-up Time-out timer estiver em execuo; oscilador primrio no est pronto
IOFS: INTOSC Frequency pouco estvel
1= Freqncia INTOSC estvel
0= Freqncia INTOSC no estvel
SCS1: SCS0: Sistema de relgio Selecionar
pedaos
1x = Oscilador interno
01 = Timer1 oscilador
00 = Oscilador primrio
Depende do estado do bit de configurao IESO.
Fonte selecionado pelo bit INTSRC (OSCTUNE <7>), veja o texto.
Freqncia de sada padro de INTOSC em Reset.
bit 6-4
bit 3
bit 2
bit 1-0
Nota 1:
2:
3:
v 2009 Microchip Technology Inc. DS39632E-pgina 33
PIC18F2455/2550/4455/4550
2,5 Efeitos de modos de gerenciamento de energia
sobre as diversas fontes de relgio
comando sobre o USB. Uma vez que o mdulo tem de sus-
dependia operao e transferido para um estado de baixa energia, o
microcontrolador pode ser colocado com segurana em modo de
suspenso.
Permitindo que qualquer recurso on-chip que ir operar durante
Sono vai aumentar o consumo de corrente durante o sono.
O INTRC necessrio para suportar a operao WDT. O
Timer1 oscilador pode estar operando para suportar uma
Real-Time Clock. Outras caractersticas que podem ser operarem
no necessitam de uma fonte de relgio do dispositivo (isto , MSSP
escravo
PSP, INTX pinos e outros). Perifricos que podem adicionar
consumo de corrente significativa so listados na
Seo 28.2 "DC Caractersticas: Power-Down e
Corrente de suprimento ".
Quando o modo de PRI_IDLE selecionado, o designado
oscilador primrio continua a funcionar sem interrupo.
Para todos os outros modos de potncia gerenciados, o oscilador
usando o pino OSC1 est desativado. A menos que o USB
mdulo ativado, o pino OSC1 (e OSC2 pin se
utilizada pelo oscilador) parar oscilante.
Nos modos de relgio secundrio (SEC_RUN e
SEC_IDLE), o oscilador est a funcionar e Timer1
proporcionando o relgio do dispositivo. O oscilador Timer1 pode
tambm executar em todos os modos de energia administradas, se
necessrio
relgio Timer1 ou Timer3.
Nos modos de oscilador interno (RC_RUN e RC_IDLE)
o bloco oscilador interno proporciona o relgio do dispositivo
fonte. A sada INTRC 31 kHz pode ser utilizado directamente
para fornecer o relgio e pode ser activado para suportar
vrias caractersticas especiais, independentemente do
modo de potncia de gesto (ver Artigo 25.2 "Watchdog
Timer (WDT) ", seo 25.3" Duas Velocidades Start-up "
e Seo 25,4 "Monitor Relgio prova de falhas" Para mais
informaes sobre WDT, prova de falhas Monitor de relgio e
Duas Velocidades Start-up). A sada INTOSC a 8 MHz
pode ser utilizada directamente para o relgio do dispositivo, ou
pode ser
dividido pelo postscaler. A sada INTOSC
desativado se o relgio fornecido diretamente do INTRC
sada.
Independentemente do modo de funcionamento ou ocioso
selecionado, o USB
fonte de relgio vai continuar a funcionar. Se o dispositivo estiver
operando a partir de um oscilador de cristal ou base de
ressonador,
oscilador que continuar ao relgio do mdulo USB.
O ncleo e todos os outros mdulos vai mudar para o novo
fonte de relgio.
Se o modo de suspenso selecionado, todas as fontes de relgio
so
parado. Dado que todos os transistores de comutao correntes
ter sido interrompido, o modo de suspenso atinge o menor
consumo de corrente do dispositivo (somente vazamento
correntes).
Modo de suspenso no deve nunca ser invocado, enquanto o USB
mdulo est a funcionar e ligado. A nica exceo
quando o dispositivo tiver sido emitida uma "suspenso"
2.6 Atrasos Power-up
Atrasos Power-up so controlados por dois timers para que nenhum
circuitos de reposio externa necessrio para a maioria das
aplicaes.
Os atrasos de assegurar que o dispositivo mantido em Redefinir
at
a fonte de alimentao do dispositivo estvel em condies
normais de circum-
posturas eo relgio primrio est funcionando e estvel.
Para obter informaes adicionais sobre os atrasos de inicializao,
veja
Seo 4.5 "Redefinir Timers dispositivo".
O primeiro temporizador o timer Power-up (PWRT), que
fornece um atraso fixo em power-up (parmetro 33,
Tabela 28-12). Ele ativado por compensao (= 0) o
PWRTEN bit de configurao.
O segundo o temporizador Temporizador Start-up oscilador
(OST), destina-se a manter o chip no Redefinir at o
oscilador de cristal estvel (XT e modos SH). O
OST faz isso contando 1.024 ciclos do oscilador
antes de permitir que o oscilador do relgio do dispositivo.
Quando o modo de oscilador HSPLL for selecionado, o
dispositivo mantido em Reset durante um adicional de 2 ms a
seguir
o HS modo OST atraso, de modo que o PLL pode bloquear a
freqncia de clock de entrada.
H um atraso de intervalo, TCSD (parmetro 38,
Tabela 28-12), a seguir POR, enquanto o controlador
torna-se pronto para executar instrues. Este atraso executado
concorrentemente com quaisquer outros atrasos. Este pode ser o
apenas atraso que ocorre quando qualquer um dos CE ou interna
modos de oscilador so utilizados como a fonte do relgio principal.
TABELA 2-4:
INTCKO
Intio
ECIO, ECPIO
CE
XT e HS
Nota:
OSC1 E OSC2 ESTADOS PIN no modo de inatividade
OSC1 Pin
Flutuante, puxado por relgio externo
Flutuante, puxado por relgio externo
Flutuante, puxado por relgio externo
Flutuante, puxado por relgio externo
Inversor de feedback desativado no repouso
nvel de tenso
OSC2 Pin
Na lgica baixa (relgio / 4 output)
Configurado como PORTA, bit 6
Configurado como PORTA, bit 6
Na lgica baixa (relgio / 4 output)
Inversor de feedback desativado no repouso
nvel de tenso
Modo oscilador
Veja a Tabela 4-2 na Seo 4.0 "Reset" para tempos de espera devido ao sono e MCLR Reset.
DS39632E-pgina 34 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
3.0 Modos de energia de gesto
3.1.1 Fontes de relgio
PIC18F2455/2550/4455/4550 dispositivos oferecem um total de
sete modos de operao para o poder mais eficiente
gesto. Estes modos proporcionam uma variedade de
opes para a conservao de energia seletiva em aplicaes
onde os recursos podem ser limitados (ie, alimentado por bateria
dispositivos).
Existem trs categorias de modos de gerenciamento de energia:
Executar os modos
modos Ocioso
Modo de suspenso
Estas categorias que definem pores do dispositivo
so cronometrados e, por vezes, que a velocidade. The Run e
Modos ociosas podem usar qualquer um dos trs relgio disponvel
fontes (oscilador primrio, secundrio ou interno
bloco), o modo de suspenso no usa uma fonte de clock.
Os modos de potncia gerenciados incluem vrios
recursos de economia de energia disponveis no PIC anterior
dispositivos. Uma delas o recurso de comutao relgio, oferecido
em
PIC18 outros dispositivos, permitindo que o controlador usa o
Timer1 oscilador local do oscilador principal. Tambm
est includo o modo de suspenso, oferecido por todos os
dispositivos PIC,
onde todos os relgios do dispositivo esto parados.
Os SCS1: SCS0 bits permitem a seleo de um dos trs
fontes de relgio para os modos de potncia gerenciados. Eles so:
O relgio principal, tal como definido pela
FOSC3: FOSC0 bits de configurao
O relgio secundrio (o Timer1 oscilador)
O bloco de oscilador interno (para os modos de RC)
3.1.2 ENTRADA DE ENERGIA de gesto
MODOS
Mudar de um modo de gerenciamento de energia para outro
comea a carregar o registo OSCCON. O
SCS1: SCS0 pedaos selecionar a fonte de relgio e determinar
o modo de funcionamento inactivo ou est a ser usado. Alterando
estas
faz com que um comutador de bits de imediato para o novo relgio
fonte, assumindo que ele est sendo executado. O interruptor pode
tambm estar sujeitos a atrasos relgio de transio. So
discutido Seo 3.1.3 "Transitions relgio e
Indicadores de Status " e sees subseqentes.
A entrada para os modos de gesto de energia ocioso ou sono
provocado pela execuo de uma DORMIR instrues. O
Modo real que resulta depende do estado do
IDLEN bit.
Dependendo do modo de corrente e o modo sendo
comutada para, uma mudana para um modo de gerenciamento de
energia no
nem sempre exigem a criao de todos esses bits. Muitos
transies podem ser feitas alterando o oscilador
selecionar os bits, ou alterando o bit IDLEN, antes de emitir um
DORMIR instrues. Se o bit IDLEN j est
configurado correctamente, apenas pode ser necessrio
executar uma DORMIR instrues para alternar para o desejado
modo.
3.1 Selecionando os modos de gerenciamento de
energia
Seleccionar um modo de gerenciamento de energia requer duas
decises: Se a CPU est a ser cronometrado, ou no, e o
seleco de uma fonte de relgio. O bit IDLEN
(OSCCON <7>) controles de clock da CPU, enquanto o
SCS1: SCS0 pedaos (OSCCON <01:00>) selecionar o relgio
fonte. Os modos individuais, configuraes de bits, as fontes de
clock
e mdulos afectadas encontram-se resumidos na Tabela 3-1.
TABELA 3-1:
Modo
Dormir
PRI_RUN
SEC_RUN
RC_RUN
PRI_IDLE
SEC_IDLE
RC_IDLE
Nota 1:
2:
Modos de energia de gesto
OSCCON <7,1:0>
IDLEN (1)
0
N / D
N / D
N / D
1
1
1
SCS1: SCS0
N / D
00
01
1x
00
01
1x
Mdulo Overclock
CPU
Fora
Cronometrado
Cronometrado
Cronometrado
Fora
Fora
Fora
Perifricos
Fora
Cronometrado
Cronometrado
Cronometrado
Cronometrado
Cronometrado
Cronometrado
Disponvel Relgio e oscilador Fonte
None - todos os relgios esto
desabilitados
Primrio - todos os modos de oscilador.
Este o modo de execuo plena potncia normal.
Oscilador Timer1 - Secundrio
Bloco oscilador interno(2)
Primrio - todos os modos de oscilador
Oscilador Timer1 - Secundrio
Bloco oscilador interno(2)
IDLEN reflete seu valor quando o DORMIR instruo executada.
Inclui INTOSC e INTOSC postscaler, bem como a fonte INTRC.
v 2009 Microchip Technology Inc. DS39632E-pgina 35
PIC18F2455/2550/4455/4550
3.1.3 TRANSITIONS relgio e
INDICADORES DE STATUS
A durao da transio entre as fontes de relgio
a soma de dois ciclos da fonte de relgio velho e trs
a quatro ciclos da nova fonte de relgio. Esta frmula
assume que a nova fonte de relgio estvel.
Trs bits indicam a origem e a sua corrente de relgio
estado. Eles so:
USTOS (OSCCON <3>)
IOFS (OSCCON <2>)
T1RUN (T1CON <6>)
Em geral, apenas um destes bits ser definido enquanto numa
determinado modo de gerenciamento de energia. Quando o bit
USTOS
definido, o relgio principal proporcionar o relgio do dispositivo.
Quando o bit IOFS estiver definido, a sada INTOSC provid-
relativa a um, de 8 MHz fonte de relgio estvel a um divisor de que
realmente dirige o relgio do dispositivo. Quando o bit T1RUN
set, o oscilador Timer1 est fornecendo o relgio. Se nenhum
desses bits so definidos, em seguida, o relgio INTRC
fonte de relgio do dispositivo, ou seja a fonte INTOSC
ainda no estvel.
Se o bloco de oscilador interno est configurada como a
relgio fonte primria pela FOSC3: FOSC0 Con-
pedaos figurao, ento ambos os USTOS e IOFS bits podem
ser definido nos modos PRI_RUN ou PRI_IDLE. Este
indica que o relgio principal (sada INTOSC)
gerar uma sada de 8 MHz estvel. Entrar em outro
poder de gesto modo RC na mesma freqncia
abriria bit USTOS.
Nota 1: O cuidado deve ser usado quando a modificao de um
nico bit IRCF. Se for inferior a VDD 3V,
possvel selecionar uma velocidade de clock superior
que apoiada pela baixa VDD.
Operao do dispositivo inadequado pode resultar se
as especificaes VDD / FOSC so violados.
2: A execuo de um DORMIR instruo no
necessariamente colocar o dispositivo no sono
modo. Actua como o gatilho para colocar o
controlador em qualquer modo de suspenso ou
um dos modos de inactividade, dependendo do
definio do bit IDLEN.
3.1.4 VRIOS COMANDOS DO SONO
O modo de gerenciamento de energia que invocada com o
DORMIR instruo determinado pela configurao da
IDLEN pouco no tempo, a instruo executada. Se
outro DORMIR instruo executada, o dispositivo ser
entrar no modo de gerenciamento de energia especificado pelo
IDLEN em
nesse momento. Se IDLEN mudou, o dispositivo vai entrar
o novo modo de gerenciamento de energia especificado pelo novo
criao.
Ao retomar a operao normal aps acordar de
Dormir ou inativo, as mquinas de estado internos exigem pelo
menos um atraso TCY antes de outra DORMIR instruo
pode ser executado. Se dois de volta para trs DORMIR instru-
es vai ser executada, o processo mostrado na
Exemplo 3-1 deve ser usado.
Exemplo 3-1:
DORMIR
NOP
DORMIR
EXECUO DE VOLTA AOS DORMIR INSTRUES
, Espere pelo menos uma TCY antes de executar outra instruo sono
3.2 Executar Modos
3.2.2 SEC_RUN MODO
Nos modos de funcionamento, relgios tanto para o ncleo e
perifricos esto ativos. A diferena entre estes
modos a fonte de relgio.
3.2.1 PRI_RUN MODO
O modo PRI_RUN , full-power normal, execu-
o do modo de microcontrolador. Este tambm o padro
modo sobre a redefinio do dispositivo a menos de duas
velocidades Start-up
est ativado (ver Seo 25.3 "Duas Velocidades Start-up"
para mais detalhes). Neste modo, o bit USTOS est definido. Os
IOFS
bit pode ser definido se o bloco oscilador interno o
relgio fonte primria (ver 2.4.1 "oscilador
Controle Register ").
O modo SEC_RUN o modo compatvel com a
Recurso "switching relgio" oferecido em outros PIC18
dispositivos. Neste modo, o processador e os perifricos so
clock do Timer1 oscilador. Isso d aos usurios a
opo de baixo consumo de energia enquanto ainda estiver usando
um
fonte de relgio de alta preciso.
DS39632E-pgina 36 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
Modo SEC_RUN inserido, definindo o SCS1: SCS0
bits a '01 '. A fonte de relgio do dispositivo comutado para o
Timer1 oscilador (ver Figura 3-1), o principal
oscilador desligado, o bit T1RUN (T1CON <6>)
definido eo bit USTOS est desmarcada.
Nota: O oscilador Timer1 j deve estar
corrente antes de entrar no modo de SEC_RUN.
Se o bit T1OSCEN no est definido quando o
SCS1: SCS0 bits so definidos como '01 ', entrada
para
Modo SEC_RUN no ocorrer. Se o
Timer1 oscilador ativado, mas ainda no
execuo, relgios do dispositivo ser adiada at
o oscilador foi iniciado. Em tais
situaes, a operao inicial oscilador est longe
a partir de uma operao estvel e imprevisvel
pode resultar.
Em transies de modo SEC_RUN para PRI_RUN, o
perifricos e CPU continuar a ser cronometrado da
Timer1 oscilador enquanto o relgio principal iniciado.
Quando o relgio principal ficar pronto, um interruptor de relgio
de volta para o relgio primria ocorre (ver Figura 3-2).
Quando o interruptor de relgio est completa, o bit T1RUN
desmarcada, o bit USTOS est definido eo relgio principal
proporcionando o relgio. Os IDLEN e SCS bits no forem
afetados pela wake-up, o Timer1 oscilador
continua a funcionar.
Figura 3-1: CALENDRIO DE TRANSIO PARA ENTRADA DE MODO SEC_RUN
Q1 Q2 Q3 Q4 Q1 Q2
1 2 3 n-1 n
Q3 Q4 Q1 Q2 Q3
T1OSI
OSC1
CPU
Relgio
Perifrico
Relgio
Programa
Contador
Nota 1:
PC
Relgio de Transio(1)
PC + 2 + PC 4
Transio do relgio normalmente ocorre dentro de 2-4 tosc.
Figura 3-2: TRANSIO DE DISTRIBUIO DE SEC_RUN modo para PRI_RUN MODE (HSPLL)
Q1
T1OSI
OSC1
TOST(1)
TPLL(1)
1 2 n-1 n
Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3
PLL Clock
Sada
CPU Clock
Perifrico
Relgio
Programa
Contador
SCS1: SCS0 bits alterados
Nota 1:
2:
PC
USTOS bit Set
Relgio(2)
Transio
PC + 2 + PC 4
TOST = 1024 tosc; TPLL = 2 ms (aproximadamente). Estes intervalos no esto desenhadas escala.
Transio do relgio normalmente ocorre dentro de 2-4 tosc.
v 2009 Microchip Technology Inc. DS39632E-pgina 37
PIC18F2455/2550/4455/4550
3.2.3 RC_RUN MODO
No modo RC_RUN, a CPU e os perifricos so
cronometrado a partir do bloco usando o oscilador interno
INTOSC multiplexer, o relgio principal desligado.
Quando se utiliza a fonte INTRC, este modo proporciona a
melhor conservao de todos os modos correr enquanto ainda poder
execuo de cdigo. Ele funciona bem para aplicativos de usurio
que no so altamente sensveis a cronometragem ou no requerem
relgios de alta velocidade em todos os momentos.
Se a fonte do relgio principal o oscilador interno
block (ou INTRC ou INTOSC), no h distin-
diferenas entre o guishable e PRI_RUN
RC_RUN modos durante a execuo. No entanto, um relgio
atraso interruptor ir ocorrer durante a entrada e sada do
Modo RC_RUN. Portanto, se a fonte do relgio primrio
o bloco do oscilador interno, o uso de RC_RUN
modo no recomendado.
Este modo introduzido atravs da criao SCS1 para '1 '. Embora
ignorado, recomenda-se que seja tambm SCS0
apuradas, o que para manter a compatibilidade com software
dispositivos futuros. Quando a fonte de relgio ligada
o INTOSC multiplexer (ver Figura 3-3), o principal
oscilador desligado eo bit USTOS est desmarcada. O
IRCF bits podem ser modificados a qualquer momento para
imediatamente
alterar a velocidade do clock.
Nota: O cuidado deve ser usado quando a modificao de
um
nico bit IRCF. Se for inferior a VDD 3V,
possvel selecionar uma velocidade de clock superior
que apoiada pela baixa VDD.
Operao do dispositivo inadequado pode resultar se
as especificaes VDD / FOSC so violados.
Se os bits IRCF eo bit INTSRC so claras, o
Sada INTOSC no est habilitado eo bit IOFS vontade
permanecem lmpidas, no haver nenhuma indicao sobre a
actual
fonte de relgio. A fonte INTRC est fornecendo o
relgios do dispositivo.
Se os bits IRCF so alteradas de todo claro (assim,
permitindo a sada INTOSC), ou se INTSRC est definido, o
IOFS bit torna-se definido aps a sada INTOSC
torna-se estvel. Relgios para o dispositivo continuar enquanto
a fonte INTOSC estabiliza aps um intervalo de
TIOBST.
Se os bits IRCF foram anteriormente com um valor diferente de zero
ou
se INTSRC foi definida antes SCS1 ea
Fonte INTOSC j era estvel, o bit IOFS vontade
permanecer definido.
Em transies de modo RC_RUN ao modo PRI_RUN,
o dispositivo continua a ser cronometrado da INTOSC
multiplexador enquanto o relgio principal iniciado. Quando o
relgio primrio ficar pronto, um relgio de mudar para o
relgio primria ocorre (veja a Figura 3-4). Quando o relgio
interruptor estiver concluda, o bit IOFS estiver desmarcada, a
USTOS
bit definido eo relgio principal fornecer o dispositivo
relgio. Os IDLEN e SCS bits no so afetados pela
mudar. A fonte INTRC continuar a funcionar se qualquer
o WDT ou a prova de falhas monitor relgio est ativado.
DS39632E-pgina 38 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 3-3: CALENDRIO DE TRANSIO PARA RC_RUN MODO
Q1 Q2 Q3 Q4 Q1
INTRC
OSC1
CPU
Relgio
Perifrico
Relgio
Programa
Contador
Nota 1:
PC
Transio do relgio normalmente ocorre dentro de 2-4 tosc.
PC + 2 + PC 4
1 2 3 n-1 n
Q2 Q3 Q4 Q1 Q2 Q3
Relgio de Transio(1)
Figura 3-4: TRANSIO DE DISTRIBUIO DE RC_RUN MODO DE MODO PRI_RUN
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3
INTOSC
Multiplexer
OSC1
TOST(1)
PLL Clock
Sada
CPU Clock
Perifrico
Relgio
Programa
Contador
SCS1: SCS0 bits alterados
Nota 1:
2:
PC
USTOS bit Set
PC + 2 + PC 4
TPLL(1)
1 2 n-1 n
Relgio(2)
Transio
TOST = 1024 tosc; TPLL = 2 ms (aproximadamente). Estes intervalos no esto desenhadas escala.
Transio do relgio normalmente ocorre dentro de 2-4 tosc.
v 2009 Microchip Technology Inc. DS39632E-pgina 39
PIC18F2455/2550/4455/4550
3.3 Modo de dormir 3.4 Modos ociosas
Thepower-managedSleepmodeinthe
PIC18F2455/2550/4455/4550 dispositivos idntica
o modo de suspenso legado oferecido em todos os outros
dispositivos PIC.
entrou limpando o bit IDLEN (o estado padro
na redefinio do dispositivo) e executar o DORMIR instrues.
Isso desliga o oscilador selecionado (Figura 3-5). Tudo
Clock Source bits de status so apagadas.
Ao entrar no modo de suspenso de qualquer outro modo no
exigir um interruptor relgio. Isto porque no h relgios so
necessrio uma vez que o controlador entrou no modo Sleep. Se o
WDT selecionada, a fonte INTRC continuar a
operar. Se o oscilador Timer1 est habilitado, ele ir tambm
continuar a executar.
Quando um evento de ativao ocorre no modo Sleep (por
interrupo,
Redefinir ou WDT time-out), o dispositivo no ser cronometrado
at que a fonte de clock selecionado pelo SCS1: SCS0 pedaos
torna-se pronto (veja a Figura 3-6), ou ele vai ser cronometrado
do bloco de oscilador interno ou se a duas velocidades
Start-up ou a prova de falhas Monitor de Relgio esto habilitados
(Ver Seo 25,0 "Recursos Especiais da CPU"). Em
qualquer caso, o bit USTOS definido quando o relgio principal
est fornecendo os relgios do dispositivo. O IDLEN e SCS pedaos
no so afetados pelo wake-up.
Os modos inativos permitir CPU do controlador para ser
seletivamente desligar enquanto os perifricos continuam a
operar. Seleo de um modo de Espera especial permite que os
usurios
para gerenciar o consumo de energia.
Se o bit IDLEN est definido para '1 'quando um DORMIR instruo
est
executado, os perifricos sero cronometrados a partir do relgio
fonte seleccionada usando o SCS1: SCS0 pedaos, no entanto, o
CPU no sero cronometrados. O relgio fonte bits de estado so
no afetados. Definir IDLEN e execuo de um DORMIR
instruo fornece um mtodo rpido de mudana de um
determinado modo Corra para o seu modo de Espera
correspondente.
Se o WDT selecionada, a fonte INTRC continuar
para operar. Se o oscilador Timer1 est habilitado, ele ir tambm
continuar a executar.
Uma vez que a CPU no est executando instrues, a nica
sai de qualquer dos modos ociosas so por interrupo, WDT
time-out ou um Reset. Quando um evento de ativao ocorre, CPU
execuo est atrasada por um intervalo de TCSD
(Parmetro 38, Tabela 28-12), enquanto que ele fica pronto para
executar o cdigo. Quando a CPU comea cdigo em execuo,
ele reinicia com a mesma fonte de clock para o atual
Modo ocioso. Por exemplo, quando acordar de RC_IDLE
modo, o bloco de oscilador de relgio interno a CPU vai
e perifricos (em outras palavras, o modo de RC_RUN). O
IDLEN e SCS bits no so afetados pela wake-up.
Enquanto que em qualquer modo de suspenso, a WDT time-out
modo de espera ou
ir resultar em um wake-up para o modo Run WDT atualmente
especificada pelo SCS1: SCS0 bits.
FIGURA 3-5:
OSC1
CPU
Relgio
Perifrico
Relgio
Dormir
Programa
Contador
PC
CALENDRIO DE TRANSIO PARA INGRESSO DO MODO
DORMIR
Q1 Q2 Q3 Q4 Q1
PC + 2
Figura 3-6: CALENDRIO DE TRANSIO PARA ACORDAR DE DORMIR (HSPLL)
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
OSC1
PLL Clock
Sada
CPU Clock
Perifrico
Relgio
Programa
Contador
Evento de despertar
PC
USTOS bit Set
PC + 2 + PC 4 PC + 6
TOST(1)
TPLL(1)
Nota 1: TOST = 1024 tosc; TPLL = 2 ms (aproximadamente). Estes intervalos no esto desenhadas escala.
DS39632E-pgina 40 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
3.4.1 PRI_IDLE MODO 3.4.2 SEC_IDLE MODO
Este modo o nico entre os trs ocioso de baixa potncia
modos em que no desactivar o dispositivo primrio
relgio. Para cronometrar aplicaes sensveis, isso permite
a retomada mais rpida da operao do dispositivo, com a sua
relgio fonte primria mais precisos, uma vez que o relgio
fonte no precisa "aquecer" ou transio
outro oscilador.
Modo PRI_IDLE introduzido a partir do modo PRI_RUN por
definindo o bit IDLEN e execuo de um DORMIR instru-
o. Se o dispositivo estiver em outro modo de execuo, defina
IDLEN
em primeiro lugar, em seguida, desmarque os bits SCS e executar
Dormir.
Embora a CPU estiver desativado, os perifricos continuam
para ser cronometrado a partir da fonte relgio primrio especificado
pelo FOSC3: FOSC0 bits de configurao. Os USTOS
bit permanece definido (ver Figura 3-7).
Quando um evento de ativao ocorre, a CPU tem clock do
relgio fonte primria. Um atraso de intervalo TCSD
necessria entre o evento de ativao e quando o cdigo
execuo iniciada. Isso necessrio para permitir que a CPU
tornar-se pronto para executar instrues. Aps o
wake-up, o bit USTOS permanece definido. O IDLEN e
SCS bits no so afetados pela wake-up (ver
Figura 3-8).
No modo SEC_IDLE, a CPU est desativada, mas o
perifricos continuam a ser cronometrado da Timer1
oscilador. Este modo introduzido a partir de SEC_RUN por set-
ting o bit IDLEN e execuo de um DORMIR instrues. Se
o dispositivo est em um outro modo de execuo, defina IDLEN
primeiro, depois
Conjunto SCS1: SCS0 a '01 'e executar Dormir. Quando o
fonte de relgio ligado ao Timer1 oscilador, o
oscilador principal desligado, o bit USTOS eliminado
eo bit T1RUN est definido.
Quando ocorre um evento de despertar, os perifricos continuam
ser cronometrado da Timer1 oscilador. Aps um intervalo
de TCSD aps o evento de ativao, a CPU comea a exe-
cdigo cuting sendo cronometrado pelo Timer1 oscilador. O
IDLEN e SCS bits no so afetados pela wake-up;
o oscilador Timer1 continua a funcionar (ver Figura 3-8).
Nota: O oscilador Timer1 j deve estar
corrente antes de entrar no modo de SEC_IDLE.
Se o bit T1OSCEN no est definido quando o
DORMIR instruo executada, o DORMIR
instruo ser ignorado e entrada para
Modo SEC_IDLE no ocorrer. Se o
Timer1 oscilador ativado, mas ainda no
execuo, relgios perifricos ser adiada
at que o oscilador foi iniciado. Em tais
situaes, a operao inicial oscilador est longe
a partir de uma operao estvel e imprevisvel
pode resultar.
FIGURA 3-7: CALENDRIO DE TRANSIO para a entrada modo ocioso
Q1 Q2 Q3 Q4 Q1
OSC1
CPU Clock
Perifrico
Relgio
Programa
Contador
PC PC + 2
FIGURA 3-8:
Q1
OSC1
CPU Clock
Perifrico
Relgio
Programa
Contador
CALENDRIO DE TRANSIO PARA ACORDAR DE IDLE para executar o modo
Q2 Q3 Q4
TCSD
PC
Evento de despertar
v 2009 Microchip Technology Inc. DS39632E-pgina 41
PIC18F2455/2550/4455/4550
3.4.3 RC_IDLE MODO
No modo RC_IDLE, a CPU est desativada, mas o peri-
Minerals continuar a ser cronometrado do oscilador interno
bloquear usando o multiplexer INTOSC. Este modo permite
para a conservao de energia controlvel durante os perodos
ociosos.
De RC_RUN, este modo inserido, definindo o
IDLEN bit e execuo de um DORMIR instrues. Se o
dispositivo est em outro modo de operao, o primeiro set IDLEN,
em seguida, definir
o bit SCS1 e executar Dormir. Embora o seu valor
ignorados, recomenda-se que SCS0 tambm afastada;
isto para manter a compatibilidade de software com futuro
dispositivos. O multiplexador INTOSC podem ser usadas para
selecionar uma freqncia de clock maior, modificando o IRCF
bocados antes de executar a DORMIR instrues. Quando o
fonte do relgio ligada INTOSC multiplexador, o
oscilador primrio desligado eo bit USTOS
apagadas.
Se os bits IRCF est definido para qualquer valor diferente de zero,
ou a
INTSRC bit definido, a sada INTOSC est habilitado. O
IOFS bit torna-se definido aps a sada INTOSC
torna-se estvel, aps um intervalo de TIOBST
(Parmetro 39, Tabela 28-12). Relgios para os perifricos
continuar enquanto a fonte INTOSC estabiliza. Se o
IRCF bits foram anteriormente em um valor diferente de zero, ou
INTSRC foi definido antes da DORMIR instruo era
executada e a fonte INTOSC j era estvel,
o bit IOFS permanecer definido. Se os bits e IRCF
INTSRC so todos clara, a sada INTOSC no ser
ativado, o bit IOFS permanecer claro e haver
nenhuma indicao da fonte de relgio actual.
Quando ocorre um evento de despertar, os perifricos continuam
ser cronometrado a partir do multiplexador INTOSC. Depois de um
atraso
de TCSD aps o evento de ativao, a CPU comea
execuo de cdigo que est sendo cronometrado pelo INTOSC
multi-
plexer. Os IDLEN e SCS bits no so afetados pela
wake-up. A fonte INTRC continuar a ser executado se
ou o WDT ou a prova de falhas monitor Clock
ativado.
Em todas as sadas de modos ocioso ou por interrupo do sono,
cdigo
ramos de execuo para o vetor de interrupo, se o
GIE / GIEH bit (INTCON <7>) definido. Caso contrrio, o cdigo
execuo continua ou recomea sem ramificao
(Ver Seo 9.0 "interrompe").
Um atraso fixo de intervalo TCSD aps o evento de ativao
necessria quando deixando modos inativos do sono e. Este
atraso necessrio para o CPU para se preparar para a execuo.
Retoma a execuo de instrues, no primeiro ciclo de relgio
seguindo esse atraso.
3.5.2 SAIR POR WDT TIME-OUT
A WDT time-out far aes diferentes dependendo
em que o modo de gerenciamento de energia do dispositivo
quando
o tempo limite ocorre.
Se o dispositivo no est executando o cdigo (todos os modos e
ociosa
O modo de suspenso), o time-out resultar em uma sada da
modo de potncia de gesto (ver Seo 3.2 "Executar
Modos " e Seo 3.3 "Modo Sleep"). Se o dispositivo
est executando o cdigo (todos os modos de execuo), o tempo
limite ser
resultar em uma redefinio WDT (ver Artigo 25.2 "Watchdog
Timer (WDT) ").
O temporizador WDT e postscaler so apuradas pela execu-
que estabelece um DORMIR ou CLRWDT instruo, a uma perda de
fonte de relgio atualmente selecionado (se o relgio prova de
falhas
Monitor ativado) e modificar os bits IRCF no
OSCCON registar se o bloco o oscilador interno
fonte de relgio do dispositivo.
3.5.3 SAIR POR REAJUSTE
Normalmente, o dispositivo realizada em Reiniciar pelo oscilador
Start-up timer (OST) at que o relgio se torna principal
imediata. Naquela poca, o bit USTOS est definido eo dispositivo
comea a executar cdigo. Se o bloco de oscilador interno
a nova fonte de clock, o bit IOFS est definido em seu lugar.
O tempo de sada de Reset para o incio do cdigo
execuo depende tanto das fontes de relgio antes
e depois do despertar e do tipo de oscilador, se o
nova fonte de relgio o relgio primrio. Atrasos de sada so
resumidos na Tabela 3-2.
Execuo de cdigo pode comear antes que o relgio principal
torna-se pronto. Se quer a duas velocidades Start-up (ver
Seo 25.3 "Duas Velocidades Start-up") ou prova de falhas
Monitor de relgio (ver Seo 25,4 "Fail-Safe Relgio
Monitor ") ativada, o dispositivo poder iniciar a execuo
assim como a fonte de reincio foi cancelado. A execuo
cronometrado pelo multiplexador INTOSC impulsionado pela
bloco oscilador interno. A execuo cronometrado pelo
bloco oscilador interno at que o relgio principal
torna-se pronto ou um modo de gerenciamento de energia
introduzido
antes que o relgio primrio ficar pronto, o principal
relgio ento desligado.
3.5 Saindo Modos ocioso e do sono
Uma sada do modo de suspenso ou de qualquer um dos modos
ociosa
desencadeada por uma interrupo, um reset ou um WDT time-out.
Esta seo discute os gatilhos que fazem com que as sadas
de modos de potncia gerenciados. O subsistema de clock
aes so tratadas em cada uma o poder de gesto
modos (ver Seo 3.2 "Modos de correr", Seco 3.3
"Modo Sleep" e Seo 3.4 "Modos idle").
3.5.1 SAIR POR INTERRUPO
Qualquer das fontes de interrupo disponveis pode causar o
dispositivo para sair de um modo ou modo de suspenso ocioso
para um
Modo de execuo. Para habilitar essa funcionalidade, uma
interrupo
fonte deve ser ativada, definindo o seu bit de habilitao em um
dos INTCON ou PIE registros. A seqncia de sada
iniciada quando o correspondente interrupo bit sinalizador est
definido.
DS39632E-pgina 42 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
3.5.4 Sair sem um oscilador
ARRANQUE ATRASO
Certas sadas modos de potncia gerenciados no
invocar a OST em tudo. Existem dois casos:
modo PRI_IDLE, onde a principal fonte de relgio
no interrompido, e
a fonte de clock principal no qualquer um dos XT ou
Modos HS.
Nesses casos, a principal fonte de relgio ou
no necessita de um atraso de arranque do oscilador, uma vez que

j em execuo (PRI_IDLE), ou normalmente no
requerem um atraso de arranque oscilador (CE e qualquer interno
modos do oscilador). No entanto, um atraso fixo de intervalo
TCSD aps o evento de ativao ainda necessria quando
deixando modos de inactividade do sono e para permitir que a CPU
prepare para execuo. Execuo da instruo recomea
no primeiro ciclo de relgio seguindo este atraso.
TABELA 3-2: SAIR EM ATRASO ACORDAR DE REAJUSTE do modo de inatividade ou qualquer outro modo IDLE
(Por fontes relgio)
Microcontrolador Clock Source
Depois de despertar
XT, HS
XTPLL, HSPLL
CE
INTOSC(3)
XT, HS
TOST(4)
TOST + trc(4)
TCSD(2)
TIOBST(5)
TOST(4)
TOST + trc(4)
TCSD(2)
Nenhum
TOST(4)
TOST + trc(4)
TCSD(2)
TIOBST(5)
USTOS
IOFS
IOFS
USTOS
USTOS
IOFS
XTPLL, HSPLL
CE
INTOSC(3)
XT, HS
XTPLL, HSPLL
CE
INTOSC(3)
XT, HS
Sair Delay
Relgio Estado Pronto
Bit (OSCCON)
Antes de Wake-up
Principal dispositivo do Relgio
(Modo PRI_IDLE)
Nenhum
USTOS
IOFS
T1OSC ou INTRC(1)
INTOSC(3)
Nenhum
(Modo de suspenso)
Nota 1:
2:
3:
4:
5:
XTPLL, HSPLL
CE
INTOSC(3)
Neste caso, refere-se especificamente ao kHz fonte de relgio INTRC 31.
TCSD (parmetro 38, Tabela 28-12) um atraso necessrio quando acordar de todos os modos e inativos do sono e corre
em simultneo com quaisquer outros atrasos necessrios (ver Seo 3.4 "Modos idle").
Inclui tanto o INTOSC fonte MHz 8 e postscaler freqncias derivadas.
TOST o perodo Temporizador Start-up oscilador (parmetro 32, Tabela 28-12). trc o bloqueio PLL time-out
(Parmetro F12, Tabela 28-9), que tambm designada como TPLL.
A execuo continua durante TIOBST (parmetro 39, Tabela 28-12), o perodo de estabilizao INTOSC.
v 2009 Microchip Technology Inc. DS39632E-pgina 43
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E-pgina 44 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
4.0 REAJUSTE
Os dispositivos PIC18F2455/2550/4455/4550 diferenciar
entre vrios tipos de reset:
um)
b)
c)
d)
e)
f)
g)
h)
Power-on Reset (POR)
Redefinir MCLR durante a operao normal
Redefinir MCLR durante os modos de potncia
gerenciados
Watchdog Timer (WDT) Reset (durante
execuo)
Redefinio Programmable Brown-out (BOR)
REAJUSTE Instruo
Pilha Reinicializao Completa
Pilha Reiniciar Underflow
Um diagrama de blocos simplificado do circuito de reset on-chip
mostrado na Figura 4-1.
4.1 RCON Registrar
Redefinir eventos do dispositivo so controladas atravs do RCON
registrar (Register 4-1). Os menores de cinco bits do regis-
ter indicar que ocorreu um evento de reset especfico. Em
maioria dos casos, esses bits s podem ser apagados pelo evento
e deve ser definido pela aplicao aps o evento. O
estado destes bits bandeira, em conjunto, pode ser lido para
indicar o tipo de reset que acabou de ocorrer. Isto
descritos em mais detalhe em Seo 4.6 "Reset Estado
dos registos ".
O registo RCON tambm tem bits de controle para configurao
prioridade de interrupo (IPEN) e controlo do software
BOR (SBOREN). Interrupo prioridade discutido em
Seo 9.0 "interrompe". BOR coberto em
Seo 4.4 "Reset Brown-out (BOR)".
Esta seo discute Redefine gerado pelo MCLR,
POR e BOR e abrange o funcionamento das vrias
start-up temporizadores. Stack Redefinir eventos so abordados em
Seo 5.1.2.4 "pilha completa e Underflow Redefine".
WDT Redefine so abordados em Artigo 25.2 "Watchdog
Timer (WDT) ".
Figura 4-1:
REAJUSTE
Instruo
Pilha
Apontador
SIMPLIFICADO diagrama de blocos on-chip circuito de reset
Pilha / Underflow completa Reiniciar
Reset externo
MCLR
MCLRE
() _IDLE
Dormir
WDT
Intervalo
Ascenso VDD
Descobrir
VDD
Brown-out
Restabelecer
Boren
OST / PWRT
OST
OSC1
32 o
INTRC
(1)
POR Pulso
S
1024 Ciclos
R Q
10-Bit Ripple Contador
Chip_Reset
PWRT 65,5 ms
11-Bit Ripple Contador
Ativar PWRT
Ativar OST(2)
Nota 1:
2:
Esta a fonte INTRC de baixa frequncia do oscilador bloco interno.
Consulte a Tabela 4-2 para situaes de tempo.
v 2009 Microchip Technology Inc. DS39632E-pgina 45
PIC18F2455/2550/4455/4550
CADASTRE-SE 4-1:
R/W-0
IPEN
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
RCON: REAJUSTE registro de controle
R/W-1(1)
SBOREN
U-0
-
R/W-1
RI
R-1
TO
R-1
PD
R/W-0(2)
POR
R/W-0
BOR
bit 0
IPEN: Prioridade Interrupo Ativar bit
1= Ativar nveis de prioridade sobre as interrupes
0= Desativar nveis de prioridade de interrupes (modo de compatibilidade
PIC16CXXX)
SBOREN: BOR Software Habilitar bit(1)
Se BOREN1: BOREN0 = 01:
1= BOR est habilitado
0= BOR est desativado
Se BOREN1: BOREN0 = 00, 10 ou 11:
Bit desativado e ler como '0 '.
Unimplemented: Leia como '0 '
RI: REAJUSTE Bandeira Instruo bit
1= O REAJUSTE instruo no foi executada (definido por apenas firmware)
0= O REAJUSTE instruo foi executada causando uma redefinio do dispositivo (deve ser definido no software
depois de um
Redefinio de Brown-out ocorre)
TO: Watchdog Time-out Flag bit
1= Definido pelo power-up, CLRWDT ou instruo DORMIR instruo
0= A WDT time-out ocorreu
PD: Poder-Down Deteco Flag bit
1= Definido pelo power-up ou pelo CLRWDT instruo
0= Definido pela execuo do DORMIR instruo
POR: Power-on reset bit Estado(2)
1= No ocorreu um Power-on Reset (definida apenas por firmware)
0= A Power-on reset ocorreu (deve ser definido em software depois de um Power-on reset ocorre)
BOR: Brown-out bit Estado Reiniciar
1= A Redefinio de Brown-out no ocorreu (definido por apenas firmware)
0= A Redefinio de Brown-out ocorreu (deve ser definido no software aps um Reset Brown-out ocorre)
Se SBOREN est habilitado, o seu estado de reset '1 ', caso contrrio, '0'.
O valor real de Redefinir POR determinada pelo tipo de dispositivo de reset. Veja as notas que seguem esta
registrar e Seo 4.6 "Reset Estado dos registos" para obter informaes adicionais.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
2:
Nota 1: Recomenda-se que o bit POR ser definido aps um Power-on reset foi detectado para que posteriormente
Poder-na Repe pode ser detectada.
2: Redefinio de Brown-out dito ter ocorrido quando BOR '0 'e POR '1' (supondo que POR foi definido para
'1 'Software imediatamente aps POR).
DS39632E-pgina 46 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
4.2 Master Clear Reset (MCLR)
Figura 4-2:
O pino MCLR proporciona um mtodo para desencadear uma
Redefinir externa do dispositivo. A Reset gerado pelo
segurando o pino de baixo. Estes dispositivos tm um filtro de rudo
em
Reiniciar o caminho MCLR que detecta e ignora pequeno
pulsos.
O pino MCLR no impulsionado baixo por qualquer Redefine
interno,
incluindo o WDT.
Em PIC18F2455/2550/4455/4550 dispositivos, o MCLR
entrada pode ser desabilitado com a configurao MCLRE
bit. Quando MCLR est desativado, o pino se torna uma cmera
digital
entrada. Ver Seo 10.5 "PORTE, TRISE e LATE
Registra " para mais informaes.
EXTERNO POWER-ON
REAJUSTE DO CIRCUITO (FOR
SLOW VDD POWER-UP)
VDD VDD
D
R
R1
C
MCLR
PIC18FXXXX
Nota 1:
4.3 Power-on Reset (POR)
2:
A Power-on pulso Reset gerado on-chip
sempre que VDD sobe acima de um certo limite. Este
permite que o dispositivo para iniciar no estado inicializado quando
VDD adequado para a operao.
Para tirar proveito do circuito POR, amarrar o pino MCLR
atravs de um resistor (1 kW a 10 kW) a VDD. Isso vai
eliminar os componentes externos RC normalmente necessrios
para
criar um Power-on reset demora. A taxa mnima de crescimento para
VDD est especificado (parmetro D004, Seo 28.1 "DC
Caractersticas "). Para um tempo de subida lenta, veja a Figura 4-2.
Quando o dispositivo comea a operao normal (isto , as sadas
Redefinir condio), os parmetros de funcionamento do dispositivo
(volt-
idade, frequncia, temperatura, etc) devem ser atendidas para
assegurar a operao. Se estas condies no forem cumpridas, o
dispositivo deve ser realizada em reset at que a operao
condies so satisfeitas.
POR eventos so capturados pelo bit POR (RCON <1>).
O estado do bit definido para '0 'sempre que um POR ocorre;
isso no muda para qualquer outro evento Reset. POR
no repor a '1 'por qualquer evento hardware. Para capturar
vrios eventos, o usurio manualmente redefine o bit a '1 '
em software de seguir qualquer POR.
Power-on reset externo do circuito necessrio
apenas se a inclinao poder-se VDD muito lento.
O diodo D ajuda a descarregar o capacitor
rapidamente quando poderes VDD para baixo.
R <40 kW recomendada para se certificar de que
a queda de tenso em R no viola
especificao eltrica do dispositivo.
R1 c 1 kW ir limitar qualquer corrente que flui para
MCLR de C condensador externo, no caso
de MCLR / VPP pin colapso, devido a Electro-
descarga esttica (ESD) ou eltrica
Overstress (EOS).
3:
v 2009 Microchip Technology Inc. DS39632E-pgina 47
PIC18F2455/2550/4455/4550
4.4 Brown-out Reset (BOR)
PIC18F2455/2550/4455/4550 dispositivos implementar um
BOR circuito que fornece o utilizador com um nmero de
configurao e as opes de economia de energia. O BOR
controlado pelo BORV1: e BORV0
BOREN1: BOREN0 bits de configurao. H um total
de quatro configuraes BOR que esto resumidas na
Tabela 4-1.
O limiar BOR definido pelo BORV1: BORV0 bits. Se
BOR est habilitado (quaisquer valores de BOREN1: BOREN0
exceto '00 '), qualquer queda de VDD abaixo VBOR (parmetro
D005, Seco 28.1 "DC") Caractersticas para
superior TBOR (parmetro 35, Tabela 28-12) ter
reiniciar o dispositivo. A redefinio pode ou no pode ocorrer se
VDD
desce abaixo VBOR para menos de TBOR. O chip ser
permanecer em Reiniciar Brown-out at VDD sobe acima VBOR.
Se o timer Power-up estiver ativado, ele ser chamado aps
VDD sobe acima VBOR, que, em seguida, ir manter o chip em
Redefinir para um intervalo de tempo adicional, TPWRT
(Parmetro 33, Tabela 28-12). Se gotas VDD abaixo VBOR
enquanto o timer Power-up est sendo executado, o chip vai
de volta para uma redefinio Brown-out eo temporizador de Power-
up
ser inicializado. Uma vez que VDD sobe acima VBOR, o
Poder-se de temporizador ir executar o tempo de atraso adicional.
BOR e Power-on timer (PWRT) so
configurado de forma independente. Ativando Reiniciar BOR faz
no permitir automaticamente o PWRT.
Colocar o BOR sob controle de software d ao usurio
a flexibilidade de adaptar a aplicao para o seu
ambiente sem a necessidade de reprogramar o dispositivo
alterar a configurao BOR. Tambm permite que o utilizador
adequar o consumo de energia do dispositivo no software por elimi-
nar a corrente peridica que o BOR consome.
Embora o actual BOR tipicamente muito pequeno, pode
ter algum impacto em aplicaes de baixa potncia.
Nota: Mesmo quando BOR est sob controle de software,
o nvel de tenso reset BOR ainda definido pelo
o BORV1: BORV0 bits de configurao. Ele
no podem ser alteradas em software.
4.4.2 DETECO DE BOR
Quando BOR est habilitado, o bit BOR sempre retorna para '0 '
BOR ou em qualquer evento POR. Isto torna mais difcil
determinar se um evento de BOR ocorreu apenas pela leitura
o estado de BOR sozinho. Um mtodo mais fivel consiste em
verificar simultaneamente o estado de ambos POR e BOR.
Isso pressupe que o POR bit redefinido para '1 'no software
imediatamente aps qualquer evento POR. IF BOR '0 'enquanto
POR '1 ', pode presumir-se de modo fivel que um evento BOR
ocorreu.
4.4.3 DESATIVAO BOR NO MODO DE
SUSPENSO
4.4.1 SOFTWARE ENABLED BOR
Quando BOREN1: BOREN0 = 01, o BOR pode ser
ativada ou desativada pelo usurio no software. Isto
feito com o bit de controlo, SBOREN (RCON <6>).
Definindo SBOREN permite funcionar como BOR
anteriormente descrito. Clearing SBOREN desativa o
Bor inteiramente. O bit SBOREN opera apenas neste
modo, caso contrrio, ele lido como '0 '.
Quando BOREN1: BOREN0 = 10, o BOR permanece
sob o controlo de hardware e opera como anteriormente
descrito. Sempre que o dispositivo entra em modo de suspenso,
no entanto, o BOR automaticamente desativado. Quando o
dispositivo retorna a qualquer outro modo de operao, BOR
reativado automaticamente.
Este modo permite que aplicativos para se recuperar de
brown-out situaes, durante a execuo de cdigo ativamente,
quando o dispositivo exige uma proteco BOR mais. Em
Ao mesmo tempo, ele economiza energia adicional no modo de
suspenso
eliminando a pequena corrente BOR incremental.
TABELA 4-1: CONFIGURATIONS BOR
Estado de
SBOREN
(RCON <6>)
Indisponvel
Disponvel
Indisponvel
Indisponvel
BOR Operao
BOR desativado; deve ser ativado atravs da reprogramao dos bits de configurao.
BOR habilitada no software; operao controlada por SBOREN.
BOR habilitado hardware nos modos de corrida e de Espera, desativado durante o sono
modo.
BOR habilitado em hardware, deve ser desativado atravs da reprogramao do
Bits de configurao.
BOR Configurao
BOREN1
0
0
1
1
BOREN0
0
1
0
1
DS39632E-pgina 48 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
4,5 Redefinir Timers dispositivo
4.5.3 PLL BLOQUEIO DE TIME-OUT
PIC18F2455/2550/4455/4550 dispositivos incorporam
trs temporizadores em chips separados que ajudam a regular o
Power-on reset processo. Sua principal funo
assegurar que o relgio do dispositivo estvel antes de cdigo
executado. Estes temporizadores so:
Temporizador de Power-up (PWRT)
Oscillator Start-up timer (OST)
PLL Time Lock-out
Com a PLL habilitado em seu modo de PLL, o time-out
seqncia seguindo um Power-on Reset um pouco dife-
ent de outros modos de oscilador. Um temporizador separado
utilizado para proporcionar um tempo de espera fixa que suficiente
para o
PLL para bloquear a frequncia do oscilador principal. Este PLL
bloquear time-out (TPLL) tipicamente de 2 ms e segue o
oscilador start-up time-out.
4.5.4
1.
2.
SEQUNCIA DE TIME-OUT
4.5.1 TIMER POWER-UP (PWRT)
Ao ligar, a seqncia de time-out a seguinte:
Aps a condio POR cancelou, PWRT
time-out invocado (se habilitado).
Em seguida, a OST ativado.
O timer Power-up (PWRT) do PIC18F2455/2550 /
4455/4550 dispositivos um contador de 11 bits, que utiliza o
Fonte INTRC como a entrada de relgio. Isto produz um
intervalo de 2048 x 32 hora aproximada o = 65,6 ms.
Enquanto o PWRT est a contar, o dispositivo mantido em
Redefinir.
O poder-se tempo de atraso depende do relgio INTRC
e ir variar de chip para chips, devido temperatura e
variao do processo. Veja o parmetro DC 33 (Tabela 28-12)
para mais detalhes.
O PWRT est habilitado limpando a PWRTEN
Bit de configurao.
O time-out total varia de acordo com oscilador configura-
rao eo status do PWRT. Figura 4-3,
Figura 4-4, Figura 4-5, Figura 4-6 e Figura 4-7 tudo
retratam time-out seqncias em power-up, com o
Power-up habilitado temporizador e dispositivo de operao em
Modo de oscilador HS. Figuras 4-3 atravs de 4-6 tambm se
aplicam
para dispositivos que operam no modo XT. Para dispositivos em RC
o modo e com os deficientes PWRT, por outro lado,
no haver tempo limite em tudo.
Desde os tempos de espera ocorrer a partir do pulso POR, se MCLR
mantido baixo por muito tempo, todos os time-outs ir expirar.
Traga-
ing MCLR alta comear imediatamente a execuo
(Figura 4-5). Isto til para fins de ensaio ou
sincronizar mais do que um dispositivo PIC18FXXXX
operando em paralelo.
4.5.2 OSCILADOR DE ARRANQUE
TIMER (OST)
O oscilador Start-up timer (OST) fornece uma
1024 ciclo oscilador (de OSC1 entrada) imediatamente aps a
PWRT atraso superior a (parmetro 33, Tabela 28-12). Este
assegura que o oscilador de cristal tem ou ressonador
iniciado e estabilizada.
A OST time-out invocado apenas por XT, HS e
Modos HSPLL e apenas em Power-on reset ou na sada
da maioria dos modos de potncia gerenciados.
TABELA 4-2: TIME-OUT EM SITUAES DIFERENTES
Power-up (2) e Brown-out
PWRTEN = 0
66 ms(1) + 1024 tosc
66 ms(1) + 1024 tosc + 2 ms(2)
66 ms(1)
66 ms(1) + 2 ms(2)
66 ms(1)
66 ms(1) + 1024 tosc
PWRTEN = 1
1024 tosc
1024 tosc + 2 ms(2)
-
2 ms(2)
-
1024 tosc
Sair
Modo Power-Managed
1024 tosc
1024 tosc + 2 ms(2)
-
2 ms(2)
-
1024 tosc
Oscilador
Configurao
HS, XT
HSPLL, XTPLL
CE, ECIO
ECPLL, ECPIO
Intio, INTCKO
INTHS, INTXT
Nota 1:
2:
66 ms (65,5 ms) o timer Power-up (PWRT) atraso nominal.
2 ms o tempo nominal necessrio para o PLL para bloquear.
v 2009 Microchip Technology Inc. DS39632E-pgina 49
PIC18F2455/2550/4455/4550
Figura 4-3: TIME-OUT sequncia no POWER-UP (MCLR AMARRADO A VDD, RISE VDD <TPWRT)
VDD
MCLR
INTERNA POR
TPWRT
PWRT TIME-OUT
OST TIME-OUT
Interno de reset
TOST
Figura 4-4:
VDD
MCLR
INTERNA POR
TIME-OUT sequncia no POWER-UP (MCLR no vinculados a VDD): Caso 1
TPWRT
TOST PWRT TIME-OUT
OST TIME-OUT
Interno de reset
FIGURA 4-5:
VDD
MCLR
INTERNA POR
TIME-OUT sequncia no POWER-UP (MCLR no vinculados a VDD): CASE 2
TPWRT
PWRT TIME-OUT
OST TIME-OUT
Interno de reset
TOST
DS39632E-pgina 50 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 4-6: TEMPO ascenso lenta (MCLR AMARRADO A VDD, VDD RISE> TPWRT)
5V
VDD
MCLR
INTERNA POR
TPWRT
PWRT TIME-OUT
TOST
OST TIME-OUT
Interno de reset
0V 1V
FIGURA 4-7: TIME-OUT SEQNCIA DE POR w / PLL ativado (MCLR AMARRADO A VDD)
VDD
MCLR
INTERNA POR
TPWRT
PWRT TIME-OUT
OST TIME-OUT
TOST
TPLL
PLL TIME-OUT
Interno de reset
Nota: Tost = 1024 ciclos de clock.
TPLL H 2 ms mx. As trs primeiras etapas do timer Power-up.
v 2009 Microchip Technology Inc. DS39632E-pgina 51
PIC18F2455/2550/4455/4550
4.6 Redefinir Estado de Registros
A maioria dos registros no so afetados por um Reset. Seu status
desconhecido em POR e inalterada por todos os outros
Redefine. Os outros registros so obrigados a um "Reset
Estado "dependendo do tipo de reposio que ocorreu.
A maioria dos registros no so afetados por um WDT acordar,
uma vez que este visto como a retomada do normal fun-
rao. Bits de status do registo RCON, RI, TO, PD,
POR e BOR, so definidos ou cancelado de forma diferente em
diferentes
Repor situaes, tal como indicado no Quadro 4-3. Estes bits
so utilizados no software para determinar a natureza da
Redefinir.
Tabela 4-4 descreve os estados Redefinir para toda a
Funo Especial Registradores. Estes so categorizados pela
Power-on e Brown-out Redefine, Master Clear e
WDT Redefine e WDT wake-ups.
TABELA 4-3: Bits de status, o seu significado ea condio INITIALIZATION
RCON PARA REGISTRO
Condio
Programa
Contador
0000h
0000h
0000h
0000h
0000h
0000h
0000h
0000h
0000h
0000h
PC + 2
PC + 2(1)
RCON Registrar
RI
1
0
1
u
u
u
u
u
u
u
u
u
TO
1
u
1
1
1
0
u
u
u
u
0
u
PD
1
u
1
u
0
u
u
u
u
u
0
0
STKPTR Registrar
STKUNF
0
u
u
u
u
u
u
u
1
1
u
u
POR BOR STKFUL
0
u
u
u
u
u
u
u
u
u
u
u
0
u
0
u
u
u
u
u
u
u
u
u
0
u
u
u
u
u
u
1
u
u
u
u
Power-on reset
REAJUSTE instruo
Brown-out reset
MCLR reset durante poder de gesto Run
modos
MCLR reset durante poder de gesto Ocioso
modos e modo de suspenso
WDT tempo limite durante a potncia total ou
modos de execuo de gerenciamento de
energia
Redefinir MCLR durante a execuo plena potncia
Pilha Reinicializao Completa (STVREN =
1)
Pilha Reiniciar Underflow (STVREN = 1)
Pilha de erro de estouro negativo (no um reset real,
STVREN = 0)
WDT time-out durante poder de gesto ou inativo
Modos de suspenso
Interromper a sada dos modos de potncia
gerenciados
Legenda: u= Inalterado
Nota 1: Quando o wake-up devido a uma interrupo eo GIEH ou giel bits so definidos, o PC carregado com o
vetor de interrupo (008h ou 0018h).
2: Redefinir estado '1 'para POR e inalterados para todos os outros Reinicia quando BOR software est habilitado
(BOREN1: BOREN0 bits de configurao = 01 e SBOREN = 1); caso contrrio, o estado de reinicializao '0 '.
DS39632E-pgina 52 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 4-4:
Registrar
CONDIES inicializao para todos os registos
Dispositivos aplicveis
Power-on Reset,
Brown-out reset
--- 0 0000
0000 0000
0000 0000
00-0 0000
--- 0 0000
0000 0000
0000 0000
- 00 0000
0000 0000
0000 0000
0000 0000
xxxx xxxx
xxxx xxxx
0000 x 000
1111 -1-1
11-0 0-00
N / D
N / D
N / D
N / D
N / D
---- 0000
xxxx xxxx
xxxx xxxx
N / D
N / D
N / D
N / D
N / D
---- 0000
xxxx xxxx
---- 0000
MCLR Redefine,
WDT Reset,
REAJUSTE Instruo,
Stack Redefine
--- 0 0000
0000 0000
0000 0000
uu-0 0000
--- 0 0000
0000 0000
0000 0000
- 00 0000
0000 0000
0000 0000
0000 0000
uuuu uuuu
uuuu uuuu
0000 000u
1111 -1-1
11-0 0-00
N / D
N / D
N / D
N / D
N / D
---- 0000
uuuu uuuu
uuuu uuuu
N / D
N / D
N / D
N / D
N / D
---- 0000
uuuu uuuu
---- 0000
Wake-up via WDT
ou Interrupo
--- 0 uuuu(1)
uuuu uuuu(1)
uuuu uuuu(1)
uu-u uuuu(1)
--- U uuuu
uuuu uuuu
PC + 2(3)
- Uu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu(2)
uuuu-u-u(2)
uu-u u-uu(2)
N / D
N / D
N / D
N / D
N / D
---- Uuuu
uuuu uuuu
uuuu uuuu
N / D
N / D
N / D
N / D
N / D
---- Uuuu
uuuu uuuu
---- Uuuu
TOSU
TOSH
TOSL
STKPTR
PCLATU
PCLATH
PCL
TBLPTRU
TBLPTRH
TBLPTRL
Tablat
PRODH
Prdl
INTCON
INTCON2
INTCON3
INDF0
POSTINC0
POSTDEC0
PREINC0
PLUSW0
FSR0H
FSR0L
WREG
INDF1
POSTINC1
POSTDEC1
PREINC1
PLUSW1
FSR1H
FSR1L
BSR
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
Legenda: u= Inalterado, x= Desconhecido, -= Bit no implementado, ler como '0 ', q= Valor depende do estado.
As clulas sombreadas indicam condies no se aplicam para o dispositivo designado.
Nota 1: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o TOSU, Tosh e TOSL so
atualizado com o valor atual do PC. O STKPTR modificada para apontar para a prxima posio no
hardware pilha.
2: Um ou mais bits nos registradores INTCONx ou pirx sero afetados (para causar wake-up).
3: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o PC carregado com a interrupo
vetor (0008H ou 0018h).
4: Consulte a Tabela 4-3 para Reiniciar valor para a condio especfica.
5: PORTA <6>, LATA <6> e TRISA <6> esto activadas, dependendo do modo seleccionado de oscilador. Quando no est
habilitado como PORTA pinos, eles so desativados e ler '0 '.
v 2009 Microchip Technology Inc. DS39632E-pgina 53
PIC18F2455/2550/4455/4550
TABELA 4-4:
Registrar
CONDIES inicializao para todos os registos (CONTINUAO)
Dispositivos aplicveis
Power-on Reset,
Brown-out reset
N / D
N / D
N / D
N / D
N / D
---- 0000
xxxx xxxx
--- X xxxx
0000 0000
xxxx xxxx
1111 1111
0100 Q000
0-00 0101
------- 0
0q-1 11q0
xxxx xxxx
xxxx xxxx
0000 0000
0000 0000
1111 1111
-000 0000
xxxx xxxx
0000 0000
0000 0000
0000 0000
0000 0000
xxxx xxxx
xxxx xxxx
- 00 0000
- 00 0qqq
0-00 0000
MCLR Redefine,
WDT Reset,
REAJUSTE Instruo,
Stack Redefine
N / D
N / D
N / D
N / D
N / D
---- 0000
uuuu uuuu
--- U uuuu
0000 0000
uuuu uuuu
1111 1111
0100 00q0
0-00 0101
------- 0
0q-q qquu
uuuu uuuu
uuuu uuuu
u0uu uuuu
0000 0000
1111 1111
-000 0000
uuuu uuuu
0000 0000
0000 0000
0000 0000
0000 0000
uuuu uuuu
uuuu uuuu
- 00 0000
- 00 0qqq
0-00 0000
Wake-up via WDT
ou Interrupo
N / D
N / D
N / D
N / D
N / D
---- Uuuu
uuuu uuuu
--- U uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuqu
u-uu uuuu
------- U
uq-u qquu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
1111 1111
-Uuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
- Uu uuuu
- Uu uuuu
u-uu uuuu
INDF2
POSTINC2
POSTDEC2
PREINC2
PLUSW2
FSR2H
FSR2L
STATUS
TMR0H
TMR0L
T0CON
OSCCON
HLVDCON
WDTCON
RCON
(4)
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
TMR1H
TMR1L
T1CON
TMR2
PR2
T2CON
SSPBUF
SSPADD
SSPSTAT
SSPCON1
SSPCON2
ADRESH
ADRESL
ADCON0
ADCON1
ADCON2
Legenda: u= Inalterado, x= Desconhecido, -= Bit no implementado, ler como '0 ', q= Valor depende do estado.
As clulas sombreadas indicam condies no se aplicam para o dispositivo designado.
Nota 1: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o TOSU, Tosh e TOSL so
atualizado com o valor atual do PC. O STKPTR modificada para apontar para a prxima posio no
hardware pilha.
2: Um ou mais bits nos registradores INTCONx ou pirx sero afetados (para causar wake-up).
3: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o PC carregado com a interrupo
vetor (0008H ou 0018h).
4: Consulte a Tabela 4-3 para Reiniciar valor para a condio especfica.
5: PORTA <6>, LATA <6> e TRISA <6> esto activadas, dependendo do modo seleccionado de oscilador. Quando no est
habilitado como PORTA pinos, eles so desativados e ler '0 '.
DS39632E-pgina 54 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 4-4:
Registrar
CONDIES inicializao para todos os registos (CONTINUAO)
Dispositivos aplicveis
Power-on Reset,
Brown-out reset
xxxx xxxx
xxxx xxxx
- 00 0000
0000 0000
xxxx xxxx
xxxx xxxx
- 00 0000
0100 0-00
0000 0000
0000 0000
0000 0000
0000 0111
xxxx xxxx
xxxx xxxx
0000 0000
0000 0000
0000 0000
0000 0000
0000 0000
0000 0010
0000 x 000
0000 0000
0000 0000
0000 0000
xx-0 x000
MCLR Redefine,
WDT Reset,
REAJUSTE Instruo,
Stack Redefine
uuuu uuuu
uuuu uuuu
- 00 0000
0000 0000
uuuu uuuu
uuuu uuuu
- 00 0000
0100 0-00
0000 0000
0000 0000
0000 0000
0000 0111
uuuu uuuu
uuuu uuuu
uuuu uuuu
0000 0000
0000 0000
0000 0000
0000 0000
0000 0010
0000 x 000
0000 0000
0000 0000
0000 0000
uu-0 U000
Wake-up via WDT
ou Interrupo
uuuu uuuu
uuuu uuuu
- Uu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
- Uu uuuu
uuuu u-uu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
uuuu uuuu
0000 0000
uu-0 U000
CCPR1H
CCPR1L
CCP1CON
CCPR2H
CCPR2L
CCP2CON
BAUDCON
ECCP1DEL
ECCP1AS
CVRCON
CMCON
TMR3H
TMR3L
T3CON
SPBRGH
SPBRG
RCREG
TXREG
TXSTA
RCSTA
EEADR
EEDATA
EECON2
EECON1
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
Legenda: u= Inalterado, x= Desconhecido, -= Bit no implementado, ler como '0 ', q= Valor depende do estado.
As clulas sombreadas indicam condies no se aplicam para o dispositivo designado.
Nota 1: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o TOSU, Tosh e TOSL so
atualizado com o valor atual do PC. O STKPTR modificada para apontar para a prxima posio no
hardware pilha.
2: Um ou mais bits nos registradores INTCONx ou pirx sero afetados (para causar wake-up).
3: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o PC carregado com a interrupo
vetor (0008H ou 0018h).
4: Consulte a Tabela 4-3 para Reiniciar valor para a condio especfica.
5: PORTA <6>, LATA <6> e TRISA <6> esto activadas, dependendo do modo seleccionado de oscilador. Quando no est
habilitado como PORTA pinos, eles so desativados e ler '0 '.
v 2009 Microchip Technology Inc. DS39632E-pgina 55
PIC18F2455/2550/4455/4550
TABELA 4-4:
Registrar
CONDIES inicializao para todos os registos (CONTINUAO)
Dispositivos aplicveis
Power-on Reset,
Brown-out reset
1111 1111
0000 0000
0000 0000
1111 1111
-111 1111
0000 0000
-000 0000
0000 0000
-000 0000
0 - 0 0000
----- 111
1111 1111
11 --- 111
1111 1111
-111 1111
----- Xxx
xxxx xxxx
xx - xxx-
xxxx xxxx
-Xxx xxxx(5)
0 --- x000
xxxx xxxx
xxxx-xxx
xxxx xxxx
-X0x 0000(5)
(5)
MCLR Redefine,
WDT Reset,
REAJUSTE Instruo,
Stack Redefine
1111 1111
0000 0000
0000 0000
1111 1111
-111 1111
0000 0000
-000 0000
0000 0000
-000 0000
0 - 0 0000
----- 111
1111 1111
11 --- 111
1111 1111
-111 1111
----- Uuu
uuuu uuuu
uu -, uuu
uuuu uuuu
-Uuu uuuu(5)
0 --- x000
uuuu uuuu
uuuu-uuu
uuuu uuuu
-U0u 0000(5)
(5)
Wake-up via WDT
ou Interrupo
uuuu uuuu
uuuu uuuu(2)
uuuu uuuu
uuuu uuuu
-Uuu uuuu
uuuu uuuu(2)
-Uuu uuuu
uuuu uuuu
-Uuu uuuu
u - u uuuu
----- Uuu
uuuu uuuu
uu -, uuu
uuuu uuuu
-Uuu uuuu(5)
----- Uuu
uuuu uuuu
uu -, uuu
uuuu uuuu
-Uuu uuuu(5)
u --- uuuu
uuuu uuuu
uuuu-uuu
uuuu uuuu
-Uuu uuuu(5)
IPR2
PIR2
PIE2
IPR1
PIR1
PIE1
OSCTUNE
Trise
TRISD
TRISC
TRISB
TRISA
LATE
LATD
LATC
LATB
LATA(5)
PORTE
PORTD
PORTC
PORTB
PORTA(5)
(5)
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
Legenda: u= Inalterado, x= Desconhecido, -= Bit no implementado, ler como '0 ', q= Valor depende do estado.
As clulas sombreadas indicam condies no se aplicam para o dispositivo designado.
Nota 1: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o TOSU, Tosh e TOSL so
atualizado com o valor atual do PC. O STKPTR modificada para apontar para a prxima posio no
hardware pilha.
2: Um ou mais bits nos registradores INTCONx ou pirx sero afetados (para causar wake-up).
3: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o PC carregado com a interrupo
vetor (0008H ou 0018h).
4: Consulte a Tabela 4-3 para Reiniciar valor para a condio especfica.
5: PORTA <6>, LATA <6> e TRISA <6> esto activadas, dependendo do modo seleccionado de oscilador. Quando no est
habilitado como PORTA pinos, eles so desativados e ler '0 '.
DS39632E-pgina 56 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 4-4:
Registrar
CONDIES inicializao para todos os registos (CONTINUAO)
Dispositivos aplicveis
Power-on Reset,
Brown-out reset
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
00-0 0000
-000 0000
0x0-000 -
-Xxx-xxx
0 - 0 0000
0 - 0 0000
-000 0000
-000 0000
----- Xxx
xxxx xxxx
------ 00
00-0 0000
0000 0000
0000 0000
MCLR Redefine,
WDT Reset,
REAJUSTE Instruo,
Stack Redefine
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
00-0 0000
-000 0000
0x0-000 -
-Xxx-xxx
0 - 0 0000
0 - 0 0000
-000 0000
-000 0000
----- Xxx
xxxx xxxx
------ 00
00-0 0000
0000 0000
0000 0000
Wake-up via WDT
ou Interrupo
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
--- U uuuu
uu-u uuuu
-Uuu uuuu
-Uuu uuu-
-Uuu uuu-
u - u uuuu
u - u uuuu
-Uuu uuuu
-Uuu uuuu
----- Uuu
uuuu uuuu
------ Uu
uu-u uuuu
uuuu uuuu
uuuu uuuu
UEP15
UEP14
UEP13
UEP12
UEP11
UEP10
UEP9
UEP8
UEP7
UEP6
UEP5
UEP4
UEP3
UEP2
UEP1
UEP0
UCFG
UADDR
UCON
USTAT
UEIE
UEIR
UIE
UIR
UFRMH
UFRML
SPPCON
SPPEPS
SPPCFG
SPPDATA
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
2455 2550 4455 4550
Legenda: u= Inalterado, x= Desconhecido, -= Bit no implementado, ler como '0 ', q= Valor depende do estado.
As clulas sombreadas indicam condies no se aplicam para o dispositivo designado.
Nota 1: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o TOSU, Tosh e TOSL so
atualizado com o valor atual do PC. O STKPTR modificada para apontar para a prxima posio no
hardware pilha.
2: Um ou mais bits nos registradores INTCONx ou pirx sero afetados (para causar wake-up).
3: Quando o wake-up devido a uma interrupo eo bit giel ou GIEH est definido, o PC carregado com a interrupo
vetor (0008H ou 0018h).
4: Consulte a Tabela 4-3 para Reiniciar valor para a condio especfica.
5: PORTA <6>, LATA <6> e TRISA <6> esto activadas, dependendo do modo seleccionado de oscilador. Quando no est
habilitado como PORTA pinos, eles so desativados e ler '0 '.
v 2009 Microchip Technology Inc. DS39632E-pgina 57
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E-pgina 58 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
5 Organizao da memria 5.1 Organizao da memria do programa
Existem trs tipos de memria em PIC18 maior
dispositivos microcontrolador:
Memria de Programa
RAM de dados
EEPROM de dados
Como os dispositivos de Harvard arquitetura, os dados e os
programas
memrias usar nibus separados, o que permite con-
acesso atual dos dois espaos de memria. Os dados
EEPROM, para fins prticos, pode ser considerada
um dispositivo perifrico, uma vez que dirigida e acessados
atravs de um conjunto de registos de controlo.
Informaes detalhadas adicionais sobre o funcionamento do
Memria de programa de inflamao fornecido em Seo 6.0
"Memria de Programa Flash". Dados EEPROM
discutido separadamente Seo 7.0 "EEPROM de dados
Memria ".
Microcontroladores PIC18 implementar um programa de 21-bit
contra o qual capaz de dirigir a 2 Mbyte
espao de memria do programa. Acessar uma posio entre
o limite superior da fisicamente implementado
memria eo endereo de 2 Mbyte retornar todos '0 's (a
NOP instruo).
O PIC18F2455 e PIC18F4455 cada um tem 24 Kbytes
de memria Flash e pode armazenar at 12.288 nica palavra
instrues. O PIC18F2550 e PIC18F4550 cada
tm 32 Kbytes de memria Flash e pode armazenar at
16.384 instrues de uma s palavra.
Dispositivos PIC18 tem dois vetores de interrupo. O reset
endereo vetor est em 0000h eo vetor de interrupo
endereos esto no 0008H e 0018h.
Os mapas de memria de programa para PIC18FX455 e
PIC18FX550 dispositivos so mostrados na Figura 5-1.
Figura 5-1: PROGRAMA MAPA DE MEMRIA E PILHA
24 Dispositivos Kbytes
PC <20:00>
32 Dispositivo Kbyte
PC <20:00>
Chamada, RCALL, retorno,
RETFIE, RETLW, CALLW,
ADDULNK, SUBULNK
Chamada, RCALL, retorno,
RETFIE, RETLW, CALLW,
ADDULNK, SUBULNK
21 21
Pilha Nvel 1



Pilha Nvel 1



Pilha Nvel 31
Redefinir Vector 0000h
Pilha Nvel 31
Redefinir Vector 0000h
Vetor de interrupo 0008H alta prioridade
Vetor de interrupo 0018h de baixa prioridade
On-Chip
Memria de Programa
5FFFh
6000h
Vetor de interrupo 0008H alta prioridade
Vetor de interrupo 0018h de baixa prioridade
On-Chip
Memria de Programa
Espao
Memria do
Usurio
Espao
Memria do
Usurio
7FFFh
8000h
Leia '0 '
Leia '0 '
1FFFFFh
200000h
1FFFFFh
200000h
v 2009 Microchip Technology Inc. DS39632E-pgina 59
PIC18F2455/2550/4455/4550
5.1.1 Contador de programa
O contador do programa (PC) especifica o endereo do
instruo para buscar para a execuo. O PC de 21 bits de largura
e est contida em trs registos separados de 8 bits. O
byte baixo, conhecido como o registo PCL, tanto legvel
e gravvel. A alta byte, ou PCH registo, contm
o PC <15:08> pedaos, mas no de fcil leitura ou escrita.
Atualizaes para o registo PCH so realizadas atravs do
PCLATH registo. O byte superior chamado PCU. Este
registro contm o PC <20:16> bits; tambm no
diretamente lidos ou escritos. Atualizaes para o PCU
registo so realizadas atravs do registo PCLATU.
O contedo de PCLATH e PCLATU so transferidos
para o contador do programa por qualquer operao que escreve
PCL. Do mesmo modo, os dois bytes superiores do programa
contador transferido para PCLATH e por um PCLATU
operao que l PCL. Isto til para computadorizada
compensaes para o PC (ver O ponto 5.1.4.1 "Computed
GOTO ").
O PC bytes endereos na memria de programa. A
impedir que o PC fique desalinhado com a palavra
instrues, o bit menos significativo do PCL fixado em
um valor de '0 '. Os incrementos de PC por 2 a resolver
instrues seqenciais na memria do programa.
O Chamada, RCALL e GOTO ramo programa
instrues de escrever para o contador de programa diretamente.
Para
estas instrues, o contedo de PCLATH e
PCLATU no so transferidas para o contador do programa.
A pilha funciona como uma palavra-31 por 21 bits e uma memria
RAM
Stack Pointer 5 bits, STKPTR. O espao de pilha no
parte de qualquer programa espacial ou de dados. O ponteiro da
pilha
legvel e gravvel eo endereo no topo da
a pilha leitura e escrita atravs do
Top-of-Stack Funo Especial Registradores. Os dados podem
tambm
ser empurrada, ou removido da pilha, usando estes
registra.
ACHAMADA instruo tipo provoca um impulso para a pilha.
O ponteiro da pilha o primeiro incrementado ea localizao
apontado pelo ponteiro Stack escrito com a
contedo do PC (j que aponta para a instruo
seguindo o Chamada). ARETORNO causas de instruo do tipo
um pop da pilha. O contedo da localizao
apontada pelo STKPTR so transferidos para o computador
e, em seguida, o ponteiro da pilha decrementado.
O ponteiro da pilha inicializado para '00000 'depois de tudo
Redefine. No h RAM associado com a localizao
correspondente a um valor de ponteiro Pilha de '00000 ', o que
apenas um valor Reset. Bits de status indica se a pilha est
cheio, transbordou ou tenha underflowed.
5.1.2.1 Acesso Top-of-Stack
5.1.2 RETORNO pilha de endereos
A pilha de endereos de retorno permite qualquer combinao de
at
para 31 chamadas do programa e interrompe a ocorrer. O PC
empurrado para a pilha quando um CHAMADA ou RCALL instru-
o executado ou uma interrupo reconhecida. O
Valor PC puxado para fora da pilha numa Retorno, RETLW ou
umRETFIE instrues. PCLATU e no so PCLATH
afectada por qualquer um dos RETORNO ou CHAMADA instrues.
Apenas a parte superior da pilha de endereo de retorno (TOS) est
legvel e gravvel. Um conjunto de trs registos,
TOSU: TOSH: TOSL, armazenar o contedo da pilha de loca-
o apontada pelo registo STKPTR (Figura 5-2). Este
permite que os usurios para implementar uma pilha de software, se
necessrio.
Aps Chamada, RCALL ou de interrupo, o software pode ler
o valor empurrado pela leitura do TOSU: TOSH: TOSL
registra. Estes valores podem ser colocados em um definido pelo
utilizador
pilha de software. No momento da troca, o software pode retornar
esses valores para TOSU: Tosh: TOSL e fazer um retorno.
O usurio deve desativar a interrupo globais permitem pedaos
ao acessar a pilha para evitar pilha inadvertida
corrupo.
Figura 5-2: RETORNO pilha de endereos de e registra ASSOCIADOS
Voltar Stack Endereo <20:00>
11111
11110
11101
Top-of-Stack Registra
TOSU
00h
TOSH
1Ah
TOSL
34h
Top-of-Stack
001A34h
000D58h
Stack Pointer
STKPTR <4:00>
00010
00011
00010
00001
00000
DS39632E-pgina 60 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
5.1.2.2 Voltar Pointer Stack (STKPTR)
O registo STKPTR (Register 5-1) contm a pilha
Valor do ponteiro, o STKFUL (Stack Full) bit de status e
o STKUNF (Underflow Stack) bit de status. O valor de
o ponteiro da pilha pode ser de 0 a 31. O Stack
Incrementos ponteiro antes os valores so colocados na
empilhar e diminui aps os valores so bateu fora o
empilhar. Em Reset, o valor do ponteiro de pilha ser igual a zero.
O usurio pode ler e escrever o valor do ponteiro de pilha.
Esta caracterstica pode ser usada por uma operao em tempo real
System (RTOS) para manuteno da pilha de retorno.
Depois que o PC empurrado para a pilha de 31 vezes (sem
surgindo quaisquer valores do stack), o bit STKFUL
definido. O bit STKFUL desmarcada por software ou por uma
POR.
A ao que ocorre quando a pilha se torna
completo depende do estado do STVREN (Pilha
Restaurar Ativar Overflow) bit de configurao. (Consulte a
Seo 25.1 "Bits de Configurao" para uma descrio de
os bits de configurao do dispositivo.) Se STVREN est definido
(Default), o impulso 31 vai empurrar o valor (PC + 2)
na pilha, defina o bit STKFUL e redefinir o
dispositivo. O bit STKFUL permanecer set ea Pilha
Pointer ser definido para zero.
Se STVREN estiver desmarcada, o bit STKFUL ser definido no
31 de presso e o ponteiro da pilha ser incrementado para 31.
Qualquer adicional empurra no substituir o impulso 31
eo STKPTR permanecer em 31.
Quando a pilha tenha sido estalou vezes suficiente para
descarregar a pilha, a prxima pop ir retornar um valor de zero
para o PC e define o bit STKUNF, enquanto a pilha
Ponteiro permanece em zero. O bit STKUNF permanecer
definir at que seja limpa por software ou at um POR ocorre.
Nota: Retornando um valor de zero para o PC em um
underflow tem o efeito de vetorizao do
programa para o vector de Reset, onde o
condies de pilha pode ser verificada e
aes apropriadas possam ser tomadas. Isto
no o mesmo como um Reset, como o contedo
dos SFRs no so afetados.
5.1.2.3 IMPULSO e POP Instrues
Desde o Top-of-Stack leitura e escrita, o
capacidade de empurrar os valores para a pilha e puxe valores fora
da pilha, sem programao normal perturbador execu-
o, uma caracterstica desejvel. O conjunto de instrues PIC18
inclui duas instrues, IMPULSO e POP, que permitam
TOS para ser manipulado sob controle de software.
TOSU, TOSL Tosh e podem ser modificados para colocar dados
ou um endereo de retorno na pilha.
O IMPULSO instruo coloca o valor atual para PC
a pilha. Isso aumenta o ponteiro da pilha e cargas
o valor atual do PC na pilha.
O POP instruo descarta as TOS atuais por decre-
mentao o ponteiro da pilha. O valor anterior empurrado
na pilha torna-se ento o valor TOS.
CADASTRE-SE 5-1:
R/C-0
STKFUL(1)
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
STKPTR: ponteiro de pilha REGISTRO
R/C-0 U-0
-
R/W-0
SP4
R/W-0
SP3
R/W-0
SP2
R/W-0
SP1
R/W-0
SP0
bit 0
C = bit Apagvel
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
STKUNF(1)
STKFUL: Stack Full Flag bit(1)
1= Stack tornou-se total ou transbordou
0= Stack no se tornou completo ou transbordou
STKUNF: Pilha Bandeira Underflow bit(1)
1= Estouro de pilha ocorreu
0= Estouro de pilha no ocorreu
Unimplemented: Leia como '0 '
SP4: SP0: Stack Pointer Localizao pedaos
Bit 7 e 6 bit so apuradas pelo software usurio ou por um POR.
bit 6
bit 5
bit 4-0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E-pgina 61
PIC18F2455/2550/4455/4550
5.1.2.4 Pilha completa e Underflow Redefine 5.1.4
Redefine dispositivo em estouro de pilha e estouro de pilha
condies esto habilitados definindo o bit STVREN em
Configurao Register 4L. Quando STVREN est definida, um total
de
ou condio de underflow ir definir o STKFUL apropriado
ou STKUNF pouco e, em seguida, provocar uma redefinio do
dispositivo. Quando
STVREN estiver desmarcada, uma condio total ou underflow ir
definir
o bit STKFUL ou STKUNF adequado, mas no causam
um dispositivo de reset. Os bits so STKFUL ou STKUNF
apuradas pelo software usurio ou um Power-on Reset.
TABELAS look-up do programa
MEMRIA
Pode haver situaes que requerem a programao
criao de estruturas de dados, ou procurar-se tabelas,
memria de programa. Para os dispositivos PIC18, procure-up
tabelas
pode ser implementada de duas maneiras:
computadorizada GOTO
Tabela L
5.1.4.1 Computadorizada GOTO
5.1.3 RPIDO registro da pilha
Um registo Stack rpido fornecido para o STATUS,
WREG e BSR registra a fornecer um "retorno rpido"
opo para interrupes. Cada pilha apenas um nvel de
profundidade
e no legvel, nem gravvel. carregado com o
valor atual do registro correspondente, quando a
vetores de processador para uma interrupo. Todas as fontes de
interrupo
vai empurrar os valores para os registros da pilha. Os valores
os registros so carregados de volta para o seu associado
regista-se o RETFIE, RPIDO de instrues utilizado para
retornar da interrupo.
Se ambas as interrupes de baixa e de alta prioridade so
ativados, o
registros da pilha no pode ser usado com segurana para retornar
a partir de
interrupes de baixa prioridade. Se ocorre uma interrupo de alta
prioridade
enquanto atende uma interrupo de baixa prioridade, a pilha
registar valores armazenados pela interrupo de baixa prioridade
ser
ser substitudo. Nestes casos, os usurios devem guardar a chave
registros em software durante uma interrupo de baixa prioridade.
Se a prioridade de interrupo no utilizado, todas as interrupes
podem utilizar o
Registre rpido Stack para retornos de interrupo. Se nenhum
as interrupes so usados, o rpido registro da pilha pode ser
usado para restaurar o STATUS, WREG e BSR registra
no fim de uma chamada de subrotina. Para usar o Registro Rpido
Pilha para uma chamada de sub-rotina, um Etiqueta CALL,
RPIDO
instruo deve ser executada para salvar o STATUS,
WREG e BSR registra o rpido Register Stack. A
RETORNO, RPIDO instruo ento executado para restaurar
estes registros do rpido Register Stack.
Exemplo 5-1 mostra um exemplo de cdigo fonte que usa
o rpido Register Stack durante uma chamada de sub-rotina e
voltar.
A computadorizada GOTO realizado por adio de um
deslocamento
para o contador do programa. Um exemplo mostrado nas
Exemplo 5-2.
Uma tabela de consulta pode ser formado com um ADDWF PCL
instruo e um grupo de RETLW nn instrues. O
Registo W carregado com um deslocamento na tabela antes
execuo de uma chamada para que a tabela. A primeira instruo
do
representa a rotina de chamada ADDWF PCL instrues. O prximo
instrues ser executado um dos RETLW nn
instrues que retorna o valor 'nn' ao chamado
funo.
O valor de deslocamento (em WREG) especifica o nmero de
bytes que o contador de programa deve avanar e
deve ser mltiplos de 2 (LSB = 0).
Neste mtodo, somente um byte de dados podem ser armazenados
em
cada local e sala de instruo sobre o retorno
pilha de endereo necessrio.
Exemplo 5-2:
MOVF
CHAMADA
nn00h
ADDWF
RETLW
RETLW
RETLW
.
.
.
COMPUTED GOTO UTILIZAO
Um valor de deslocamento
DESVIO, W
TABELA
PCL
NNL
NNL
NNL
ORG
TABELA
5.1.4.2 Tabela L e Escreve Tabela
EXEMPLO 5-1:
CHAMADA SUB1, RPIDO


SUB1
RPIDO registro da pilha
Exemplo de cdigo
, STATUS, WREG, BSR
, Salvo no registrador RPIDO
, PILHA
A melhor forma de armazenar dados na memria do programa
permite que dois bytes de dados a serem armazenados em cada
instruo
localizao.
Olhe para cima os dados da tabela podem ser armazenadas por
dois bytes
programa Word usando a tabela l e escreve. O
Tabela Pointer (TBLPTR) registro especifica o byte
endereo eo Trava Table (Tablat) registo
contm os dados que so lidos ou gravados para o programa
memria. Os dados so transferidos para ou a partir do programa
memria de um byte de cada vez.
Tabela operaes de leitura e gravao de mesa so discutidos
ainda mais em Seo 6.1 "Tabela L e Tabela
Escreve ".


RETORNO, RPIDO
, Restaurar os valores SALVO
; Em fast PILHA REGISTRO
DS39632E-pgina 62 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
5.2
5.2.1
Ciclo de Instruo PIC18
Overclock ESQUEMA
5.2.2 INSTRUES DE FLUXO / PIPELINING
A entrada de relgio do microcontrolador, quer a partir de um
de origem interna ou externa, est dividida internamente por quatro
para gerar quatro relgios no sobrepostos quadratura
(Q1, Q2, Q3 e Q4). Internamente, o contador de programa
incrementado em cada Q1, a instruo buscada
a partir da memria de programa e travada no instru-
o Register (IR) durante Q4. A instruo descodificado
e executado durante o seguinte Q1 atravs Q4. O
relgios e fluxo de execuo das instrues so apresentadas na
Figura 5-3.
Um "ciclo de instruo" composto por quatro ciclos Q: Q1
atravs Q4. A instruo buscar e executar so pipe-
alinhadas de tal maneira que uma tira buscar uma instruo
ciclo, enquanto a decodificao e execuo leva outro
ciclo de instruo. No entanto, devido canalizao, cada
instruo efectivamente executada em um ciclo. Se um
instruo faz com que o contador de programa para alterar (por
exemplo,
GOTO), depois de dois ciclos so necessrios para completar a
instruo (Exemplo 5-3).
Um ciclo de busca comea com o contador de programa (PC)
incrementado em Q1.
No ciclo de execuo da instruo buscada trancada
para o registrador de instruo (IR) no 1 trimestre de ciclo. Este
instruo ento descodificado e executado durante o
Q2, Q3 e Q4 ciclos. A memria de dados lido durante Q2
(Operando leitura) e escrito durante Q4 (destino
escrever).
Figura 5-3:
OSC1
Q1
Q2
Q3
Q4
PC
OSC2/CLKO
(Modo RC)
CLOCK / CICLO DE INSTRUES
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
Interno
Fase
Relgio
PC PC + 2 + PC 4
Executar INST (PC - 2)
Buscar INST (PC)
Executar INST (PC)
Buscar INST (PC + 2)
Executar INST (PC + 2)
Buscar INST (PC + 4)
Exemplo 5-3: INSTRUO PIPELINE DE FLUXO
TCY0 TCY1
Executar um
Fetch 2 Executar 2
Fetch 3 Execute 3
Fetch 4 Lave (NOP)
Buscar SUB_1 Executar SUB_1
TCY2 TCY3 TCY4 TCY5
1. MOVLW 55h
2. MOVWF PORTB
3. BRA
4. BSF
SUB_1
Buscar uma
PORTA, Bit3 (Forced NOP)
5. Instruo @ endereo SUB_1
Nota: Todas as instrues so de ciclo nico, com exceo de todas as filiais do programa. Estes tm dois ciclos desde a
buscar
instruo "liberado" do gasoduto, enquanto a nova instruo est sendo buscado e, em seguida, executado.
v 2009 Microchip Technology Inc. DS39632E-pgina 63
PIC18F2455/2550/4455/4550
5.2.3 Instrues em um programa
MEMRIA
A memria de programa abordada em bytes. Instru-
es so armazenados como bytes de dois ou quatro bytes no
programa
memria. O byte menos significativo de uma instruo
palavra sempre armazenado em um local de memria de
programa
com um mesmo endereo (LSB = 0). Para manter o alinhamento
com limites de instruo, incrementa o PC em etapas
de 2 ea LSB vai sempre ler '0 '(ver Seo 5.1.1
"Contador de Programa").
A figura 5-4 mostra um exemplo de como a instruo palavras
so armazenadas na memria de programa.
O CHAMADA e GOTO instrues tm o absoluto
programa endereo de memria embutido no instru-
o. Como as instrues so sempre armazenados na palavra
limites, os dados contidos na instruo uma
endereo de palavra. O endereo da palavra escrita para PC
<20:01>,
que acessa o endereo do byte desejado no programa
memria. Instruo N 2 na Figura 5-4 mostra como o
instruo GOTO 0006h, codificado no programa
memria. Instrues de desvio do programa, que codificam a
endereo relativo compensado, funcionam da mesma maneira. O
valor de desvio armazenada numa instruo de ramificao
representa o
nmero de instrues de uma s palavra que o PC ser
compensada por. Seo 26.0 "Instruction Set Summary"
fornece mais detalhes sobre o conjunto de instrues.
Figura 5-4: INSTRUES na memria de programa
Memria de Programa
Locais Byte
LSB = 1 LSB = 0
Palavra Endereo

000000h
000002h
000004h
000006h
000008h
00000Ah
00000Ch
00000Eh
000010h
000012h
000014h
Instruo 1:
Instruo 2:
Instruo 3:
MOVLW
GOTO
MOVFF
055H
0006h
123h, 456h
0Fh
Efh
F0h
C1h
F4h
55h
03h
00h
23h
56h
5.2.4 INSTRUES duas palavras
O conjunto de instrues padro PIC18 tem quatro de duas palavras
instrues: CALL, MOVFF, GOTO e LSFR. Em todos
dos casos, a segunda palavra de as instrues tem sempre
'1111 'Como seus quatro bits mais significativos, os outros 12 bits
so dados literais, geralmente um endereo de memria de dados.
O uso de '1111 'nas quatro MSBS de uma instruo
especifica uma forma especial de NOP. Se a instruo
executado na sequncia adequada, imediatamente aps a
palavra em primeiro lugar, os dados da segunda palavra acessado
e
utilizado pela sequncia de instrues. Se a primeira palavra
ignorados por algum motivo, ea segunda palavra
executado por si s, uma NOP executada em vez disso. Isto
necessrios para os casos em que a instruo de duas palavras
precedida de uma instruo condicional que altera o
PC. Exemplo 5-4 mostra como isso funciona.
Nota: Ver Seo 5.5 "Memria e Programa
O conjunto de instrues estendida " para
informaes sobre o ensino de duas palavras no
instruo estendido definido.
Exemplo 5-4:
Caso 1:
Cdigo Objeto
INSTRUES duas palavras
Cdigo-Fonte
TSTFSZ
MOVFF
ADDWF
REG1 , a localizao RAM 0?
, Executar esta palavra como um NOP
Reg3 , Continue cdigo
REG1, REG2; No, pule esta palavra
0110 0110 0000 0000
1100 0001 0010 0011
1111 0100 0101 0110
0010 0100 0000 0000
Caso 2:
Cdigo Objeto
0110 0110 0000 0000
1100 0001 0010 0011
1111 0100 0101 0110
0010 0100 0000 0000
Cdigo-Fonte
TSTFSZ
MOVFF
ADDWF
REG1 , a localizao RAM 0?
, Segundo palavra de instruo
Reg3 , Continue cdigo
REG1, REG2; Sim, executar esta palavra
DS39632E-pgina 64 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
5.3
Nota:
Organizao da memria de dados
O funcionamento de alguns aspectos dos dados
memria so alterados quando o PIC18
conjunto de instrues estendida estiver ativada. Ver
Seo 5.6 "Memria de Dados eo
Alargado conjunto de instrues " Para mais
informao.
5.3.2 BANCO Selecione Registrar (BSR)
A memria de dados em dispositivos de PIC18 implementado
como
RAM esttica. Cada registo na memria de dados tem um
Endereo de 12 bits, permitindo at 4096 bytes de dados
memria. O espao de memria dividida em quantos
16banksthatcontain256byteseach.
PIC18F2455/2550/4455/4550 dispositivos implementar oito
bancos completos, para um total de 2048 bytes. Figura 5-5
mostra a organizao de memria de dados para os dispositivos.
A memria de dados contm registros de funes especiais
(SFR) e registradores de propsito geral (GPRS). O
SFR so usados para controle e status do controlador
e funes perifricas, enquanto GPRS so usados para dados
operaes de armazenamento e de rascunho em que o usurio do
aplicao. Qualquer leitura de um local no implementado vontade
lido como '0 's.
O conjunto de instrues e arquitetura permitir operaes
em todos os bancos. A memria de dados inteira pode ser
acessados por direta, indireta ou endereamento indexado
modos. Modos de endereamento so discutidos mais adiante neste
subseo.
Para garantir que os registos de uso geral (SFR e
selecione GPRS) pode ser acessado em um nico ciclo, PIC18
dispositivos implementar um Banco Access. Este um 256-byte
espao de memria que fornece acesso rpido a SFR e
a poro inferior do banco 0 GPR sem utilizar o
BSR. Seo 5.3.3 "Access Bank" fornece uma
Descrio detalhada da RAM de acesso.
Grandes reas de memria de dados requer um eficiente
esquema de endereamento para fazer um rpido acesso a
qualquer
tratar possvel. Idealmente, isso significa que um inteiro
endereo no precisa ser fornecida para cada leitura ou
escrever operao. Para os dispositivos PIC18, este acom-
zado com um sistema bancrio RAM. Isto divide a
espao de memria no 16 bancos contguos de 256 bytes.
Dependendo da instruo, cada local pode ser
dirigida diretamente pelo seu endereo de 12 bits completo, ou um
8-bit
Endereo de baixa ordem e um Pointer Banco de 4 bits.
A maioria das instrues do conjunto de instrues PIC18 fazer uso
do Pointer Bank, conhecido como o Bank Select Register
(BSR). Este SFR detm os 4 bits mais significativos de um
endereo de localizao, a prpria instruo inclui o
oito bits menos significativos. Apenas os quatro bits mais baixos de
o BSR so implementados (BSR3: BSR0). Os superiores
quatro bits no so usados, pois eles sempre iro ler '0 'e pode-
no ser gravado. A BSR pode ser carregado diretamente pelo
usando o MOVLB instrues.
O valor do BSR indica o banco de dados
memria. Os oito bits na instruo mostrar a loca-
o no banco e pode ser pensado como um deslocamento
limite inferior do banco. A relao entre
o valor da BSR e da diviso de banco de dados na memria
mostrado na Figura 5-6.
Uma vez que at dezesseis registradores podem compartilhar o
mesmo
Endereo de baixa ordem, o usurio deve sempre ter o cuidado de
garantir que o banco correto est selecionado antes de realizar-
o de dados ler ou escrever. Por exemplo, escrever o que
devem ser dados do programa para um endereo de F9H 8 bits,
enquanto o BSR 0Fh, vai acabar redefinir o programa
contrariar.
Embora qualquer banco podem ser selecionados, apenas os bancos
que
so realmente implementado pode ser lido ou escrito.
Escreve aos bancos no implementadas so ignorados, enquanto
l os bancos no implementadas retornar '0 's. Mesmo
assim, o registo STATUS ainda ser afetada, se o
operao foi bem sucedida. O mapa de memria de dados em
Figura 5-5 indica que os bancos so implementadas.
No conjunto de instrues PIC18 ncleo, apenas o MOVFF
instruo especifica totalmente o endereo de 12 bits do
origem e de destino registos. Esta instruo ignora o
BSR completamente quando ele executado. Todas as outras
instrues
incluir somente o endereo de baixa ordem como um operando e
deve usar a BSR ou o Banco de acesso para localizar
seu alvo registra.
5.3.1 RAM USB
Bancos de 4 a 7 da memria de dados so realmente
mapeada para a memria RAM de porta dupla especial. Quando o
USB
mdulo estiver desativado, o GPRs nestes bancos so usadas
como qualquer outro GPR no espao de memria de dados.
Quando o mdulo USB est habilitado, a memria nesses
bancos alocado como buffer de memria RAM para operao
USB.
Esta rea dividida entre o ncleo microcontrolador
ea srie Engine Interface USB (SIE) e usada
para transferir dados directamente entre os dois.
Teoricamente, possvel utilizar as reas de memria RAM USB
que no so atribudos como buffers USB para normalidade
memria de rascunho ou outro armazenamento varivel. Na pr-
tica, a natureza dinmica da alocao de buffer faz com que este
arriscada na melhor das hipteses. Alm disso, o banco 4 usado
para o tampo USB
gesto quando o mdulo habilitado e deve
no pode ser utilizado para outros fins durante esse tempo.
Informaes adicionais sobre a RAM USB e tampo
operao fornecida em Seo 17,0 "Universal
Serial Bus (USB) ".
v 2009 Microchip Technology Inc. DS39632E-pgina 65
PIC18F2455/2550/4455/4550
FIGURA 5-5:
BSR <3:00>
DATA MEMORY MAP
Mapa de dados da memria
Quando a = 0:
=0000
=0001
=0010
00h
Banco 0
FFh
00h
Banco 1
Banco 2
FFh
00h
Acesso RAM
GPR
GPR
000h
05Fh
060h
0FFh
100h
1FFh
200h
A BSR ignorado eo
Banco Access usado.
Os primeiros 96 bytes so
RAM de uso geral
(A partir do banco 0).
Os restantes 160 bytes so
Funo Especial Registra
(A partir de Banco 15).
Quando a = 1:
A BSR especifica o banco
usado pela instruo.
GPR
FFh
00h
GPR
FFh
00h
FFh
00h
FFh
00h
FFh
00h
FFh
00h
3FFh
400h
GPR(1)
4FFh
500h
GPR(1)
5FFh
600h
GPR(1)
GPR(1)
6FFh
700h
7FFh
800h
2FFh
300h
=0011
Banco 3
=0100
=0101
Bank 4
Bank 5
=0110
Banco 6
Access Bank
5Fh
Acesso memria RAM de alta
60h
(SFR)
FFh
=0111
Banco 7
Acesso RAM Baixo
00h
=1000
Banco 8
a
No usado
Leia como 00h
=1110
Banco 14
=1111
FFh
00h
Banco 15
FFh
No usado
SFR
EFFh
F00h
F5Fh
F60h
FFFh
Nota 1: Esses bancos tambm servem como tampo RAM para operao USB. Ver 5.3.1 "RAM USB" Para mais
informao.
DS39632E-pgina 66 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 5-6:
7
USO DO BANCO Selecione Registrar (endereamento direto)
BSR(1)
0
000h
100h
Banco 1
200h
300h
Banco 2
Memria de Dados
00h
Banco 0
FFh
00h
FFh
00h
FFh
00h
7
De Opcode(2)
0
0 0 0 0 0 0 1 1
1 1 1 1 1 1 1 1
Bank Select(2)
Banco 3
atravs
Banco 13
E00h
Banco 14
F00h
FFFh
Nota 1:
2:
Banco 15
FFh
00h
FFh
00h
FFh
O bit de memria RAM de acesso da instruo pode ser usada para forar uma substituio do banco selecionado (BSR
<03:00>) para
os registros do Banco Access.
O MOVFF instruo incorpora todo o endereo de 12 bits na instruo.
5.3.3 ACESSO AO BANCO
Enquanto o uso do BSR, com um 8 bits incorporado
endereo, permite aos utilizadores para tratar toda a gama de
memria de dados, isto tambm significa que o utilizador tem
sempre
garantir que o banco correto est selecionado. Caso contrrio,
os dados podem ser lidos ou gravados para o local errado.
Isto pode ser desastroso se um GPR o alvo pretendido
de uma operao, mas uma SFR escrito em seu lugar.
Verificando e / ou mudando a BSR para cada leitura ou
escrever para a memria de dados pode tornar-se muito ineficiente.
Para agilizar o acesso aos dados mais utilizados
posies de memria, a memria de dados configurado com
um Banco Access, que permite aos usurios acessar um
mapeados bloco de memria sem especificar um BSR.
O Banco de Acesso consiste nos primeiros 96 bytes de
memria (00h-5Fh) no Banco 0 e os ltimos 160 bytes de
memria (60h-FFh) no Bloco 15. A metade inferior conhecido
como "o acesso memria RAM" e composto de GPRS. O
metade superior onde SFRs do dispositivo so mapeados.
Estas duas reas so mapeadas na contiguamente
Acesse Bank e pode ser abordada de uma forma linear
por um endereo de 8 bits (Figura 5-5).
O Banco Access usado por instrues do ncleo PIC18
que incluem o bit de memria RAM de acesso (o parmetro "a" em
a instruo). Quando "a" igual a '1 ', a instruo
utiliza o BSR e o endereo de 8 bits includo no
opcode para o endereo de memria de dados. Quando "A" for '0 ',
No entanto, a instruo forado a utilizar o Acesso
Banco endereo mapa, o valor atual da BSR
ignorou completamente.
Usando este "forado" endereamento permite que a instruo para
operar em um endereo de e dados em um nico ciclo, sem
atualizar o BSR primeiro. Para endereos de 8 bits de 60h e
acima, isto significa que os utilizadores podem avaliar e operar
em SFRs mais eficientemente. A memria RAM de acesso abaixo
60h
um bom lugar para valores de dados que o usurio pode precisar
para acessar rapidamente, como computacional imediato
resultados ou variveis de programa comum. Acesso RAM
Tambm permite que o cdigo de contexto mais rpido e mais
eficiente
salvar e mudar de variveis.
O mapeamento do banco do acesso ligeiramente diferente
quando o conjunto de instrues estendida estiver ativada (XINST
Bit Configuration = 1). Isto discutido em mais detalhe
em Seo 5.6.3 "Mapeando o Banco de acesso em
Indexados Literal Modo de deslocamento ".
5.3.4 FINALIDADE GERAL
CADASTRE-SE IMAGEM
Dispositivos PIC18 podem ter memria depositado no GPR
rea. Esta a RAM de dados, que est disponvel para utilizao
por todos
instrues. GPRs comear na parte inferior do banco 0
(Endereo 000h) e crescer para cima em direo ao fundo
da rea da SFR. GPRS no so inicializados por um
Power-on Reset e mantm-se inalterados em todos os outros
Redefine.
v 2009 Microchip Technology Inc. DS39632E-pgina 67
PIC18F2455/2550/4455/4550
5.3.5 FUNO ESPECIAL REGISTRA
Os registos de funes especiais (SFR) so registradores
usado pelos mdulos de CPU e perifrica para controlar
a operao desejada do dispositivo. Estes registos so
implementado como a RAM esttica no espao de memria de
dados.
SFRs comear no topo da memria de dados e estender-se-
afastar para ocupar o segmento superior do Banco 15, a partir de
F60h
para FFFh. A lista desses registros dada na Tabela 5-1
e Quadro 5-2.
Os SFRs podem ser classificados em dois grupos: aqueles
associada funcionalidade do dispositivo "core" (ALU,
Redefine e interrompe) e os relacionados com a
funes perifricas. O reset e interrupo registros
esto descritos nos captulos respectivos, enquanto o
Registo STATUS da ALU descrito posteriormente neste
seco. Regista relacionada com a operao de um
caracterstica perifrica so descritos no captulo para que
perifrico.
Os SFRs so tipicamente distribudos entre o
perifricos, cujas funes eles controlam. SFR no utilizado
locais so unimplemented e ler como '0 's.
TABELA 5-1:
Endereo
FFFh
FFEh
FFDh
FFCH
FFBH
FFAh
FF9h
FF8h
FF7h
FF6h
FF5h
FF4h
FF3h
FF2h
FF1h
FF0h
FEFh
Feeh
Fech
FEBh
Feah
FE9h
FE8h
FE7h
ESPECIAL funo de registro MAP
Nome
TOSU
TOSH
TOSL
Endereo
FDFh
FDDh
FDCH
FDBh
FDAh
FD9h
FD8h
FD7h
FD6h
FD5h
FD4h
FD3h
FD2h
FD1h
FD0h
FCFh
FCEh
FCDH
FCCh
FCBH
FCAH
FC9h
FC8h
FC7h
(1)
Nome
INDF2(1)
POSTDEC2(1)
PREINC2(1)
PLUSW2
FSR2L
STATUS
TMR0H
TMR0L
T0CON
-(2)
OSCCON
HLVDCON
WDTCON
RCON
TMR1H
TMR1L
T1CON
TMR2
PR2
T2CON
SSPBUF
SSPADD
SSPSTAT
SSPCON1
SSPCON2
ADRESH
ADRESL
ADCON0
ADCON1
ADCON2
(1)
Endereo
FBFh
FBEh
FBDh
FBCH
FBBh
FBAh
FB9h
FB8h
FB7h
FB6h
FB5h
FB4h
FB3h
FB2h
FB1h
FB0h
FAFh
Faeh
FADH
FACh
FABh
FAAH
FA9h
FA8h
FA7h
FA6h
FA5h
FA4h
FA3h
FA2h
FA1h
FA0h
Nome
CCPR1H
CCPR1L
CCP1CON
CCPR2H
CCPR2L
CCP2CON
-
(2)
Endereo
F9Fh
F9Eh
F9Dh
F9Ch
F9Bh
F9Ah
F99h
F98h
F97h
F96h
F95h
F94h
F93h
F92h
F91h
F90h
F8Fh
F8Eh
F8Dh
F8Ch
F8Bh
F8Ah
F89h
F88h
F87h
F86h
F85h
F84h
F83h
F82h
F81h
F80h
Nome
IPR1
PIR1
PIE1
-(2)
OSCTUNE
-(2)
-
(2)
Endereo
F7Fh
F7Eh
F7Dh
F7Ch
F7Bh
F7Ah
F79h
F78h
F77h
F76h
F75h
F74H
F73h
F72h
F71h
F70h
F6Fh
F6Eh
F6Dh
F6Ch
F6Bh
F6Ah
F69h
F68h
F67h
F66h
F65h
F64h
F63h
F61h
F60h
Nome
UEP15
UEP14
UEP13
UEP12
UEP11
UEP10
UEP9
UEP8
UEP7
UEP6
UEP5
UEP4
UEP3
UEP2
UEP1
UEP0
UCFG
UADDR
UCON
USTAT
UEIE
UEIR
UIE
UIR
UFRMH
UFRML
SPPCON(3)
SPPEPS(3)
SPPCFG(3)
-(2)
-(2)
FDEh POSTINC2(1)
STKPTR
PCLATU
PCLATH
PCL
TBLPTRU
TBLPTRH
TBLPTRL
Tablat
PRODH
Prdl
INTCON
INTCON2
INTCON3
INDF0
(1)
FSR2H
BAUDCON
ECCP1DEL
ECCP1AS
CVRCON
CMCON
TMR3H
TMR3L
T3CON
SPBRGH
SPBRG
RCREG
TXREG
TXSTA
RCSTA
-
(2)
-(2)
-(2)
Trise(3)
TRISD
(3)
TRISC
TRISB
TRISA
-(2)
-
-
(2)
(2)
POSTINC0(1)
PREINC0
FSR0H
FSR0L
WREG
INDF1(1)
(1)
-(2)
LATE(3)
LATD
(3)
FEDH POSTDEC0(1)
PLUSW0(1)
LATC
LATB
LATA
-(2)
-(2)
-
(2)
EEADR
EEDATA
EECON2(1)
EECON1
-(2)
-(2)
-(2)
IPR2
PIR2
PIE2
FE6h POSTINC1
FE4h
FE3h
FE2h
FE1h
FE0h
Nota 1:
2:
3:
FC6h
FC5h
FC4h
FC3h
FC2h
FC1h
FC0h
FE5h POSTDEC1(1)
PREINC1(1)
PLUSW1(1)
FSR1H
FSR1L
BSR
-(2)
PORTE
PORTD(3)
PORTC
PORTB
PORTA
F62h SPPDATA(3)
No um registo fsico.
Registradores no implementadas so lidos como '0 '.
Estes registos so implementadas apenas em dispositivos 40/44-pin.
DS39632E-pgina 68 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 5-2:
Nome do arquivo
TOSU
TOSH
TOSL
STKPTR
PCLATU
PCLATH
PCL
TBLPTRU
TBLPTRH
TBLPTRL
Tablat
PRODH
Prdl
INTCON
INTCON2
INTCON3
INDF0
POSTINC0
POSTDEC0
PREINC0
PLUSW0
FSR0H
FSR0L
WREG
INDF1
POSTINC1
POSTDEC1
PREINC1
PLUSW1
FSR1H
FSR1L
BSR
INDF2
POSTINC2
POSTDEC2
PREINC2
PLUSW2
FSR2H
FSR2L
STATUS
TMR0H
TMR0L
T0CON
Legenda:
Nota 1:
2:
3:
4:
5:
6:
7:
Registre-se Resumo IMAGEM
Bit 7
-
Bit 6
-
Bit 5
-
Bit 4 Bit 3 Bit 2 O bit 1 Bit 0
Valor em
POR, BOR
--- 0 0000
0000 0000
0000 0000
SP4 SP3 SP2 SP1 SP0 00-0 0000
--- 0 0000
0000 0000
0000 0000
bit 21(1)
Programa Memria Tabela Pointer Byte superior (TBLPTR <20:16>) - 00 0000
0000 0000
0000 0000
0000 0000
xxxx xxxx
xxxx xxxx
TMR0IE
INTEDG1
-
INT0IE
INTEDG2
INT2IE
RBIE
-
INT1IE
TMR0IF
TMR0IP
-
INT0IF
-
INT2IF
RBIF
RBIP
INT1IF
0000 x 000
1111 -1-1
11-0 0-00
N / D
N / D
N / D
N / D
N / D
---- 0000
xxxx xxxx
xxxx xxxx
N / D
N / D
N / D
N / D
N / D
---- 0000
xxxx xxxx
Bank Select Register ---- 0000
N / D
N / D
N / D
N / D
N / D
---- 0000
xxxx xxxx
OV Z DC C --- X xxxx
0000 0000
xxxx xxxx
T0CS T0SE PSA T0PS2 T0PS1 T0PS0 1111 1111
Holding Register para PC <20:16>
Detalhes
na pgina
53, 60
53, 60
53, 60
53, 61
53, 60
53, 60
53, 60
53, 84
53, 84
53, 84
53, 84
53, 97
53, 97
53, 101
53, 102
53, 103
53, 75
53, 76
53, 76
53, 76
53, 76
53, 75
53, 75
53
53, 75
53, 76
53, 76
53, 76
53, 76
53, 75
53, 75
54, 65
54, 75
54, 76
54, 76
54, 76
54, 76
54, 75
54, 75
54, 73
54, 129
54, 129
54, 127
Byte superior Top-of-Stack (TOS <20:16>)
Top-of-Stack alta byte (TOS <15:08>)
Top-of-Stack Low Byte (TOS <07:00>)
STKFUL
-
STKUNF
-
-
-
Holding Register para PC <15:08>
PC Low Byte (PC <07:00>)
- -
Programa Memria Tabela Pointer alta Byte (TBLPTR <15:08>)
Programa Memria Tabela Pointer Low Byte (TBLPTR <07:00>)
Programa trava tabela de memria
De registo de produtos de alta Byte
Produto Registrar Low Byte
GIE / GIEH
RBPU
INT2IP
PEIE / giel
INTEDG0
INT1IP
Usa contedo de FSR0 para enfrentar a memria de dados - valor de FSR0 no mudou (e no um registro fsico)
Usa contedo de FSR0 para enfrentar a memria de dados - valor de FSR0 ps-incrementado (no um registo fsico)
Usa contedo de FSR0 para enfrentar a memria de dados - valor de FSR0 ps-diminuda (no um registo fsico)
Usa contedo de FSR0 para enfrentar a memria de dados - valor de FSR0 pr-incrementado (no um registo fsico)
Usa contedo de FSR0 para enfrentar a memria de dados - valor de FSR0 pr-incrementado (no um registo fsico) -
valor de FSR0 compensado por W
-
Trabalhando Registrar
Usa contedo de FSR1 para enfrentar a memria de dados - valor de FSR1 no mudou (e no um registro fsico)
Usa contedo de FSR1 para enfrentar a memria de dados - valor de FSR1 ps-incrementado (no um registo fsico)
Usa contedo de FSR1 para enfrentar a memria de dados - valor de FSR1 ps-diminuda (no um registo fsico)
Usa contedo de FSR1 para enfrentar a memria de dados - valor de FSR1 pr-incrementado (no um registo fsico)
Usa contedo de FSR1 para enfrentar a memria de dados - valor de FSR1 pr-incrementado (no um registo fsico) -
valor de FSR1 compensado por W
-
-
-
-
-
-
-
-
Indireta dados de endereos da memria Pointer 1 High Byte
Indireta dados de endereos da memria Pointer 1 Low Byte
Usa contedo de FSR2 para enfrentar a memria de dados - valor de FSR2 no mudou (e no um registro fsico)
Usa contedo de FSR2 para enfrentar a memria de dados - valor de FSR2 ps-incrementado (no um registo fsico)
Usa contedo de FSR2 para enfrentar a memria de dados - valor de FSR2 ps-diminuda (no um registo fsico)
Usa contedo de FSR2 para enfrentar a memria de dados - valor de FSR2 pr-incrementado (no um registo fsico)
Usa contedo de FSR2 para enfrentar a memria de dados - valor de FSR2 pr-incrementado (no um registo fsico) -
valor de FSR2 compensado por W
-
-
-
-
-
-
-
N
Indireta dados de endereos da memria Pointer 2 High Byte
Indireta dados de endereos da memria Pointer 2 Low Byte
Timer0 Register alta Byte
Timer0 Registrar Low Byte
TMR0ON T08BIT
- - - Indireta dados de endereos da memria Pointer 0 Byte
Indireta dados de endereos da memria Pointer 0 Low Byte
x= Desconhecido, u= Inalterado, -= No implementado, q= Valor depende do estado. Clulas sombreadas so implementados, ler como '0 '.
Bit 21 da TBLPTRU permite o acesso aos bits de configurao do dispositivo.
O bit SBOREN s est disponvel quando Boren <1:00> = 01; Caso contrrio, o bit l como '0 '.
Estes registros e / ou bits no so implementados em dispositivos de 28 pinos e so lidos como '0 '. Redefinir valores so apresentados para dispositivos 40/44-pin;
pedaos no implementadas individuais devem ser interpretadas como "-".
RA6 est configurado como um pino de porta com base em vrios modos de oscilador primrios. Quando o pino porta est desativada, todos os bits associados ler '0 '.
RE3 s est disponvel como um pino da porta quando o bit de configurao MCLRE claro, caso contrrio, o bit l como '0 '.
RC4 RC5 e s esto disponveis como pinos da porta quando o mdulo USB desativado (UCON <3> = 0).
Apenas no modo I2C Slave .
v 2009 Microchip Technology Inc. DS39632E-pgina 69
PIC18F2455/2550/4455/4550
TABELA 5-2:
Nome do arquivo
OSCCON
HLVDCON
WDTCON
RCON
TMR1H
TMR1L
T1CON
TMR2
PR2
T2CON
SSPBUF
SSPADD
SSPSTAT
SSPCON1
SSPCON2
ADRESH
ADRESL
ADCON0
ADCON1
ADCON2
CCPR1H
CCPR1L
CCP1CON
CCPR2H
CCPR2L
CCP2CON
BAUDCON
ECCP1DEL
ECCP1AS
CVRCON
CMCON
TMR3H
TMR3L
T3CON
SPBRGH
SPBRG
RCREG
TXREG
TXSTA
RCSTA
Legenda:
Nota 1:
2:
3:
4:
5:
6:
7:
Registre-se Resumo ARQUIVO (CONTINUAO)
Bit 7
IDLEN
VDIRMAG
-
IPEN
Bit 6
IRCF2
-
-
SBOREN
(2)
Bit 5
IRCF1
IRVST
-
-
Bit 4
IRCF0
HLVDEN
-
RI
Bit 3
USTOS
HLVDL3
-
TO
Bit 2
IOFS
HLVDL2
-
PD
O bit 1
SCS1
HLVDL1
-
POR
Bit 0
SCS0
HLVDL0
SWDTEN
BOR
Valor em
POR, BOR
0100 Q000
0-00 0101
------ 0
0q-1 11q0
xxxx xxxx
xxxx xxxx
Detalhes
na pgina
54, 33
54, 285
54, 304
54, 46
54, 136
54, 136
54, 131
54, 138
54, 138
54, 137
54, 198,
207
54, 207
54, 198,
208
54, 199,
209
54, 210
54, 274
54, 274
54, 265
54, 266
54, 267
55, 144
55, 144
55, 143,
151
55, 144
55, 144
55, 143
55, 246
55, 160
55, 161
55, 281
55, 275
55, 141
55, 141
55, 139
55, 247
55, 247
55, 256
55, 253
55, 244
55, 245
Timer1 Register alta Byte
Timer1 Registrar Low Byte
RD16
Timer2 Registrar
Timer2 Perodo Registrar
- T2OUTPS3 T2OUTPS2 T2OUTPS1 T2OUTPS0 TMR2ON T2CKPS1 T2CKPS0
MSSP buffer de recepo / transmisso Registrar
MSSP Address Register em modo Slave I2C . MSSP Baud Rate Reload Registro no modo Master I 2C .
SMP
WCOL
GCEN
CKE
SSPOV
ACKSTAT
D / D
SSPEN
ACKDT /
ADMSK5(7)
P
CKP
ACKEN /
ADMSK4(7)
S
SSPM3
RCEN /
ADMSK3(7)
R / W
SSPM2
PEN /
ADMSK2(7)
UA
SSPM1
RSEN /
ADMSK1(7)
BF
SSPM0
SEN
T1RUN T1CKPS1 T1CKPS0 T1OSCEN T1SYNC TMR1CS TMR1ON 0000 0000
0000 0000
1111 1111
-000 0000
xxxx xxxx
0000 0000
0000 0000
0000 0000
0000 0000
xxxx xxxx
xxxx xxxx
Um resultado / D Registre alta Byte
Um resultado / D Registrar Low Byte
-
-
ADFM
-
-
-
CHS3
VCFG1
ACQT2
CHS2
VCFG0
ACQT1
CHS1
PCFG3
ACQT0
CHS0
PCFG2
ADCS2
GO / DONE
PCFG1
ADCS1
ADON
PCFG0
ADCS0
- 00 0000
- 00 0qqq
0-00 0000
xxxx xxxx
xxxx xxxx
Capture / Compare / PWM Register 1 High Byte
Capture / Compare / PWM Register 1 Low Byte
P1M1(3) P1M0(3)
DC1B1 DC1B0 CCP1M3 CCP1M2 CCP1M1 CCP1M0 0000 0000
xxxx xxxx
xxxx xxxx
Capture / Compare / PWM Register 2 High Byte
Capture / Compare / PWM Register 2 Low Byte
-
ABDOVF
PRSEN
ECCPASE
CVREN
C2OUT
-
RCIDL
PDC6(3)
ECCPAS2
CVROE
C1OUT
DC2B1
RXDTP
PDC5(3)
ECCPAS1
CVRR
C2INV
DC2B0
TXCKP
PDC4(3)
ECCPAS0
CVRSS
C1INV
CCP2M3
BRG16
PDC3(3)
PSSAC1
CVR3
CIS
CCP2M2
-
PDC2(3)
PSSAC0
CVR2
CM2
CCP2M1
WUE
PDC1(3)
PSSBD1(3)
RCV1
CM1
CCP2M0
ABDEN
PDC0(3)
PSSBD0(3)
CVR0
CM0
- 00 0000
0100 0-00
0000 0000
0000 0000
0000 0000
0000 0111
xxxx xxxx
xxxx xxxx
Timer3 Register alta Byte
Timer3 Registrar Low Byte
RD16 T3CCP2 T3CKPS1 T3CKPS0 T3CCP1 T3SYNC TMR3CS TMR3ON
EUSART Baud Rate Generator Register alta Byte
EUSART Baud Rate Generator Registrar Low Byte
EUSART Receba Registrar
EUSART Transmitir Registrar
CSRC
SPEN
TX9
RX9
TXEN
SREN
SYNC
CREN
SENDB
ADDEN
BRGH
FERR
TRMT
OERR
TX9D
RX9D
0000 0000
0000 0000
0000 0000
0000 0000
0000 0000
0000 0010
0000 x 000
x= Desconhecido, u= Inalterado, -= No implementado, q= Valor depende do estado. Clulas sombreadas so implementados, ler como '0 '.
Bit 21 da TBLPTRU permite o acesso aos bits de configurao do dispositivo.
O bit SBOREN s est disponvel quando Boren <1:00> = 01; Caso contrrio, o bit l como '0 '.
Estes registros e / ou bits no so implementados em dispositivos de 28 pinos e so lidos como '0 '. Redefinir valores so apresentados para dispositivos 40/44-pin;
pedaos no implementadas individuais devem ser interpretadas como "-".
RA6 est configurado como um pino de porta com base em vrios modos de oscilador primrios. Quando o pino porta est desativada, todos os bits associados ler '0 '.
RE3 s est disponvel como um pino da porta quando o bit de configurao MCLRE claro, caso contrrio, o bit l como '0 '.
RC4 RC5 e s esto disponveis como pinos da porta quando o mdulo USB desativado (UCON <3> = 0).
Apenas no modo I2C Slave .
DS39632E-pgina 70 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 5-2:
Nome do arquivo
EEADR
EEDATA
EECON2
EECON1
IPR2
PIR2
PIE2
IPR1
PIR1
PIE1
OSCTUNE
Trise(3)
TRISD(3)
TRISC
TRISB
TRISA
LATE(3)
LATD(3)
LATC
LATB
LATA
PORTE
PORTD(3)
PORTC
PORTB
PORTA
UEP15
UEP14
UEP13
UEP12
UEP11
UEP10
UEP9
UEP8
UEP7
UEP6
UEP5
UEP4
UEP3
UEP2
UEP1
UEP0
Legenda:
Nota 1:
2:
3:
4:
5:
6:
7:
Registre-se Resumo ARQUIVO (CONTINUAO)
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 O bit 1 Bit 0
Valor em
POR, BOR
0000 0000
0000 0000
0000 0000
WRERR
BCLIP
BCLIF
BCLIE
SSPIP
SSPIF
SSPIE
TUN3
-
TRISD3
-
TRISB3
TRISA3
-
LATD3
-
LATB3
LATA3
RE3
(5)
Detalhes
na pgina
55, 91
55, 91
55, 82
55, 83
56, 109
56, 105
56, 107
56, 108
56, 104
56, 106
56, 28
56, 126
56, 124
56, 121
56, 118
56, 115
56, 126
56, 124
56, 121
56, 118
56, 115
56, 125
56, 124
56, 121
56, 118
56, 115
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
57, 172
EEPROM Address Register
EEPROM dados cadastrais
EEPROM Controle Register 2 (no um registo fsico)
EEPGD
OSCFIP
OSCFIF
OSCFIE
SPPIP
SPPIF
SPPIE
-
TRISD7
TRISC7
TRISB7
-
-
LATD7
LATC7
LATB7
-
RDPU(3)
RD7
RC7
RB7
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
(3)
(3)
(3)
CFGS
CMIP
CMIF
CMIE
ADIP
ADIF
ADIE
-
-
TRISD6
TRISC6
TRISB6
TRISA6
-
LATD6
LATC6
LATB6
LATA6
-
RD6
RC6
RB6
RA6(4)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
(4)
(4)
-
USBIP
USBIF
USBIE
RCIP
RCIF
RCIE
-
-
TRISD5
-
TRISB5
TRISA5
-
LATD5
-
LATB5
LATA5
-
RD5
RC5(6)
RB5
RA5
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
GRTIS
EEIP
EEIF
EEIE
TXIP
TXIF
TXIE
TUN4
-
TRISD4
-
TRISB4
TRISA4
-
LATD4
-
LATB4
LATA4
-
RD4
RC4(6)
RB4
RA4
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
WREN
HLVDIP
HLVDIF
HLVDIE
CCP1IP
CCP1IF
CCP1IE
Tun2
TRISE2
TRISD2
TRISC2
TRISB2
TRISA2
LATE2
LATD2
LATC2
LATB2
LATA2
RE2
(3)
WR
TMR3IP
TMR3IF
TMR3IE
TMR2IP
TMR2IF
TMR2IE
Tun1
TRISE1
TRISD1
TRISC1
TRISB1
TRISA1
LATE1
LATD1
LATC1
LATB1
LATA1
RE1
(3)
RD
CCP2IP
CCP2IF
CCP2IE
TMR1IP
TMR1IF
TMR1IE
Tun0
TRISE0
TRISD0
TRISC0
TRISB0
TRISA0
LATE0
LATD0
LATC0
LATB0
LATA0
RE0
(3)
xx-0 x000
1111 1111
0000 0000
0000 0000
1111 1111
0000 0000
0000 0000
0 - 0 0000
----- 111
1111 1111
11 --- 111
1111 1111
-111 1111
----- Xxx
xxxx xxxx
xx - xxx-
xxxx xxxx
-Xxx xxxx
0 --- x000
xxxx xxxx
xxxx-xxx
xxxx xxxx
-X0x 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
--- 0 0000
INTSRC
RD3
-
RB3
RA3
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
EPCONDIS
RD2
RC2
RB2
RA2
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
EPOUTEN
RD1
RC1
RB1
RA1
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
RD0
RC0
RB0
RA0
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
x= Desconhecido, u= Inalterado, -= No implementado, q= Valor depende do estado. Clulas sombreadas so implementados, ler como '0 '.
Bit 21 da TBLPTRU permite o acesso aos bits de configurao do dispositivo.
O bit SBOREN s est disponvel quando Boren <1:00> = 01; Caso contrrio, o bit l como '0 '.
Estes registros e / ou bits no so implementados em dispositivos de 28 pinos e so lidos como '0 '. Redefinir valores so apresentados para dispositivos 40/44-pin;
pedaos no implementadas individuais devem ser interpretadas como "-".
RA6 est configurado como um pino de porta com base em vrios modos de oscilador primrios. Quando o pino porta est desativada, todos os bits associados ler '0 '.
RE3 s est disponvel como um pino da porta quando o bit de configurao MCLRE claro, caso contrrio, o bit l como '0 '.
RC4 RC5 e s esto disponveis como pinos da porta quando o mdulo USB desativado (UCON <3> = 0).
Apenas no modo I2C Slave .
v 2009 Microchip Technology Inc. DS39632E-pgina 71
PIC18F2455/2550/4455/4550
TABELA 5-2:
Nome do arquivo
UCFG
UADDR
UCON
USTAT
UEIE
UEIR
UIE
UIR
UFRMH
UFRML
SPPCON
(3)
Registre-se Resumo ARQUIVO (CONTINUAO)
Bit 7
UTEYE
-
-
-
BTSEE
BTSEF
-
-
-
FRM7
-
RDSPP
CLKCFG1
Dados7
Bit 6
UOEMON
ADDR6
PPBRST
ENDP3
-
-
SOFIE
SOFIF
-
FRM6
-
WRSPP
CLKCFG0
Dados6
Bit 5
-
ADDR5
SE0
ENDP2
-
-
STALLIE
STALLIF
-
FRM5
-
-
CSEN
DATA5
Bit 4
UPUEN
ADDR4
PKTDIS
ENDP1
BTOEE
BTOEF
IDLEIE
IDLEIF
-
FRM4
-
SPPBUSY
CLK1EN
Data4
Bit 3
UTRDIS
Addr3
USBEN
ENDP0
DFN8EE
DFN8EF
TRNIE
TRNIF
-
FRM3
-
Addr3
WS3
DATA3
Bit 2
FSEN
Addr2
RESUMO
DIR
CRC16EE
CRC16EF
ACTVIE
ACTVIF
FRM10
FRM2
-
Addr2
WS2
DATA2
O bit 1
PPB1
Addr1
SUSPND
PPBI
CRC5EE
CRC5EF
UERRIE
UERRIF
FRM9
FRM1
SPPOWN
Addr1
WS1
DATA1
Bit 0
PPB0
ADDR0
-
-
PIDEE
PIDEF
URSTIE
URSTIF
FRM8
FRM0
SPPEN
ADDR0
WS0
DATA0
Valor em
POR, BOR
00-0 0000
-000 0000
0x0-000 -
-Xxx-xxx
0 - 0 0000
0 - 0 0000
-000 0000
-000 0000
----- Xxx
xxxx xxxx
------ 00
00-0 0000
0000 0000
0000 0000
Detalhes
na pgina
57, 168
57, 173
57, 166
57, 171
57, 185
57, 184
57, 183
57, 181
57, 173
57, 173
57, 191
57, 195
57, 192
57, 196
SPPEPS(3)
SPPCFG(3)
SPPDATA(3)
Legenda:
Nota 1:
2:
3:
4:
5:
6:
7:
x= Desconhecido, u= Inalterado, -= No implementado, q= Valor depende do estado. Clulas sombreadas so implementados, ler como '0 '.
Bit 21 da TBLPTRU permite o acesso aos bits de configurao do dispositivo.
O bit SBOREN s est disponvel quando Boren <1:00> = 01; Caso contrrio, o bit l como '0 '.
Estes registros e / ou bits no so implementados em dispositivos de 28 pinos e so lidos como '0 '. Redefinir valores so apresentados para dispositivos 40/44-pin;
pedaos no implementadas individuais devem ser interpretadas como "-".
RA6 est configurado como um pino de porta com base em vrios modos de oscilador primrios. Quando o pino porta est desativada, todos os bits associados ler '0 '.
RE3 s est disponvel como um pino da porta quando o bit de configurao MCLRE claro, caso contrrio, o bit l como '0 '.
RC4 RC5 e s esto disponveis como pinos da porta quando o mdulo USB desativado (UCON <3> = 0).
Apenas no modo I2C Slave .
DS39632E-pgina 72 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
5.3.6 Registrador de status
O registo STATUS, mostrado na Registre 5-2, contm
o status aritmtico da ULA. Tal como acontece com qualquer outro
SFR,
ele pode ser o operando para qualquer instruo.
Se o registo STATUS o destino de um instru-
o que afeta a Z, DC, C, OV ou N bits, os resultados
da instruo no so escritas, em vez disso, o status
cadastro atualizado de acordo com a instruo
realizada. Assim, o resultado de uma instruo com
o registrador STATUS como seu destino pode ser diferente
do que o pretendido. Como um exemplo, CLRF STATUS ir definir
o bit Z e deixar os bits de status restantes
inalterado ('000u u1uu ').
Recomenda-se que somente BCF, BSF, swapf, MOVFF
e MOVWF instrues so usados para alterar o ESTADO
registrar, pois essas instrues no afetam a Z,
C, DC, OV ou N bits no registrador STATUS.
Para outras instrues que no afetam os bits de status, consulte
o conjunto de instrues resumos na Tabela 26-2 e
Tabela 26-3.
Nota: Os bits CC e C operam como o Borrow
e os bits do dgito Borrow, respectivamente, em
subtrao.
CADASTRE-SE 5-2:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7-5
4 bits
Registrador de status
U-0
-
U-0
-
R / W-x
N
R / W-x
OV
R / W-x
Z
R / W-x
DC(1)
R / W-x
C(2)
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
Unimplemented: Leia como '0 '
N: Bit negativo
Este bit usado para aritmtica assinado (complemento para 2). Ele indica se o resultado foi negativo
(ALU MSB = 1).
1= Resultado foi negativo
0= Resultado foi positivo
OV: Bit de overflow
Este bit usado para aritmtica assinado (complemento para 2). Ele indica um excesso de 7-bits de magnitude
que faz com que o bit de sinal (bit 7 do resultado) para mudar de estado.
1= Estouro ocorreu para a aritmtica assinado (nesta operao aritmtica)
0= No estouro ocorreu
Z: Zero bit
1= O resultado de uma operao aritmtica ou lgica zero
0= O resultado de uma operao lgica aritmtica ou no zero
DC: Digit Carry / Borrow bit(1)
Para ADDWF, ADDLW, SUBLW e SUBWF instrues:
1= A realizar-out do quarto bit de baixa ordem do resultado ocorreu
0= No levar a cabo a partir do quarto bit de baixa ordem do resultado
C: Carry / Borrow bit(2)
Para ADDWF, ADDLW, SUBLW e SUBWF instrues:
1= A levar a cabo a partir do bit mais significativo do resultado ocorreu
0= No levar a cabo a partir do bit mais significativo do resultado ocorreu
Para Borrow, a polaridade invertida. A subtraco executado pela adio de complemento de 2 de segundo
operando. Para girar (RRF, RLF) instrues, este bit colocado com 4 bits ou bit 3 da fonte de registro.
Para Borrow, a polaridade invertida. A subtraco executado pela adio de complemento de 2 de segundo
operando. Para girar (RRF, RLF) instrues, este bit colocado com o bit de alta ou de baixa ordem do
fonte registar.
bit 3
bit 2
bit 1
bit 0
Nota 1:
2:
v 2009 Microchip Technology Inc. DS39632E-pgina 73
PIC18F2455/2550/4455/4550
5.4
Nota:
Dados Modos de Endereamento
A execuo de algumas instrues no
ncleo PIC18 conjunto de instrues so alteradas
quando a instruo de PIC18 alargado
conjunto est habilitado. Ver Seco 5.6 "Dados
Memria e da Instruo estendida
Ajuste " para mais informaes.
Purpose Register File ") ou um local no Acesso
(Seo banco 5.3.3 "Access Bank") como os dados
fonte para a instruo.
O bit de memria RAM de acesso 'a' determina como o endereo
interpretado. Quando 'um' '1 ', o contedo do BSR
(Seo 5.3.2 "Bank Select Register (BSR)") so
utilizado com o endereo para determinar o total de 12 bits
endereo do registo. Quando 'um' '0 ', o endereo
interpretado como sendo um registo no Banco Access.
Dirigindo-se que utiliza a RAM de acesso , por vezes,
tambm conhecido como Modo de endereamento forado Direct.
Alguns, como por exemplo instrues MOVFF, incluir toda
Endereo de 12 bits (origem ou destino), em sua
opcodes. Nestes casos, o BSR completamente ignorada.
O destino dos resultados da operao determinada
pelo bit de destino de 'd'. Quando d de '1 ', os resultados so
armazenado de volta no registro de origem, substituindo a sua ori-
contedo nal. Quando d '0 ', os resultados so armazenados em
o W registar. Instrues sem o argumento 'd'
tem um destino que est implcita na instruo, a sua
destino seja o registrador destino a ser operado
on ou o registo W.
Enquanto a memria de programa pode ser dirigida apenas em
uma maneira - atravs do contador de programa - Informaes
no espao de memria de dados pode ser abordada em vrios
maneiras. Para a maioria das instrues, o modo de
endereamento
corrigidos. Outras instrues podem usar at trs modos,
dependendo de qual operandos so utilizados e se ou
no o conjunto de instrues estendida estiver ativada.
Os modos de endereamento so:




Inerente
Literal
Dirigir
Indireto
Um modo de endereamento adicional, cadastradas Literal
Deslocamento,
est disponvel quando o conjunto de instrues estendida
ativado (XINST Configurao bit = 1). Seu funcionamento
discutido em maior detalhe na Seo 5.6.1 "cadastradas
Dirigindo com Literal Offset ".
5.4.3 Endereamento indireto
5.4.1 Inerente e LITERAL
ENFRENTAR
Muitas instrues de controle PIC18 no precisa de nenhum
argumento em tudo, que quer executar uma operao que
afeta globalmente o dispositivo ou operam implicitamente em
um registo. Este modo conhecido como tratar
Dirigindo-se inerente. Exemplos incluem SLEEP, REAJUSTE
e DAW.
Outras instrues de trabalho de uma maneira semelhante, mas
requerem um
argumento explcito adicional no opcode. Isto
conhecido como Modo de endereamento Literal porque
exigir algum valor literal como um argumento. Exemplos
incluir ADDLW e MOVLW, que, respectivamente, adicionar ou
mover um valor literal para o registo W. Outros exemplos
incluir CHAMADA e GOTO, que incluem um de 20 bits
programa endereo de memria.
Endereamento Indireto permite ao usurio acessar um local
na memria de dados sem dar um endereo fixo na
instrues. Isto feito usando Arquivo, selecione Registros
(FSRs) como ponteiros para os locais a ser lido ou escrito
para. Uma vez que os prprios so FSRs localizado na memria
RAM como
Registros de Funo Especial, elas tambm podem ser diretamente
manipulado sob o controle do programa. Isto faz FSRs
muito til na execuo de estruturas de dados, tais como
tabelas e matrizes na memria de dados.
Os registros de endereamento indireto tambm so
implementado com Operands arquivo indiretos (INDFs) que
permitir a manipulao automtica de o valor do ponteiro com
auto-incremento, auto-decremento ou compensao
com um outro valor. Isto permite que o cdigo eficiente, usando
laadas, tais como o exemplo da remoo de uma memria RAM
inteiro
banco no Exemplo 5-5.
Exemplo 5-5:
5.4.2 Endereamento Direto
PRXIMO
COMO LIMPAR RAM
(BANCO 1) USO
Endereamento indireto
FSR0, 100h;
POSTINC0; Limpar INDF
, Em seguida, registrar
, Inc ponteiro
FSR0H, 1; Tudo feito com
, Bank1?
PRXIMO, NO, desmarque prximo
, Sim, continuar
Modo de endereamento direto especifica todo ou parte do
origem e / ou o endereo de destino da operao
dentro do prprio cdigo de operao. As opes so especificadas
por
os argumentos que acompanham a instruo.
No PIC18 conjunto de instrues core, pouco orientada e
instrues byte-oriented usar alguma verso do direto
Dirigindo-se por padro. Todas estas instrues incluem
algum endereo literal 8-bit como sua Least Significant
Byte. Este endereo especifica um endereo registo em
um dos bancos de dados de RAM (Seo 5.3.4 "General
LFSR
CLRF
BTFSS
BRA
CONTINUAR
DS39632E-pgina 74 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
5.4.3.1 FSR e os Registos
INDF Operando
No ncleo de Endereamento Indireto so trs conjuntos de
registros: FSR0, FSR1 e FSR2. Cada um deles representa um
par de registradores de 8 bits: FSRnH e FSRnL. Os quatro
bits superiores do registo FSRnH no so usados, de modo que
cada
Par FSR tem um valor de 12 bits. Isso representa um valor
que pode resolver a gama completa da memria de dados
de uma forma linear. Os pares de registro FSR, ento, servir
como ponteiros para posies de memria de dados.
Dirigindo indirecta realizada com um conjunto de
Operandos arquivo indiretos, INDF0 atravs INDF2. Estes
pode ser pensado como registos "virtuais", que so
mapeados no espao SFR, mas no so fisicamente imple-
mentadas. Ler ou escrever para um registo especfico INDF
realmente acessa seu correspondente FSR par registo.
Uma leitura a partir INDF1, por exemplo, l os dados no
endereo indicado pelo FSR1H: FSR1L. Instrues que
usar os registros INDF como operandos usar realmente o
contedo da sua FSR correspondente como um ponteiro para o
A meta da instruo. O INDF operando apenas um
de forma conveniente usando o ponteiro.
Porque Endereamento Indireto usa um endereo de 12 bits
completo,
bancrio RAM de dados no necessrio. Assim, a corrente
contedo do BSR e bits de RAM de acesso no tm
efeito sobre a determinao do endereo de destino.
Figura 5-7: Endereamento indireto
000h
ADDWF, INDF1, 1 Banco 0
100h
200h
Banco 1
Banco 2
Usando uma instruo com um dos
registradores de endereamento indireto como o
operando ....
... Usa o endereo de 12 bits armazenada na
FSR o par associado com esse
registrar ....
FSR1H: FSR1L
7 0 7 0
300h
x x x x 1 1 1 0 1 1 0 0 1 1 0 0
Banco 3
atravs
Banco 13
... Para determinar a memria de dados
local para ser utilizado na referida operao.
Neste caso, o par contm FSR1
ECCH. Isto significa que o contedo de
localizao ECCH ser adicionado
do registo W e armazenados de volta no
ECCH.
E00h
Banco 14
F00h
FFFh
Banco 15
Memria de Dados
v 2009 Microchip Technology Inc. DS39632E-pgina 75
PIC18F2455/2550/4455/4550
5.4.3.2 Registros FSR e POSTINC,
POSTDEC, PREINC e PLUSW
5.4.3.3 Operaes por FSRs sobre FSRs
Alm do FDNI operando, cada par FSR registar
tambm tem quatro operandos indiretos adicionais. Como INDF,
so os registos "virtuais" que no podem ser indiretamente
lido ou escrito. Acessando estes registra realmente
acessa o associado FSR par de registradores, mas tambm
executa uma ao especfica em que o valor armazenado. Eles so:
POSTDEC: acessa o valor FSR, em seguida,
o diminui automaticamente por '1 'depois
POSTINC: acessa o valor FSR, em seguida,
incrementa automaticamente por '1 'depois
PREINC: incrementa o valor FSR por '1 'e, em seguida
utiliza na operao
PLUSW: adiciona o valor assinado no registo W
(Gama de -127 a 128) para a do FSR e utiliza
o novo valor na operao.
Neste contexto, o acesso a um registo INDF usa o
valor no FSR registra sem alter-los. Sim-
ilarly, o acesso a um registo PLUSW d o valor FSR
compensada por que no registo W, nem valor , na verdade
mudado na operao. Acessando o outro virtuais
registra altera o valor do registro FSR.
Operaes nos FSRs com POSTDEC, POSTINC
e PREINC afetar toda a par de registro, ou seja,
rollovers do registo FSRnL, de FFh para 00h, realizar
para o registo FSRnH. Por outro lado, os resultados
destas operaes no alteram o valor de qualquer
flags do registrador de status (por exemplo, Z, N, OV, etc.)
O registo PLUSW podem ser usadas para implementar uma forma
de endereamento indexado no espao de memria de dados. Por
manipular o valor do registo W, os usurios podem
chegar a endereos que so deslocamentos fixos de ponteiro
endereos. Em algumas aplicaes, este pode ser utilizado para
implementar uma estrutura de controle do programa poderoso,
tais como pilhas de software, para dentro da memria de dados.
Operaes de endereamento indireto que visam outros FSRs
ou registros virtuais representam casos especiais. Por exem-
plo, usando uma FSR para apontar para um dos registos virtuais
no vai resultar em operaes bem sucedidas. Como especfica
caso, assuma que FSR0H: FSR0L contm FE7h, o
endereo de INDF1. Tenta ler o valor de INDF1,
usando INDF0 como um operando, voltar 00h. Tentativas
para escrever a INDF1, usando INDF0 como o operando, vai
resultar numa NOP.
Por outro lado, utilizando o teclado virtual para gravar registos
um par FSR pode no ocorrer como o planejado. Nestes casos,
o valor ser escrito ao par FSR, mas sem qualquer
incremento ou decremento. Assim, escrevendo para INDF2
ou POSTDEC2 vai escrever o mesmo valor para o
FSR2H: FSR2L.
Uma vez que os FSRs so registros fsicos mapeados no
Espao SFR, eles podem ser manipulados por toda direto
operaes. Os usurios devem proceder com cautela quando
trabalhando nesses registros, especialmente se o seu cdigo
usa endereamento indireto.
Da mesma forma, as operaes de endereamento indireto so
gera-
aliado permitidas em todas as outras SFRs. Os usurios devem
exercer
o cuidado apropriado que eles no inadvertidamente
alterar as configuraes que podem afetar o funcionamento do
dispositivo.
DS39632E-pgina 76 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
5.5 Memria do programa eo
Alargado conjunto de instrues
Quando se utiliza o conjunto de instrues prolongado, esta
modo de endereamento exige o seguinte:
O uso do Banco de Acesso forado ('a' = 0);
e
O argumento de endereo do arquivo menor ou igual
para 5Fh.
Sob essas condies, o endereo do arquivo do instru-
o no interpretado como o menor byte de um endereo
(Usado com a BSR em endereamento direto), ou como um 8-bit
abordar no Banco Access. Em vez disso, o valor
interpretado como um valor de deslocamento de um ponteiro
Endereo
especificada pelo FSR2. O deslocamento e o contedo de
FSR2 so adicionados para obter o endereo do destino
operao.
A operao da memria de programa no afetada pela
a utilizao do conjunto de instrues estendida.
Ativando o conjunto de instrues estendida acrescenta oito
adicionais comandos de duas palavras aos actuais
Instruo PIC18 definido: ADDFSR, ADDULNK, CALLW,
MOVSF, MOVSS, pushl, SUBFSR e SUBULNK. Estes
instrues so executadas como descrito em
Seo 5.2.4 "Instrues de duas palavras".
5.6 Memria de dados e estendida
Conjunto de instrues
Ativando o PIC18 conjunto de instrues estendida (XINST
Bit Configuration = 1) altera significativamente certo
aspectos da memria de dados e seu endereamento.
Especificamente, o uso de Acesso ao Banco de muitos dos
PIC18 instrues do ncleo diferente. Isto devido ao
introduo de um novo modo de endereamento para os dados
espao de memria. Este modo tambm altera o comportamento
Endereamento Indireto usando FSR2 e seus associados
operandos.
O que no muda to importante. O tamanho de
o espao de memria de dados mantm-se inalterada, bem como a
sua
endereamento linear. O mapa SFR permanece o mesmo.
Ncleo instrues PIC18 ainda pode operar tanto em direto
eo modo de endereamento indireto, inerente e literal
instrues no muda em nada. Endereamento Indireto
com FSR0 e FSR1 tambm permanece inalterado.
5.6.2 INSTRUES DE AFETADOS PELAS
LITERAL modo offset INDEXADA
Qualquer uma das instrues centrais PIC18 que podem usar direto
Dirigindo so potencialmente afetados pelo Indexado
Literal offset Modo de endereamento. Isto inclui todo
instrues orientados a byte e bit-oriented, ou quase
metade do conjunto de instrues padro PIC18. Instru-
es que s usam inerente ou Literal Dirigindo
modos no so afetados.
Instrues Alm disso, byte-oriented e bit-oriented
no so afetados se no usar o Banco de Acesso
(Bit RAM acesso '1 ') ou incluir um endereo de 60h arquivo
ou superior. Instrues que satisfazem estes critrios sero
continuar a executar, como antes. Uma comparao entre o
diferentes possveis modos de endereamento quando o
conjunto de instrues estendida estiver ativada em mostra
Figura 5-8.
Aqueles que desejam usar byte-oriented ou bit-oriented
instrues do modo de deslocamento Literal indexado deve
observar as alteraes de sintaxe assembler para este modo.
Isto descrito em mais pormenor na Seo 26.2.1
"Sintaxe da Instruo estendida".
5.6.1 Endereamento indexado COM
LITERAL OFFSET
Habilitando os PIC18 estendidas conjunto de instrues mudanas
o comportamento de endereamento indireto usando o FSR2
registar par e seus operandos de arquivos associados. Sob o
condies adequadas, as instrues que usam o Acesso
Banco - ou seja, pouco mais orientada e byte-oriented
instrues - pode invocar uma forma de endereamento indexado
usando um deslocamento especificado na instruo. Este especial
modo de endereamento conhecido como endereamento
indexado com
Literal modo de deslocamento Literal offset ou cadastradas.
v 2009 Microchip Technology Inc. DS39632E-pgina 77
PIC18F2455/2550/4455/4550
Figura 5-8: COMPARANDO ABORDAGEM opes para BIT-orientado e
INSTRUES byte-oriented (Extended Instruction Set ativado)
EXEMPLO DE INSTRUO: ADDWF, f, d, numa (Opcode: 0010 01DA ffff ffff)
Quando a = 0ef c 60h:
A instruo executada em
Modo forado Direct. 'F' inter-
interpretado como um local no
Acessar RAM entre 060h
e 0FFh. Esta a mesma
os SFRs ou locais F60h para
0FFh (Banco 15) de dados
memria.
60h locais abaixo no so
disponvel neste endereamento
modo.
000h
060h
080h
100h
00h
Banco 1
atravs
Banco 14
60h
Intervalo vlido
para 'f'
Acesso RAM
FFh
Banco 0
F00h
Banco 15
F60h
SFRs
FFFh
Memria de Dados
Quando a = 0ef o 5Fh:
A instruo executada em
Indexados modo de deslocamento Literal.
'F'
interpretado como um deslocamento para
o
valor do endereo em FSR2. O
duas so adicionadas em conjunto para
obter o endereo do destino
registrar-se para a instruo. O
o endereo pode ser em qualquer lugar
o espao de memria de dados.
Note que neste modo, o
sintaxe correta agora:
ADDWF [k], d
onde 'k' o mesmo que 'f'.
000h
Banco 0
080h
100h
Banco 1
atravs
Banco 14
FSR2H
F00h
F60h
Banco 15
SFRs
FFFh
Memria de Dados
FSR2L
001001da ffffffff
Quando a = 1(Todos os valores de f):
A instruo executada em
Modo directa (tambm conhecido como
Dirigir modo Long). 'F' inter-
interpretado como um local em um dos
Dos 16 bancos de dados
espao de memria. O banco
designado pelo Bank Select
Register (BSR). O endereo
pode ser implementado em qualquer
banco de dados na memria
espao.
000h
Banco 0
080h
100h
Banco 1
atravs
Banco 14
BSR
00000000
001001da ffffffff
F00h
F60h
Banco 15
SFRs
FFFh
Memria de Dados
DS39632E-pgina 78 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
5.6.3 MAPEAMENTO DO BANCO ACESSO POR
LITERAL modo offset INDEXADA
O uso do Modo de endereamento offset Literal cadastradas
efectivamente altera a forma como a poro inferior de Acesso
RAM (00h de 5Fh) mapeado. Ao invs de conter
apenas o contedo da metade inferior do banco 0, este modo
mapeia o contedo do Banco 0 e definido pelo usurio
"Janela" que pode ser localizado em qualquer lugar nos dados
espao de memria. O valor de FSR2 estabelece o
limite inferior dos endereos mapeado no
janela, enquanto o limite superior definida por FSR2
alm de 95 (5Fh). Os endereos da RAM de acesso acima
5Fh so mapeados como descrito anteriormente (ver
Seo 5.3.3 "Access Bank"). Um exemplo de Acesso
Banco remapeamento neste modo de endereamento mostrado na
Figura 5-9.
Remapeamento do Banco Access aplica apenas para opera-
es utilizando o modo de deslocamento Literal indexados.
Operaes
que o uso da BSR (bit RAM acesso '1 ') continuar
usar Endereamento Direto como antes. Qualquer indireta ou
operao indexada que usa explicitamente qualquer um dos indireta
operandos de arquivo (incluindo FSR2) vai continuar a operar
como padro de endereamento indireto. Qualquer instruo que
usa o Banco Access, mas inclui um endereo de registro
superior a 05Fh, vai usar endereamento direto e
o mapa Banco de acesso normal.
5.6.4 BSR IN LITERAL INDEXADA
MODO DE COMPENSAO
Embora o Banco de Acesso remapeada quando o
conjunto de instrues estendida estiver ativada, o funcionamento
do
BSR permanece inalterado. Endereamento direto, usando o
BSR para selecionar o banco de memria de dados, atua na
mesma maneira que se descreveu anteriormente.
Figura 5-9:
Exemplo Situao:
Remapeamento BANCO ACESSO COM INDEXADA LITERAL
DESVIO ENFRENTAR
000h
Banco 0
100h
120h
17Fh
200h
ADDWF f, d, numa
FSR2H: FSR2L = 120h
Locais na regio
desde o Pointer FSR2
(120h) para o ponteiro mais
05Fh (17Fh) so mapeados
para a parte inferior do
Acesso RAM (000h-05Fh).
Funo Especial Registra
em F60h atravs FFFh so
mapeado para 60h atravs
FFh como de costume.
Banco 0 endereos abaixo
5Fh no esto disponveis
este modo. Eles ainda podem
ser tratado usando o
BSR.
Janela
Banco 1
Banco 1 "Janela"
00h
5Fh
60h
Banco 2
atravs
Banco 14
SFRs
FFh
Access Bank
F00h
F60h
FFFh
Banco 15
SFRs
Memria de Dados
v 2009 Microchip Technology Inc. DS39632E-pgina 79
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E-pgina 80 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
6 PROGRAMA DE MEMRIA FLASH 6.1 Tabela L e Escreve Tabela
A memria de programa Flash legvel, gravvel e
apagvel, durante o funcionamento normal durante todo o VDD
range.
Uma leitura da memria do programa executada sobre um byte
de cada vez. A gravao para a memria de programa executada
em
blocos de 32 bytes de cada vez. A memria de programa
apagada em blocos de 64 bytes de cada vez. A Erase massa
operao no pode ser emitido a partir do cdigo de usurio.
Escrever ou apagar a memria de programa deixar
instruo de busca at que a operao for concluda. O
memria de programa no pode ser acessado durante a gravao
ou apagar, portanto, o cdigo no pode executar. Um interno
temporizador de programao encerra memria de programa
escreve
e apaga.
Um valor de escrita para a memria de programa no necessita de
ser
uma instruo vlida. Executando uma memria de programa
local que constitui uma instruo resultados invlidos em um
NOP.
Para ler e escrever a memria do programa, h
duas operaes que permitem ao processador para mover bytes
entre o espao de memria de programa e de dados da memria
RAM:
Table Read (TBLRD)
Tabela de Write (TBLWT)
O espao de memria de programa de 16 bits de largura,
enquanto a
espao RAM de dados de 8 bits de largura. Tabela l e mesa
escreve mover dados entre estes dois espaos de memria
por meio de um registo de 8 bits (Tablat).
Operaes de leitura de mesa recuperar dados do programa
memria e coloc-lo no espao de memria RAM de dados.
A Figura 6-1 mostra o funcionamento de uma mesa de leitura com
memria de programa e memria RAM de dados.
Tabela operaes de gravao armazenam dados da memria de
dados
espao em segurando registros na memria de programa. O
procedimento para gravar o contedo dos registradores explorao
na memria do programa est detalhado na Seo 6.5 "Writing
para a memria flash Program ". Figura 6-2 mostra a
funcionamento de uma mesa de escrever com memria de
programa e de dados
RAM.
Operaes mesa de trabalho com entidades de bytes. Um bloco de
tabela
que contm os dados, em vez de instrues de programa, no
obrigados a ser palavra-alinhados. Portanto, um bloco de tabela
pode
comear e terminar em qualquer endereo de byte. Se uma tabela
de gravao est a ser
usado para escrever cdigo executvel na memria do programa,
instrues do programa ter de ser palavra-alinhados.
FIGURA 6-1: TABELA operao de leitura
Instruo: TBLRD *
Tabela de Ponteiro(1)
TBLPTRU TBLPTRH TBLPTRL
Memria de Programa
Trinco de mesa (8 bits)
Tablat
Memria de Programa
(TBLPTR)
Nota 1: Tabela do ponteiro de registro aponta para um byte na memria de
programa.
v 2009 Microchip Technology Inc. DS39632E-pgina 81
PIC18F2455/2550/4455/4550
FIGURA 6-2: A operao de escrita TABLE
Instruo: TBLWT *
Memria de Programa
Registos das exploraes
Tabela de Ponteiro(1)
TBLPTRU TBLPTRH TBLPTRL
Trinco de mesa (8 bits)
Tablat
Memria de Programa
(TBLPTR)
Nota 1: Tabela de Ponteiro realmente aponta para uma explorao de 32 registos, cujo endereo determinada pela
TBLPTRL <4:00>. O processo para gravar fisicamente os dados para a matriz de memria de programa discutido em
Seo 6.5 "Escrevendo para a memria flash Program".
6.2 Controle de Registros
Vrios registos de controlo so utilizados, em conjunto com
o TBLRD e TBLWT instrues. Estes incluem:




EECON1 registo
EECON2 registo
Tablat registo
TBLPTR registra
O bit FREE, quando definido, permitir uma memria de programa
operao de apagar. Quando GRTIS estiver definido, o erase
operao seja iniciada no prximo comando WR. Quando
LIVRE claro, s escreve esto habilitados.
O bit WREN, quando definido, permitir a operao de gravao.
Ao ligar, o bit WREN clara. O bit WRERR
definido em hardware quando o bit WREN est definido e limpo
quando o temporizador de programao interna expira eo
operao de gravao est completa.
Nota: Durante a operao normal, o WRERR
lido como '1 '. Isto pode indicar que uma gravao
operao foi encerrado prematuramente por
um reset ou uma operao de gravao foi
tentou indevidamente.
6.2.1 EECON1 E EECON2 REGISTOS
O registo EECON1 (Register 6-1) o controle
se inscrever para acessos memria. O registo EECON2
no registrar um fsico, que utilizado exclusivamente na
Escreve na memria e seqncias apagar. Leitura
EECON2 ir ler todas '0 's.
O bit de controle EEPGD determina se o acesso ser
um programa ou dados de acesso memria EEPROM. Quando
claro, as operaes posteriores ir operar no
memria EEPROM dados. Quando definido, qualquer posterior
operaes operar na memria do programa.
O bit de controle CFGS determina se o acesso ser
para a configurao / calibrao registros ou programa
memria / memria EEPROM de dados. Quando definido,
operaes subseqentes funcionaro em Configurao
registra independentemente de EEPGD (ver Seo 25,0
"Recursos Especiais da CPU"). Quando claro, a memria
acesso seleco determinada por EEPGD.
O bit de controle WR inicia operaes de gravao. O bit
no pode ser apagada, apenas definir, em software, que eliminado
em
hardware na concluso da operao de gravao.
Nota: A EEIF interrupo bit de flag (PIR2 <4>) definido
quando a gravao completa. Deve ser
apuradas em software.
DS39632E-pgina 82 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 6-1:
R / W-x
EEPGD
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
S = bit ajustvel
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
EECON1: DADOS EEPROM controle Register 1
R / W-x
CFGS
U-0
-
R/W-0
GRTIS
R / W-x
WRERR
(1)
R/W-0
WREN
R/S-0
WR
R/S-0
RD
bit 0
EEPGD: Programa Flash ou os dados da memria EEPROM Selecione bit
1= Acesso a memria de programa flash
0= Acesso a dados da memria EEPROM
CFGS: Flash Programa / Dados EEPROM ou Configurao Selecione bit
1= Registros de configurao de acesso
0= Acesso programa Flash ou EEPROM memria de dados
Unimplemented: Leia como '0 '
FREE: Row Erase Flash Habilitar bit
1= Apague a linha memria de programa dirigido por TBLPTR no prximo comando WR (desmarcada por
concluso da operao de apagamento)
0= Executar somente gravao
WRERR: Flash Programa / Dados EEPROM erro Flag bit(1)
1= A operao de gravao for encerrado prematuramente (qualquer reset durante a programao de auto-
cronometrado em condies normais
operao ou uma tentativa de gravao imprpria)
0= A operao de escrita concluda
WREN: Flash Programa / Dados EEPROM Escrever Habilitar bit
1= Permite escrever ciclos de programa Flash / EEPROM de dados
0= Inibe ciclos de escrita para o programa Flash / EEPROM de dados
WR: Escrever pouco controle
1= Inicia uma EEPROM apagar dados / gravao ciclo ou um ciclo de apagar a memria de programa ou
escrever ciclo
(A operao auto-cronometrado eo bit desmarcada por hardware uma vez gravao est completa.
O bit WR s pode ser definido (no limpa) em software.)
0= Ciclos de gravao na EEPROM est completa
RD: Leia bit Controle
1= Inicia uma EEPROM de leitura (Read leva um ciclo. RD cancelado em hardware. The bit RD s pode
ser definido (no limpa) em software. RD bit no pode ser definido quando EEPGD = 1ou CFGS = 1.)
0= No iniciar uma EEPROM de leitura
Quando um WRERR ocorre, os bits EEPGD e CFGS no so apagadas. Isso permite rastreamento do erro
condio.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E-pgina 83
PIC18F2455/2550/4455/4550
6.2.2 TABELA TRAVA registo (Tablat) 6.2.4 TABELA DE LIMITES PONTEIRO
A trava de mesa (Tablat) um 8-bit registar mapeados
no espao SFR. O registo Trava Table usada para
armazenar dados de 8 bits durante a transferncia de dados entre o
programa
e memria RAM de dados.
TBLPTR usado em l, escreve e apaga da
Memria de programa Flash.
Quando um TBLRD executado, todos os 22 bits da TBLPTR
determinar quais byte lido da memria do programa
em Tablat.
Quando um TBLWT executada, os cinco bits menos significativos
da Tabela
Ponteiro de registro (TBLPTR <04:00>) determinar qual dos
o programa de memria registros explorao 32 est escrito.
Quando o cronometrado escrever a memria de programa comea
(via
o bit RM), os 16 MSBs do TBLPTR
(TBLPTR <21:06>) determinar que a memria de programa
bloco de 32 bytes escrito. Para mais detalhes, consulte
Seo 6.5 "Escrevendo para a memria flash Program".
Quando um apagamento da memria de programa executado, o
16 MSBS da Tvola Pointer registo (TBLPTR <21:06>)
ponto para o bloco de 64 bytes que sero apagados. The Least
Bits significativos (TBLPTR <05:00>) so ignoradas.
Figura 6-3 descreve os limites relevantes do
TBLPTR com base em operaes de memria flash programa.
6.2.3 TABELA POINTER REGISTRO
(TBLPTR)
O ponteiro da tabela (TBLPTR) registo aborda um byte
no interior da memria do programa. O TBLPTR composta
de trs registos SFR: Table Pointer Byte Superior, Tabela
Pointer alta Byte e Tabela Pointer Low Byte
(TBLPTRU: TBLPTRH: TBLPTRL). Estes trs regis-
tros se juntar para formar um apontador de 22 bits de largura. A
baixa ordem
21 bits permitem que o dispositivo para tratar at 2 Mbytes de
espao de memria do programa. O bit 22 permite o acesso aos
o ID do dispositivo, ID do usurio e os bits de configurao.
A Tabela de Ponteiro, TBLPTR, usado pela TBLRD e
TBLWT instrues. Essas instrues podem atualizar o
TBLPTR em um dos quatro modos com base na tabela-pera
o. Estas operaes esto indicados no Quadro 6-1. Estes
operaes no TBLPTR s afetam a baixa ordem
21 bits.
Tabela 6-1:
Exemplo
TBLRD *
TBLWT *
TBLRD * +
TBLWT * +
TBLRD * -
TBLWT * -
TBLRD + *
TBLWT + *
TABELA DE OPERAES ponteiro com TBLRD E TBLWT INSTRUES
Operao em Tabela de Ponteiro
TBLPTR no modificado
TBLPTR incrementado aps a leitura / gravao
TBLPTR diminuda aps a leitura / gravao
TBLPTR incrementado antes da leitura / escrita
Figura 6-3:
21
TABELA DE LIMITES PONTEIRO BASEADOS EM OPERAO
TBLPTRU
16 15 TBLPTRH 8 7 TBLPTRL 0
ERASE TABLE
TBLPTR <21:06>
TABLE WRITE - TBLPTR <21:05>
TABLE READ - TBLPTR <21:00>
DS39632E-pgina 84 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
6.3 Lendo o Program Flash
Memria
Pontos TBLPTR para um endereo de byte no espao do programa.
Executando TBLRD coloca o byte apontado em
Tablat. Alm disso, pode ser modificado TBLPTR
automaticamente para a prxima tabela de operao de leitura.
A memria interna do programa normalmente organizado pela
palavras. O bit menos significativo do endereo seleciona
entre os bytes alto e baixo da palavra. Figura 6-4
mostra a interface entre o programa interno
memria ea Tablat.
O TBLRD instruo usado para recuperar dados a partir de
memria de programa e coloca-lo em dados RAM. Mesa
l da memria do programa so realizadas de um byte
uma vez.
FIGURA 6-4: L de FLASH PROGRAM MEMORY
Memria de Programa
(Mesmo Byte Address) (Odd Byte Address)
TBLPTR = Xxxxx1 TBLPTR = Xxxxx0
Instruction Register
(IV)
BUSQUE TBLRD
Tablat
Leia Registrar
Exemplo 6-1:
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
READ_WORD
LENDO UM PROGRAMA DE MEMRIA FLASH WORD
CODE_ADDR_UPPER
TBLPTRU
CODE_ADDR_HIGH
TBLPTRH
CODE_ADDR_LOW
TBLPTRL
, TBLPTR carga com a base
, Endereo da palavra
TBLRD * +
MOVF
MOVWF
TBLRD * +
MOVF
MOVF
Tablat, W
WORD_EVEN
Tablat, W
WORD_ODD
, Ler em Tablat e incremento
, Obter dados
, Ler em Tablat e incremento
, Obter dados
v 2009 Microchip Technology Inc. DS39632E-pgina 85
PIC18F2455/2550/4455/4550
6.4 Apagar a memria Program Flash
6.4.1
O bloco mnimo de apagamento de 32 palavras ou 64 bytes.
Apenas
atravs da utilizao de um programador externo, ou atravs
Controle ICSP, pode grandes blocos de memria de programa ser
Volume apagado. Erase palavra na matriz Flash no
suportada.
Ao iniciar uma seqncia de apagar do micro-
prprio controlador, um bloco de 64 bytes de memria de programa
apagada. Os 16 bits mais significativos do
TBLPTR <21:06> ponto para o bloco a ser apagado.
TBLPTR <05:00> so ignoradas.
O registo EECON1 comanda a operao de apagamento.
O bit EEPGD deve ser definido para apontar para o flash
memria de programa. O bit WREN deve ser ajustado para permitir
operaes de gravao. O bit definido GRTIS para selecionar um
erase
operao.
Para proteo, os write iniciar seqncia para EECON2
devem ser utilizadas.
Uma longa gravao necessrio para apagar a flash interna.
Execuo da instruo interrompida durante uma longa gravao
ciclo. O tempo de gravao ser encerrada pelo interno
programao timer.
PROGRAMA DE MEMRIA FLASH
SEQNCIA ERASE
A seqncia de eventos para apagar um bloco de interno
memria do programa :
1.
2.
Carregar registo Pointer Tabela com o endereo de linha
sendo apagados.
Defina o registo EECON1 para a operao de apagamento:
definir bit EEPGD para apontar para a memria de programa;
limpar o bit CFGS para acessar a memria do programa;
definir WREN pouco para permitir que escreve;
definir bit GRTIS para permitir o apagamento.
Desabilitar interrupes.
Escrever 55h para EECON2.
Escrever 0AAh para EECON2.
Definir o bit WR. Isto ir iniciar o Erase Row
ciclo.
A CPU vai parar para durao do erase
(Cerca de 2 ms com temporizador interno).
Reative interrupes.
3.
4.
5.
6.
7.
8.
EXEMPLO 6-2: APAGAR A MEMRIA FLASH PROGRAMA ROW
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
CODE_ADDR_UPPER
TBLPTRU
CODE_ADDR_HIGH
TBLPTRH
CODE_ADDR_LOW
TBLPTRL
EECON1,
EECON1,
EECON1,
EECON1,
INTCON,
55h
EECON2
0AAh
EECON2
EECON1,
INTCON,
EEPGD
CFGS
WREN
GRTIS
GIE
, TBLPTR carga com a base
, Endereo do bloco de memria
ERASE_ROW
BSF
BCF
BSF
BSF
BCF
MOVLW
MOVWF
MOVLW
MOVWF
BSF
BSF
;
;
;
;
;
ponto a memria de programa flash
acessar a memria de programa flash
permitir gravar na memria
permitir Row operao Erase
desativar as interrupes
Necessrio
Seqncia
, Escrever 55h
, Escrever 0AAh
, Erase start (tenda CPU)
, Re-habilitar as interrupes
WR
GIE
DS39632E-pgina 86 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
6.5 Escrevendo a memria Program Flash
O bloco mnimo de programao de 16 palavras ou
32 bytes. Palavra ou programao byte no suportado.
Tabela escreve so usados internamente para carregar a realizao
registros necessrios para programar a memria Flash. L
so 32 registros de explorao utilizada pela tabela escreve para
programao.
Uma vez que o trinco de mesa (Tablat) apenas um nico byte, o
TBLWT instruo pode precisar de ser executado 32 vezes para
cada operao de programao. Todos da mesa escrever fun-
es ser essencialmente de curto escreve porque s o
registos de reteno so escritas. No final da actualizao da
32 registros de explorao, o cadastro deve ser EECON1
escrita, a fim de iniciar a operao de programao
com um tempo de gravao.
O tempo de gravao necessrio para a programao da
flash interna. Execuo da instruo interrompida, enquanto em
um
longo ciclo de escrever. O tempo de gravao ser encerrada por
o temporizador de programao interna.
A EEPROM on-chip temporizador controla o tempo de gravao.
Os write / erase tenses so geradas por um on-chip
bomba de carga, avaliado para operar na faixa de tenso
do dispositivo.
Nota: O valor padro dos registros de explorao em
dispositivo Redefine e aps as operaes de gravao

FFh. A gravao de FFh para um registo da
explorao
no modificar esse byte. Isto significa que
bytes individuais de memria de programa pode ser
modificados, desde que a alterao no faz
tentar modificar um pouco a partir de um '0 'para '1'.
Ao modificar bytes individuais, no
necessrio carregar todos os registos explorao 32
antes de executar uma operao de gravao.
Figura 6-5: TABELA grava na memria flash PROGRAMA
Tablat
Escrever Registrar
8
TBLPTR = xxxx00 TBLPTR = xxxx01
8
TBLPTR = xxxx02
8
TBLPTR = xxxx1F
8
Holding Register Holding Register Holding Register Holding Register
Memria de Programa
6.5.1 PROGRAMA DE MEMRIA FLASH ESCREVER
SEQNCIA
A seqncia de eventos para a programao de um interno
localizao de memria de programa deve ser:
1.
2.
3.
4.
5.
6.
7.
Leia 64 bytes na memria RAM.
Atualizar os valores dos dados na memria RAM, se
necessrio.
Carregar registo Pointer Tabela com endereo a ser
apagados.
Execute o procedimento Erase Row.
Carregar registo Pointer Mesa com o endereo da primeira
byte a ser escrito.
Escrever 32 bytes para os registos guardados com
auto-incremento.
Defina o registo EECON1 para a operao de gravao:
definir bit EEPGD para apontar para a memria de programa;
limpar o bit CFGS para acessar a memria do programa;
definir WREN para permitir byte escreve.
Desabilitar interrupes.
Escrever 55h para EECON2.
Escrever 0AAh para EECON2.
Definir o bit WR. Isto ir iniciar o ciclo de gravao.
A CPU vai parar por tempo de gravao (cerca de
2 ms com temporizador interno).
13. Reative interrupes.
14. Repita os passos de 6 a 14 mais uma vez para escrever
64 bytes.
15. Verifique se a memria (tabela de leitura).
Este procedimento vai exigir cerca de 8 ms para atualizar um
linha de 64 bytes de memria. Um exemplo da necessria
cdigo dado no Exemplo 6-3.
Nota: Antes de definir o bit WR, a Mesa
Endereo de ponteiro tem de ser dentro do
intervalo de endereos de destino dos 32 bytes em
o registo da explorao.
8.
9.
10.
11.
12.
v 2009 Microchip Technology Inc. DS39632E-pgina 87
PIC18F2455/2550/4455/4550
Exemplo 6-3: ESCREVER PARA PROGRAMA DE MEMRIA FLASH
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
READ_BLOCK
TBLRD * +
MOVF
MOVWF
DECFSZ
BRA
MODIFY_WORD
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
ERASE_BLOCK
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
BSF
BCF
BSF
BSF
BCF
MOVLW
MOVWF
MOVLW
MOVWF
BSF
BSF
TBLRD * -
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
MOVWF
CODE_ADDR_UPPER
TBLPTRU
CODE_ADDR_HIGH
TBLPTRH
CODE_ADDR_LOW
TBLPTRL
EECON1, EEPGD
EECON1, CFGS
EECON1, carria
EECON1, FREE
INTCON, GIE
55h
EECON2
0AAh
EECON2
EECON1, WR
INTCON, GIE
BUFFER_ADDR_HIGH
FSR0H
BUFFER_ADDR_LOW
FSR0L
D'2 '
Counter1
D'32 '
CONTADOR
POSTINC0, W
Tablat
, TBLPTR carga com a base
, Endereo do bloco de memria
DATA_ADDR_HIGH
FSR0H
DATA_ADDR_LOW
FSR0L
NEW_DATA_LOW
POSTINC0
NEW_DATA_HIGH
INDF0
, Ponto para o buffer
Tablat, W
POSTINC0
CONTADOR
READ_BLOCK
;
;
;
;
;
ler em Tablat, e inc
obter dados
armazenam dados
feito?
repetir
D'64 '
CONTADOR
BUFFER_ADDR_HIGH
FSR0H
BUFFER_ADDR_LOW
FSR0L
CODE_ADDR_UPPER
TBLPTRU
CODE_ADDR_HIGH
TBLPTRH
CODE_ADDR_LOW
TBLPTRL
, O nmero de bytes no bloco erase
, Ponto para o buffer
, TBLPTR carga com a base
, Endereo do bloco de memria
, Update palavra tampo
;
;
;
;
;
ponto a memria de programa flash
acessar a memria de programa flash
permitir gravar na memria
permitir Row operao Erase
desativar as interrupes
Necessrio
Seqncia
, Escrever 55h
;
;
;
;
;
escrever 0AAh
comear a apagar (CPU tenda)
re-habilitar as interrupes
manequim decremento ler
apontar para o buffer
WRITE_BUFFER_BACK
MOVLW
MOVWF
WRITE_BYTE_TO_HREGS
MOVF
MOVWF
TBLWT + *
DECFSZ
BRA
, O nmero de bytes no registo da explorao
CONTADOR
WRITE_WORD_TO_HREGS
;
;
;
;
;
obter baixo byte de dados do buffer
apresentar dados para trancar mesa
gravar dados, realizar uma curta gravao
a interna TBLWT registo da explorao.
loop at buffers esto cheios
DS39632E-pgina 88 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
Exemplo 6-3:
PROGRAM_MEMORY
BSF
BCF
BSF
BCF
MOVLW
MOVWF
MOVLW
MOVWF
BSF
DECFSZ
BRA
BSF
BCF
EECON1, EEPGD
EECON1, CFGS
EECON1, carria
INTCON, GIE
55h
EECON2
0AAh
EECON2
EECON1, WR
Counter1
WRITE_BUFFER_BACK
INTCON, GIE
EECON1, carria
;
;
;
;
ponto a memria de programa flash
acessar a memria de programa flash
permitir gravar na memria
desativar as interrupes
GRAVAR EM MEMRIA FLASH PROGRAM (continuao)
Necessrio
Seqncia
, Escrever 55h
, Escrever 0AAh
, Programa de arranque (tenda CPU)
, Re-habilitar as interrupes
, Desativar gravar na memria
6.5.2 ESCREVER VERIFICAR 6.5.4
Dependendo da aplicao, uma boa programao
prtica pode ditar que o valor escrito no
memria deve ser verificada com o valor inicial.
Isto deve ser utilizado em aplicaes onde a excessiva
escreve posso forar pedaos perto do limite de especificao.
PROTEO CONTRA esprias
ESCREVE
Para se proteger contra espria escreve para o Flash programa
memria, a gravao iniciar seqncia tambm deve ser
seguido. Ver Seo 25,0 "Recursos Especiais da
CPU " para mais detalhes.
6.5.3 Terminao inesperada
A operao de escrita
6.6
Se a gravao terminada por um evento no planejado, como a
perda de energia ou um reset inesperado, a memria
localizao, apenas programado dever ser verificada e repro-
programado, se necessrio. Se a operao de gravao
interrompida
por um Reset MCLR ou WDT reset Time-out durante
operao normal, o usurio pode verificar o bit WRERR
e reescrever a localizao (s) conforme necessrio.
Operao Flash Programa Durante
Cdigo de Proteo
Ver Seo 25.5 "Verificao do Programa e do Cdigo
Proteo " para obter detalhes sobre proteo de cdigo do Flash
memria de programa.
TABELA 6-2:
Nome
TBLPTRU
REGISTOS associadas ao programa MEMRIA FLASH
Bit 7
-
Bit 6
-
Bit 5 Bit 4 Bit 3 Bit 2 O bit 1 Bit 0
Restabelecer
Valores
na pgina
53
53
53
53
INT0IE
GRTIS
EEIP
EEIF
EEIE
RBIE
WRERR
BCLIP
BCLIF
BCLIE
TMR0IF
WREN
HLVDIP
HLVDIF
HLVDIE
INT0IF
WR
TMR3IP
TMR3IF
TMR3IE
RBIF
RD
CCP2IP
CCP2IF
CCP2IE
53
55
55
56
56
56
bit 21(1) Programa Memria Tabela Pointer Byte superior (TBLPTR <20:16>)
TBLPTRH memria do programa Mesa Pointer alta Byte (TBLPTR <15:08>)
TBLPTRL memria do programa Mesa Pointer Low Byte (TBLPTR <07:00>)
Tablat
INTCON
EECON2
EECON1
IPR2
PIR2
PIE2
Programa trava tabela de memria
GIE / GIEH PEIE / giel TMR0IE
EEPGD
OSCFIP
OSCFIF
OSCFIE
CFGS
CMIP
CMIF
CMIE
-
USBIP
USBIF
USBIE
EEPROM Controle Register 2 (no um registo fsico)
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so usados durante o acesso Flash / EEPROM.
Nota 1: Bit 21 da TBLPTRU permite o acesso aos bits de configurao do dispositivo.
v 2009 Microchip Technology Inc. DS39632E-pgina 89
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E-pgina 90 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
7 DADOS DA MEMRIA EEPROM
Os dados da EEPROM uma matriz de memria no voltil,
separada da memria RAM de dados e de programa, isto
usado para o armazenamento a longo prazo de dados do
programa. No
mapeada diretamente em qualquer arquivo ou programa de registo
espao de memria, mas indiretamente dirigida pelo
Registros de Funes Especiais (SFR). A EEPROM est
leitura e escrita durante a operao normal durante o
toda a faixa de VDD.
Quatro SFR so usados para ler e gravar os dados
EEPROM, bem como a memria do programa. Eles so:




EECON1
EECON2
EEDATA
EEADR
Bit de controle, CFGS, determina se o acesso ser
Configurao registra ou para programar a memria de dados /
Memria EEPROM. Quando definido, as operaes subseqentes
acessar registros de configurao. Quando CFGS clara,
o bit EEPGD seleciona o programa Flash ou os dados
Memria EEPROM.
O bit WREN, quando definido, permitir a operao de gravao.
Ao ligar, o bit WREN clara. O bit WRERR
definido em hardware quando o bit WREN est definido e limpo
quando o temporizador de programao interna expira eo
operao de gravao est completa.
Nota: Durante a operao normal, o WRERR
lido como '1 '. Isto pode indicar que uma gravao
operao foi encerrado prematuramente por
um reset ou uma operao de gravao foi
tentou indevidamente.
Os dados EEPROM permite byte ler e escrever. Quando
de interface com o bloco de memria de dados, EEDATA prende
os dados de 8 bits para leitura / gravao eo registro EEADR
contm o endereo da localizao ser EEPROM
acessados.
A memria EEPROM avaliado em alta apagar / escrever
resistncia ciclo. Um byte escrever apaga automaticamente o
localizao e grava os novos dados (apagar-antes-write).
O tempo de gravao controlado por um temporizador on-chip,
que vai
variam com a tenso e temperatura, bem como de chip
ao chip. Consulte o parmetro D122 (Tabela 28-1 em
Seo 28,0 "Caractersticas eltricas") para exata
limites.
O bit de controle WR inicia operaes de gravao. O bit
no pode ser apagada, apenas definir, em software, que eliminado
em
hardware na concluso da operao de gravao.
Nota: A EEIF interrupo bit de flag (PIR2 <4>) definido
quando a gravao completa. Deve ser
apuradas em software.
Bits de controle, RD e WR, comear a ler e apagar / escrever
operaes, respectivamente. Estes bits so definidos pelo firmware
e liberado pelo hardware aps a concluso do
operao.
O bit RD no pode ser definido ao acessar programa
memria (EEPGD = 1). A memria de programa lido usando
mesa de ler as instrues. Ver Seo 6.1 "Tabela L
e Tabela Escreve " relao tabela l.
O registo EECON2 no um registo fsico.
utilizados exclusivamente na memria escrever e apagar
seqncias. Leitura EECON2 ir ler todas '0 's.
7.1 EECON1 e EECON2 Registros
Acesso a dados de EEPROM controlado por dois
registros: EECON1 e EECON2. Estes so os mesmos
registos que controlam o acesso memria programa
e so usados de uma forma semelhante para os dados
EEPROM.
O registo EECON1 (Register 7-1) o controle
registo de dados e acesso memria de programa. Controle
bits, EEPGD, determina se o acesso ao programa ser
ou a memria EEPROM dados. Quando claro, as operaes sero
acessar a memria EEPROM de dados. Quando definido, o
programa
memria acessada.
v 2009 Microchip Technology Inc. DS39632E-pgina 91
PIC18F2455/2550/4455/4550
CADASTRE-SE 7-1:
R / W-x
EEPGD
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
S = bit ajustvel
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
EECON1: DADOS EEPROM controle Register 1
R / W-x
CFGS
U-0
-
R/W-0
GRTIS
R / W-x
WRERR(1)
R/W-0
WREN
R/S-0
WR
R/S-0
RD
bit 0
EEPGD: Programa Flash ou os dados da memria EEPROM Selecione bit
1= Acesso a memria de programa flash
0= Acesso a dados da memria EEPROM
CFGS: Flash Programa / Dados EEPROM ou Configurao Selecione bit
1= Registros de configurao de acesso
0= Acesso programa Flash ou EEPROM memria de dados
Unimplemented: Leia como '0 '
FREE: Row Erase Flash Habilitar bit
1= Apague a linha memria de programa dirigido por TBLPTR no prximo comando WR (desmarcada por
concluso da operao de apagamento)
0= Executar somente gravao
WRERR: Flash Programa / Dados EEPROM erro Flag bit(1)
1= A operao de gravao for encerrado prematuramente (qualquer reset durante a programao de auto-
cronometrado em condies normais
operao ou uma tentativa de gravao imprpria)
0= A operao de escrita concluda
WREN: Flash Programa / Dados EEPROM Escrever Habilitar bit
1= Permite escrever ciclos de programa Flash / EEPROM de dados
0= Inibe ciclos de escrita para o programa Flash / EEPROM de dados
WR: Escrever pouco controle
1= Inicia uma EEPROM apagar dados / gravao ciclo ou um ciclo de apagar a memria de programa ou
escrever ciclo
(A operao auto-cronometrado eo bit desmarcada por hardware uma vez gravao est completa.
O bit WR s pode ser definido (no limpa) em software.)
0= Ciclos de gravao na EEPROM est completa
RD: Leia bit Controle
1= Inicia uma EEPROM de leitura (Read leva um ciclo. RD cancelado em hardware. The bit RD s pode
ser definido (no limpa) em software. RD bit no pode ser definido quando EEPGD = 1ou CFGS = 1.)
0= No iniciar uma EEPROM de leitura
Quando um WRERR ocorre, os bits EEPGD e CFGS no so apagadas. Isso permite rastreamento do erro
condio.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
DS39632E-pgina 92 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
7.2 Lendo o EEPROM de dados
Memria
Alm disso, o bit WREN em EECON1 deve ser ajustado para
permitir que escreve. Este mecanismo impede acidental
escreve dados EEPROM devido ao cdigo inesperado exe-
cution (isto , os programas de fuga). O bit WREN deve
ser mantida limpa em todos os momentos, exceto quando atualizar o
EEPROM. O bit WREN no eliminada por hardware.
Depois de uma sequncia de gravao foi iniciada, EECON1,
EEADR EEDATA e no pode ser modificada. O bit WR
ser inibida de ser definida a menos que o bit WREN
definido. O bit WREN deve ser definido em um anterior instru-
o. Ambos WR e Wren no pode ser definido com o mesmo
instrues.
Na concluso do ciclo de escrita, o bit WR
apuradas em hardware ea EEPROM Interrupo Flag bit
(EEIF) est definido. O usurio pode tanto ativar esta interrupo,
ou consultar este bit. EEIF devem ser apuradas pelo software.
Para ler uma posio de memria de dados, o usurio deve escrever
o
enderear ao registo EEADR, desmarque a EEPGD
bit de controle (EECON1 <7>) e em seguida, definir bit de controle,
RD
(EECON1 <0>). Os dados esto disponveis na muito prxima
ciclo de instruo e, portanto, o registro pode EEDATA
ser lido pela instruo seguinte. EEDATA vai realizar este
valor at que outra operao de leitura ou at que seja escrito para
pelo utilizador (durante uma operao de gravao).
O processo bsico mostrado no Exemplo 7-1.
7.3 Escrevendo para o EEPROM de dados
Memria
Para escrever uma localizao de dados EEPROM, o endereo
deve
primeiro ser escrito para o registro EEADR e os dados
escrito para o registro EEDATA. A seqncia em
Exemplo 7-2 devem ser seguidas para iniciar o ciclo de escrita.
A gravao no comear se esta seqncia no exatamente
seguido (Escreva 55h para EECON2, escreva para 0AAh
EECON2, em seguida, definir WR bit) para cada byte. fortemente
Recomenda que interrompe ser desativado durante este
segmento de cdigo.
7.4 Escrever Verifique
Dependendo da aplicao, uma boa programao
prtica pode ditar que o valor escrito no
memria deve ser verificada com o valor inicial.
Isto deve ser utilizado em aplicaes onde a excessiva
escreve posso forar pedaos perto do limite de especificao.
Exemplo 7-1:
MOVLW
MOVWF
BCF
BCF
BSF
MOVF
DATA EEPROM LEIA
DATA_EE_ADDR
EEADR
EECON1, EEPGD
EECON1, CFGS
EECON1, RD
EEDATA, W
;
;
;
;
;
;
Menores bits de dados endereo de memria para ler
Aponte para a memria de dados
Acesso EEPROM
EEPROM Read
W = EEDATA
EXEMPLO 7-2: DATA EEPROM WRITE
MOVLW
MOVWF
MOVLW
MOVWF
BCF
BCF
BSF
BCF
MOVLW
MOVWF
MOVLW
MOVWF
BSF
BSF
DATA_EE_ADDR
EEADR
DATA_EE_DATA
EEDATA
EECON1, EEPGD
EECON1, CFGS
EECON1, carria
INTCON, GIE
55h
EECON2
0AAh
EECON2
EECON1, WR
INTCON, GIE
;
;
;
;
;
;
;
;
;
;
;
;
;
;
Menores bits de dados endereo de memria para
escrever
Dados do Valor de memria para
escrever
Aponte para a memria de dados
Acesso EEPROM
Ativar escreve
Desativar Interrupes
Escrever 55h
Escrever 0AAh
Definir WR pouco para comear a
escrever
Habilitar Interrupes
Necessrio
Seqncia
BCF EECON1, carria
, A execuo do cdigo do usurio
, Desativar escreve sobre escrever completo (conjunto
EEIF)
v 2009 Microchip Technology Inc. DS39632E-pgina 93
PIC18F2455/2550/4455/4550
7,5 Durante a Operao Code-Proteja 7,7 Usando dados da EEPROM
Memria de dados EEPROM tem seu prprio cdigo de proteo
contra os bits em
Palavras de configurao. External ler e escrever
operaes so desativadas se a proteo de cdigo ativado.
O microcontrolador pode-se ler e escrever para o
dados EEPROM interna, independentemente do estado do
cdigo de proteo bit de configurao. Consulte Seo 25,0
"Recursos Especiais da CPU" Para obter
informao.
Os dados EEPROM uma alta resistncia, byte-
conjunto enderevel que foi otimizado para o
armazenamento de mudar frequentemente de informao (por
exemplo,
variveis de programa ou outros dados que so actualizados
muitas vezes). Mudanas frequentes valores ser tipicamente
atualizados com mais freqncia do que a especificao D124 ou
D124A.
Se este no for o caso, uma matriz deve ser refresh
realizada. Por esta razo, as variveis que a mudana
com pouca freqncia (tais como constantes, identificaes,
calibrao, etc)
deve ser armazenado na memria do programa Flash. A EEPROM rotina simples atualizao de dados mostrado na
Exemplo 7-3.
Nota: Se os dados de EEPROM utilizado apenas para
armazenar
constantes e / ou dados que muda raramente,
uma atualizao gama provavelmente no
necessrio. Ver
especificao D124 ou D124A.
7.6 Proteo contra gravao esprias
H condies quando o dispositivo no pode querer
escrever para a memria EEPROM dados. Para se proteger contra
espria EEPROM escreve, vrios mecanismos tm
foram implementadas. Ao ligar, o bit WREN
apagadas. Alm disso, escreve na EEPROM so bloqueados
durante o perodo do temporizador Power-up (TPWRT,
parmetro 33, Tabela 28-12).
Os write iniciar seqncia eo bit WREN juntos
ajudar a evitar uma escrita acidental durante brown-out,
falha de energia ou mau funcionamento do software.
Exemplo 7-3: DATA EEPROM REFRESH ROTINA
CLRF
BCF
BCF
BCF
BSF
EEADR
EECON1,
EECON1,
INTCON,
EECON1,
CFGS
EEPGD
GIE
WREN
;
;
;
;
;
;
;
;
;
;
;
;
;
Iniciar no endereo 0
Conjunto para memria
Conjunto para dados EEPROM
Desativar as interrupes
Ativar escreve
Loop para atualizar conjunto
Leia endereo atual
Escrever 55h
Escrever 0AAh
Definir WR pouco para comear a
escrever
Espere para escrever para completar
Lao
BSF
MOVLW
MOVWF
MOVLW
MOVWF
BSF
BTFSC
BRA
INCFSZ
BRA
BCF
BSF
EECON1, RD
55h
EECON2
0AAh
EECON2
EECON1, WR
EECON1, WR
$ -2
EEADR, F
LOOP
EECON1, carria
INTCON, GIE
Necessrio
Seqncia
, Endereo Incremento
, No zero, faz-lo novamente
, Escreve Desativar
, Habilitar as interrupes
DS39632E-pgina 94 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
Tabela 7-1:
Nome
INTCON
EEADR
EEDATA
EECON2
EECON1
IPR2
PIR2
PIE2
REGISTOS associados aos dados EEPROM MEMRIA
Bit 7 Bit 6
PEIE / giel
Bit 5
TMR0IE
Bit 4
INT0IE
Bit 3
RBIE
Bit 2
TMR0IF
O bit 1
INT0IF
Bit 0
RBIF
Restabelecer
Valores
na pgina
53
55
55
55
WREN
HLVDIP
HLVDIF
HLVDIE
WR
TMR3IP
TMR3IF
TMR3IE
RD
CCP2IP
CCP2IF
CCP2IE
55
56
56
56
-
USBIP
USBIF
USBIE
GRTIS
EEIP
EEIF
EEIE
WRERR
BCLIP
BCLIF
BCLIE
GIE / GIEH
EEPROM Address Register
EEPROM dados cadastrais
EEPROM Controle Register 2 (no um registo fsico)
EEPGD
OSCFIP
OSCFIF
OSCFIE
CFGS
CMIP
CMIF
CMIE
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so usados durante o acesso Flash / EEPROM.
v 2009 Microchip Technology Inc. DS39632E-pgina 95
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E-pgina 96 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
8
8.1
8 x 8 HARDWARE MULTIPLICADOR
Introduo
Exemplo 8-1:
MOVF
MULWF
Arg1, W
ARG2
8 x 8 UNSIGNED
MULTIPLICAR ROTINA
;
, ARG1 ARG2 * ->
, PRODH: Prdl Todos os dispositivos de PIC18 incluem um multiplicador de 8 x 8 de
hardware
como parte das ALU. O multiplicador realiza um unsigned
operao e produz um resultado de 16 bits que armazenado na
produto par de registradores, PRODH: Prdl. Do multiplicador
operao no afeta todas as bandeiras no estado de
registrar.
Fazendo uma operao de multiplicao de hardware permite
ser completada num nico ciclo de instrues. Isto tem a
vantagens de processamento computacional superior e
tamanho do cdigo reduzido para algoritmos de multiplicao e
permite a dispositivos de PIC18 para ser usado em muitas
aplicaes,
es anteriormente reservada para processadores de sinal digital.
Uma comparao de vrios dispositivos de hardware e software
operaes de multiplicar, juntamente com as economias na memria
e o tempo de execuo, mostrado na Tabela 8-1.
Exemplo 8-2:
MOVF
MULWF
BTFSC
SUBWF
MOVF
BTFSC
SUBWF
Arg1, W
ARG2
ARG2, SB
PRODH, F
ARG2, W
ARG1, SB
PRODH, F
8 x 8 ASSINADO MULTIPLY
ROTINA
;
;
;
;
;
ARG1 ARG2 * ->
PRODH: Prdl
Teste o bit de sinal
PRODH = PRODH
- ARG1
8.2 Operao
, Teste de sinal Bit
, PRODH = PRODH
, - ARG2
Exemplo 8-1 mostra a sequncia de instrues para um
8 x 8 multiplicao sem sinal. Apenas uma instruo est
necessria quando um dos argumentos j est carregado
no registo WREG.
Exemplo 8-2 mostra a seqncia para fazer um 8 x 8 assinado
multiplicao. Para explicar os bits de sinal do
argumentos, bit mais significativo de cada argumento (MSB)
testado e as subtraes apropriadas so feitas.
Tabela 8-1:
Rotina
COMPARAO DE DESEMPENHO PARA OPERAES multiplicar VRIOS
Multiplique Mtodo
Sem multiplicam hardware
Multiplicam Hardware
Sem multiplicam hardware
Multiplicam Hardware
Sem multiplicam hardware
Multiplicam Hardware
Sem multiplicam hardware
Multiplicam Hardware
Programa
Memria
(Palavras)
13
1
33
6
21
28
52
35
Ciclos
(Max)
69
1
91
6
242
28
254
40
Tempo
@ 40 MHz
6.9 o
100 ns
9.1 o
600 ns
24,2 o
2.8 o
25,4 o
4.0 o
@ 10 MHz
27,6 o
400 ns
36.4 o
2.4 o
96,8 o
11.2 o
102,6 o
16,0 o
@ 4 MHz
69 o
1 o
91 o
6 o
242 o
28 o
254 o
40 o
8 x 8 sem sinal
8 x 8 assinada
16 x 16 sem sinal
16 x 16 assinado
v 2009 Microchip Technology Inc. DS39632E-pgina 97
PIC18F2455/2550/4455/4550
Exemplo 8-3 mostra a seqncia para fazer um 16 x 16
multiplicao sem sinal. 8-1 mostra a Equao
algoritmo que usado. A sequncia de 32 bits armazenado em
quatro
registradores (RES3: RES0).
EQUAO 8-2: 16 x 16 ASSINADO
MULTIPLICAO
ALGORITHM
EQUAO 8-1: 16 x 16 UNSIGNED
MULTIPLICAO
ALGORITHM
ARG1H: ARG1L ARG2H: ARG2L
(ARG1H ARG2H 216) +
(ARG1H ARG2L 28) +
(ARG1L ARG2H 28) +
(ARG1L ARG2L)
RES3: RES0 =
=
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)
Exemplo 8-4:
MOVF
MULWF
MOVFF
MOVFF
;
MOVF
MULWF
MOVFF
MOVFF
;
MOVF
MULWF
MOVF
ADDWF
MOVF
ADDWFC
CLRF
ADDWFC
;
MOVF
MULWF
MOVF
ADDWF
MOVF
ADDWFC
CLRF
ADDWFC
;
BTFSS
BRA
MOVF
SUBWF
MOVF
SUBWFB
;
SIGN_ARG1
BTFSS
BRA
MOVF
SUBWF
MOVF
SUBWFB
;
CONT_CODE
:
16 x 16 ASSINADO
MULTIPLICAR ROTINA
; ARG1L ARG2L * ->
, PRODH: Prdl
;
;
Exemplo 8-3:
MOVF
MULWF
MOVFF
MOVFF
;
MOVF
MULWF
MOVFF
MOVFF
;
MOVF
MULWF
MOVF
ADDWF
MOVF
ADDWFC
CLRF
ADDWFC
;
MOVF
MULWF
MOVF
ADDWF
MOVF
ADDWFC
CLRF
ADDWFC
16 x 16 UNSIGNED
MULTIPLICAR ROTINA
; ARG1L * ARG2L->
, PRODH: Prdl
;
;
ARG1L, W
ARG2L
PRODH, RES1
Prdl, RES0
ARG1H, W
ARG2H
PRODH, RES3
Prdl, RES2
ARG1L, W
ARG2H
Prdl, W
RES1, F
PRODH, W
RES2, F
WREG
RES3, F
ARG1H, W
ARG2L
Prdl, W
RES1, F
PRODH, W
RES2, F
WREG
RES3, F
ARG2H, 7
SIGN_ARG1
ARG1L, W
RES2
ARG1H, W
RES3
ARG1L, W
ARG2L
PRODH, RES1
Prdl, RES0
ARG1H, W
ARG2H
PRODH, RES3
Prdl, RES2
ARG1L, W
ARG2H
Prdl, W
RES1, F
PRODH, W
RES2, F
WREG
RES3, F
ARG1H, W
ARG2L
Prdl, W
RES1, F
PRODH, W
RES2, F
WREG
RES3, F
; ARG1H * ARG2H->
, PRODH: Prdl
;
;
; ARG1H ARG2H * ->
, PRODH: Prdl
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
ARG1L * ARG2H->
PRODH: Prdl
Adicionar
atravessar
produtos
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
ARG1L ARG2H * ->
PRODH: Prdl
Adicionar
atravessar
produtos
ARG1H ARG2L * ->
PRODH: Prdl
Adicionar
atravessar
produtos
ARG1H * ARG2L->
PRODH: Prdl
Adicionar
atravessar
produtos
Exemplo 8-4 mostra a seqncia para fazer um 16 x 16
assinado multiplicam. Equao 8-2 mostra o algoritmo
utilizado. A sequncia de 32 bits armazenado em quatro registos
(RES3: RES0). Para explicar os bits de sinal do
argumentos, o MSB para cada par argumento testado
e as subtraes apropriadas so feitas.
, ARG2H: ARG2L neg?
, No, verifique ARG1
;
;
;
ARG1H, 7
CONT_CODE
ARG2L, W
RES2
ARG2H, W
RES3
, ARG1H: ARG1L neg?
, No, feito
;
;
;
DS39632E-pgina 98 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
9 INTERRUPTS
Os dispositivos tm PIC18F2455/2550/4455/4550
vrias fontes de interrupo e um recurso de prioridade de
interrupo
que permite que cada uma das fontes de interrupo a ser atribuda
uma maior
nvel de prioridade ou um nvel de baixa prioridade. A alta prioridade
vetor de interrupo a 000008h ea baixa prioridade
vetor de interrupo a 000018h. Interrupo de alta prioridade
eventos vo interromper quaisquer interrupes de baixa prioridade
que podem
estar em andamento.
H dez registos, que so usados para controlar
interromper a operao. Estes registos so:







RCON
INTCON
INTCON2
INTCON3
PIR1, PIR2
PIE1, PIE2
IPR1, IPR2
Quando uma interrupo respondida, a interrupo mundial
bit de habilitao liberado para desativar mais interrupes. Se o
IPEN bit estiver desmarcada, este o bit GIE. Se a prioridade de
interrupo
nveis so utilizados, este ser, ou o GIEH ou pouco Giel.
Fontes de interrupo de alta prioridade pode interromper uma baixa
interrupo de prioridade. Interrupes de baixa prioridade no so
processada enquanto interrompe alta prioridade esto em
andamento.
O endereo de retorno colocado na pilha eo
PC carregado com o endereo do vetor de interrupo
(000008h ou 000018h). Uma vez que no servio de interrupo
Rotina, a fonte (s) da interrupo pode ser determi-
minada por votao os bits bandeira de interrupo. A interrupo
bandeira bits devem ser apuradas no software antes de reativar
interrompe a evitar interrupes recursiva.
O "retorno da interrupo" instruo, RETFIE, sadas
a rotina de interrupo e define o bit GIE (GIEH ou giel
se os nveis de prioridade so usadas), que re-habilita interrupes.
Para eventos de interrupo externas, tais como os pinos ou IntX
a interrupo de mudana de entrada PORTB, a latncia de
interrupo
ser de trs a quatro ciclos de instruo. A exata
latncia o mesmo para um ou dois ciclos de instrues.
Individuais de interrupo bandeira bits so definidas
independentemente da
status do seu bit de habilitao correspondente ou o bit GIE.
Nota: No utilize o MOVFF instrues para modificar
qualquer um dos registos de controlo de interrupo,
enquanto
qualquer interrupo ativada. Se o fizer, pode
causar um comportamento errtico microcontrolador.
Recomenda-se que os arquivos de cabealho Microchip
fornecido com MPLAB IDE ser utilizado para o bit simblico
nomes desses registros. Isto permite que o montador /
compilador para cuidar automaticamente da colocao de
estes bits dentro do registo especificado.
Cada fonte de interrupo tem trs bits para controlar a sua
operao. As funes destes pedaos so:
bit sinalizador para indicar que um evento de interrupo
ocorreu
Habilitar bit, que permite a execuo do programa
ramificar para o endereo de vetor de interrupo quando o
bit sinalizador est definido
bit Prioridade para selecionar alta prioridade ou baixa
prioridade
O recurso de prioridade de interrupo ativada, definindo o
IPEN bit (RCON <7>). Quando a prioridade de interrupo
activado, existem dois bits, que permitem interrupes
globalmente. Definir o bit GIEH (INTCON <7>) permite que todos os
interrupes que tm o conjunto de bits de prioridade (alta
prioridade).
Definir o bit giel (INTCON <6>) permite que todos os
interrupes que tm o bit prioridade apagadas (baixa prioridade).
Quando a bandeira de interrupo, bit de habilitao e apropriada
bit de habilitao de interrupo globais so definidas, a interrupo
ser
vector imediatamente para tratar ou 000008h 000018h,
dependendo da definio de prioridades bit. Individual inter-
Rupts pode ser desabilitado atravs do seu correspondente
permitir bits.
Quando o bit IPEN apagada (estado padro), o
recurso de prioridade de interrupo desativado e interrupes so
compatvel com PIC dispositivos de gama mdia. Em
O modo de compatibilidade, os bits de prioridade de interrupo
para cada
fonte no tm efeito. INTCON <6> o bit PEIE
que ativa / desativa todas as fontes de interrupo perifricos.
INTCON <7> o bit GIE que ativa / desativa todos
interromper fontes. Todas as interrupes ramo para tratar
000008h em modo de compatibilidade.
9.1 Interrupes USB
Ao contrrio de outros perifricos, o mdulo capaz de USB
gerar uma vasta gama de interrupes para muitos tipos de
eventos. Estes incluem vrios tipos de normal de comu-
municao e status de eventos e vrios nvel de mdulo
eventos de erro.
Para lidar com esses eventos, o mdulo USB est equipado
com a sua prpria lgica de interrupo. As funes lgicas numa
forma semelhante ao nvel microcontrolador interromper fun-
nel, com cada fonte de interrupo com bandeira separado e
permitir bits. Todos os eventos so canalizados para um nico
dispositivo
interrupo nvel, USBIF (PIR2 <5>). Ao contrrio do dispositivo
lgica de interrupo nvel, os eventos de interrupo USB
individuais
no pode ser atribudo individualmente a sua prpria prioridade. Este
determinado no nvel do dispositivo funil interrupo para todos
Eventos USB pelo pouco USBIP.
Para detalhes adicionais sobre a lgica de interrupo USB,
consulte
Seo 17.5 "Interrupes USB".
v 2009 Microchip Technology Inc. DS39632E-pgina 99
PIC18F2455/2550/4455/4550
Figura 9-1: INTERROMPER LOGIC
Wake-up em caso de Sleep Mode
TMR0IF
TMR0IE
TMR0IP
RBIF
RBIE
RBIP
INT0IF
INT0IE
INT1IF
INT1IE
INT1IP
INT2IF
INT2IE
INT2IP
Peripheral Interrupt Flag bit
Interrupo perifrica Activar bit
Peripheral Interrupt bit Prioridade
TMR1IF
TMR1IE
TMR1IP
De USB
Interromper Logic
USBIF
USBIE
USBIP
Interrupes perifricos adicionais
Gerao de interrupo de alta prioridade
Gerao de interrupo de baixa prioridade
Interromper a CPU
Vector a Localizao
0008H
GIE / GIEH
IPEN
IPEN
PEIE / giel
IPEN
Peripheral Interrupt Flag bit
Interrupo perifrica Activar bit
Peripheral Interrupt bit Prioridade
TMR0IF
TMR0IE
TMR0IP
RBIF
RBIE
RBIP
Interromper a CPU
Vector a Localizao
0018h
TMR1IF
TMR1IE
TMR1IP
De USB
Interromper Logic
USBIF
USBIE
USBIP
PEIE / giel
GIE / GIEH
Interrupes perifricos adicionais
INT1IF
INT1IE
INT1IP
INT2IF
INT2IE
INT2IP
DS39632E pgina 100 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
9.2 INTCON Registra
Nota:
Os registradores INTCON so lidos e escritos
registros que contm vrios enable, prioridade e bandeira
bits.
Interrupo bandeira bits so definidos quando uma
interrupo
condio ocorre independentemente do estado de
seu bit de habilitao correspondente ou global
interromper permitir bit. Software usurio deve
garantir os bits de flag de interrupo adequados
so claras antes de ativar uma interrupo.
Este recurso permite a votao software.
CADASTRE-SE 9-1:
R/W-0
GIE / GIEH
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
INTCON: registro de controle de interrupo
R/W-0 R/W-0
TMR0IE
R/W-0
INT0IE
R/W-0
RBIE
R/W-0
TMR0IF
R/W-0
INT0IF
R / W-x
RBIF(1)
bit 0
PEIE / giel
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
GIE / GIEH: Interrupo global Habilitar bit
Quando IPEN = 0:
1= Habilita todas as interrupes no mascaradas
0= Desabilita todas as interrupes
Quando IPEN = 1:
1= Permite que todas as interrupes de alta
prioridade
0= Desabilita todas as interrupes
PEIE / giel: Interrupo perifrica Activar bit
Quando IPEN = 0:
1= Permite que todas as interrupes de perifricos desmascarado
0= Desabilita todas as interrupes de perifricos
Quando IPEN = 1:
1= Permite que todas as interrupes de perifricos de baixa prioridade (se GIE /
GIEH = 1)
0= Desabilita todas as interrupes de perifricos de baixa prioridade
TMR0IE: TMR0 Overflow Interrupt Habilitar bit
1= Permite a interrupo de estouro TMR0
0= Desativa a interrupo de estouro TMR0
INT0IE: INT0 interrupo externa Habilitar bit
1= Ativa a interrupo externa INT0
0= Desativa a interrupo externa INT0
RBIE: RB Porto Mudana Interrupo Ativar bit
1= Permite a mudana de porta RB interromper
0= Desativa a interrupo mudana porta RB
TMR0IF: TMR0 Overflow Interrupt Flag bit
1= TMR0 registo transbordou (deve ser limpo por software)
0= TMR0 registo no fez transbordar
INT0IF: INT0 External Interrupt Flag bit
1= A interrupo externa INT0 ocorreu (deve ser limpo por software)
0= A interrupo externa INT0 no ocorreu
RBIF: RB Porto Mudana de interrupo Flag bit(1)
1= Pelo menos um dos RB7: RB4 pinos estado alterado (deve ser limpo por software)
0= None do RB7: RB4 pinos mudaram estado
A condio de incompatibilidade continuar a definir este bit. Lendo PORTB, e depois espera uma instruo adicional
ciclo, vai acabar com a condio de incompatibilidade e permitir que o bit a ser apuradas.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E pgina 101
PIC18F2455/2550/4455/4550
CADASTRE-SE 9-2:
R/W-1
RBPU
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
INTCON2: CONTROLE DE INTERRUPO registar 2
R/W-1
INTEDG0
R/W-1
INTEDG1
R/W-1
INTEDG2
U-0
-
R/W-1
TMR0IP
U-0
-
R/W-1
RBIP
bit 0
RBPU: PORTB pull-up Ativar bit
1= Todos PORTB pull-ups esto desabilitados
0= PORTB pull-ups so ativados por valores de fecho de portas individuais
INTEDG0: External Interrupt 0 Borda Select bit
1= Interromper em borda de subida
0= Interromper em borda de descida
INTEDG1: External Interrupt 1 Borda Select bit
1= Interromper em borda de subida
0= Interromper em borda de descida
INTEDG2: Interrupo externa 2 Borda Select bit
1= Interromper em borda de subida
0= Interromper em borda de descida
Unimplemented: Leia como '0 '
TMR0IP: TMR0 Overflow Interrupt bit Prioridade
1= Alta prioridade
0= Baixa prioridade
Unimplemented: Leia como '0 '
RBIP: RB Porto Mudana de interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
Interrupo bandeira bits so definidos quando uma condio de interrupo ocorre independentemente do estado de seu
correspondente
bit de habilitao ou a interrupo global de permitir bit. Software usurio deve garantir que os bits de flag de interrupo
adequados
so claras antes de ativar uma interrupo. Este recurso permite a votao software.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota:
DS39632E pgina 102 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 9-3:
R/W-1
INT2IP
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
INTCON3: CONTROLE DE INTERRUPO REGISTRO 3
R/W-1
INT1IP
U-0
-
R/W-0
INT2IE
R/W-0
INT1IE
U-0
-
R/W-0
INT2IF
R/W-0
INT1IF
bit 0
INT2IP: INT2 External Interrupt bit Prioridade
1= Alta prioridade
0= Baixa prioridade
INT1IP: INT1 External Interrupt bit Prioridade
1= Alta prioridade
0= Baixa prioridade
Unimplemented: Leia como '0 '
INT2IE: INT2 interrupo externa Habilitar bit
1= Ativa a interrupo externa INT2
0= Desativa a interrupo externa INT2
INT1IE: INT1 interrupo externa Habilitar bit
1= Ativa a interrupo externa INT1
0= Desativa a interrupo externa INT1
Unimplemented: Leia como '0 '
INT2IF: INT2 External Interrupt Flag bit
1= A interrupo externa INT2 ocorreu (deve ser limpo por software)
0= A interrupo externa INT2 no ocorreu
INT1IF: INT1 External Interrupt Flag bit
1= A interrupo externa INT1 ocorreu (deve ser limpo por software)
0= A interrupo externa INT1 no ocorreu
Interrupo bandeira bits so definidos quando uma condio de interrupo ocorre independentemente do estado de seu
correspondente
bit de habilitao ou a interrupo global de permitir bit. Software usurio deve garantir que os bits de flag de interrupo
adequados
so claras antes de ativar uma interrupo. Este recurso permite a votao software.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota:
v 2009 Microchip Technology Inc. DS39632E pgina 103
PIC18F2455/2550/4455/4550
9.3 PIR Registra
Os registros PIR conter os bits bandeira individuais para o
interrompe perifricos. Devido ao nmero de perifricos
interromper fontes, existem duas interrupo Perifrico
Request (Flag) registros (PIR1 e PIR2).
Nota 1: Interrupo bandeira bits so definidos quando uma
interrupo
condio ocorre independentemente do estado de
seu bit de habilitao correspondente ou Global
Interromper Habilitar bit, GIE (INTCON <7>).
2: Software usurio deve garantir a ade-
comeram interrupo bandeira bits so apagadas antes
permitindo uma interrupo e depois de atender a
essa interrupo.
CADASTRE-SE 9-4:
R/W-0
SPPIF(1)
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
PIR1: pedido de interrupo perifrica (FLAG) registrar um
R/W-0
ADIF
R-0
RCIF
R-0
TXIF
R/W-0
SSPIF
R/W-0
CCP1IF
R/W-0
TMR2IF
R/W-0
TMR1IF
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SPPIF: Transmisso de porta paralela de leitura / gravao de interrupo bit Bandeira(1)
1= A leitura ou uma operao de gravao foi realizada (deve ser limpo por software)
0= No ler ou escrever ocorreu
ADIF: Conversor A / D de interrupo bit Bandeira
1= Uma converso A / D concludo (deve ser limpo por software)
0= A converso A / D no completa
RCIF: EUSART Receba interrupo bit Bandeira
1= O EUSART receber buffer, RCREG, est cheio (apagado quando RCREG lido)
0= O buffer de recepo EUSART est vazia
TXIF: EUSART Transmitir interrupo bit Bandeira
1= O buffer de transmisso EUSART, TXREG, est vazia (apagada quando TXREG est escrito)
0= O buffer de transmisso EUSART est cheio
SSPIF: Mestre Synchronous Serial Port Interrupt Flag bit
1= A transmisso / recepo completo (deve ser limpo por software)
0= Esperando para transmitir / receber
CCP1IF: CCP1 interrupo bit Bandeira
Modo de captura:
1= Um registo captura TMR1 ocorreu (deve ser limpo por software)
0= No captura registo TMR1 ocorreu
Modo de comparao:
1= Um registo TMR1 comparar corresponder ocorreu (deve ser limpo por software)
0= No registo TMR1 comparar corresponder ocorreu
Modo PWM:
No utilizado neste modo.
TMR2IF: TMR2 para PR2 jogo interrupo Flag bit
1= TMR2 para PR2 jogo ocorreu (deve ser limpo por software)
0N = TMR2 para PR2 partida ocorreu
TMR1IF: TMR1 Overflow Interrupt Flag bit
1= TMR1 registo transbordou (deve ser limpo por software)
0= TMR1 registo no fez transbordar
Este bit reservado em dispositivos de 28 pinos; sempre manter esse pouco clara.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
DS39632E pgina 104 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 9-5:
R/W-0
OSCFIF
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
PIR2: pedido de interrupo perifrica (FLAG) REGISTRO 2
R/W-0
CMIF
R/W-0
USBIF
R/W-0
EEIF
R/W-0
BCLIF
R/W-0
HLVDIF
R/W-0
TMR3IF
R/W-0
CCP2IF
bit 0
OSCFIF: Oscilador Falha de interrupo bit Bandeira
1= Oscilador sistema falhou, entrada de clock mudou para INTOSC (deve ser limpo por software)
0= Sistema operacional relgio
CMIF: Comparador de interrupo Flag bit
1= Entrada Comparador mudou (deve ser limpo por software)
0= Entrada comparadores no mudou
USBIF: USB interrupo bit Bandeira
1= USB pediu uma interrupo (deve ser limpo por software)
0= No pedido de interrupo USB
EEIF: Dados EEPROM / Flash Escrever operao de interrupo bit Bandeira
1= A operao de escrita completo (deve ser limpo por software)
0= A operao de gravao no est completa ou no foi iniciado
BCLIF: Bus Collision interrupo Flag bit
1= A coliso de nibus ocorreu (deve ser limpo por software)
0= No coliso de nibus ocorrido
HLVDIF: High / Low-Voltage Detect interrupo bit Bandeira
1= A condio de alta / baixa tenso ocorreu (deve ser limpo por software)
0= No caso de alta / baixa tenso ocorreu
TMR3IF: TMR3 Overflow Interrupt Flag bit
1= TMR3 registo transbordou (deve ser limpo por software)
0= TMR3 registo no fez transbordar
CCP2IF: CCP2 interrupo bit Bandeira
Modo de captura:
1= A TMR1 ou TMR3 registo captura ocorreu (deve ser limpo por software)
0= No TMR1 ou TMR3 registo captura ocorreu
Modo de comparao:
1= A TMR1 ou TMR3 registo comparar corresponder ocorreu (deve ser limpo por software)
0= No TMR1 ou TMR3 registo comparar corresponder ocorreu
Modo PWM:
No utilizado neste modo.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
v 2009 Microchip Technology Inc. DS39632E pgina 105
PIC18F2455/2550/4455/4550
9.4 PIE Registra
O PIE registra conter os bits individuais de habilitao para
as interrupes perifricas. Devido ao nmero de peri-
fontes de interrupo eral, existem duas interrupo Perifrico
Ativar registros (PIE1 e PIE2). Quando IPEN = 0, o
PEIE bit deve ser ajustado para permitir que qualquer um destes
perifricos
as interrupes.
CADASTRE-SE 9-6:
R/W-0
SPPIE(1)
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
PIE1: INTERRUPO perifrica Activar Registo 1
R/W-0
ADIE
R/W-0
RCIE
R/W-0
TXIE
R/W-0
SSPIE
R/W-0
CCP1IE
R/W-0
TMR2IE
R/W-0
TMR1IE
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SPPIE: Transmisso de porta paralela de leitura / gravao de interrupo
Habilitar bit(1)
1= Permite a SPP leitura / gravao de interrupo
0= Desativa o SPP leitura / gravao de interrupo
ADIE: A interrupo conversor A / D Habilitar bit
1= Permite a interrupo A / D
0= Desativa a interrupo A / D
RCIE: EUSART Receber Interrupo Ativar bit
1= Ativa a receber EUSART interrupo
0= Desativa o EUSART receber interrupo
TXIE: EUSART Transmitir Interrupo Ativar bit
1= Permite a EUSART transmitir interrupo
0= Desativa o EUSART transmitir interrupo
SSPIE: Mestre Synchronous Serial interrupo Habilitar porta bit
1= Permite a interrupo MSSP
0= Desativa a interrupo MSSP
CCP1IE: CCP1 interrupo Habilitar bit
1= Permite a interrupo CCP1
0= Desativa a interrupo CCP1
TMR2IE: TMR2 para PR2 jogo interrupo Habilitar bit
1= Permite a partida de interrupo TMR2 para PR2
0= Desativa o jogo interrupo TMR2 para PR2
TMR1IE: TMR1 Overflow Interrupt Habilitar bit
1= Permite a interrupo de estouro TMR1
0= Desativa a interrupo de estouro TMR1
Este bit reservado em dispositivos de 28 pinos; sempre manter esse pouco clara.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
DS39632E pgina 106 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 9-7:
R/W-0
OSCFIE
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
PIE2: INTERRUPO perifrica Activar CADASTRE-SE 2
R/W-0
CMIE
R/W-0
USBIE
R/W-0
EEIE
R/W-0
BCLIE
R/W-0
HLVDIE
R/W-0
TMR3IE
R/W-0
CCP2IE
bit 0
OSCFIE: Oscilador falha Interrupo Ativar bit
1= Ativado
0= Desativado
CMIE: Interrupo comparador Habilitar bit
1= Ativado
0= Desativado
USBIE: Interrupo USB Habilitar bit
1= Ativado
0= Desativado
EEIE: Dados EEPROM / Flash Write operao de interrupo Habilitar bit
1= Ativado
0= Desativado
BCLIE: Bus Collision interrupo Habilitar bit
1= Ativado
0= Desativado
HLVDIE: High / Low-Voltage Detect Interrupo Ativar bit
1= Ativado
0= Desativado
TMR3IE: TMR3 Overflow Interrupt Habilitar bit
1= Ativado
0= Desativado
CCP2IE: CCP2 interrupo Habilitar bit
1= Ativado
0= Desativado
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
v 2009 Microchip Technology Inc. DS39632E pgina 107
PIC18F2455/2550/4455/4550
9,5 IPR Registra
Os registros de DPI conter os bits de prioridade individuais para
as interrupes perifricas. Devido ao nmero de
fontes de interrupo perifrico, existem dois Perifrico
Interromper registros prioritrios (IPR1 e IPR2). Usando o
bits de prioridade exige que a prioridade de interrupo Ativar
(IPEN) bit ser definido.
CADASTRE-SE 9-8:
R/W-1
SPPIP(1)
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
IPR1: PRIORIDADE INTERRUPO PERIPHERAL REGISTRAR 1
R/W-1
ADIP
R/W-1
RCIP
R/W-1
TXIP
R/W-1
SSPIP
R/W-1
CCP1IP
R/W-1
TMR2IP
R/W-1
TMR1IP
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SPPIP: Transmisso de porta paralela de leitura / gravao de interrupo bit
Prioridade(1)
1= Alta prioridade
0= Baixa prioridade
ADIP: Conversor A / D de interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
RCIP: EUSART Receba interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
TXIP: EUSART Transmitir interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
bit 6
bit 5
4 bits
bit 3 SSPIP: Mestre Synchronous Serial Port Interrupt bit Prioridade
1= Alta prioridade
0= Baixa prioridade
CCP1IP: CCP1 interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
TMR2IP: TMR2 para PR2 jogo interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
TMR1IP: TMR1 Overflow Interrupt bit Prioridade
1= Alta prioridade
0= Baixa prioridade
Este bit reservado em dispositivos de 28 pinos; sempre manter esse pouco clara.
bit 2
bit 1
bit 0
Nota 1:
DS39632E pgina 108 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 9-9:
R/W-1
OSCFIP
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
IPR2: PERIPHERAL INTERRUPO PRIORIDADE registar 2
R/W-1
CMIP
R/W-1
USBIP
R/W-1
EEIP
R/W-1
BCLIP
R/W-1
HLVDIP
R/W-1
TMR3IP
R/W-1
CCP2IP
bit 0
OSCFIP: Oscilador Falha de interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
CMIP: Comparador de interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
USBIP: USB interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
EEIP: Dados EEPROM / Flash Escrever operao de interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
BCLIP: Bus Collision interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
HLVDIP: High / Low-Voltage Detect interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
TMR3IP: TMR3 Overflow Interrupt bit Prioridade
1= Alta prioridade
0= Baixa prioridade
CCP2IP: CCP2 interrupo bit Prioridade
1= Alta prioridade
0= Baixa prioridade
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
v 2009 Microchip Technology Inc. DS39632E pgina 109
PIC18F2455/2550/4455/4550
9,6 RCON Registrar
O registo RCON contm bits bandeira, as quais so utilizadas para
determinar a causa do ltimo reajuste ou wake-up de
Ocioso ou sono modos. RCON tambm contm o bit IPEN
que permite que as prioridades de interrupo.
CADASTRE-SE 9-10:
R/W-0
IPEN
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
RCON: REAJUSTE registro de controle
U-0
-
R/W-1
RI
R-1
TO
R-1
PD
R/W-0(2)
POR
R/W-0
BOR
bit 0
R/W-1(1)
SBOREN
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
IPEN: Prioridade Interrupo Ativar bit
1= Ativar nveis de prioridade sobre as interrupes
0= Desativar nveis de prioridade de interrupes (modo de compatibilidade
PIC16CXXX)
SBOREN: BOR Software Habilitar bit(1)
Para mais detalhes sobre a operao bit, consulte
Registrar 4-1.
Unimplemented: Leia como '0 '
RI: REAJUSTE Bandeira Instruo bit
Para mais detalhes sobre a operao bit, consulte
Registrar 4-1.
TO: Watchdog Time-out Flag bit
Para mais detalhes sobre a operao bit, consulte
Registrar 4-1.
PD: Poder-Down Deteco Flag bit
Para mais detalhes sobre a operao bit, consulte
Registrar 4-1.
POR: Power-on reset bit Estado(2)
Para mais detalhes sobre a operao bit, consulte
Registrar 4-1.
BOR: Brown-out bit Estado Reiniciar
Para mais detalhes sobre a operao bit, consulte
Registrar 4-1.
Se SBOREN est habilitado, o seu estado de reset '1 ', caso contrrio, '0'. Veja Registre 4-1 para obter informaes
adicionais.
O valor real de Redefinir POR determinada pelo tipo de dispositivo de reset. Veja Registre 4-1 para obter
informao.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
2:
DS39632E pgina 110 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
9,7 INTX Interrupes Pin 9,8 TMR0 interrupo
Interrompe externas no RB0/AN12/INT0/FLT0/SDI /
SDA, RB1/AN10/INT1/SCK/SCL e RB2/AN8/INT2 /
VMO pinos so edge-triggered. Se o correspondente
INTEDGx bit no registo INTCON2 est definido (= 1), o
interrupo desencadeada por um flanco ascendente, se o bit
claro,
o gatilho est na margem de queda. Quando uma aresta vlido
aparece no pino Rbx / INTx, a bandeira correspondente
bit, INTxIF, est definido. Esta interrupo pode ser desabilitado
limpar o bit de habilitao correspondente, INTxIE. Bit Bandeira,
INTxIF, devem ser apuradas em software na interrupo
Rotina de servio antes de reativar a interrupo.
Todas as interrupes externas (INT0, INT1 e INT2) pode acordar-
o processador a partir dos modos de potncia gerenciados se
pouco,
INTxIE, foi criado antes de ir para o poder de gesto
modos. Se a interrupo global Habilitar bit, GIE, est definido, o
processador ir desviar para o vetor de interrupo seguinte
wake-up.
Interromper prioridade para INT1 e INT2 determinada pela
o valor contido nos bits de prioridade de interrupo,
INT1IP (INTCON3 <6>) e INT2IP (INTCON3 <7>).
No h pouco prioridade associado com INT0.
sempre uma fonte de interrupo de alta prioridade.
No modo de 8 bits (que o padro), um estouro no
TMR0 registo (FFh 00h) ir definir bit bandeira, TMR0IF. Em
Modo de 16 bits, um estouro no TMR0H: TMR0L regis-
ter par (FFFFh 0000h) ir definir TMR0IF. A interrupo
pode ser ativado / desativado atravs da criao / limpar bit enable,
TMR0IE (INTCON <5>). Interromper prioridade para Timer0
determinada pelo valor contido na interrupo
bit prioridade, TMR0IP (INTCON2 <2>). Ver Seo 11.0
"Timer0 Module" para mais detalhes sobre o Timer0
mdulo.
9,9 PORTB Interrupo-on-Change
Uma mudana de entrada no PORTB <07:04> sets bit bandeira,
RBIF
(INTCON <0>). A interrupo pode ser ativado / desativado
definindo / limpar bit enable, RBIE (INTCON <3>).
Prioridade de interrupo para PORTB interrupt-on-a mudana
determinada pelo valor contido na interrupo
bit prioridade, RBIP (INTCON2 <0>).
9.10 Saving contexto Durante Interrupes
Durante as interrupes, o endereo PC retorno guardado em
a pilha. Alm disso, o WREG, STATUS e BSR
registradores so salvos na pilha de retorno rpido. Se um rpido
retornar da interrupo no utilizado (ver Seo 5.3
"Organizao da memria de dados"), o utilizador pode necessitar
salvar os WREG, status e BSR registros de entrada
para a rotina de servio de interrupo. Dependendo do
aplicao do usurio, outros registros tambm pode precisar de ser
salvos. Exemplo 9-1 salva e restaura o WREG,
STATUS e BSR registros durante uma interrupo de servio
Rotina.
Exemplo 9-1: ECONOMIA DE STATUS, WREG E BSR registros na RAM
, W_TEMP banco virtual
; STATUS_TEMP localizado em qualquer
lugar
; BSR_TMEP localizado em qualquer lugar
MOVWFW_TEMP
MOVFFSTATUS, STATUS_TEMP
MOVFFBSR, BSR_TEMP
;
, O usurio ISR CODE
;
MOVFFBSR_TEMP, BSR
MOVFW_TEMP, W
MOVFFSTATUS_TEMP, STATUS
, Restore BSR
, Restore WREG
, Restaurao STATUS
v 2009 Microchip Technology Inc. DS39632E pgina 111
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 112 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
10.0 Portas I / O
Dependendo do equipamento seleccionado e as caractersticas
habilitado, h at cinco portas disponveis. Alguns pinos
das portas de E / S so multiplexados com um suplente
funo das caractersticas do dispositivo perifrico. Em
Geralmente, quando um perifrico habilitado, que o pino no pode
ser utilizado como um objectivo pino de I / O em geral.
Cada porto tem trs registros para o seu funcionamento. Estes
registros so:
TRIS registo (registo direo de dados)
PORT registo (l os nveis sobre os pinos do
dispositivo)
LAT registo (trava sada)
A trava registo de dados (LATA) til para leitura
modificar-escrever operaes sobre o valor impulsionado pela I / O
dos pinos.
Um modelo simplificado de uma porta I / O genrico, sem
interfaces com outros perifricos, mostrado na Figura 10-1.
Lendo o registo PORTA l o estado da
pins, escrita para ela vai escrever para o trinco da porta.
A trava registo de dados (LATA) tambm a memria
mapeados. Ler-modificar-escrever operaes na LATA
registrar ler e escrever o valor de sada fechada para
PORTA.
O pino RA4 multiplexada com o mdulo Timer0
entrada de relgio para se tornar o pino RA4/T0CKI. O pino RA6
multiplexado com o pino do oscilador principal, que habilitado
como uma pin oscilador ou I / O com a seleo dos principais
oscilador em Configurao Register 1H (ver
Seo 25.1 "Bits de Configurao" para mais detalhes). Quando
no usado como um pino da porta, RA6 e seus associados TRIS
LAT e os bits so lidos como '0 '.
RA4 tambm multiplexada com o mdulo USB, que serve
como uma entrada a partir de um receptor do transceptor USB
externo.
Para obter detalhes sobre a configurao do mdulo USB, consulte
Seo 17.2 "Situao e Controle USB".
Vrios pinos PORTA so multiplexados com entradas analgicas,
o anlogo VREF + e VREF-entradas eo comparador
sada de tenso de referncia. A operao de pinos RA5
e RA3: RA0 como A / D entradas dos conversores selecionada por
limpar / definir os bits de controle no registro ADCON1
(A / D Controle Register 1).
Nota:
D
CK
Dados Trava
D
WR TRIS
CK
TRIS Latch
Entrada
Tampo
Q
Q
Pino de I / O(1)
Figura 10-1: GENRICO I / O PORT
OPERAO
RD LAT
Dados
nibus
WR LAT
ou PORT
Em um Power-on Reset, RA5 e RA3: RA0
so configurados como entradas analgicas e ler
como '0 '. RA4 configurado como uma entrada digital.
Todos os outros pinos de PORTA tem nveis de entrada TTL e
completos
Drivers de sada CMOS.
O registo TRISA controla a direo da RA
pins, mesmo quando eles esto sendo usados como entradas
analgicas.
O usurio deve assegurar que os bits no registrador TRISA so
mantido definido quando us-los como entradas analgicas.
Exemplo 10-1:
CLRF ;
;
;
LATA;
;
;
0Fh;
ADCON1;
07h;
CMCON;
0CFh;
;
;
TRISA;
;
PORTA
INITIALIZING PORTA
Inicializar PORTA por
limpar sada
dados travas
Mtodo alternativo
para limpar a sada
dados travas
Configurar A / D
para as entradas digitais
Configurar comparadores
para entrada digital
Valor utilizado para
inicializar dados
direo
Set RA <03:00> como insumos
RA <05:04> como sadas
RD TRIS
Q D
PTPT
CLRF
RD PORT
Nota 1: Pinos de I / O tm proteo diodo para VDD e VSS.
MOVLW
MOVWF
MOVLW
MOVWF
MOVLW
10.1 PORTA, TRISA e LATA Registra
MOVWF
PORTA-se a 8 bits de largura de porta, bidirecional. O corre-
correspondente registo Direo de dados TRISA. A definio de
um
TRISA bit (= 1) vai fazer o pino correspondente PORTA
uma entrada (ou seja, colocar o driver de sada correspondente a
modo de alta impedncia). Limpando um pouco TRISA (= 0)
vontade
fazer o pino correspondente PORTA uma sada (ou seja, colocar
o contedo do trinco de sada no pino seleccionado).
v 2009 Microchip Technology Inc. DS39632E pgina 113
PIC18F2455/2550/4455/4550
TABELA 10-1:
Pin
RA0/AN0
RESUMO PORTA I / O
Funo
RA0
AN0
TRIS
Fixao
0
1
1
0
1
AN1 1
0
1
AN2
VREF-
CVREF
1
1
x
0
1
AN3
VREF +
1
1
0
1
T0CKI
C1OUT
VN
1
0
x
0
1
AN4
SS
HLVDIN
C2OUT
1
1
1
0
x
x
0
1
I / O
OUT
IN
IN
OUT
IN
IN
OUT
IN
IN
IN
OUT
OUT
IN
IN
IN
OUT
IN
IN
OUT
IN
OUT
IN
IN
IN
IN
OUT
OUT
OUT
OUT
IN
I / O Tipo
DIG
TTL
ANA
DIG
TTL
ANA
DIG
TTL
ANA
ANA
ANA
DIG
TTL
ANA
ANA
DIG
ST
ST
DIG
TTL
DIG
TTL
ANA
TTL
ANA
DIG
ANA
DIG
DIG
TTL
Descrio
LATA <0> sada de dados, no afetada pela entrada analgica.
PORTA <0> entrada de dados; desativado quando a entrada analgica
ativada.
A / D Canal de Entrada 0 e Comparador C1-entrada. Configurao padro
no POR, no afeta a sada digital.
LATA <1> sada de dados, no afetada pela entrada analgica.
PORTA <1> a entrada de dados; l '0 'POR.
A / D canal de entrada e um comparador C2-entrada. Configurao padro
no POR, no afeta a sada digital.
LATA <2> sada de dados, no afetada pela entrada analgica. Desativada quando
Sada CVREF habilitado.
PORTA <2> entrada de dados. Desativada quando as funes analgicas
habilitado;
desativada quando a sada CVREF habilitado.
A / D canal de entrada 2 e Comparador C2 + entrada. Configurao padro
no POR, no afetada pela sada analgica.
A referncia de baixa tenso de entrada / D e comparador.
Sada de tenso de referncia de comparao. A ativao desse recurso desabilita
digital de I / O.
LATA <3> sada de dados, no afetada pela entrada analgica.
PORTA <3> de entrada de dados; desativado quando a entrada analgica
ativada.
A / D canal de entrada 3 e Comparador C1 + entrada. Configurao padro
no POR.
A / D e comparador de entrada de alta tenso de referncia.
LATA <4> sada de dados, no afetada pela entrada analgica.
PORTA <4> entrada de dados; desativado quando a entrada analgica
ativada.
Timer0 entrada de clock.
Comparador uma sada, tem prioridade sobre dados da porta.
Entrada VN externo USB transceptor.
LATA <5> sada de dados, no afetada pela entrada analgica.
PORTA <5> entrada de dados; desativado quando a entrada analgica
ativada.
A / D Canal de Entrada 4. Configurao padro em POR.
Slave seleco de entrada para o mdulo MSSP.
High / Low-Voltage Detect entrada ponto de disparo externo.
Comparador 2 sada; tem prioridade sobre dados da porta.
Principal ligao de sada de realimentao do oscilador (todos os modos XT e SH).
Sada do sistema de ciclo de clock (FOSC / 4), disponvel no CE, ECPLL e
Modos INTCKO.
LATA <6> sada de dados. Disponvel apenas na ECIO, ECPIO e intio
modos, caso contrrio, diz o '0 '.
PORTA <6> entrada de dados. Disponvel apenas na ECIO, ECPIO e intio
modos, caso contrrio, diz o '0 '.
RA1/AN1 RA1
RA2/AN2 /
VREF-/CVREF
RA2
RA3/AN3 /
VREF +
RA3
RA4/T0CKI /
C1OUT/RCV
RA4
RA5/AN4/SS /
HLVDIN/C2OUT
RA5
OSC2/CLKO /
RA6
OSC2
CLKO
RA6
Legenda: OUT = Sada, IN = Entrada, ANA = sinal analgico, DIG = Sada Digital, ST = Schmitt entrada tampo,
TTL = TTL de entrada tampo, x= No me importo (TRIS bit no afeta direo porto ou substitudo para esta opo)
DS39632E pgina 114 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 10-2:
Nome
PORTA
LATA
TRISA
ADCON1
CMCON
CVRCON
UCON
RESUMO DE REGISTROS ASSOCIADOS COM PORTA
Bit 7
-
-
-
-
C2OUT
CVREN
-
Bit 6
RA6(1)
LATA6(1)
TRISA6(1)
-
C1OUT
CVROE
PPBRST
Bit 5
RA5
LATA5
TRISA5
VCFG1
C2INV
CVRR
SE0
Bit 4
RA4
LATA4
TRISA4
VCFG0
C1INV
CVRSS
PKTDIS
Bit 3
RA3
LATA3
TRISA3
PCFG3
CIS
CVR3
USBEN
Bit 2
RA2
LATA2
TRISA2
PCFG2
CM2
CVR2
O bit 1
RA1
LATA1
TRISA1
PCFG1
CM1
RCV1
Bit 0
RA0
LATA0
TRISA0
PCFG0
CM0
CVR0
-
Restabelecer
Valores
na pgina
56
56
56
54
55
55
57 RESUMO SUSPND
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pela PORTA.
Nota 1: RA6 e sua trava de direo associada e os bits de dados so ativados como pinos de I / O baseado em oscilador
configurao, caso contrrio, eles so lidos como '0 '.
v 2009 Microchip Technology Inc. DS39632E pgina 115
PIC18F2455/2550/4455/4550
10.2 PORTB, TRISB e LATB
Registra
A condio de incompatibilidade continuar a fixar bit bandeira,
RBIF.
PORTB leitura vai acabar com a condio de incompatibilidade e
permitir bit bandeira, RBIF, a ser apuradas aps um atraso de uma
TCY.
O recurso interrupt-on-change recomendado para
wake-up em operao depresso chave e operaes
PORTB onde utilizada apenas para a interrupo em relao ao
mudana
caracterstica. Polling de PORTB no recomendado durante a
usando o recurso de interrupt-on-mudana.
Pins, RB2 e RB3, so multiplexados com o USB
perifrico e servem como as sadas de sinais diferenciais
para um transceptor USB externo (configurao TRIS).
Consulte Seo 17.2.2.2 "transceptor externo" para
obter informaes adicionais sobre como configurar o mdulo USB
para operao com um transceptor externo.
RB4 multiplexado com CSSPP, o chip selecionar
funo para a Transmisso de porta paralela (SPP) - TRIS
criao. Detalhes da sua operao so discutidos
Seo 18,0 "streaming de porta paralela".
PORTB um 8-bit de largura da porta, bidirecional. O corre-
correspondente registo Direo de dados TRISB. A definio de
um
TRISB bit (= 1) far com que o PORTB correspondente
fixar uma entrada (ou seja, colocar o driver de sada correspondente
na
um modo de alta impedncia). Limpando um pouco TRISB (= 0)
far com que o pino correspondente PORTB uma sada (isto ,
colocar o contedo do trinco de sada no pino seleccionado).
A trava registo de dados (LATB) tambm a memria
mapeados. Ler-modificar-escrever operaes no LATB
registrar ler e escrever o valor de sada fechada para
PORTB.
Cada um dos pinos PORTB interna tem uma fraco de pull-up. A
nico bit de controle pode ligar todas as flexes. Isto
realizada por limpar bit, RBPU (INTCON2 <7>). O
fraco pull-up desligado automaticamente quando a porta
pino configurado como uma sada. O pull-ups so
desativada em um Power-on Reset.
Nota: Em um Power-on Reset, RB4: RB0 so
configurados como entradas analgicas por padro e
lido como '0 '; RB7: RB5 so configurados como
entradas digitais.
Programando o bit de configurao,
PBADEN (CONFIG3H <1>), RB4: RB0 vontade
alternativamente, ser configurado como entradas
digitais
no POR.
Quatro dos pinos PORTB (RB7: RB4) tem uma interrupo-
na mudana de funo. Apenas os pinos configurados como
entradas podem
causar esta interrupo ocorrer. Qualquer RB7: RB4 pin
configurado como uma sada excludo da interrupo-
comparao on-mudana. Os pinos so comparados com
o valor antigo travado na ltima leitura de PORTB. O
"Incompatibilidade" sadas do RB7: RB4 so ORed juntos para
gerar o RB Porto Mudana de interrupo com pouco Bandeira,
RBIF (INTCON <0>).
A interrupo em relao ao alterao pode ser usado para activar o
dispositivo de sono. O usurio, no Servio de Interrupo
Rotina, pode limpar a interrupo da seguinte forma:
um) Qualquer leitura ou gravao de PORTB (exceto com o
MOVFF (qualquer), PORTB instruo). Isso vai
acabar com a condio de incompatibilidade.
Espere um atraso TCY (por exemplo, executar um
NOP instruo).
Limpar bit bandeira, RBIF
Exemplo 10-2:
CLRF ;
;
;
LATB;
;
;
0Eh;
ADCON1;
;
;
0CFh;
;
;
TRISB;
;
;
PORTB
INITIALIZING PORTB
Inicializar PORTB por
limpar sada
dados travas
Mtodo alternativo
para limpar a sada
dados travas
Set RB <04:00> como
pinos de E / S digital
(Obrigatrio se o bit de
configurao
PBADEN est definido)
Valor utilizado para
inicializar dados
direo
Set RB <03:00> como insumos
RB <05:04> como sadas
RB <07:06> como insumos
CLRF
MOVLW
MOVWF
MOVLW
MOVWF
b)
c)
DS39632E pgina 116 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 10-3:
Pin
RB0/AN12 /
INT0/FLT0 /
SDI / SDA
RESUMO PORTB I / O
Funo
RB0
TRIS
Fixao
0
1
AN12
INT0
FLT0
SDI
SDA
1
1
1
1
1
1
0
1
AN10
INT1
SCK
SCL
1
1
0
1
0
1
0
1
AN8
INT2
VMO
1
1
0
0
1
AN9
CCP2(2)
VPO
1
0
1
0
0
1
AN11
KBI0
CSSPP
(4)
I / O
OUT
IN
IN
IN
IN
IN
OUT
IN
OUT
IN
IN
IN
OUT
IN
OUT
IN
OUT
IN
IN
IN
OUT
OUT
IN
IN
OUT
IN
OUT
OUT
IN
IN
IN
OUT
OUT
IN
IN
IN
I / O Tipo
DIG
TTL
ANA
ST
ST
ST
DIG
DIG
TTL
ANA
ST
DIG
ST
DIG
DIG
TTL
ANA
ST
DIG
DIG
TTL
ANA
DIG
ST
DIG
DIG
TTL
ANA
TTL
DIG
DIG
TTL
TTL
ST
Descrio
LATB <0> sada de dados, no afetada pela entrada analgica.
PORTB <0> entrada de dados; fraco pull-up quando RBPU bit est desmarcada.
Desativada quando a entrada analgica ativada.(1)
A / D canal de entrada 12.(1)
External Interrupt 0 entrada.
Entrada de falha maior PWM (ECCP1 mdulo); habilitado software.
Dados de entrada SPI (mdulo MSSP).
Sada I2C dados (mdulo MSSP), tem prioridade sobre dados da porta.
LATB <1> sada de dados, no afetada pela entrada analgica.
PORTB <1> entrada de dados; fraco pull-up quando RBPU bit est desmarcada.
Desativada quando a entrada analgica ativada.(1)
A / D canal de entrada 10.(1)
1 entrada de interrupo externa.
Sada de relgio SPI (mdulo MSSP); tem prioridade sobre dados da porta.
Relgio de entrada SPI (mdulo MSSP).
Sada de relgio I2C (mdulo MSSP); tem prioridade sobre dados da porta.
LATB <2> sada de dados, no afetada pela entrada analgica.
PORTB <2> entrada de dados; fraco pull-up quando RBPU bit est desmarcada.
Desativada quando a entrada analgica ativada.(1)
A / D de 8 canais de entrada.(1)
2 entradas de interrupo externa.
Sada externa USB transceiver VMO dados.
LATB <3> sada de dados, no afetada pela entrada analgica.
PORTB <3> de entrada de dados; fraco pull-up quando RBPU bit est
desmarcada.
Desativada quando a entrada analgica ativada.(1)
A / D Input Channel 9.(1)
CCP2 comparar e sada PWM.
CCP2 entrada de captura.
Sada externa USB transceiver VPO dados.
LATB <4> sada de dados, no afetada pela entrada analgica.
PORTB <4> entrada de dados; fraco pull-up quando RBPU bit est desmarcada.
Desativada quando a entrada analgica ativada.(1)
A / D canal de entrada 11.(1)
Mudana interrupt-on-pin.
SPP sada de controle select chip.
LATB <5> sada de dados.
PORTB <5> entrada de dados; fraco pull-up quando RBPU bit est desmarcada.
Mudana interrupt-on-pin.
Entrada do modo de programao mono-alimentao (ICSP ). Ativado por LVP
Bit de configurao, todas as outras funes pin desativado.
I2C/SMB entrada de dados I2C (mdulo MSSP); tipo de entrada depende da definio de mdulo.
RB1/AN10 /
INT1/SCK /
SCL
RB1
Entrada de clock I2C I2C/SMB (mdulo MSSP); tipo de entrada depende da definio de mdulo.
RB2/AN8 /
INT2/VMO
RB2
RB3/AN9 /
CCP2/VPO
RB3
RB4/AN11 /
KBI0/CSSPP
RB4
1
1
0
0
1
1
x
RB5/KBI1 /
PGM
RB5
KBI1
PGM
Legenda:
Nota 1:
2:
3:
4:
OUT = Sada, IN = Entrada, ANA = sinal analgico, DIG = Sada Digital, ST = Schmitt entrada tampo,
I2C/SMB = buffer de entrada I2C/SMBUS, TTL TTL = buffer de entrada x= No me importo (TRIS bit no afeta direo porto ou
substitudo para esta opo)
Configurao em POR determinado pelo PBADEN bit de configurao. Os pinos so configurados como entradas analgicas, quando
PBADEN est definido e entradas digitais quando PBADEN est desmarcada.
Pinagem alternativa para CCP2 quando CCP2MX = 0. Atribuio padro RC1.
Todas as outras funes so desativadas quando pinos ICSP ou operao ICD est habilitado.
Apenas dispositivos 40/44-pin.
v 2009 Microchip Technology Inc. DS39632E pgina 117
PIC18F2455/2550/4455/4550
TABELA 10-3:
Pin
RB6/KBI2 /
PGC
PORTB I / O RESUMO (CONTINUAO)
Funo
RB6
KBI2
PGC
TRIS
Fixao
0
1
1
x
0
1
KBI3
PGD
1
x
x
I / O
OUT
IN
IN
IN
OUT
IN
IN
OUT
IN
I / O Tipo
DIG
TTL
TTL
ST
DIG
TTL
TTL
DIG
ST
LATB <6> sada de dados.
PORTB <6> entrada de dados; fraco pull-up quando RBPU bit est desmarcada.
Mudana interrupt-on-pin.
Execuo serial (ICSP ) entrada de clock para ICSP e operao ICD.(3)
LATB <7> sada de dados.
PORTB <7> entrada de dados; fraco pull-up quando RBPU bit est desmarcada.
Mudana interrupt-on-pin.
Sada de dados de execuo serial para ICSP e operao ICD.(3)
Entrada de dados para execuo serial ICSP e operao ICD.(3)
Descrio
RB7/KBI3 /
PGD
RB7
Legenda:
Nota 1:
2:
3:
4:
OUT = Sada, IN = Entrada, ANA = sinal analgico, DIG = Sada Digital, ST = Schmitt entrada tampo,
I2C/SMB = buffer de entrada I2C/SMBUS, TTL TTL = buffer de entrada x= No me importo (TRIS bit no afeta direo porto ou
substitudo para esta opo)
Configurao em POR determinado pelo PBADEN bit de configurao. Os pinos so configurados como entradas analgicas, quando
PBADEN est definido e entradas digitais quando PBADEN est desmarcada.
Pinagem alternativa para CCP2 quando CCP2MX = 0. Atribuio padro RC1.
Todas as outras funes so desativadas quando pinos ICSP ou operao ICD est habilitado.
Apenas dispositivos 40/44-pin.
TABELA 10-4:
Nome
PORTB
LATB
TRISB
INTCON
INTCON2
INTCON3
ADCON1
SPPCON(1)
SPPCFG(1)
UCON
RESUMO DE REGISTROS ASSOCIADOS PORTB
Bit 7
RB7
LATB7
TRISB7
RBPU
INT2IP
-
-
-
Bit 6
RB6
LATB6
TRISB6
Bit 5
RB5
LATB5
TRISB5
TMR0IE
-
VCFG1
-
CSEN
SE0
Bit 4
RB4
LATB4
TRISB4
INT0IE
INT2IE
VCFG0
-
CLK1EN
PKTDIS
Bit 3
RB3
LATB3
TRISB3
RBIE
-
INT1IE
PCFG3
-
WS3
USBEN
Bit 2
RB2
LATB2
TRISB2
TMR0IF
TMR0IP
-
PCFG2
-
WS2
O bit 1
RB1
LATB1
TRISB1
INT0IF
-
INT2IF
PCFG1
SPPOWN
WS1
Bit 0
RB0
LATB0
TRISB0
RBIF
RBIP
INT1IF
PCFG0
SPPEN
WS0
-
Restabelecer
Valores
na pgina
56
56
56
53
53
53
54
57
57
57
GIE / GIEH PEIE / giel
INT1IP
-
-
PPBRST
INTEDG0 INTEDG1 INTEDG2
CLKCFG1 CLKCFG0
RESUMO SUSPND
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados por PORTB.
Nota 1: Estes registos so no implementado em dispositivos de 28 pinos.
DS39632E pgina 118 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
10.3 PORTC, TRISC e LATC
Registra
Ao ativar funes perifricas nos pinos PORTC
diferente RC4 e RC5, cuidados devem ser tomados em defin-
o os bits TRIS. Alguns perifricos substituir o TRIS
pouco para fazer um pino uma sada, enquanto outros perifricos
substituir o bit TRIS para fazer um pino uma entrada. O utilizador
deve consultar a seo perifrica correspondente para
as configuraes de bit TRIS correctas.
Nota: Em um Power-on Reset, estes pinos, exceto
RC4 e RC5, so configurados como digitais
insumos. Para usar pinos RC4 e RC5 quanto
entradas digitais, o mdulo deve estar USB
desativada (UCON <3> = 0) e em chip
USB transceptor deve ser desativado
(UCFG <3> = 1).
PORTC um 7-bit de largura da porta, bidirecional. O corre-
correspondente registo Direo de dados TRISC. A definio de
um
TRISC bit (= 1) far com que o PORTC correspondente
fixar uma entrada (ou seja, colocar o driver de sada correspondente
na
um modo de alta impedncia). Limpando um pouco TRISC (= 0)
far com que o pino correspondente PORTC uma sada (isto ,
colocar o contedo do trinco de sada no pino seleccionado).
O pino RC3 no est implementada nestes dispositivos.
A trava registo de dados (LATC) tambm memria
mapeados. Ler-modificar-escrever operaes no LATC
registrar ler e escrever o valor de sada fechada para
PORTC.
PORTC multiplexada principalmente com comunicao serial
mdulos o, incluindo a EUSART, mdulo MSSP
eo mdulo USB (Tabela 10-5). Exceto para RC4 e
RC5, PORTC usa Schmitt buffers de entrada de disparo.
Pinos RC4 e RC5 so multiplexados com o USB
mdulo. Dependendo da configurao do mdulo,
eles podem servir como linhas de dados diferenciais para o on-
Chip USB transceiver, ou as entradas de dados a partir de um
USB externo transceptor. Ambos RC4 e RC5 tem
Buffers de entrada TTL em vez dos amortecedores Schmitt Trigger
sobre os outros pinos.
Ao contrrio de outros pinos PORTC, RC4 e RC5 no tem
Pedaos TRISC que lhes esto associados. Como portas digitais,
eles
s pode funcionar como entradas digitais. Quando configurado para
Funcionamento USB, a direo de dados determinado pela
configurao e estado do mdulo de USB a uma dada
tempo. Se um receptor externo for utilizado, RC4 e RC5
sempre funcionam como entradas do transceptor. Se o
on-chip transceptor usada, a direco de dados est
determinado pela operao a ser realizada pelo
mdulo naquele momento.
Quando o transceptor externo ativado, RC2 tambm
serve como a sada de controlo para permitir que o transceptor.
Informaes adicionais sobre como configurar as opes de USB
fornecida nas Seo 17.2.2.2 "transceptor externo".
O contedo do registo TRISC so afetados por
substituies perifricos. Reading TRISC sempre retorna
o contedo atual, apesar de um dispositivo perifrico
Pode ser reconhecido um ou mais dos pinos.
Exemplo 10-3:
CLRF PORTC ;
;
;
;
;
;
;
;
;
;
;
INITIALIZING PORTC
Inicializar PORTC por
limpar sada
dados travas
Mtodo alternativo
para limpar a sada
dados travas
Valor utilizado para
inicializar dados
direo
RC <05:00> como sadas
RC <07:06> como insumos
CLRF LATC
MOVLW 07h
MOVWF TRISC
v 2009 Microchip Technology Inc. DS39632E pgina 119
PIC18F2455/2550/4455/4550
TABELA 10-5:
Pin
RC0/T1OSO /
T13CKI
RESUMO PORTC I / O
Funo
RC0
T1OSO
T13CKI
TRIS
Fixao
0
1
x
1
0
1
T1OSI
CCP2(1)
UOE
x
0
1
0
0
1
CCP1
P1A(3)
0
1
0
I / O
OUT
IN
OUT
IN
OUT
IN
IN
OUT
IN
OUT
OUT
IN
OUT
IN
OUT
I / O Tipo
DIG
ST
ANA
ST
DIG
ST
ANA
DIG
ST
DIG
DIG
ST
DIG
ST
DIG
LATC <0> sada de dados.
PORTC <0> entrada de dados.
Timer1 sada do oscilador; ativado quando Timer1 oscilador habilitado.
Desativa digitais I / O.
Timer1/Timer3 contador de entrada.
LATC <1> sada de dados.
PORTC <1> entrada de dados.
Timer1 entrada do oscilador; ativado quando Timer1 oscilador habilitado.
Desativa digitais I / O.
CCP2 comparar e sada PWM, tem prioridade sobre dados da porta.
CCP2 entrada de captura.
Sada externa USB transceiver OE.
LATC <2> sada de dados.
PORTC <2> entrada de dados.
ECCP1 comparar e sada PWM, tem prioridade sobre dados da porta.
ECCP1 entrada de captura.
Sada ECCP1 avanado PWM, Canal A; tem prioridade sobre porto
dados. Pode ser configurado para tri-state durante avanado PWM desligamento
eventos.
PORTC <4> entrada de dados; desativado quando o mdulo USB ou on-chip
transceptor esto habilitados.
Diferencial de barramento USB menos sada de linha (transceiver interno).
Diferencial de barramento USB menos entrada de linha (transceiver
interno).
VM entrada USB externo transceptor.
PORTC <5> entrada de dados; desativado quando o mdulo USB ou on-chip
transceptor esto habilitados.
Diferencial do barramento USB, mais sada de linha (transceiver interno).
Entrada diferencial alm de linha de nibus USB (transceiver interno).
VP entrada USB externo transceptor.
LATC <6> sada de dados.
PORTC <6> entrada de dados.
Asynchronous srie transmitir dados de sada (mdulo EUSART); leva
prioridade sobre os dados da porta. O usurio deve configurar como sada.
Sada de relgio serial sncrona (mdulo EUSART); tem prioridade
sobre dados da porta.
Entrada de clock serial sncrona (mdulo EUSART).
Descrio
RC1/T1OSI /
CCP2/UOE
RC1
RC2/CCP1 /
P1A
RC2
RC4/D-/VM RC4
D-
VM
-(2)
-(2)
-(2)
-(2)
-(2)
-(2)
-
(2)
IN
OUT
IN
IN
IN
OUT
IN
IN
OUT
IN
OUT
OUT
IN
TTL
XCVR
XCVR
TTL
TTL
XCVR
XCVR
TTL
DIG
ST
DIG
DIG
ST
RC5 / D + / VP RC5
D +
VP
-(2)
0
1
0
0
1
RC6/TX/CK RC6
TX
CK
Legenda:
Nota 1:
2:
3:
OUT = Sada, IN = Entrada, ANA = sinal analgico, DIG = Sada Digital, ST = Schmitt entrada tampo,
TTL = TTL de entrada tampo, XCVR = USB transceptor, x= No me importo (TRIS bit no afeta direo porto ou substitudo
para esta opo)
Pinagem padro. Pinagem alternativa RB3 (quando CCP2MX = 0).
RC4 e RC5 no tm correspondentes pedaos TRISC. No modo do Porto, estes pinos so apenas de entrada. Direo de dados USB
determinada pela configurao USB.
Apenas dispositivos 40/44-pin.
DS39632E pgina 120 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 10-5:
Pin
RC7/RX/DT /
SDO
PORTC I / O RESUMO (CONTINUAO)
Funo
RC7
RX
DT
TRIS
Fixao
0
1
1
1
1
SDO 0
I / O
OUT
IN
IN
OUT
IN
OUT
I / O Tipo
DIG
ST
ST
DIG
ST
DIG
LATC <7> sada de dados.
PORTC <7> entrada de dados.
Srie assncrona receber dados de entrada (mdulo EUSART).
Synchronous sada de dados serial (mdulo EUSART); tem prioridade sobre
SPI e porta de dados.
Synchronous entrada de dados serial (mdulo EUSART). O usurio deve
configurar como entrada.
Sada de dados SPI (mdulo MSSP), tem prioridade sobre dados da porta.
Descrio
Legenda:
Nota 1:
2:
3:
OUT = Sada, IN = Entrada, ANA = sinal analgico, DIG = Sada Digital, ST = Schmitt entrada tampo,
TTL = TTL de entrada tampo, XCVR = USB transceptor, x= No me importo (TRIS bit no afeta direo porto ou substitudo
para esta opo)
Pinagem padro. Pinagem alternativa RB3 (quando CCP2MX = 0).
RC4 e RC5 no tm correspondentes pedaos TRISC. No modo do Porto, estes pinos so apenas de entrada. Direo de dados USB
determinada pela configurao USB.
Apenas dispositivos 40/44-pin.
TABELA 10-6:
Nome
PORTC
LATC
TRISC
UCON
RESUMO DE REGISTROS ASSOCIADOS PORTC
Bit 7
RC7
LATC7
TRISC7
-
Bit 6
RC6
LATC6
TRISC6
PPBRST
Bit 5
RC5(1)
-
-
SE0
Bit 4
RC4(1)
-
-
PKTDIS
Bit 3
-
-
-
USBEN
Bit 2
RC2
LATC2
TRISC2
O bit 1
RC1
LATC1
TRISC1
Bit 0
RC0
LATC0
TRISC0
-
Restabelecer
Valores
na pgina
56
56
56
57 RESUMO SUSPND
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados por PORTC.
Nota 1: RC4 RC5 e s esto disponveis como pinos da porta quando o mdulo USB desativado (UCON <3> = 0).
v 2009 Microchip Technology Inc. DS39632E pgina 121
PIC18F2455/2550/4455/4550
10.4
Nota:
PORTD, TRISD e LATD
Registra
PORTD s est disponvel em 40/44-pin
dispositivos.
PORTD tambm pode ser configurada como uma de 8 bits
Transmisso de porta paralela (SPP). Neste modo, a entrada
buffers so TTL. Para obter informaes adicionais sobre con-
figurao e utilizao do SPP, consulte Seo 18,0
"Transmisso da porta paralela".
Nota: Quando o modo PWM avanado usado
tanto com sadas duplas ou quad, o MSSP
funes do PORTD so automaticamente
desativada.
PORTD um 8-bit de largura da porta, bidirecional. O corre-
correspondente registo Direo de dados TRISD. A definio de
um
Bit TRISD (= 1) far com que o PORTD correspondente
fixar uma entrada (ou seja, colocar o driver de sada correspondente
na
um modo de alta impedncia). Limpando um pouco TRISD (= 0)
far com que o pino correspondente PORTD uma sada (isto ,
colocar o contedo do trinco de sada no pino seleccionado).
A trava registo de dados (LATD) tambm a memria
mapeados. Ler-modificar-escrever operaes no LATD
registrar ler e escrever o valor de sada fechada para
PORTD.
Todos os pinos do PORTD so implementadas com Schmitt
Desencadear buffers de entrada. Cada pino individualmente
configurveis como entrada ou sada.
Cada um dos pinos PORTD interna tem uma fraco de pull-up. A
nico bit de controle, RDPU (PORTE <7>), pode se transformar em
tudo
o pull-ups. Isto realizado atravs da criao RDPU. O
fraco pull-up desligado automaticamente quando a porta
pino configurado como uma sada digital ou como um dos
outros perifricos multiplexados. O pull-ups so
desativada em um Power-on Reset. O registo PORTE
mostrado na Seo 10.5 "PORTE, TRISE e LATE
Registros ".
Trs dos pinos PORTD so multiplexados com sadas,
P1B, P1C e P1D, do mdulo CCP avanado. O
funcionamento destes pinos adicionais de sada de PWM est
coberto com mais pormenor na Seo 16.0 "Enhanced
Capture / Compare / PWM (PEAC) Module ".
Nota: Em um Power-on Reset, estes pinos so
configurados como entradas digitais.
Exemplo 10-4:
CLRF PORTD ;
;
;
;
;
;
;
;
;
;
;
;
INITIALIZING PORTD
Inicializar PORTD por
limpar sada
dados travas
Mtodo alternativo
para limpar a sada
dados travas
Valor utilizado para
inicializar dados
direo
Set RD <03:00> como insumos
RD <05:04> como sadas
RD <07:06> como insumos
CLRF LATD
MOVLW 0CFh
MOVWF TRISD
DS39632E pgina 122 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 10-7:
Pin
RD0/SPP0
PORTD RESUMO I / O
Funo
RD0
SPP0
TRIS
Fixao
0
1
1
1
0
1
1
1
0
1
1
1
0
1
1
1
0
1
1
1
0
1
1
1
0
0
1
1
1
0
0
1
1
1
0
I / O
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
IN
OUT
OUT
IN
OUT
IN
OUT
OUT
IN
OUT
IN
OUT
I / O Tipo
DIG
ST
DIG
TTL
DIG
ST
DIG
TTL
DIG
ST
DIG
TTL
DIG
ST
DIG
TTL
DIG
ST
DIG
TTL
DIG
ST
DIG
TTL
DIG
DIG
ST
DIG
TTL
DIG
DIG
ST
DIG
TTL
DIG
LATD <0> sada de dados.
PORTD <0> entrada de dados.
Descrio
SPP <0> dados de sada, tem prioridade sobre dados da porta.
SPP <0> dados de entrada.
LATD <1> sada de dados.
PORTD <1> entrada de dados.
SPP <1> dados de sada, tem prioridade sobre dados da porta.
SPP <1> dados de entrada.
LATD <2> sada de dados.
PORTD <2> entrada de dados.
SPP <2> dados de sada, tem prioridade sobre dados da porta.
SPP <2> dados de entrada.
LATD <3> sada de dados.
PORTD <3> de entrada de dados.
SPP <3> dados de sada, tem prioridade sobre dados da porta.
SPP <3> dados de entrada.
LATD <4> sada de dados.
PORTD <4> entrada de dados.
SPP <4> dados de sada, tem prioridade sobre dados da porta.
SPP <4> dados de entrada.
LATD <5> sada de dados
PORTD <5> entrada de dados
SPP <5> dados de sada, tem prioridade sobre dados da porta.
SPP <5> dados de entrada.
ECCP1 sada PWM avanado, Channel B; tem prioridade sobre
dados da porta e SPP.(1)
LATD <6> sada de dados.
PORTD <6> entrada de dados.
SPP <6> dados de sada, tem prioridade sobre dados da porta.
SPP <6> dados de entrada.
ECCP1 sada PWM avanado, Canal C; tem prioridade sobre
dados da porta e SPP.(1)
LATD <7> sada de dados.
PORTD <7> entrada de dados.
SPP <7> dados de sada, tem prioridade sobre dados da porta.
SPP <7> dados de entrada.
ECCP1 sada PWM avanado, Canal D; tem prioridade sobre
dados da porta e SPP.(1)
RD1/SPP1 RD1
SPP1
RD2/SPP2 RD2
SPP2
RD3/SPP3 RD3
SPP3
RD4/SPP4 RD4
SPP4
RD5/SPP5/P1B RD5
SPP5
P1B
RD6/SPP6/P1C RD6
SPP6
P1C
RD7/SPP7/P1D RD7
SPP7
P1D
Legenda:
Nota 1:
OUT = Sada, IN = Entrada, DIG = Sada Digital, ST = Schmitt buffer de entrada TTL = TTL Input buffer
Pode ser configurado para tri-state durante aprimorados PWM eventos de desligamento.
v 2009 Microchip Technology Inc. DS39632E pgina 123
PIC18F2455/2550/4455/4550
TABELA 10-8:
Nome
PORTD(3)
LATD(3)
TRISD(3)
PORTE
CCP1CON
SPPCON(3)
RESUMO DE REGISTROS ASSOCIADOS PORTD
Bit 7
RD7
LATD7
TRISD7
RDPU(3)
P1M1
-
(3)
Bit 6
RD6
LATD6
TRISD6
-
P1M0(3)
-
Bit 5
RD5
LATD5
TRISD5
-
DC1B1
-
Bit 4
RD4
LATD4
TRISD4
-
DC1B0
-
Bit 3
RD3
LATD3
TRISD3
RE3(1,2)
CCP1M3
-
Bit 2
RD2
LATD2
TRISD2
RE2(3)
CCP1M2
-
O bit 1
RD1
LATD1
TRISD1
RE1(3)
CCP1M1
SPPOWN
Bit 0
RD0
LATD0
TRISD0
RE0(3)
CCP1M0
SPPEN
Restabelecer
Valores
na pgina
56
56
56
56
55
57
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados por PORTD.
Nota 1: Implementado somente quando Master Clear funcionalidade desativada (bit Configurao MCLRE = 0).
2: RE3 o nico bit PORTE implementado em ambos os 28 pinos e dispositivos 40/44-pin. Todos os outros bits so
implementado somente quando PORTE implementado (ou seja, dispositivos 40/44-pin).
3: Estes registos e / ou bits so no implementado em dispositivos de 28 pinos.
DS39632E pgina 124 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
10.5 PORTE, TRISE e LATE
Registra
Consoante o especial PIC18F2455/2550/4455 /
4550 dispositivo selecionado, PORTE implementado em duas
maneiras diferentes.
Para dispositivos 40/44-pin, PORTE uma porta de largura de 4
bits.
Trs pinos (RE0/AN5/CK1SPP, RE1/AN6/CK2SPP
e RE2/AN7/OESPP) so configurveis individualmente como
entradas ou sadas. Estes pinos tm Schmitt
buffers de entrada. Quando selecionado como uma entrada
analgica, estes
pins vai ler como '0 's.
O correspondente registo Direo de dados TRISE.
Definindo um pouco TRISE (= 1) far com que o correspondente
PORTE pino uma entrada (ou seja, colocar a sada correspondente
condutor de um modo de alta impedncia). Limpando um pouco
TRISE
(= 0) far com que o PORTE correspondente pino uma sada
(Isto , colocar o contedo do trinco de sada no selecionado
PIN).
Alm de dados da porta, o PORTE registar
(Registrar 10-1) tambm contm o bit de controle RDPU
(Porte <7>), o que habilita ou desabilita os fracos
pull-ups em PORTD.
TRISE controla a direco dos pinos de RE, mesmo quando
eles esto sendo usados como entradas analgicas. O usurio deve
certifique-se de manter os pinos configurados como entradas
quando
us-los como entradas analgicas.
Nota: Em um Power-on Reset, RE2: RE0 so
configurados como entradas analgicas.
O quarto pino de PORTE (MCLR/VPP/RE3) um insumo
s pino. A sua operao controlada pela MCLRE Config-
bit uration. Quando selecionado como um pino da porta (MCLRE =
0), ele
funciona como uma entrada digital s pino, como tal, no faz
ter TRIS ou pedaos LAT associados sua operao.
Caso contrrio, ele funciona como Master Clear entrada do
dispositivo.
Em ambas as configuraes, RE3 tambm funciona como o
programao de entrada de tenso durante a programao.
Nota: Em um Power-on Reset, RE3 ativada como
uma entrada digital apenas se Master Clear
funcionalidade est desativado.
Exemplo 10-5:
CLRF ;
;
;
LATE;
;
;
0Ah;
ADCON1;
03h;
;
;
07h;
CMCON;
TRISC;
;
;
PORTE
INITIALIZING PORTE
Inicializar PORTE por
limpar sada
dados travas
Mtodo alternativo
para limpar a sada
dados travas
Configurar A / D
para as entradas digitais
Valor utilizado para
inicializar dados
direo
Desligar
comparadores
Definir RE <0> como insumos
RE <1> como sadas
RE <2> como insumos
CLRF
MOVLW
MOVWF
MOVLW
MOVLW
MOVWF
MOVWF
10.5.1 PORTE DE DISPOSITIVOS de 28 pinos
O registo Trava de Dados (TARDE) tambm a memria
mapeados. Ler-modificar-escrever operaes no LATE
registrar ler e escrever o valor de sada fechada para
PORTE.
Para os dispositivos de 28 pinos, PORTE s est disponvel quando
Mas-
ter claro funcionalidade desativada (MCLRE = 0). Nestes
casos, PORTE um pouco mais simples, somente a porta de
entrada composta
de apenas RE3. O pino opera como anteriormente descrito.
CADASTRE-SE 10-1:
R/W-0
RDPU(3)
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
PORTE REGISTRO
U-0
-
U-0
-
U-0
-
R / W-x
RE3(1,2)
R/W-0
RE2(3)
R/W-0
RE1(3)
R/W-0
RE0(3)
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
RDPU: PORTD Pull-up Ativar bit
1= PORTD pull-ups so ativados por valores de fecho de portas individuais
0= Todos PORTD pull-ups esto desabilitados
Unimplemented: Leia como '0 '
RE3: RE0: PORTE bits de entrada de dados(1,2,3)
implementado somente quando Master Clear funcionalidade desativada (bit Configurao MCLRE = 0); caso contrrio,
lido como '0 '.
RE3 o nico bit PORTE implementado em ambos os 28 pinos e dispositivos 40/44-pin. Todos os outros bits so
implementado somente quando PORTE implementado (ou seja, dispositivos 40/44-pin).
Unimplemented em dispositivos 28 de pinos; lido como '0 '.
bit 6-4
bit 3-0
Nota 1:
2:
3:
v 2009 Microchip Technology Inc. DS39632E pgina 125
PIC18F2455/2550/4455/4550
TABELA 10-9:
Pin
RE0/AN5 /
CK1SPP
PORTE RESUMO I / O
Funo
RE0
AN5
CK1SPP
TRIS
Fixao
0
1
1
0
0
1
AN6
CK2SPP
1
0
0
1
AN7
OESPP
1
0
-(1)
-(1)
-(1)
I / O
OUT
IN
IN
OUT
OUT
IN
IN
OUT
OUT
IN
IN
OUT
IN
IN
IN
I / O Tipo
DIG
ST
ANA
DIG
DIG
ST
ANA
DIG
DIG
ST
ANA
DIG
ST
ANA
ST
Descrio
LATE <0> sada de dados, no afetada pela entrada analgica.
PORTE <0> entrada de dados; desativado quando a entrada analgica
ativada.
A / D Canal de Entrada 5; configurao padro em POR.
SPP relgio uma sada (SPP habilitado).
LATE <1> sada de dados, no afetada pela entrada analgica.
PORTE <1> entrada de dados; desativado quando a entrada analgica
ativada.
A / Canal de Entrada D 6; configurao padro em POR.
SPP relgio 2 de sada (SPP habilitado).
<2> sada de dados LATE, no afetada pela entrada analgica.
PORTE <2> entrada de dados; desativado quando a entrada analgica
ativada.
A / D Canal de Entrada 7; configurao padro em POR.
SPP ativar a sada (SPP habilitado).
Mestre externo Limpar entrada; ativado quando MCLRE bit Configurao
est definido.
Deteco de alta tenso, usado para deteco de entrada do modo ICSP .
Sempre disponvel, independentemente do modo de pin.
PORTE <3> de entrada de dados; habilitado quando o bit de configurao MCLRE

limpar.
RE1/AN6 /
CK2SPP
RE1
RE2/AN7 /
OESPP
RE2
MCLR / VPP /
RE3
MCLR
VPP
RE3
Legenda:
Nota 1:
OUT = Sada, IN = Entrada, ANA = sinal analgico, DIG = Sada Digital, ST = Schmitt Input buffer
RE3 no tem um correspondente TRISE <3> bits. Este pino sempre uma entrada independente do modo.
TABELA 10-10: RESUMO DAS ficheiros associados COM PORTE
Nome
PORTE
LATE(3)
Trise
(3)
Bit 7
RDPU(3)
-
-
-
C2OUT
-
Bit 6
-
-
-
-
C1OUT
-
Bit 5
-
-
-
VCFG1
C2INV
-
CSEN
Bit 4
-
-
-
VCFG0
C1INV
-
CLK1EN
Bit 3
RE3(1,2)
-
-
PCFG3
CIS
-
WS3
Bit 2
RE2(3)
LATE2
TRISE2
PCFG2
CM2
-
WS2
O bit 1
RE1(3)
LATE1
TRISE1
PCFG1
CM1
SPPOWN
WS1
Bit 0
RE0(3)
LATE0
TRISE0
PCFG0
CM0
SPPEN
WS0
Restabelecer
Valores
na pgina
56
56
56
54
55
57
57
ADCON1
CMCON
SPPCON(3)
SPPCFG(3) CLKCFG1 CLKCFG0
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados por PORTE.
Nota 1: Implementado somente quando Master Clear funcionalidade desativada (bit Configurao MCLRE = 0).
2: RE3 o nico bit PORTE implementado em ambos os 28 pinos e dispositivos 40/44-pin. Todos os outros bits so
implementado somente quando PORTE implementado (ou seja, dispositivos 40/44-pin).
3: Esses registros ou bits so no implementado em dispositivos de 28 pinos.
DS39632E pgina 126 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
11,0 TIMER0 MDULO
O mdulo Timer0 incorpora as seguintes caractersticas:
operao selecionvel por software como um temporizador ou
pa-
ter tanto de 8 bits ou de 16 bits modos
registros de leitura e escrita
Dedicado 8-bit, software programvel
prescaler
fonte de relgio selecionvel (interno ou externo)
Borda de seleo para o relgio externo
Interrupo no estouro
O registo T0CON (Register 11-1) controla tudo
aspectos da operao do mdulo, incluindo o
seleo pr-escala. ser lidos e escritos.
Um diagrama de blocos simplificado do mdulo Timer0 em 8 bits
modo mostrado na Figura 11-1. A Figura 11-2 mostra um
diagrama de blocos do mdulo Timer0 simplificada em 16 bits
modo.
CADASTRE-SE 11-1:
R/W-1
TMR0ON
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
T0CON: TIMER0 registro de controle
R/W-1
T08BIT
R/W-1
T0CS
R/W-1
T0SE
R/W-1
PSA
R/W-1
T0PS2
R/W-1
T0PS1
R/W-1
T0PS0
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
TMR0ON: Timer0 Em pouco controle / Off
1= Permite Timer0
0= Pra Timer0
T08BIT: Timer0 8-Bit/16-Bit pouco controle
1= Timer0 configurado como um temporizador / contador de
8 bits
0= Timer0 configurado como um temporizador / contador de
16 bits
T0CS: Timer0 Clock Source Select bit
1= Transio em T0CKI pin
0= Interno instruo ciclo de clock (CLKO)
T0SE: Timer0 Fonte Borda Select bit
1= Incremento em alta para menor transio em T0CKI pin
0= Incremento em baixo para maior transio em T0CKI pin
PSA: Timer0 Prescaler bit Atribuio
1= Timer0 prescaler no atribuda. Timer0 entrada de clock ignora prescaler.
0= Timer0 prescaler atribudo. Timer0 vem da entrada de relgio de sada divisor.
T0PS2: T0PS0: Timer0 Prescaler Select pedaos
111 = 1:256 valor Prescale
110 = 1:128 valor Prescale
101 = 1:64 Prescale valor
100 = 01:32 valor Prescale
011 = 01:16 Prescale valor
010 = 01:08 Prescale valor
001 = 01:04 Prescale valor
000 = 01:02 valor Prescale
bit 6
bit 5
4 bits
bit 3
bit 2-0
v 2009 Microchip Technology Inc. DS39632E pgina 127
PIC18F2455/2550/4455/4550
11.1 Timer0 Operao
Timer0 pode operar tanto como um temporizador ou um contador; o
modo selecionado, limpando o bit T0CS
(T0CON <5>). No modo de temporizador, incrementa o mdulo
em cada relgio, por padro, a menos que um divisor diferente
valor selecionado (ver Seo 11.3 "Prescaler"). Se
o registo TMR0 escrito, o incremento
inibida pelos seguintes dois ciclos de instruo. O
usurio pode contornar isso escrevendo um valor ajustado
para o registo TMR0.
O modo de contador selecionado, definindo o bit T0CS
(= 1). No modo de contador, quer por incrementos Timer0
cada flanco ascendente ou descendente de pin RA4/T0CKI/C1OUT /
VN. A aresta de indexao determinada pela
Timer0 Fonte Borda Select bit, T0SE (T0CON <4>);
limpar este bit seleciona a borda de subida. Restries
a entrada do relgio externo so discutidas abaixo.
Uma fonte de relgio externo pode ser usado para conduzir Timer0;
No entanto, ele deve atender a certos requisitos para garantir
que o relgio externo pode ser sincronizada com a
relgio fase interna (tosc). Existe um atraso entre
a sincronizao e o aparecimento de incrementar o
temporizador / contador.
11.2 Timer0 L e Escreve
Modo de 16 bits
TMR0H no o byte efectiva de Timer0 em 16 bits
modo. realmente uma verso tampo do real alta
byte de Timer0 que no lida directamente nem
gravvel (veja a Figura 11-2). TMR0H atualizado com
o contedo do byte de Timer0 durante uma leitura de
TMR0L. Isso fornece a capacidade de ler todos os 16 bits de
Timer0 sem ter que verificar se a leitura da alta
e baixa byte fosse vlido, devido a um capotamento entre
sucessivas leituras do byte alto e baixo.
Da mesma forma, a escrever para o byte mais alto do Timer0
tambm deve
ocorrer atravs do registo de buffer TMR0H. A alta
byte atualizado com o contedo do TMR0H quando um
escrever ocorre TMR0L. Isso permite que todos os 16 bits do Timer0
ser atualizados ao mesmo tempo.
FIGURA 11-1: TIMER0 DIAGRAMA DE BLOCO (8-BIT MODE)
FOSC / 4 0
1
1
Sincronizar com
Interno
Clocks
(2 Delay TCY)
8
8
Dados Interno Bus
TMR0L
Conjunto
TMR0IF
no estouro
T0CKI pin
T0SE
T0CS
T0PS2: T0PS0
PSA
Programvel
Prescaler
3
0
Nota: Aps Reset, Timer0 est habilitado no modo de 8 bits com entrada de clock de T0CKI mximo pr-escala.
Figura 11-2:
FOSC / 4
TIMER0 DIAGRAMA DE BLOCO (modo de 16 bits)
0
1
1
Sincronizar com
Interno
Clocks
(2 Delay TCY)
Leia TMR0L
Escrever TMR0L
8
8
TMR0H
8
8
Dados Interno Bus
TMR0L
TMR0
Byte
8
Conjunto
TMR0IF
no estouro
T0CKI pin
T0SE
T0CS
T0PS2: T0PS0
PSA
Programvel
Prescaler
3
0
Nota: Aps Reset, Timer0 est habilitado no modo de 8 bits com entrada de clock de T0CKI mximo pr-escala.
DS39632E pgina 128 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
11.3 Prescaler
11.3.1
Um contador de 8 bits est disponvel como um divisor para o
Timer0
mdulo. O prescaler no directamente lidos ou escritos;
seu valor definido pela PSA e T0PS2: T0PS0 pedaos
(T0CON <3:00>), que determinam o divisor
atribuio e relao de pr-escala.
Limpar o bit PSA atribui o prescaler ao
Timer0 mdulo. Quando lhe so confiadas, os valores pr-escala
de 1:2 atravs de 1:256, em de-poder-incrementos de 2, so
selecionvel.
Quando atribudo ao mdulo Timer0, todas as instrues
escrever para o registo TMR0 (por exemplo, CLRF TMR0, MOVWF
TMR0, BSF TMR0, etc) limpar a contagem prescaler.
Nota: Escrevendo para TMR0 quando o divisor
atribudo ao Timer0 ir limpar o prescaler
contar, mas no vai mudar o prescaler
atribuio.
TROCA PRESCALER
CESSO
A atribuio prescaler est completamente sob software
de controlo e pode ser alterado "on-the-fly" durante programa
a execuo.
11,4 Timer0 Interrupt
O TMR0 interrupo gerada quando o TMR0
registrar transborda de FFh para 00h em modo de 8 bits, ou
de FFFFh para 0000h no modo de 16 bits. Este estouro define
o bit de flag TMR0IF. A interrupo pode ser mascarado pela
limpando o bit TMR0IE (INTCON <5>). Antes de re-
permitindo a interrupo, o bit tem de ser aclarado TMR0IF
em software pela rotina de servio de interrupo.
Desde Timer0 desligado no modo de suspenso, o TMR0
interrupo no pode despertar o processador do sono.
TABELA 11-1:
Nome
TMR0L
TMR0H
INTCON
INTCON2
T0CON
TRISA
REGISTOS ASSOCIADOS TIMER0
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 O bit 1 Bit 0
Restabelecer
Valores
na pgina
54
54
INT0IE
T0SE
TRISA4
RBIE
-
PSA
TRISA3
TMR0IF
TMR0IP
T0PS2
TRISA2
INT0IF
-
T0PS1
TRISA1
RBIF
RBIP
T0PS0
TRISA0
53
53
54
56
Timer0 Registrar Low Byte
Timer0 Register alta Byte
GIE / GIEH PEIE / giel TMR0IE
RBPU
TMR0ON
-
T08BIT
TRISA6(1)
T0CS
TRISA5
INTEDG0 INTEDG1 INTEDG2
Legenda: - = Locais no implementadas, leia como '0 '. Clulas sombreadas no so utilizados por Timer0.
Nota 1: RA6 est configurado como um pino de porta com base em vrios modos de oscilador primrios. Quando o pino porta est
desativada,
todos os bits associados ler '0 '.
v 2009 Microchip Technology Inc. DS39632E pgina 129
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 130 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
12,0 TIMER1 MDULO
O mdulo temporizador / contador Timer1 incorpora estes
caractersticas:
operao selecionvel por software como um timer de 16 bits
ou
contrariar
registros de 8 bits legvel e gravvel (TMR1H
e TMR1L)
fonte de relgio selecionvel (interno ou externo) com
relgio do dispositivo ou Timer1 opes internas do oscilador
Interrupo no estouro
Reiniciar mdulo no CCP Gatilho Evento Especial
sinalizador de status do relgio do dispositivo (T1RUN)
Um diagrama de blocos simplificado do mdulo Timer1
mostrado na Figura 12-1. Um diagrama de blocos do mdulo de
na operao de leitura / gravao de modo mostrado na Figura 12-
2.
O mdulo incorpora seu prprio oscilador de baixa potncia
para proporcionar uma opo de relgio adicional. O Timer1
oscilador tambm pode ser usado como uma fonte de relgio de
baixa energia
para o microcontrolador em operao de gerenciamento de energia.
Timer1 tambm pode ser usado para fornecer relgio em tempo real
Funcionalidade para aplicaes (RTC), com apenas uma mnima
adio de componentes externos e despesas gerais do cdigo.
Timer1 controlada atravs do controlo T1CON
registrar (Register 12-1). Ele tambm contm o Timer1
Oscilador Ativar bit (T1OSCEN). Timer1 pode ser
ativada ou desativada pelo marcando ou desmarcando pouco
controle,
TMR1ON (T1CON <0>).
CADASTRE-SE 12-1:
R/W-0
RD16
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
T1CON: TIMER1 registro de controle
R-0 R/W-0
T1CKPS1
R/W-0
T1CKPS0
R/W-0
T1OSCEN
R/W-0
T1SYNC
R/W-0
TMR1CS
R/W-0
TMR1ON
bit 0
T1RUN
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
RD16: 16-Bit Leitura / Gravao Modo Ativar bit
1= Permite registo de leitura / gravao de Timer1 em uma operao de 16 bits
0= Permite registrar leitura / gravao de Timer1 em duas operaes de 8 bits
T1RUN: Timer1 Relgio do Sistema bit Estado
1= Relgio do dispositivo derivado Timer1 oscilador
0= Relgio do dispositivo derivada de outra fonte
T1CKPS1: T1CKPS0: Timer1 entrada de clock Prescale Select pedaos
11 = 01:08 Prescale valor
10 = 01:04 Prescale valor
01 = 01:02 valor Prescale
00 = 1:1 Prescale valor
T1OSCEN: Timer1 oscilador Habilitar bit
1= Timer1 oscilador habilitado
0= Timer1 oscilador desligado
O inversor oscilador e resistor de realimentao esto desligados para eliminar fuga de energia.
T1SYNC: Timer1 External clock de entrada de sincronizao Select bit
Quando TMR1CS = 1:
1= No sincronizar entrada de clock externo
0= Sincronizar entrada de clock externo
Quando TMR1CS = 0:
Este bit ignorado. Timer1 usa o relgio interno quando TMR1CS = 0.
TMR1CS: Timer1 Clock Source Select bit
1= Relgio externo de RC0/T1OSO/T13CKI pin (na borda de subida)
0= Relgio interno (FOSC / 4)
TMR1ON: Timer1 Em pouco
1= Permite Timer1
0= Pra Timer1
bit 6
bit 5-4
bit 3
bit 2
bit 1
bit 0
v 2009 Microchip Technology Inc. DS39632E pgina 131
PIC18F2455/2550/4455/4550
12.1 Timer1 Operao
Timer1 pode operar em um destes modos:
Temporizador
Contador Synchronous
contador assncrono
O modo de funcionamento determinado pelo relgio seleccionar
bits, TMR1CS (T1CON <1>). Quando TMR1CS eliminado
(= 0), Timer1 incrementos em cada instruo interna
ciclo (FOSC / 4). Quando o bit for definido, Timer1 incrementos
em cada borda de subida da entrada de clock externo Timer1
ou o Timer1 oscilador, se habilitado.
Quando Timer1 est habilitado, o RC1/T1OSI/UOE e
RC0/T1OSO/T13CKI pinos se tornar insumos. Isto significa
os valores de TRISC <01:00> so ignoradas e os pinos so
lido como '0 '.
FIGURA 12-1: TIMER1 DIAGRAMA DE BLOCO
Timer1 oscilador
On / Off
1
FOSC / 4
Interno
Relgio
T1OSCEN(1)
T1CKPS1: T1CKPS0
T1SYNC
TMR1ON
TMR1CS
Prescaler
1, 2, 4, 8
2
Entrada dormir
Timer1
On / Off
Sincronizar
Descobrir
0
1
T1OSO/T13CKI
T1OSI
0
Limpar TMR1
(CCP Gatilho Evento Especial)
TMR1L
TMR1
Byte
Conjunto
TMR1IF
no estouro
Nota 1: Quando o bit de habilitao, T1OSCEN, desmarcada, o inversor eo resistor de realimentao esto desligados para eliminar a fuga de
energia.
FIGURA 12-2: TIMER1 DIAGRAMA DE BLOCO (16-bit modo ler / escrever)
Timer1 oscilador
1
T1OSO/T13CKI
FOSC / 4
Interno
Relgio
TMR1CST1OSCEN(1)
T1CKPS1: T1CKPS0
T1SYNC
TMR1ON
1
Prescaler
1, 2, 4, 8
2
Sincronizar
Descobrir
0
T1OSI
0
Entrada dormir
Timer1
On / Off
Limpar TMR1
(CCP Gatilho Evento Especial)
TMR1L
TMR1
Byte
8
Conjunto
TMR1IF
no estouro
Leia TMR1L
Escrever TMR1L
8
8
TMR1H
8
8
Dados Interno Bus
Nota 1: Quando o bit de habilitao, T1OSCEN, desmarcada, o inversor eo resistor de realimentao esto desligados para eliminar a fuga de
energia.
DS39632E pgina 132 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
12.2 Timer1 de 16 bits modo ler / escrever
TABELA 12-1:
Osc Tipo
LP
Timer1 pode ser configurado para 16-bit l e escreve
(Veja a Figura 12-2). Quando o bit de controle RD16
(T1CON <7>) definido, o endereo para TMR1H mapeado
para um buffer de se inscrever para o byte mais alto do Timer1. Uma
leitura
de TMR1L ir carregar o contedo do byte alto de
Timer1 para o buffer de alta byte Timer1. Isto proporciona
ao usurio a capacidade de ler com preciso todos os 16 bits de
Timer1 sem ter de determinar se uma leitura de
byte elevado, seguida por uma leitura do byte baixo, tem
tornar-se invlido devido a um capotamento entre leituras.
A gravao para o byte mais alto do Timer1 deve tambm ter lugar
atravs do registo de buffer TMR1H. O Timer1 alta
byte atualizado com o contedo do TMR1H quando um
escrever ocorre TMR1L. Isso permite que um usurio para escrever
tudo
16 bits para ambos os bytes alto e baixo do Timer1 de uma vez.
A alta byte de Timer1 no diretamente legvel ou
gravvel neste modo. Todos l e escreve deve tomar
lugar atravs do Timer1 alta registo buffer de bytes.
Grava em TMR1H no limpar o prescaler Timer1.
O divisor s cancelado em escreve para TMR1L.
CAPACITOR PARA SELEO
O OSCILADOR TIMER (2,3,4)
Freq
32 kHz
C1
27 pF(1)
C2
27 pF(1)
Nota 1: Microchip sugere que estes valores como um
ponto de partida para a validao do oscilador
circuito.
2: Capacitncia maior aumenta a estabilidade
do oscilador, mas tambm aumenta o
tempo de arranque.
3: Uma vez que cada ressonador / cristal tem o seu
prprio
caractersticas, o usurio deve consultar
o fabricante ressonador / cristal para
appropriatevaluesofexternal
componentes.
4: Os valores dos capacitores so para orientao de
design
s.
12.3.1 UTILIZAO TIMER1 como um relgio
FONTE
12,3 Timer1 oscilador
Um circuito oscilador de cristal no chip incorporada
entre os pinos T1OSI (entrada) e T1OSO (amplificador
sada). Ele ativado, definindo o Timer1 oscilador
Ativar bit, T1OSCEN (T1CON <3>). O oscilador representa um
circuito de baixa potncia nominal para 32 cristais kHz. Ser
continuar a funcionar durante todos os modos de energia geridas. O
para um circuito oscilador LP tpico mostrado na Figura 12-3.
A Tabela 12-1 mostra o condensador de seleco para o Timer1
oscilador.
O utilizador tem de fornecer um retardo de tempo de software para
assegurar
bom arranque do Timer1 oscilador.
O oscilador Timer1 tambm est disponvel como uma fonte de
relgio
nos modos power-gerenciados. Ao acertar o relgio escolha
bits, SCS1: SCS0 (OSCCON <1:00>), a '01 ', o dispositivo
muda para o modo SEC_RUN. Tanto a CPU e
perifricos so cronometrados do Timer1 oscilador. Se o
IDLEN bit (OSCCON <7>) est desmarcada e uma DORMIR
instruo executada, o dispositivo entra SEC_IDLE
modo. Detalhes adicionais esto disponveis em Seo 3.0
"Modos de gerenciamento de energia".
Sempre que o oscilador Timer1 est fornecendo o relgio
fonte, o sistema sinalizador de status relgio Timer1, T1RUN
(T1CON <6>), est definido. Isto pode ser usado para determinar o
modo de clock atual do controlador. Pode tambm indicar
a fonte do relgio que est sendo usado atualmente pela prova de
falhas
Monitor de relgio. Se o Monitor de relgio ativado eo
Timer1 oscilador falha, proporcionando o relgio, polling
o bit T1RUN ir indicar se o relgio est a ser
fornecida pelo oscilador Timer1 ou outra fonte.
FIGURA 12-3: EXTERNO
Componentes para a
TIMER1 LP OSCILADOR
PIC18FXXXX
T1OSI
XTAL
32.768 kHz
T1OSO
C1
27 pF 12.3.2 LOW-POWER TIMER1 OPO
C2
27 pF
Nota: Veja as notas com a Tabela 12-1 para obter mais
informaes sobre a seleo capacitor.
O Timer1 oscilador pode operar em dois nveis distintos
do consumo de energia com base na configurao do dispositivo.
Quando o bit de configurao LPT1OSC est definido, o Timer1
oscilador opera em um modo de baixo consumo de energia. Quando
LPT1OSC no est definido, Timer1 opera em um poder superior
nvel. O consumo de energia para um modo particular rela-
vamente constante, independentemente da operao do dispositivo
modo. A configurao padro o Timer1 maior
modo de potncia.
Como o modo de Timer1 baixa potncia tende a ser mais
sensvel a interferncias, ambientes de alto rudo pode
causar alguma instabilidade oscilador. A opo de baixo consumo
de energia
, portanto, mais adequado para aplicaes de baixo rudo
onde a conservao de energia um projeto importante
considerao.
v 2009 Microchip Technology Inc. DS39632E pgina 133
PIC18F2455/2550/4455/4550
12.3.3 TIMER1 OSCILADOR LAYOUT
CONSIDERAES
12.5 Repor Timer1 Usando o CCP
Gatilho Evento Especial
O circuito oscilador Timer1 consome muito pouca energia
durante a operao. Devido natureza de baixa potncia do
oscilador, que pode tambm ser sensvel a rpida mudana
sinais em estreita proximidade.
O circuito oscilador, mostrado na Figura 12-3, deve ser
localizado to prximo quanto possvel do microcontrolador.
No deve haver circuitos que passam dentro do oscilador
alm VSS ou VDD limites do circuito.
Se um circuito de alta velocidade deve estar localizado perto da
oscilao
tor (como o pino CCP1 em Compare sada ou PWM
modo, ou o oscilador principal, utilizando o pino OSC2), um
aterrado anel de guarda em torno do circuito do oscilador, como
mostrado na Figura 12-4, podem ser teis quando utilizados em uma
single-sided PCB ou para alm de um plano de terra.
Se qualquer um dos mdulos CCP est configurado no Comparar
modo a gerar um disparo Evento Especial
(CCP1M3: CCP1M0 ou CCP2M3: CCP2M0 = 1011),
este sinal ir repor Timer1. O gatilho de CCP2 vontade
tambm iniciar uma converso A / D, se o mdulo A / D
ativado (ver Seo 15.3.4 "Trigger evento especial"
para mais informaes).
O mdulo deve ser configurado como um temporizador ou um
contador sncrono para tirar proveito deste recurso.
Quando usado desta forma, a CCPRH: par de registradores CCPRL
torna-se efetivamente um registo prazo para Timer1.
Se Timer1 est executando no modo contador assncrono,
esta operao Reiniciar podem no funcionar.
No caso em que uma gravao coincide com um Timer1
Gatilho evento especial, a operao de gravao vai demorar
precedncia.
Nota: O Evento Especial Triggers do CCP2
mdulo no ir definir a interrupo TMR1IF
bit de flag (PIR1 <0>).
FIGURA 12-4: Circuito oscilador
Com terra
GUARD ANEL
VDD
VSS
OSC1
OSC2
12,6 Usando Timer1 como Real-Time Clock
RC0
RC1
RC2
Nota: No em escala.
Adio de um oscilador externo para Timer1 LP (tal como o
descrito em Seo 12.3 "Timer1 Mdulo eletrnico")
d aos usurios a opo de incluir a funcionalidade RTC
suas aplicaes. Isto conseguido com um
relgio de cristal barato para fornecer um tempo exato
base e vrias linhas de cdigo do aplicativo para o clculo
o tempo. Quando estiver operando no modo de suspenso e usando
um
bateria ou de supercapacitores, como uma fonte de energia, pode
elimina completamente a necessidade de uma RTC separado
dispositivo e backup de bateria.
A rotina de cdigo do aplicativo, RTCisr, mostrado na
Exemplo 12-1, demonstra um mtodo simples para
incrementar um contador em intervalos de um segundo, utilizando
um
Rotina de interrupo de servio. Incrementando o TMR1
registar par a transbordar aciona a interrupo e chama
a rotina, o que incrementa o contador de segundos por
um. Contadores adicionais para minutos e horas so
incrementado conforme os excessos contrrios anteriores.
Uma vez que o par de registradores de 16 bits de largura,
contando at
transbordar a inscrever-se directamente a partir de um relgio de
32.768 kHz
levaria de 2 segundos. Para forar o transbordar
necessria intervalos de um segundo, necessrio pr-
carreg-lo. O mtodo mais simples definir o MSB
TMR1H com um BSF instrues. Note-se que o TMR1L
registo nunca pr-carregado ou alterados, pois isso pode
introduzir um erro cumulativo ao longo de diversos ciclos.
Para este mtodo para ser exato, Timer1 deve operar em
Modo assncrono ea interrupo de estouro Timer1
deve estar habilitado (PIE1 <0> = 1) como mostrado na
de rotina, RTCinit. O oscilador deve ser tambm Timer1
habilitado e funcionando em todos os momentos.
12,4 Timer1 Interrupo
Incrementos: o TMR1 par de registradores (TMR1L TMR1H)
a partir de 0000h a FFFFh e rola para 0000h. O
Timer1 de interrupo, se estiver ativado, gerado em excesso
que travado na interrupo bit bandeira, TMR1IF
(PIR1 <0>). Esta interrupo pode ser ativado ou desativado
atravs da criao ou limpar o Timer1 interrupo Habilitar bit,
TMR1IE (PIE1 <0>).
DS39632E pgina 134 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
12,7 Consideraes na Asynchronous
Contador Modo
depois de uma tarde Timer1 incremento. Isto pode ser feito
pelo monitoramento TMR1L dentro da rotina de interrupo at que
incrementos, e em seguida, atualizar o TMR1H: TMR1L reg-
Ister par enquanto o relgio baixa, ou a metade do perodo
da fonte de relgio. Assumindo que est sendo Timer1
usado como um relgio de tempo real, a fonte de relgio um
32,768 kHz oscilador de cristal, e neste caso, a metade
perodo do relgio de 15,25 o .
O cdigo do aplicativo do relgio em tempo real no Exemplo 12-1
mostra uma ISR tpico para Timer1, bem como os opcionais
cdigo necessrio se a atualizao no pode ser feito de forma
confivel
dentro do intervalo desejado.
Aps uma interrupo Timer1 e uma atualizao para o
TMR1 registros, o mdulo Timer1 usa uma borda de descida
em sua fonte de clock para acionar a prxima atualizao no
cadastro
a borda de subida. Se a atualizao for concluda aps o
entrada de relgio tenha cado, a prxima borda de subida no
haver
contadas.
Se o aplicativo pode atualizar de forma confivel TMR1 antes do
entrada do temporizador fica baixo, no necessria nenhuma ao
adicional.
Caso contrrio, a actualizao ajustado pode ser realizada
Exemplo 12-1:
RTCinit
MOVLW
MOVWF
CLRF
MOVLW
MOVWF
CLRF
CLRF
MOVLW
MOVWF
BSF
RETORNO
RTCisr
IMPLEMENTAO DE UM PULSO DE DISPARO EM TEMPO REAL UTILIZANDO UM TIMER1
interromper o servio
80h
TMR1H
TMR1L
b'00001111 '
T1CON
segundos
mins
0,12
horas
PIE1, TMR1IE
, Preload TMR1 par de registradores
, Por um segundo estouro
, Configure para o relgio externo,
, A operao assncrona, oscilador externo
, Inicializar registros de cronometragem
;
, Ativar Timer1 interrupo
BTFSC
BRA
BTFSS
BRA
TMR1L, 0
$ -2
TMR1L, 0
$ -2
BSF
BCF
INCF
MOVLW
CPFSGT
RETORNO
CLRF
INCF
MOVLW
CPFSGT
RETORNO
CLRF
INCF
MOVLW
CPFSGT
RETORNO
CLRF
RETORNO
TMR1H, 7
PIR1, TMR1IF
seg, F
0,59
segundos
segundos
minutos, F
0,59
mins
mins
horas, F
0,23
horas
horas
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
;
Insira os prximos quatro linhas de cdigo quando TMR1
no pode ser atualizado de forma confivel antes de pulso de clock fica
baixo
esperar TMR1L a ficar claro
(Pode j ser claro)
esperar TMR1L para se tornar set
TMR1 acaba incrementado
Se TMR1 atualizao pode ser concluda antes do pulso de clock fica baixo
Comece ISR aqui
Preload por 1 segundo estouro
Limpar flag de interrupo
Segundos de incremento
60 segundo decorrido?
No, feito
Limpar segundos
Minutos de incremento
Decorridos 60 minutos?
No, feito
minutos claras
Horas de incremento
24 horas decorrido?
, No, feito
; Redefinir horas
, Feito
v 2009 Microchip Technology Inc. DS39632E pgina 135
PIC18F2455/2550/4455/4550
TABELA 12-2:
Nome
INTCON
PIR1
PIE1
IPR1
TMR1L
TMR1H
T1CON
REGISTOS ASSOCIADOS TIMER1 como um temporizador / COUNTER
Bit 7 Bit 6 Bit 5
TMR0IE
RCIF
RCIE
RCIP
Bit 4
INT0IE
TXIF
TXIE
TXIP
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
Restabelecer
Valores
na pgina
53
56
56
56
54
54
TMR1CS TMR1ON 54
GIE / GIEH PEIE / giel
SPPIF(1)
SPPIE(1)
SPPIP(1)
ADIF
ADIE
ADIP
Timer1 Registrar Low Byte
TIMER1 Register alta Byte
RD16 T1RUN T1CKPS1 T1CKPS0 T1OSCEN T1SYNC
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pelo mdulo Timer1.
Nota 1: Estes bits so no implementado em dispositivos de 28 pinos; sempre manter esses bits claras.
DS39632E pgina 136 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
13,0 TEMP2 MDULO 13.1 Timer2 Operao
O mdulo temporizador Timer2 incorpora o seguinte
caractersticas:
Timer e Perodo registradores de 8 bits (TMR2 e PR2,
respectivamente)
leitura e escrita (de ambos os registos)
prescaler programvel Software (1:1, 1:4 e
1:16)
postscaler programvel Software (1:1 atravs
1:16)
Interromper a TMR2 para PR2 jogo
uso opcional, quando o relgio mudana para o MSSP
mdulo
O mdulo controlado atravs do registo T2CON
(Registrar 13-1), que habilita ou desabilita o timer e
configura o prescaler e postscaler. Timer2 pode ser
desligar a pouco controle clareira, TMR2ON (T2CON <2>),
, para minimizar o consumo de energia.
Um diagrama de blocos simplificado do mdulo mostrado em
Figura 13-1.
Em operao normal, TMR2 incrementado de 00h em
cada relgio (FOSC / 4). Um contador de 2 bits / divisor no
entrada de clock d entrada direta, diviso por 4 e divida-a-
16 opes pr-escala. Estes so selecionados pelo prescaler
bits de controle, T2CKPS1: T2CKPS0 (T2CON <01:00>). O
valor de TMR2 comparada com a do registo Perodo,
PR2, em cada ciclo de relgio. Quando os dois valores
correspondem,
o comparador gera um sinal de partida como o temporizador
sada. Este sinal tambm redefine o valor de TMR2 para 00h
no prximo ciclo e dirige a sada counter/post-
scaler (ver Clusula 13.2 "Timer2 interrupo").
Os TMR2 e PR2 registros so ambos de fcil leitura
e gravvel. O registo TMR2 eliminado em qualquer
Reiniciar dispositivo, enquanto o registo PR2 inicializa a FFh.
Tanto o prescaler e contadores postscaler so apagadas
nos seguintes eventos:
a escrever para o registo TMR2
a escrever para o registo T2CON
Redefinio de qualquer dispositivo (Power-on Reset, MCLR
Reset,
Watchdog Temporizador reposio ou Reset Brown-out)
TMR2 no limpo quando T2CON est escrito.
CADASTRE-SE 13-1:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
bit 6-3
T2CON: TEMP2 registro de controle
R/W-0 R/W-0
T2OUTPS2
R/W-0
T2OUTPS1
R/W-0
T2OUTPS0
R/W-0
TMR2ON
R/W-0
T2CKPS1
R/W-0
T2CKPS0
bit 0
T2OUTPS3
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
Unimplemented: Leia como '0 '
T2OUTPS3: T2OUTPS0: Timer2 sada Postscale Selecionar pedaos
0000 = 1:1 Postscale
0001 = 01:02 Postscale



1111 = 01:16 Postscale
TMR2ON: Timer2 Em pouco
1= Timer2 est
0= Timer2 est fora
T2CKPS1: T2CKPS0: Timer2 Relgio pr-escala Selecionar pedaos
00 = Prescaler um
01 = Prescaler 4
1x = Prescaler de 16
bit 2
bit 1-0
v 2009 Microchip Technology Inc. DS39632E pgina 137
PIC18F2455/2550/4455/4550
13.2 Timer2 Interrupo 13,3 TMR2 Output
Timer2 tambm pode gerar uma interrupo do dispositivo opcional.
O sinal de sada Timer2 (TMR2 para PR2 jogo) pro-
nece a entrada para a sada do contador de 4 bits / postscaler.
Este contador gera o flag de interrupo jogo TMR2
que travado na TMR2IF (PIR1 <1>). A interrupo
habilitado, definindo a interrupo do jogo TMR2 Ativar
bits, TMR2IE (PIE1 <1>).
Uma gama de 16 opes de postscale (de 1:1 a 1:16
inclusive) podem ser seleccionados com o controle postscaler
bits, T2OUTPS3: T2OUTPS0 (T2CON <6:03>).
A sada no redimensionada TMR2 est disponvel principalmente
para
os mdulos de CCP, em que utilizado como uma base de tempo
para
operaes em modo PWM. Timer2 pode ser opcionalmente utilizada como fonte de relgio
deslocamento
para o mdulo MSSP operando em modo de SPI.
Informaes adicionais so fornecidas no Seo 19,0
"Mestre Synchronous Serial Port (MSSP) Module".
FIGURA 13-1: TEMP2 DIAGRAMA DE BLOCO
4
2
TMR2/PR2
Corresponder
T2OUTPS3: T2OUTPS0
T2CKPS1: T2CKPS0
01:01-01:16
Postscaler
Definir TMR2IF
TMR2 Output
(A PWM ou MSSP)
FOSC / 4
1:1, 1:4, 1:16
Prescaler
Restabelecer
TMR2
8
Comparador
8
PR2
8
Dados Interno Bus
TABELA 13-1:
Nome Bit 7
REGISTOS ASSOCIADOS TEMP2 como um temporizador / COUNTER
Bit 6 Bit 5
TMR0IE
RCIF
RCIE
RCIP
Bit 4
INT0IE
TXIF
TXIE
TXIP
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
Restabelecer
Valores
na pgina
53
56
56
56
54
54
54
INTCON GIE / GIEH PEIE / giel
PIR1
PIE1
IPR1
TMR2
T2CON
PR2
SPPIF(1)
SPPIE(1)
SPPIP(1)
-
ADIF
ADIE
ADIP
Timer2 Registrar
T2OUTPS3 T2OUTPS2 T2OUTPS1 T2OUTPS0 TMR2ON T2CKPS1 T2CKPS0
Timer2 Perodo Registrar
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pelo mdulo Timer2.
Nota 1: Estes bits so no implementado em dispositivos de 28 pinos; sempre manter esses bits claras.
DS39632E pgina 138 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
14,0 TIMER3 MDULO
O Timer3 mdulo temporizador / contador incorpora estes
caractersticas:
operao selecionvel por software como um timer de 16 bits
ou
contrariar
registros de 8 bits legvel e gravvel (TMR3H
e TMR3L)
fonte de relgio selecionvel (interno ou externo) com
relgio do dispositivo ou Timer1 opes internas do oscilador
Interrupo no estouro
Reiniciar mdulo no CCP Gatilho Evento Especial
Um diagrama de blocos simplificado do mdulo Timer3
mostrado na Figura 14-1. Um diagrama de blocos do mdulo de
na operao de leitura / gravao de modo mostrado na Figura 14-
2.
O mdulo Timer3 controlado atravs do T3CON
registrar (Register 14-1). Ele tambm seleciona a fonte de relgio
opes para os mdulos CCP (ver Seo 15.1.1
"Mdulos CCP e Recursos temporizador" Para mais
informaes).
CADASTRE-SE 14-1:
R/W-0
RD16
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
T3CON: TIMER3 registro de controle
R/W-0 R/W-0
T3CKPS1
R/W-0
T3CKPS0
R/W-0
T3CCP1
R/W-0
T3SYNC
R/W-0
TMR3CS
R/W-0
TMR3ON
bit 0
T3CCP2
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
RD16: 16-Bit Leitura / Gravao Modo Ativar bit
1= Permite registo de leitura / gravao de Timer3 em uma operao de 16 bits
0= Permite registrar leitura / gravao de Timer3 em duas operaes de 8 bits
T3CCP2: T3CCP1: Timer3 e Timer1 para CCPx Ativar os bits
1x = Timer3 a captura / compara fonte de relgio para ambos os mdulos CCP
01 = Timer3 a captura / compara fonte de relgio para CCP2;
Timer1 a captura / compara fonte de relgio para CCP1
00 = Timer1 a captura / compara fonte de relgio para ambos os mdulos CCP
T3CKPS1: T3CKPS0: Timer3 entrada de clock Prescale Select pedaos
11 = 01:08 Prescale valor
10 = 01:04 Prescale valor
01 = 01:02 valor Prescale
00 = 1:1 Prescale valor
T3SYNC: Timer3 External clock de entrada de sincronizao pouco controle
(No utilizvel se o relgio do dispositivo vem Timer1/Timer3).
Quando TMR3CS = 1:
1= No sincronizar entrada de clock externo
0= Sincronizar entrada de clock externo
Quando TMR3CS = 0:
Este bit ignorado. Timer3 usa o relgio interno quando TMR3CS = 0.
TMR3CS: Timer3 Clock Source Select bit
1= Entrada de clock externo do Timer1 oscilador ou T13CKI (na borda de subida aps a primeira borda de descida)
0= Relgio interno (FOSC / 4)
TMR3ON: Timer3 Em pouco
1= Permite Timer3
0= Pra Timer3
bits 6, 3
bit 5-4
bit 2
bit 1
bit 0
v 2009 Microchip Technology Inc. DS39632E-pgina 139
PIC18F2455/2550/4455/4550
14.1 Timer3 Operao
Timer3 pode operar em um de trs modos:
Temporizador
Contador Synchronous
contador assncrono
O modo de funcionamento determinado pelo relgio seleccionar
bits, TMR3CS (T3CON <1>). Quando TMR3CS eliminado
(= 0), Timer3 incrementos em cada instruo interna
ciclo (FOSC / 4). Quando o bit for definido, Timer3 incrementos
em cada borda de subida da entrada de clock externo Timer1
ou o Timer1 oscilador, se habilitado.
Tal como acontece com Timer1, o RC1/T1OSI/UOE e RC0 /
T1OSO/T13CKI pinos se tornam entradas quando o Timer1
oscilador ativado. Isto significa que os valores de
TRISC <01:00> so ignorados e os pinos so lidos como '0 '.
FIGURA 14-1: TIMER3 DIAGRAMA DE BLOCO
Timer1 oscilador
Timer1 Relgio Input
1
1
FOSC / 4
Interno
Relgio
T1OSCEN(1)
T3CKPS1: T3CKPS0
T3SYNC
TMR3ON
TMR3CS
T1OSO/T13CKI
Prescaler
1, 2, 4, 8
2
Sincronizar
Descobrir
0
T1OSI
0
Entrada dormir
Timer3
On / Off
CCP1/CCP2 Gatilho Evento Especial
CCP1/CCP2 Select de T3CON <6,3>
Limpar TMR3
TMR3L
TMR3
Byte
Conjunto
TMR3IF
no estouro
Nota 1: Quando o bit de habilitao, T1OSCEN, desmarcada, o inversor eo resistor de realimentao esto desligados para eliminar a fuga de
energia.
FIGURA 14-2: TIMER3 DIAGRAMA DE BLOCO (16-bit modo ler / escrever)
Timer1 oscilador Timer1 Relgio Input
1
1
FOSC / 4
Interno
Relgio
TMR3CST1OSCEN(1)
T3CKPS1: T3CKPS0
T3SYNC
TMR3ON
T1OSO/T13CKI
Prescaler
1, 2, 4, 8
2
Sincronizar
Descobrir
0
T1OSI
0
Entrada dormir
Timer3
On / Off
CCP1/CCP2 Gatilho Evento Especial
CCP1/CCP2 Select de T3CON <6,3>
Limpar TMR3
TMR3L
TMR3
Byte
8
Conjunto
TMR3IF
no estouro
Leia TMR1L
Escrever TMR1L
8
8
TMR3H
8
8
Dados Interno Bus
Nota 1: Quando o bit de habilitao, T1OSCEN, desmarcada, o inversor eo resistor de realimentao esto desligados para eliminar a fuga de energia.
DS39632E pgina 140 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
14,2 Timer3 16-Bit modo ler / escrever 14,4 Timer3 Interrupo
Timer3 pode ser configurado para 16-bit l e escreve
(Veja a Figura 14-2). Quando o bit de controle RD16
(T3CON <7>) definido, o endereo para TMR3H mapeado
para um buffer de se inscrever para o byte mais alto de Timer3. Uma
leitura
de TMR3L ir carregar o contedo do byte alto de
Timer3 no buffer Timer3 alta byte. Isto proporciona
ao usurio a capacidade de ler com preciso todos os 16 bits de
Timer1 sem ter de determinar se uma leitura de
byte elevado, seguida por uma leitura do byte baixo, tem
tornar-se invlido devido a um capotamento entre leituras.
A gravao para o byte mais alto de Timer3 deve tambm ter lugar
atravs do registo de buffer TMR3H. O Timer3 alta
byte atualizado com o contedo do TMR3H quando um
escrever ocorre TMR3L. Isso permite que um usurio para escrever
tudo
16 bits para ambos os bytes alto e baixo do Timer3 de uma vez.
A alta byte de Timer3 no diretamente legvel ou
gravvel neste modo. Todos l e escreve deve tomar
lugar atravs da Timer3 alta registo buffer de bytes.
Grava em TMR3H no limpar o prescaler Timer3.
O divisor s cancelado em escreve para TMR3L.
Incrementos: o TMR3 par de registradores (TMR3L TMR3H)
a partir de 0000h a FFFFh e transborda para 0000h. O
Timer3 de interrupo, se estiver ativado, gerado em excesso
e travado na interrupo bit bandeira, TMR3IF (PIR2 <1>).
Esta interrupo pode ser ativado ou desativado por definio ou
limpar a interrupo Habilitar bit Timer3, TMR3IE
(PIE2 <1>).
14,5 Repor Timer3 Usando o PCC
Gatilho Evento Especial
Se o mdulo CCP2 configurado para gerar um
Gatilho evento especial no modo Comparar
(CCP2M3: CCP2M0 = 1011), este sinal ir repor
Timer3. Tambm ir iniciar uma converso A / D, se a A / D
mdulo est ativado (ver Seo 15.3.4 "Special
Gatilho Event " para mais informaes.).
O mdulo deve ser configurado como um temporizador ou
contador sncrono para tirar proveito deste recurso.
Quando usado desta forma, a CCPR2H: CCPR2L registo
par efetivamente torna-se um perodo de registo para Timer3.
Se Timer3 est executando no modo contador assncrono,
a operao de reposio pode no funcionar.
No caso em que uma gravao coincide com uma Timer3
Gatilho evento especial de um mdulo CCP, a gravao ser
precedncia.
Nota: O Evento Especial Triggers do CCP2
mdulo no ir definir a interrupo TMR3IF
bit de flag (PIR2 <1>).
14,3 Usando o oscilador como a Timer1
Timer3 Clock Source
O Timer1 oscilador interno pode ser utilizado como o relgio
fonte para Timer3. O oscilador Timer1 ativado por
definindo o T1OSCEN (T1CON <3>) bit. Para us-lo como o
Timer3 fonte de clock, o bit TMR3CS tambm deve ser definido.
Conforme observado anteriormente, este tambm configura a
Timer3
incrementar em cada borda de subida da fonte de oscilador.
O oscilador Timer1 descrito em Seo 12.0
"Timer1 Module".
TABELA 14-1:
Nome
REGISTOS ASSOCIADOS TIMER3 como um temporizador / COUNTER
Bit 6 Bit 5
TMR0IE
USBIF
USBIE
USBIP
Bit 4
INT0IE
EEIF
EEIE
EEIP
Bit 3
RBIE
BCLIF
BCLIE
BCLIP
Bit 2
TMR0IF
HLVDIF
HLVDIE
HLVDIP
O bit 1
INT0IF
TMR3IF
TMR3IE
TMR3IP
Bit 0
RBIF
CCP2IF
CCP2IE
CCP2IP
Restabelecer
Valores
na pgina
53
56
56
56
55
55
TMR1CS
TMR3CS
TMR1ON
TMR3ON
54
55 T3CCP1 T3SYNC
Bit 7
INTCON GIE / GIEH PEIE / giel
PIR2
PIE2
IPR2
TMR3L
TMR3H
T1CON
T3CON
OSCFIF
OSCFIE
OSCFIP
CMIF
CMIE
CMIP
Timer3 Registrar Low Byte
Timer3 Register alta Byte
RD16
RD16
T1RUN
T3CCP2
T1CKPS1 T1CKPS0 T1OSCEN T1SYNC
T3CKPS1 T3CKPS0
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pelo mdulo Timer3.
v 2009 Microchip Technology Inc. DS39632E pgina 141
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 142 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
15,0 Capture / COMPARE / PWM
(CCP) MDULOS
A captura e compare operaes descritas neste
captulo aplicam-se a todas as normas e Enhanced CCP
mdulos.
Nota: Ao longo desta seo e Seo 16.0
"Enhanced Capture / Compare / PWM (PEAC)
Module ", Referncias do registo e pouco
nomes para mdulos CCP so encaminhados para gera-
camente pela utilizao de "x" ou "y" no lugar do
nmero do mdulo especfico. Assim, "CCPxCON"
pode referir-se ao registro de controle para CCP1,
CCP2 ou ECCP1. "CCPxCON" usado
ao longo dessas sees para se referir ao
mdulo de controle registrar independentemente de
o mdulo de CCP um padro ou reforada
implementao.
PIC18F2455/2550/4455/4550 dispositivos tm dois
CCP (Capture / Compare / PWM) mdulos. Cada mdulo
contm um registo de 16 bits, o que pode funcionar como um 16 bits
Captura de registrar, a 16-bit Comparar registar ou um PWM
Master / registo Ciclo de trabalho escravo.
Em dispositivos de 28 pinos, os dois mdulos CCP padro (CCP1
e CCP2) operam como descrito neste captulo. Em
Dispositivos 40/44-pin, CCP1 implementado como um
Avanado mdulo CCP, com o Capture padro e
Compare os modos e modos de PWM melhoradas. O
Implementao PEAC discutido em Seo 16.0
"Enhanced Capture / Compare / PWM (PEAC) Module".
CADASTRE-SE 15-1:
U-0
-(1)
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7-6
bit 5-4
CCPxCON: PADRO CCPx registro de controle
U-0
-(1)
R/W-0
DCxB1
R/W-0
DCxB0
R/W-0
CCPxM3
R/W-0
CCPxM2
R/W-0
CCPxM1
R/W-0
CCPxM0
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
Unimplemented: Leia como '0 '(1)
DCxB1: DCxB0: PWM Ciclo Bit 1 e Bit 0 para o Mdulo CCPx
Modo de captura:
No utilizado.
Modo de comparao:
No utilizado.
Modo PWM:
Estes bits so os dois bits menos significativos (bit 1 bit 0 e) do ciclo de PWM de 10 bits. Os oito MSBS do dever
ciclo so encontrados em CCPR1L.
CCPxM3: CCPxM0: CCPx Mdulo modo de seleo de pedaos
0000 = Capture / Compare / PWM com deficincia (redefine CCPx mdulo)
0001 = Reservado
0010 Sada de alternncia na partida (CCPxIF bit definido): = modo Comparar
0011 = Reservado
0100 Cada borda de descida: = modo de captura
0101 Cada borda de subida: = modo de captura
0110 Cada quarto borda de subida: = modo de captura
0111 Cada borda de subida 16: = modo de captura
1000 = Modo Compare: inicializar CCPx pin baixo; comparar em jogo, fora CCPx pin alta (CCPxIF bit
definido)
1001 = Modo Compare: inicializar pin CCPx alta; comparar em jogo, fora CCPx pin baixa (CCPxIF bit
definido)
1010 = Modo Compare: gerar interrupo de software em jogo compare (CCPxIF bit definido, CCPx pin
reflete I / O Estado)
1011 Trigger evento especial, timer reset, iniciar converso A / D em CCPx jogo: = modo Comparar
(CCPxIF bit definido)
11xx = Modo PWM
Estes bits no so implementadas em dispositivos de 28 pinos e so lidos como '0 '.
bit 3-0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E pgina 143
PIC18F2455/2550/4455/4550
15.1 Configurao do mdulo CCP
Cada Captura / Compare / PWM mdulo est associada
com um registo de controlo (genericamente, CCPxCON) e uma
registo de dados (CCPRx). O registo de dados, por sua vez,
formado por dois registradores de 8 bits: CCPRxL (baixo byte)
e CCPRxH (byte). Todos os registros so ambos
legvel e gravvel.
A atribuio de um temporizador em particular a um mdulo est
determinada pelo Timer para CCP habilitao bits no
T3CON registro (Register 14-1). Os dois mdulos podem ser
ativo em um determinado momento e podem compartilhar o mesmo
temporizador
recurso se eles esto configurados para operar na mesma
modo (Capture / Compare ou PWM) ao mesmo tempo. O
interaces entre os dois mdulos esto resumidos na
Figura 15-2. No Timer1 em modo de contador assncrono,
a operao de captura no vai funcionar.
15.1.1 MDULOS CCP e Timer
RECURSOS
15.1.2 CCP2 PIN CESSO
Os mdulos CCP utilizar Timers 1, 2 ou 3, dependendo
o modo seleccionado. Timer1 Timer3 e esto disponveis
para mdulos de captura ou comparar modos, enquanto
Timer2 est disponvel para os mdulos em modo PWM.
TABELA 15-1: CCP MODE - TIMER
RECURSOS
Resource temporizador
Timer1 ou Timer3
Timer1 ou Timer3
Timer2
A pinagem para CCP2 (captura de entrada, comparar
e PWM output) pode mudar, com base em dispositivo de config-
uration. O bit de configurao CCP2MX determina
que pin CCP2 multiplexada para. Por padro, ele
designado para RC1 (= CCP2MX 1). Se o bit de configurao
desmarcada, CCP2 multiplexado com RB3.
Alterar a atribuio de pinos de CCP2 no
alterar automaticamente todos os requisitos para a configurao
o pino da porta. Os usurios devem sempre verificar se a apro-
comeu TRIS registo est configurado corretamente para CCP2
operao, independentemente de onde ele est localizado.
Modo CCP / PEAC
Capturar
Comparar
PWM
TABELA 15-2:
Capturar
Capturar
INTERAO ENTRE CCP1 E CCP2 por recursos TIMER
Interao
Cada mdulo pode usar TMR1 ou TMR3 como a base de tempo. A base de tempo podem ser diferentes
para cada PCC.
CCP2 pode ser configurado para o acionamento do evento especial para redefinir TMR1 ou TMR3
(Dependendo da base de tempo usada). Converses A / D em evento de disparo automtico
tambm pode ser feito. Operao de CCP1 poderia ser afetado se ele estiver usando o mesmo
temporizador como um
base de tempo.
CCP1 ser configurado para o acionamento do evento especial para redefinir TMR1 ou TMR3
(dependendo
em que a base de tempo usada). Operao de CCP2 poderia ser afetado se ele estiver usando o
mesmo temporizador como base de tempo.
Qualquer mdulo pode ser configurado para o acionamento do evento especial para redefinir a base
de tempo.
Converses em CCP2 evento de disparo automtico A / D pode ser feito. Conflitos podem ocorrer se
ambos os mdulos esto usando a mesma base de tempo.
Nenhum
Nenhum
Nenhum
Nenhum
Ambos PWMs ter a mesma freqncia e taxa de atualizao (TMR2 interrupo).
Capturar
Comparar
CCP1 Modo CCP2 Modo
Comparar Capturar
Comparar Comparar
Capturar
Comparar
PWM(1)
PWM(1)
PWM(1)
Nota 1:
PWM(1)
PWM(1)
Capturar
Comparar
PWM
Inclui operao PWM padro e avanada.
DS39632E pgina 144 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
15.2 Capture Mode
15.2.3 Interrupo de software
No modo de captura, o CCPRxH: CCPRxL par de registradores
capta o valor da TMR1 TMR3 ou 16 bits
regista quando ocorre um acontecimento no correspondente
Pin CCPx. Um evento definido como um dos seguintes:




cada borda de descida
cada borda de subida
cada quarto borda de subida
cada borda de subida 16
Quando o modo de captura alterada, uma falsa captura
de interrupo pode ser gerado. O usurio deve manter o
CCPxIE interrupo permitir pouco clara para evitar falsas
as interrupes. O bit de flag de interrupo, CCPxIF, tambm deve
ser
apuradas aps tais mudanas no modo de operao.
15.2.4 CCP PRESCALER
O evento selecionado pelo modo de seleo de pedaos,
CCPxM3: CCPxM0 (CCPxCON <3:00>). Quando uma captura
feita, o pedido de interrupo da bandeira bit, CCPxIF, est
definido, mas
devem ser apuradas em software. Se ocorrer uma outra captura
antes o valor no registro CCPRx lido, o velho
valor captado ser substitudo pelo novo valor capturado.
H quatro configuraes prescaler no modo Capture.
Eles so especificados como parte do modo de operao
selecionado pelo O modo de seleco bits (CCPxM3: CCPxM0).
Sempre que o mdulo CCP est desligado ou captura
modo desativado, o contador divisor est desmarcada. Este
significa que qualquer Limpar ir limpar o contador divisor.
Mudar de um divisor de captura para outro pode
gerar uma interrupo. Alm disso, o contador divisor vontade
no afastada, por conseguinte, a primeira captura pode ser de
um divisor diferente de zero. Exemplo 15-1 mostra o
mtodo recomendado para comutao entre a captura
prescalers. Este exemplo tambm limpa o prescaler
combater e no gerar a interrupo "falso".
15.2.1 CCP PIN CONFIGURAO
No modo de captura, o pino CCPx apropriada deve ser
configurado como uma entrada, definindo o respectivo
TRIS bit direo.
Nota: Se RB3/CCP2 ou RC1/CCP2 est configurado
como uma sada, uma gravao na porta pode causar
uma condio de captura.
Exemplo 15-1: Alternar entre
CAPTURA prescalers
(CCP2 MOSTRADO)
15.2.2 TIMER1/TIMER3 MODO DE SELEO
Os temporizadores que so para ser usado com o recurso de
captura
(Timer1 e / ou Timer3) deve estar rodando no modo temporizador ou
Sincronizado modo Contador. No contador assncrono
modo, a operao de captura no funcionar. O temporizador de ser
usado com cada mdulo CCP selecionado no T3CON
registrar (ver Seo 15.1.1 "Mdulos CCP e Timer
Recursos ").
CLRF
MOVLW
MOVWF
CCP2CON; Vire mdulo CCP off
NEW_CAPT_PS; WREG de carga com o
, Novo modo prescaler
, Valor e CCP ON
CCP2CON; CCP2CON carga com
, Valor esse
FIGURA 15-1: CAPTURA DE MODO DE OPERAO DE BLOCO DIAGRAMA
Definir CCP1IF
T3CCP2
TMR3H
TMR3
Permitir
CCPR1H
TMR1
Permitir
TMR1H
Definir CCP2IF
TMR3H
TMR3
Permitir
CCPR2H
TMR1
Permitir
T3CCP2
T3CCP1
TMR1H TMR1L
CCPR2L
TMR3L
TMR1L
CCPR1L
TMR3L
CCP1 pin
Prescaler
| 1, 4, 16
e
Borda Detect
T3CCP2
CCP1CON <3:00>
Q1: Q4
CCP2CON <3:00>
4
4
4
T3CCP1
T3CCP2
CCP2 pin
Prescaler
| 1, 4, 16
e
Borda Detect
v 2009 Microchip Technology Inc. DS39632E pgina 145
PIC18F2455/2550/4455/4550
15,3 Compare Modo
15.3.2 TIMER1/TIMER3 MODO DE SELEO
No modo de comparao, o CCPRx valor do registrador de 16 bits
constantemente comparado com tanto o TMR1 ou TMR3
registar o valor par. Quando ocorrer uma correspondncia, o pino
CCPx
pode ser:




colocada em alta
impulsionado baixo
alternada (alta para baixa ou de baixa para maior)
permanecer inalterado (isto , reflecte o estado da
I / O trinco)
Timer1 e / ou Timer3 deve ser executado no modo Timer,
ou sincronizado modo de contador, se o mdulo de PCC
usando o recurso de comparao. No contador assncrono
modo, a operao de comparao pode no funcionar.
15.3.3 SOFTWARE INTERRUPO MODO
Quando o modo de interrupo de software Gerar escolhido
(CCPxM3: CCPxM0 = 1010), o CCPx correspondente
pin no afetado. Apenas uma interrupo de PCC gerado,
se habilitado, eo bit CCPxIE est definido.
A aco sobre o pino baseado no valor do modo
selecionar bits (CCPxM3: CCPxM0). Ao mesmo tempo, o
interrupo bit bandeira, CCPxIF, est definido.
15.3.4 TRIGGER EVENTO ESPECIAL
15.3.1 CCP PIN CONFIGURAO
O usurio deve configurar o pino CCPx como uma sada por
limpando o bit TRIS apropriado.
Nota: Limpando o registro CCP2CON forar
o RB3 ou RC1 comparar trava sada
(Dependendo da configurao do dispositivo) para o
baixo nvel padro. Este no o ou PORTB
Dados PORTC I / O trinco.
Ambos os mdulos CCP esto equipados com um evento especial
Trigger. Este um sinal de hardware interna gerada
em modo de comparao para desencadear aes de outros
mdulos.
The Trigger evento especial ativada selecionando
O modo de disparo Evento Especial Compare
(CCPxM3: CCPxM0 = 1011).
Para cada mdulo CCP, o Evento Especial Gatilho redefine
o temporizador par de registradores para qualquer recurso
temporizador
actualmente designado como base de tempo do mdulo. Este
permite que o CCPRx registra para servir como um programvel
Perodo de se inscrever para o timer.
The Trigger evento especial para CCP2 tambm pode iniciar uma
A converso A / D. A fim de fazer isso, o conversor A / D
j deve estar ativado.
FIGURA 15-2: COMPARAR MODO DE OPERAO DE BLOCO DIAGRAMA
Definir CCP1IF
Gatilho Evento Especial
(Timer1/Timer3 Reset)
CCP1 pin
Comparador
Comparar
Corresponder
Sada
Lgica
4
CCP1CON <3:00>
S
R
TRIS
Ativao de sada
Q
CCPR1H CCPR1L
0
TMR1H TMR1L
0
Gatilho Evento Especial
(Timer1/Timer3 Reset, A D Gatilho /)
T3CCP2
Definir CCP2IF CCP2 pin
Sada
Lgica
4
CCP2CON <3:00>
S
R
TRIS
Ativao de sada
Q
1
TMR3H
T3CCP1
TMR3L
1
Comparador
Comparar
Corresponder
CCPR2H CCPR2L
DS39632E pgina 146 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 15-3:
Nome
INTCON
RCON
PIR1
PIE1
IPR1
PIR2
PIE2
IPR2
TRISB
TRISC
TMR1L
TMR1H
T1CON
TMR3H
TMR3L
T3CON
CCPR1L
CCPR1H
CCP1CON
CCPR2L
CCPR2H
CCP2CON
Ficheiros associados com a captura, comparar TIMER1 E TIMER3
Bit 7 Bit 6 Bit 5
TMR0IE
-
RCIF
RCIE
RCIP
USBIF
USBIE
USBIP
TRISB5
-
Bit 4
INT0IE
RI
TXIF
TXIE
TXIP
EEIF
EEIE
EEIP
TRISB4
-
Bit 3
RBIE
TO
SSPIF
SSPIE
SSPIP
BCLIF
BCLIE
BCLIP
TRISB3
-
Bit 2
TMR0IF
PD
CCP1IF
CCP1IE
CCP1IP
HLVDIF
HLVDIE
HLVDIP
TRISB2
TRISC2
O bit 1
INT0IF
POR
TMR2IF
TMR2IE
TMR2IP
TMR3IF
TMR3IE
TMR3IP
TRISB1
TRISC1
Bit 0
RBIF
BOR
TMR1IF
TMR1IE
TMR1IP
CCP2IF
CCP2IE
CCP2IP
TRISB0
TRISC0
Restabelecer
Valores
na pgina
53
54
56
56
56
56
56
56
56
56
54
54
TMR1CS TMR1ON 54
55
55
T3CCP1 T3SYNC TMR3CS TMR3ON 55
55
55
CCP1M3 CCP1M2 CCP1M1 CCP1M0 55
55
55
CCP2M3 CCP2M2 CCP2M1 CCP2M0 55
GIE / GIEH PEIE / giel
IPEN
SPPIF(2)
SPPIE(2)
SPPIP(2)
OSCFIF
OSCFIE
OSCFIP
TRISB7
TRISC7
SBOREN(1)
ADIF
ADIE
ADIP
CMIF
CMIE
CMIP
TRISB6
TRISC6
Timer1 Registrar Low Byte
Timer1 Register alta Byte
RD16 T1RUN T1CKPS1 T1CKPS0 T1OSCEN T1SYNC
Timer3 Register alta Byte
Timer3 Registrar Low Byte
RD16 T3CCP2 T3CKPS1 T3CKPS0
Capture / Compare / PWM Register 1 Low Byte
Capture / Compare / PWM Register 1 High Byte
P1M1(2) P1M0(2)
DC1B1 DC1B0
Capture / Compare / PWM Register 2 Low Byte
Capture / Compare / PWM Register 2 High Byte
- - DC2B1 DC2B0
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pela Capture / Compare, Timer1 ou Timer3.
Nota 1: O bit SBOREN s est disponvel quando Boren <1:00> = 01; Caso contrrio, o bit l como '0 '.
2: Estes bits so no implementado em dispositivos de 28 pinos; sempre manter esses bits claras.
v 2009 Microchip Technology Inc. DS39632E pgina 147
PIC18F2455/2550/4455/4550
15,4 Modo PWM
15.4.1 PWM PERODO
No modo Pulse-Width Modulation (PWM), o pino CCPx
produz at uma sada PWM resoluo de 10-bit. Desde
o pino CCP2 multiplexado com a PORTB ou PORTC
trava de dados, o bit TRIS apropriado deve ser liberado para
fazer o pino CCP2 uma sada.
Nota: Limpando o registro CCP2CON forar
o fecho da sada RB3 ou RC1 (dependendo
da configurao do dispositivo) para o padro baixo
nvel. Este no o PORTB ou PORTC
I / O engate de dados.
O perodo de PWM especificado por escrito para o PR2
registrar. O perodo de PWM pode ser calculada utilizando a
a seguinte frmula:
EQUAO 15-1:
PWM Perodo = [(PR2) + 1] 4 tosc
(TMR2 Prescale Valor)
Frequncia de PWM definida como 1 / [perodo PWM].
Quando TMR2 igual a PR2, os seguintes eventos
ocorrer no prximo ciclo de incremento:
TMR2 eliminado
O pino CCPx est definido (exceo: se PWM duty
ciclo = 0%, o pino CCPx no ser definido)
O ciclo de trabalho PWM est fechada desde CCPRxL em
CCPRxH
Nota: Os Timer2 postscalers (ver Seo 13.0
"Timer2 Module") No so utilizados na
determinao da frequncia PWM. O
postscaler poderia ser utilizado para um servo
atualizar taxa em uma freqncia diferente
a sada de PWM.
A Figura 15-3 mostra um diagrama de blocos simplificado do
Mdulo CCP no modo PWM.
Para um procedimento passo-a-passo de como configurar o PCC
mdulo para operao PWM, consulte Seo 15.4.4
"Setup para PWM Operao".
FIGURA 15-3:
Ciclo de Registros
CCPRxL
SIMPLIFICADO PWM BLOCK
ESQUEMA
CCPxCON <5:04>
CCPRxH (Slave)
R Q
CCPx
Sada
S
Correspondente
TRIS bit
15.4.2 PWM CICLO
Comparador
(Nota 1) TMR2
Comparador
O ciclo de trabalho PWM especificado por escrito ao
CCPRxL registo e os CCPxCON <05:04> bits. Para cima
resoluo de 10 bits est disponvel. O CCPRxL contm
os oito e os MPEs CCPxCON <5:04> pedaos contm
os dois bits menos significativos. Este valor de 10 bits
representado pela
CCPRxL: CCPxCON <5:04>. A seguinte equao
utilizado para calcular o ciclo PWM no tempo:
PR2
Limpar Timer,
CCPx pino e
trava DC
EQUAO 15-2:
PWM Ciclo = (CCPRXL: CCPXCON <05:04>)
Tosc (TMR2 Prescale Valor)
CCPRxL e CCPxCON <05:04> pode ser escrito em qualquer
tempo, mas o valor do duty cycle no est fechada em
CCPRxH at depois de um jogo entre o PR2 e TMR2
ocorre (isto , o perodo completa). No modo de PWM
CCPRxH um registro de somente leitura.
Nota 1: O valor TMR2 8 bits est concatenado com a 2 bits
Q relgio interno, ou dois pedaos do prescaler, para criar a
Base de tempo de 10 bits.
A sada PWM (Figura 15-4) tem uma base de tempo (perodo)
e uma vez que a sada permanece elevada (duty cycle). O
frequncia do PWM o inverso do perodo
(1/period).
FIGURA 15-4:
Perodo
PWM SADA
Ciclo
TMR2 = PR2
TMR2 = Ciclo
TMR2 = PR2
DS39632E pgina 148 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
O registo CCPRxH e um 2-bit trava interna so
usado para dobrar-tamponar o ciclo PWM. Este
double-buffering essencial para glitchless PWM
operao.
Quando o CCPRxH e 2 bits trinco partida TMR2,
concatenado com um relgio Q 2-bit interno ou dois pedaos de
o TMR2 prescaler, o pino CCPx est desmarcada.
A resoluo mxima de PWM (bits) para um determinado PWM
frequncia dada pela equao:
EQUAO 15-3:
F OSClog ---------------
F PWM
Resoluo PWM (max) = ----------------------------- pedaos
log ( 2)
Nota: Se o valor do ciclo de PWM mais longo do que
o perodo de PWM, o pino CCPx no ser
apagadas.
TABELA 15-4: EXEMPLO PWM freqncias e resolues em 40 MHz
2,44 kHz
16
FFh
10
9,77 kHz
4
FFh
10
39.06 kHz
1
FFh
10
156,25 kHz
1
3Fh
8
312,50 kHz
1
1Fh
7
416,67 kHz
1
17h
6.58
PWM Frequency
Temporizador prescaler (1, 4, 16)
PR2 Valor
Resoluo Mxima (bits)
15.4.3 PWM de desligamento automtico
(CCP1 ONLY)
15.4.4 CONFIGURAO DE OPERAO PWM
Os PWM caractersticas auto-desligamento do avanado CCP
mdulo tambm esto disponveis para os dispositivos CCP1 28
pinos. O
funcionamento desse recurso discutido em detalhes no
Seo 16.4.7 "Enhanced PWM Auto-Shutdown".
Recursos de auto-desligamento no esto disponveis para
CCP2.
Os seguintes passos devem ser tomados na hora de configurar
o mdulo de operao CCPx PWM:
1.
2.
3.
4.
5.
Defina o perodo de PWM por escrito para o PR2
registrar.
Definir o ciclo PWM por escrito para o
CCPRxL registrar e CCPxCON <05:04> bits.
Fazer o pino CCPx uma sada limpando o
bit TRIS apropriado.
Defina o valor de pr-escala TMR2, ative
Timer2 escrevendo para T2CON.
Configure o mdulo CCPx para operao PWM.
v 2009 Microchip Technology Inc. DS39632E pgina 149
PIC18F2455/2550/4455/4550
TABELA 15-5:
Nome
INTCON
RCON
PIR1
PIE1
IPR1
TRISB
TRISC
TMR2
PR2
T2CON
CCPR1L
CCPR1H
CCP1CON
CCPR2L
CCPR2H
CCP2CON
ECCP1AS
ECCP1DEL
REGISTOS ASSOCIADOS PWM E TEMP2
Bit 7 Bit 6 Bit 5
TMR0IE
-
RCIF
RCIE
RCIP
TRISB5
-
Bit 4
INT0IE
RI
TXIF
TXIE
TXIP
TRISB4
-
Bit 3
RBIE
TO
SSPIF
SSPIE
SSPIP
TRISB3
-
Bit 2
TMR0IF
PD
CCP1IF
CCP1IE
CCP1IP
TRISB2
TRISC2
O bit 1
INT0IF
POR
TMR2IF
TMR2IE
TMR2IP
TRISB1
TRISC1
Bit 0
RBIF
BOR
TMR1IF
TMR1IE
TMR1IP
TRISB0
TRISC0
Restabelecer
Valores
na pgina
53
54
56
56
56
56
56
54
54
T2CKPS1 T2CKPS0 54
55
55
CCP1M3 CCP1M2 CCP1M1 CCP1M0 55
55
55
CCP2M3
PSSAC1
PDC3(2)
CCP2M2
PDC2(2)
CCP2M1
PDC1(2)
CCP2M0
PDC0(2)
55
55
55
PSSAC0 PSSBD1(2) PSSBD0(2)
GIE / GIEH PEIE / giel
IPEN
SPPIF(2)
SPPIE(2)
SPPIP(2)
TRISB7
TRISC7
SBOREN(1)
ADIF
ADIE
ADIP
TRISB6
TRISC6
Timer2 Registrar
Timer2 Perodo Registrar
- T2OUTPS3 T2OUTPS2 T2OUTPS1 T2OUTPS0 TMR2ON
Capture / Compare / PWM Register 1 Low Byte
Capture / Compare / PWM Register 1 High Byte
P1M1(2) P1M0(2)
DC1B1 DC1B0
Capture / Compare / PWM Register 2 Low Byte
Capture / Compare / PWM Register 2 High Byte
-
PRSEN
-
PDC6(2)
DC2B1
PDC5(2)
DC2B0
PDC4(2)
ECCPASE ECCPAS2 ECCPAS1 ECCPAS0
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados por PWM ou Timer2.
Nota 1: O bit SBOREN s est disponvel quando Boren <1:00> = 01; Caso contrrio, o bit l como '0 '.
2: Estes bits so no implementado em dispositivos de 28 pinos; sempre manter esses bits claras.
DS39632E pgina 150 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
16,0 REFORADA
Capture / COMPARE / PWM
(PEAC) MDULO
O mdulo de PEAC implementada apenas nas
Dispositivos 40/44-pin.
desligamento automtico e reinicie. O avanado
caractersticas so discutidos em detalhe na Seo 16.4
"Modo PWM avanado". Capturar, Compare e
nica sada PWM funes do mdulo PEAC so
o mesmo que o descrito para o mdulo CCP padro.
O registrador de controle para o mdulo CCP avanado
mostrado na Register 16-1. Difere do CCPxCON
registros em dispositivos de 28 pinos em que os dois mais signifi-
pedaos significativas so implementadas para controlar a
funcionalidade PWM.
Nota:
Nos dispositivos de 28 pinos, CCP1 implementado como um
padro
Mdulo CCP com recursos avanados PWM. Estes
incluem o fornecimento para 2 ou 4 canais de sada,
polaridade selecionvel pelo usurio, controle de banda morta e
CADASTRE-SE 16-1:
R/W-0
P1M1
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7-6
CCP1CON: PEAC registrador de controle (dispositivos 40/44-PIN)
R/W-0
P1M0
R/W-0
DC1B1
R/W-0
DC1B0
R/W-0
CCP1M3
R/W-0
CCP1M2
R/W-0
CCP1M1
R/W-0
CCP1M0
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
P1M1: P1M0: Aprimorados PWM bits de configurao de sada
Se CCP1M3: CCP1M2 = 00, 01, 10:
xx = P1A atribudo como Capture / Compare entrada / sada; P1B, P1C, P1d atribudo como pinos da porta
Se CCP1M3: CCP1M2 = 11:
00 = nica sada: P1A modulada; P1B, P1C, P1d atribudo como pinos da porta
01 = Sada Full-ponte para a frente: P1D modulada; P1A ativa; P1B, P1C inativo
10 = Sada Half-ponte: P1A, P1B modulada com controle de mortos-band; P1C, P1d atribudo como pinos da porta
11 = Reverse Full-ponte de sada: P1B modulada; P1C ativa; P1A, P1d inativo
DC1B1: DC1B0: PWM Dever Bit Ciclo 1 e Bit 0
Modo de captura:
No utilizado.
Modo de comparao:
No utilizado.
Modo PWM:
Estes bits so os dois bits menos significativos do ciclo PWM de 10 bits. Os oito MSBs do ciclo so encontrados
em CCPR1L.
CCP1M3: CCP1M0: Aprimorados CCP modo de seleo pedaos
0000 = Capture / Compare / PWM off (redefine PEAC mdulo)
0001 = Reservado
0010 = Comparar modo, a sada de alternncia na partida
0011 = Modo de captura
0100 = Modo de captura, cada borda de descida
0101 = Modo de captura, cada borda de subida
0110 = Modo de captura, cada quarto borda de subida
0111 = Modo de captura, cada borda de subida 16
1000 = Modo de comparao, inicializar CCP1 pin baixo, definir a sada de comparar jogo (conjunto CCP1IF)
1001 = Modo de comparao, inicializar CCP1 pin alta, a sada clara comparar jogo (conjunto CCP1IF)
1010 = Modo de comparao, geram apenas interrupo de software, pin CCP1 reverte para I / O Estado
1011 = Modo de comparao, gatilho evento especial (CCP1 redefine TMR1 ou TMR3, define CCP1IF bit)
1100 = Modo PWM: P1A, P1C ativo-alta; P1B, P1D ativa alta
1101 = Modo PWM: P1A, P1C ativo-alta; P1B, P1D baixo ativo
1110 = Modo PWM: P1A, P1C baixo ativo; P1B, P1D ativa alta
1111 = Modo PWM: P1A, P1C baixo ativo; P1B, P1D baixo ativo
bit 5-4
bit 3-0
v 2009 Microchip Technology Inc. DS39632E pgina 151
PIC18F2455/2550/4455/4550
Em adio ampla gama de modos disponveis
atravs do registo CCP1CON, o mdulo PEAC tem
dois registros adicionais associados com Enhanced
Operao PWM e recursos de auto-desligamento. Eles so:
ECCP1DEL (PWM Dead-Banda Delay)
ECCP1AS (PEAC Auto-Shutdown Control)
16,2 Capture e Compare Modos
16.1 Sadas do PEAC e Configurao
Exceto para o funcionamento do gatilho Evento Especial
discutido abaixo, a captura e comparar os modos de
o mdulo de PEAC so idnticos em funcionamento ao da
CCP. Estes so discutidos em detalhe na Seo 15.2
"Capture Mode" e Seo 15.3 "Comparar
Mode ".
O mdulo de PCC reforada pode ter at quatro PWM
sadas, dependendo do modo de operao seleccionado.
Estas sadas, designados P1A atravs P1D, so
multiplexadas com pinos de I / O em PORTC e PORTD. O
sadas que esto ativos dependem do funcionamento CCP
modo seleccionado. As atribuies de pinos so resumidos
na Tabela 16-1.
Para configurar os pinos de I / O como sadas PWM, o bom
Modo PWM deve ser selecionado, definindo o
P1M1: P1M0 e CCP1M3: CCP1M0 bits. O
pedaos de direo TRISC e TRISD apropriadas para a porta
pins tambm deve ser definido como sadas.
16.2.1 TRIGGER EVENTO ESPECIAL
A sada de disparo Evento Especial de PEAC redefine o
TMR1 ou TMR3 par de registradores, dependendo do temporizador
recurso est atualmente selecionado. Isto permite que o
CCPR1H: CCPR1L registra a ser efetivamente um 16-bit
perodo programvel se inscrever para Timer1 ou Timer3.
16,3 PWM Modo padro
16.1.1 MDULOS PEAC e Timer
RECURSOS
Quando configurado no modo Single Output, o PEAC
funes do mdulo de forma idntica ao CCP padro
mdulo no modo de PWM, conforme descrito em Seo 15.4
"Modo PWM". Isto tambm por vezes referido como
Modo "Compatvel CCP", como na Tabela 16-1.
Nota: Ao configurar nica sada PWM
operaes, os usurios so livres para usar qualquer
um dos
os processos descritos em Seo 15.4.4
"Setup para PWM Operao" ou
Seo 16.4.9 "Configurao para PWM Opera-
o ". Este ltimo mais genrico, mas vai
trabalhar ou PWM simples ou multi-sada.
Como os mdulos de CCP padro, o mdulo pode PEAC
utilizar temporizadores 1, 2 ou 3, dependendo do modo
seleccionada. Timer1 Timer3 e esto disponveis para os mdulos
em Capturar ou comparar modos, enquanto Timer2
disponvel para os mdulos no modo de PWM. Interaes
entre os mdulos CCP padro e avanada so
idnticos aos descritos para os mdulos CCP padro.
Detalhes adicionais sobre os recursos do timer so fornecidos em
Seo 15.1.1 "CCPModulesandTimer
Recursos ".
TABELA 16-1:
PEAC Modo
Atribuies de pinos para diversas ECCP1 MODOS
CCP1CON
Configurao
00xx 11xx
10xx 11xx
x1xx 11xx
RC2 RD5 RD6 RD7
Todos os PIC18F4455/4550 dispositivos:
Compatvel CCP
Duplo PWM
Quad PWM
CCP1
P1A
P1A
RD5/SPP5
P1B
P1B
RD6/SPP6
RD6/SPP6
P1C
RD7/SPP7
RD7/SPP7
P1D
Legenda: x= No me importo. As clulas sombreadas indicam as atribuies de pinos no utilizados pelo PEAC em um
determinado modo.
DS39632E pgina 152 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
16,4 Avanado Modo PWM
16.4.1 PWM PERODO
O modo PWM Avanado fornece PWM adicional
opes de sada para uma ampla gama de controle apli-
es. O mdulo uma verso compatvel do
o mdulo CCP padro e oferece at quatro sadas,
designado P1A atravs P1D. Os usurios tambm so capazes de
seleccionar a polaridade do sinal (ou activa ou maior
ativo baixo). Modo de sada do mdulo e polaridade so
configurado, definindo o P1M1: P1M0 e
CCP1M3: CCP1M0 bits do registo CCP1CON.
A Figura 16-1 mostra um diagrama de blocos simplificado de PWM
operao. Todos os registros de controle so double-buffer e
so carregados no incio de um novo ciclo de PWM (o
limite perodo Timer2 repe), a fim de
evitar falhas em qualquer uma das sadas. A exceo
o PWM Morto-Band registo Delay, ECCP1DEL,
que carregado em cada ciclo de trabalho a fronteira ou a
perodo limite (o que vier primeiro). Por causa de
o tampo, o mdulo de espera at que o temporizador atribudo
repe em vez de comear imediatamente. Isto significa que
Maior onda PWM no corresponder exatamente ao
padro PWM de onda, mas so compensados por
um ciclo de instruo completa (4 tosc).
Como antes, o usurio deve configurar manualmente o
bits de TRIS adequadas para sada.
O perodo de PWM especificado por escrito para o PR2
registrar. O perodo de PWM pode ser calculada utilizando a
seguinte equao:
EQUAO 16-1:
PWM Perodo = [(PR2) + 1] 4 tosc
(TMR2 Prescale Valor)
Frequncia de PWM definida como 1 / [perodo PWM]. Quando
TMR2 igual a PR2, os seguintes trs casos ocorrem
no prximo ciclo de incremento:
TMR2 eliminado
O pino CCP1 est definido (se PWM duty cycle = 0%, o
CCP1 pin no ser definido)
O ciclo de trabalho PWM copiado CCPR1L em
CCPR1H
Nota: O Timer2 postscaler (ver Seo 13.0
"Timer2 Module") no utilizado na
determinao da frequncia PWM. O
postscaler poderia ser utilizado para um servo
atualizar taxa em uma freqncia diferente
a sada de PWM.
FIGURA 16-1: SIMPLIFICADO diagrama de blocos do REFORADA MDULO PWM
CCP1CON <5:04>
P1M1: P1M0
2 4
CCP1/P1A
TRISD <4>
CCP1M3: CCP1M0
Ciclo de Registros
CCPR1L
CCP1/P1A
CCPR1H (Slave)
Comparador R Q
P1B
Sada
Controlador
P1C
TRISD <5>
P1B
TMR2 (Nota 1)
P1C
TRISD <6>
S
P1D
Comparador
P1D
TRISD <7>
PR2
Limpar Timer,
definir CCP1 pino e
trava DC
ECCP1DEL
Nota: O registo TMR2 8 bits est concatenado com a 2 bits Q relgio interno, ou dois bits do divisor, para criar o tempo de 10 bits
base.
v 2009 Microchip Technology Inc. DS39632E pgina 153
PIC18F2455/2550/4455/4550
16.4.2 PWM CICLO EQUAO 16-3:
log FOSC
EfPWM
Resoluo de PWM (max) =
log (2)
O ciclo de trabalho PWM especificado por escrito ao
CCPR1L registo e os CCP1CON <05:04> bits. Para cima
resoluo de 10 bits est disponvel. O CCPR1L contm
os oito MPEs ea CCP1CON <5:04> contm o
dois LSBs. Este valor de 10 bits representado pela
CCPR1L: CCP1CON <5:04>. O ciclo de PWM est
calculada pela seguinte equao.
( )pedaos
Nota:
EQUAO 16-2:
PWM Ciclo = (CCPR1L: CCP1CON <05:04>
Tosc (TMR2 Prescale Valor)
CCPR1L e CCP1CON <05:04> pode ser escrito em qualquer
o tempo, mas o valor do ciclo de trabalho no copiado
CCPR1H at que uma correspondncia entre PR2 e TMR2 ocorre
(Isto , o perodo completa). No modo de PWM, CCPR1H
um registro de somente leitura.
O registo CCPR1H e um 2-bit trava interna so
usado para dobrar-tamponar o ciclo PWM. Este
double-buffering essencial para glitchless PWM opera-
o. Quando o CCPR1H e 2 bits trinco partida TMR2,
concatenado com um relgio Q 2 bits internos ou dois bits
do TMR2 prescaler, o pino CCP1 est desmarcada. O
resoluo mxima de PWM (bits) para um determinado PWM
frequncia dada pela seguinte equao.
Se o valor do ciclo de PWM mais longo do que
o perodo de PWM, o pino CCP1 no ser
apagadas.
16.4.3 Configuraes de sada PWM
A P1M1: P1M0 bits no registrador CCP1CON permitir
uma das quatro configuraes:




Single Output
Sada de Meia Ponte
Output Full-Bridge, modo de avano
Output Full-Bridge, o modo reverso
O nico modo de sada o modo PWM padro
discutido Seo 16.4 "Modo PWM avanado".
Os modos de sada de meia-ponte e Full-Bridge so
coberto em detalhes nas sees que se seguem.
A relao geral das sadas em todos
configuraes so resumidos na Figura 16-2 e
Figura 16-3.
TABELA 16-2: EXEMPLO PWM freqncias e resolues em 40 MHz
2,44 kHz
16
FFh
10
9,77 kHz
4
FFh
10
39.06 kHz
1
FFh
10
156,25 kHz
1
3Fh
8
312,50 kHz
1
1Fh
7
416,67 kHz
1
17h
6.58
PWM Frequency
Temporizador prescaler (1, 4, 16)
PR2 Valor
Resoluo Mxima (bits)
DS39632E pgina 154 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 16-2: RELACIONAMENTOS sada PWM (ACTIVE-ALTO DO ESTADO)
SINAL
0
Dever
Ciclo
Perodo
P1A Modulada
P1A Modulada
10 (Half-Bridge)
P1B Modulada
P1A atividade
(Full-Bridge,
Forward)
P1B Inativo
P1C Inativo
P1D Modulada
P1A Inativo
11
(Full-Bridge,
Reversa)
P1B Modulada
P1C atividade
P1D Inativo
PR2 + 1
CCP1CON
<7:06>
00 (Single Output)
Atrasar(1) Atrasar(1)
01
FIGURA 16-3: RELACIONAMENTOS sada PWM (estado ativo baixo)
SINAL
0
Dever
Ciclo
Perodo
P1A Modulada
P1A Modulada
PR2 + 1
CCP1CON
<7:06>
00 (Single Output)
10 (Half-Bridge)
Atrasar(1)
P1B Modulada
P1A atividade
Atrasar(1)
01
(Full-Bridge,
Forward)
P1B Inativo
P1C Inativo
P1D Modulada
P1A Inativo
11
(Full-Bridge,
Reversa)
P1B Modulada
P1C atividade
P1D Inativo
Relacionamentos:
Perodo = 4 * tosc * (PR2 + 1) * (TMR2 Prescale Valor)
Ciclo de trabalho = tosc * (CCPR1L <07:00>: CCP1CON <05:04>) * (TMR2 Prescale Valor)
Atraso = 4 * tosc * (ECCP1DEL <06:00>)
Nota 1: Atraso Dead-band programado usando o registro ECCP1DEL (Seo 16.4.6 "Programmable Delay Dead-Band").
v 2009 Microchip Technology Inc. DS39632E pgina 155
PIC18F2455/2550/4455/4550
16.4.4 HALF-BRIDGE MODO FIGURA 16-4:
Perodo
Ciclo
P1A(2)
td
P1B(2)
(1)
No modo de sada de Half-Bridge, dois pinos so usados como
sadas para conduzir cargas push-pull. A sada PWM sig-
nal sada no pino P1A, enquanto o complementar
Sinal de sada de PWM sada no pino P1B
(Figura 16-4). Este modo pode ser utilizado para a meia-ponte
aplicaes, como mostrado na Figura 16-5, ou em ponte completa
aplicaes onde quatro interruptores de alimentao esto sendo
com dois sinais modulados PWM.
No modo de sada de Half-Bridge, o programvel
atraso da banda morta pode ser utilizado para prevenir decididos
atravs
corrente em dispositivos de energia semi-ponte. O valor de bits
PDC6: PDC0 define o nmero de ciclos de instruo
antes da sada levada ativo. Se o valor for maior
do que o ciclo de trabalho, a correspondente sada permanece
inactivo durante todo o ciclo. Ver Seo 16.4.6
"Programmable Delay Dead-Band" para mais detalhes
das operaes de atraso morto da banda.
Desde as sadas P1A e P1B so multiplexados com
os PORTC <2> e PORTD <5> Dados travas, o
TRISC <2> e TRISD <5> bits devem ser apuradas para
configurar P1A e P1B como sadas.
HALF-BRIDGE PWM
SADA
Perodo
td
(1) (1)
td = Atraso Morto-Band
Nota 1: Neste momento, o registo TMR2 igual ao
PR2 registar.
2: Os sinais de sada so mostrados como ativo-alta.
FIGURA 16-5: EXEMPLOS DE meia-ponte SADA aplicaes de modo
V +
Padro Meia Ponte Circuit ("Push-Pull")
PIC18FX455/X550
P1A
FET
Motorista
+
V
-
Carregar
+
V
-
FET
Motorista
P1B
Sada Meia Ponte Dirigir um circuito Full-Ponte
V +
PIC18FX455/X550
P1A
V-
FET
Motorista
FET
Motorista
FET
Motorista
P1B
Carregar
FET
Motorista
V-
DS39632E pgina 156 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
16.4.5 MODO FULL-BRIDGE
No modo de sada Full-Bridge, quatro pinos so utilizados como
sadas, no entanto, apenas duas sadas esto ativas ao mesmo
tempo.
No modo de avano, o pino P1A continuamente ativo
e pin P1D modulada. No modo reverso, o pino
P1C continuamente ativa e pin P1B modulada.
Estes esto ilustrados na Figura 16-6.
P1A, P1B, P1C e sadas so multiplexados com P1d
o PORTC <2>, PORTD <5>, PORTD <6> e
PORTD <7> dados travas. O TRISC <2>, TRISD <5>,
TRISD <6> e TRISD <7> bits devem ser apuradas para
fazer a P1A, P1B, P1C e sadas pinos P1d.
FIGURA 16-6:
Modo de frente
FULL-BRIDGE sada PWM
Perodo
P1A(2)
Ciclo
P1B(2)
P1C(2)
P1D(2)
(1)
Modo de reverter
Perodo
Ciclo
P1A
(2)
(1)
P1B(2)
P1C(2)
P1D(2)
(1)
Nota 1: Neste momento, o registo TMR2 igual ao registo PR2.
Nota 2: O sinal de sada mostrada como ativa-alta.
(1)
v 2009 Microchip Technology Inc. DS39632E pgina 157
PIC18F2455/2550/4455/4550
FIGURA 16-7: EXEMPLO DE APLICAO FULL-BRIDGE
V +
PIC18FX455/X550
P1A
FET
Motorista
QA
QC
FET
Motorista
P1B
FET
Motorista
Carregar
FET
Motorista
P1C
QB
QD
V-
P1D
16.4.5.1 Mudana de direo em modo Full-Bridge
No modo de sada Full-Bridge, o bit P1M1 no
CCP1CON registo permite que o usurio controle o
frente / verso direo. Quando o aplicativo firma-
utenslios de muda este bit de controle de direo, o mdulo
assumir a nova direo no prximo ciclo de PWM.
Pouco antes do final do perodo de PWM actual, o
sadas modulada (P1B e P1D) so colocados na sua
estado inativo, enquanto que as sadas no modulados (P1A e
P1C) esto ligados a dirigir na direo oposta.
Isto ocorre num intervalo de tempo de (4 tosc * (Timer2
Prescale Value) antes do prximo perodo de PWM comea.
O divisor Timer2 vai ser 1, 4 ou 16,
dependendo do valor do T2CKPS1: T2CKPS0 bocados
(T2CON <1:00>). Durante o intervalo entre o comutador de
as sadas no modulada para o incio da prxima
perodo, as sadas de modulao (P1B e P1D) permanecem
inativa. Esta relao est representada na figura 16-8.
Note-se que no modo de sada Full-Bridge, o PEAC
mdulo no fornece qualquer atraso mortos-band. Em gen-
ral, uma vez que apenas uma sada modulada em todos os
momentos,
atraso da banda morta no necessria. No entanto, existe uma
situao em que um atraso de banda morta, pode ser necessria.
Essa situao ocorre quando ambas as seguintes
condies forem verdadeiras:
1.
2.
A direco da sada PWM muda quando
o ciclo de funcionamento da sada igual ou prximo de
100%.
O tempo de desligamento do interruptor de alimentao,
incluindo
o dispositivo de alimentao e circuito de conduo, maior
que a virada no tempo.
Figura 16-9 mostra um exemplo onde o PWM direc-
mudanas o de frente para reverter a uma quase 100%
ciclo de trabalho. No tempo t1, as sadas, P1A e P1D,
tornar-se inativo, enquanto P1C sada torna-se ativa. Em
Neste exemplo, uma vez que o tempo de desligamento do poder
dispositivos maior do que a virada no tempo, um shoot-through
corrente pode fluir atravs de dispositivos de energia, QC e QD,
(Ver Figura 16-7) para a durao do "t". A mesma coisa
fenmeno ir ocorrer para dispositivos de energia, QA e QB,
PWM para mudana de direo de sentido inverso de transmitir.
Se mudar de direco PWM no ciclo de alta necessria
para uma aplicao, um dos seguintes requisitos
devem ser atendidos:
1.
2.
Reduzir PWM por um perodo PWM antes
mudar de direco.
Utilize drivers interruptor que pode conduzir o desliga
mais rpido do que eles podem lev-los por diante.
Outras opes para evitar shoot-through atual pode
existir.
DS39632E pgina 158 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 16-8:
SINAL
P1A (Active-High)
P1B (Active-High)
DC
P1C (Active-High)
P1D (Active-High)
DC
Nota 1: O bit de direo no CCP1 Controle registo (CCP1CON <7>) escrito em qualquer altura durante o ciclo de PWM.
2: Quando mudar de direo, os sinais P1A e P1C mudar antes do fim do atual ciclo de PWM em intervalos
tosc de 4, 16 ou 64 tosc tosc, dependendo do valor divisor Timer2. O P1B sinais modul ados e P1D
so inactivos no momento.
(Nota 2)
PWM mudana de direo
Perodo(1)
Perodo
FIGURA 16-9: PWM mudana de direo para perto de 100% CICLO
Perodo para a frente
t1
Perodo de reverter
P1A(1)
P1B(1)
P1C(1)
P1D(1)
External Mudar C(1)
DC
DC
tON(2)
tOFF(3)
Chave D externo(1)
t = tOFF - tON(2, 3)
Potencial
Atire-Through Current(1)
Nota 1: Todos os sinais so apresentados como ativo-alta.
2: tON o turn-on delay do interruptor QC poder e seu motorista.
3: tOFF o atraso turn-off do interruptor QD e seu motorista.
v 2009 Microchip Technology Inc. DS39632E pgina 159
PIC18F2455/2550/4455/4550
16.4.6
Nota:
PROGRAMVEL DEAD-BAND
ATRASO
Atraso mortos-band programvel no
implementada em dispositivos de 28 pinos com
mdulos CCP padro.
Em aplicaes de meia-ponte, onde todos os interruptores esto
modulado na frequncia PWM em todas as vezes, o poder
chaves normalmente necessitam de mais tempo para desligar do
que
ligar. Se ambos os interruptores superiores e inferiores so
ligado ao mesmo tempo (um ligado e a outra
desligado), ambos os comutadores pode ser por um perodo curto
de
tempo at um interruptor fica completamente desligado. Durante
esta
intervalo breve, uma corrente muito alta (shoot-through actual)
pode fluir atravs de dois interruptores, o curto-circuito
fornecimento ponte. Para evitar isso, potencialmente destrutivo
atirar-through fluxo de corrente durante a comutao,
transformando em um dos interruptores normalmente
adiada para permitir que o outro interruptor para desligar
completamente.
No modo de sada de Half-Bridge, um digitalmente programa
atraso mortos-band programvel est disponvel para evitar
atirar-through actual de destruir a ponte
interruptores. O atraso ocorre no sinal de tran-
o do estado no ativo para o estado ativo. Ver
Figura 16-4 para ilustrao. Bits PDC6: PDC0 do
ECCP1DEL registro (Register 16-2) definir o atraso
em termos de perodo de ciclos de instruo do microcontrolador
(TCY ou 4 tosc). Estes bits no esto disponveis em 28-pin
dispositivos, como o mdulo CCP padro no suporta
operao half-bridge.
Um evento de desligamento pode ser causado por qualquer um dos
mdulos de comparao, um nvel baixo no
RB0/AN12/INT0/FLT0/SDI/SDA pin, ou qualquer combinao
destes trs fontes. Os comparadores podem ser usadas para
monitorizar uma entrada de tenso proporcional corrente de um
ser
monitorizados no circuito da ponte. Se a tenso for superior a um
limite, o comparador muda de estado e dispara um
desligamento. Alternativamente, um sinal digital no pino INT0
tambm pode desencadear uma paralisao. O recurso de auto-
desligamento
pode ser desativado por no escolher qualquer auto-desligamento
fontes. As fontes de auto-desligamento a serem utilizados so
selecionadas utilizando ECCPAS2: ECCPAS0 pedaos (bits <6:04>
do registo ECCP1AS).
Quando ocorre uma interrupo, os pinos de sada so
assncrona colocados em seus estados de desligamento,
specifiedbythePSSAC1: PSSAC0and
PSSBD1: PSSBD0 bits (ECCP1AS3: ECCP1AS0). Cada
par de pinos (P1A/P1C e P1B/P1D) pode ser definida para a
unidade
alta, a unidade baixa ou ser tri-indicado (no dirigir). O
ECCPASE bit (ECCP1AS <7>) tambm est definido para manter o
Sadas PWM melhoradas em seus estados de desligamento.
O bit ECCPASE definido pelo hardware quando um desligamento
evento ocorre. Se reinicializaes automticas no esto habilitados,
o
ECCPASE bit desmarcada por firmware quando a causa da
a parada limpa. Se reinicializaes automticas esto ativadas,
o bit ECCPASE apagado automaticamente quando o
causa da auto-desligamento foi eliminada.
Se o bit ECCPASE definido quando comea um perodo de PWM,
as sadas PWM permanecem em seu estado de desligamento para
que
todo o perodo PWM. Quando o bit ECCPASE estiver desmarcada,
as sadas PWM retornar ao funcionamento normal no
incio do prximo perodo de PWM.
Nota: Escrevendo para o bit ECCPASE est desativado
enquanto uma condio de desligamento est ativo.
16.4.7 REFORADA PWM de desligamento automtico
Quando PEAC est programado para qualquer um dos aprimorada
PWM modos, os pinos de sada activos podem ser configurados
para auto-desligamento. Auto-desligamento coloca imediatamente
os avanados sada PWM pinos para um desligamento definido
afirmar quando ocorre um evento de encerramento.
CADASTRE-SE 16-2:
R/W-0
PRSEN
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
ECCP1DEL: PWM DEAD-BAND REGISTRAR ATRASO
R/W-0 R/W-0
PDC5(1)
R/W-0
PDC4(1)
R/W-0
PDC3(1)
R/W-0
PDC2(1)
R/W-0
PDC1(1)
R/W-0
PDC0(1)
bit 0
PDC6(1)
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
PRSEN: PWM Restart Habilitar bit
1= Aps a auto-desligamento, o bit ECCPASE apaga automaticamente uma vez que o evento de encerramento vai
embora;
o PWM ser reiniciado automaticamente
0= Aps a auto-desligamento, ECCPASE devem ser apuradas em software para reiniciar o PWM
PDC6: PDC0: PWM Atraso pedaos Contagem(1)
Tempo de atraso, em nmero de FOSC / 4 (4 *) tosc ciclos, entre o tempo programado e real de um PWM
sinalizar a transio para o ativo.
Reservados em dispositivos de 28 pinos; manter esses bits clara.
bit 6-0
Nota 1:
DS39632E pgina 160 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 16-3:
R/W-0
ECCPASE
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
ECCP1AS: Capture Enhanced / COMPARE / PWM de desligamento automtico
Registro de controle
R/W-0 R/W-0
ECCPAS1
R/W-0
ECCPAS0
R/W-0
PSSAC1
R/W-0
PSSAC0
R/W-0
PSSBD1(1)
R/W-0
PSSBD0(1)
bit 0
ECCPAS2
ECCPASE: PEAC Auto-Shutdown Evento bit Estado
1Ocorreu = Um evento de desligamento; sadas PEAC esto em estado de desligamento
0= Sadas PEAC esto operando
ECCPAS2: ECCPAS0: PEAC Auto-desligamento Source Select pedaos
111 = FLT0 ou Comparator 1 ou 2 Comparador
110 = FLT0 ou Comparator 2
101 = FLT0 ou Comparador 1
100 = FLT0
011 = Ou Comparador 1 ou 2
010 = Sada do comparador 2
001 = Comparador uma sada
000 = Auto-shutdown desativado
PSSAC1: PSSAC0: Pinos A e C Desligamento bits de controle do Estado
1x = Pinos A e (dispositivos 40/44-pin) C tri-state
01 = Unidade pinos A e C para '1 '
00 = Unidade pinos A e C para '0 '
PSSBD1: PSSBD0: Pinos B e D desligamento bits de controle do Estado(1)
1x = Pinos B e D tri-state
01 = Unidade pinos B e D para '1 '
00 = Unidade pinos B e D para '0 '
Reservados em dispositivos de 28 pinos; manter esses bits clara.
bit 6-4
bit 3-2
bit 1-0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E pgina 161
PIC18F2455/2550/4455/4550
16.4.7.1 Auto-Shutdown e Auto-Restart 16.4.8 Start-up CONSIDERAES
O recurso de auto-desligamento pode ser configurado para permitir
reinicializaes automticas do mdulo aps um desligamento
causado
evento. Isso ativado, definindo o bit PRSEN do
ECCP1DEL registo (ECCP1DEL <7>).
No modo de desligamento com PRSEN = 1(Figura 16-10), o
ECCPASE bit permanecer definir por quanto tempo a causa
da paralisao continua. Quando o desligamento condi-
o limpa, o bit ECCP1ASE est desmarcada. Se PRSEN = 0
(Figura 16-11), uma vez que ocorre uma condio de encerramento,
a
ECCPASE bit ficar definido at que sejam retirados por
firmware. Uma vez ECCPASE estiver desmarcada, o avanado
PWM ser retomada no incio da prxima PWM
perodo.
Nota: Escrevendo para o bit ECCPASE est desativado
enquanto uma condio de desligamento est ativo.
Quando o mdulo de PEAC utilizado no modo de PWM, o
hardware aplicativo deve usar o externo apropriado pull-up
e / ou resistncias de pull-down nos pinos de sada PWM. Quando
o microcontrolador libertado a partir de Reset, todas as I / O
dos pinos esto no estado de alta impedncia. Os circuitos externos
deve manter os dispositivos de comutao de energia no estado
OFF at
o microcontrolador aciona os pinos de I / O com o bom
nveis de sinal ou ativa a sada PWM (s).
O CCP1M1: CCP1M0 bits (CCP1CON <01:00>) permitem
ao usurio escolher se os sinais de sada PWM so
active-alto ou baixo ativo para cada par de sada PWM
pinos (P1A/P1C e P1B/P1D). A sada de PWM
polaridades devem ser selecionados antes de os pinos PWM so
configurado como sadas. Alterando a polaridade configurador
o, enquanto os pinos do PWM configurado como sadas
no recomendado, uma vez que pode resultar em danos ao
circuitos de aplicao.
A sada P1A, P1B, P1C e P1D trincos no pode ser
nos estados adequados, quando o mdulo de PWM inicializado.
Activar os pinos PWM para a sada, ao mesmo tempo que
o mdulo de PEAC pode causar danos apli-
circuito o. O mdulo PEAC deve estar habilitado no
modo de sada adequada e completar um ciclo completo PWM
antes de configurar os pinos PWM como sadas. O com-
pletion de um ciclo completo de PWM indicado pela TMR2IF
bit sendo definido como o segundo perodo de PWM comea.
Independente da configurao PRSEN bits, se o
fonte de desligamento automtico um dos comparadores, o
condio de desligamento um nvel. O bit ECCPASE
no pode ser apagado, enquanto a causa do desligamento
persiste.
O modo Auto-Desligar pode ser forado a escrever um '1 '
para o bit ECCPASE.
FIGURA 16-10: PWM de desligamento automtico (PRSEN = 1, Reinicializao automtica habilitada)
PWM Perodo PWM Perodo PWM Perodo
PWM Atividade
Dead Time
Ciclo
Dead Time
Ciclo
Dead Time
Ciclo
Shutdown evento
ECCPASE bit
FIGURA 16-11: PWM de desligamento automtico (PRSEN = 0, Reinicializao automtica DESATIVADO)
PWM Perodo PWM Perodo PWM Perodo
PWM Atividade
Dead Time
Ciclo
Dead Time
Ciclo
Dead Time
Ciclo
Shutdown evento
ECCPASE bit
ECCPASE
Apuradas por Firmware
DS39632E pgina 162 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
16.4.9 CONFIGURAO DE OPERAO PWM 16.4.10
Os seguintes passos devem ser tomados na hora de configurar
o mdulo de operao PEAC PWM:
Configurar os pinos PWM, P1A e P1B (e
P1C e P1D, se utilizado), como entradas, definindo a
correspondentes pedaos TRIS.
2. Defina o perodo de PWM, carregando o registo PR2.
3. Se auto-desligamento necessrio, faa o seguinte:
Desativar auto-shutdown (ECCPASE = 0)
Configurar fonte (FLT0, comparador 1 ou
Comparador 2)
Aguarde condio de no-shutdown
4. Configure o mdulo PEAC para o desejado
Modo de PWM e configurao carregando o
CCP1CON registrar com os valores apropriados:
Selecione uma das sada disponvel
configuraes e direo com a
P1M1: P1M0 bits.
Selecione as polaridades da sada PWM
sinais com a CCP1M3: CCP1M0 bits.
5. Definir o ciclo PWM, carregando o CCPR1L
Registre-se e CCP1CON <05:04> bits.
6. Para o modo de sada de Half-Bridge, definir o
atraso da banda morta por carregar ECCP1DEL <6:00>
com o valor apropriado.
7. Se a operao de auto-desligamento necessrio, carregue o
ECCP1AS registo:
Selecione as fontes de auto-desligamento, usando o
ECCPAS2: ECCPAS0 bits.
Selecione os estados de desligamento do PWM
pinos de sada usando o PSSAC1: PSSAC0 e
PSSBD1: PSSBD0 bits.
Definir o bit ECCPASE (ECCP1AS <7>).
Configurar os comparadores usando o CMCON
registrar.
Configurar as entradas do comparador analgico como
insumos.
8. Se a operao de reinicializao automtica necessria,
definir o
PRSEN bits (ECCP1DEL <7>).
9. Configurar e iniciar TMR2:
Limpar o TMR2 interrupo bit flag limpando
o bit TMR2IF (PIR1 <1>).
Defina o valor de pr-escala TMR2 carregando o
T2CKPS pedaos (T2CON <01:00>).
Habilitar Timer2 definindo o bit TMR2ON
(T2CON <2>).
10. Ativar sadas PWM aps um novo ciclo de PWM
comeou:
Espere at que TMRx overflows (TMRxIF bit definido).
Habilitar o CCP1/P1A, P1B, P1C e / ou P1D
pin sadas limpando a respectiva TRIS
bits.
Limpar o bit ECCPASE (ECCP1AS <7>).
1.
OPERAO NO PODER de gesto
MODOS
No modo de suspenso, todas as fontes de clock esto desativados.
Timer2
no iro incrementar e o estado do mdulo no ser
mudar. Se o pino PEAC est dirigindo um valor, ele vai continuar
para conduzir esse valor. Quando o dispositivo acorda, ele vai
continuar a partir deste estado. Se duas velocidades Start-ups so
habilitado, a freqncia start-up inicial de INTOSC e
o postscaler pode no ser estvel imediatamente.
No modo PRI_IDLE, o relgio principal continuar
relgio do mdulo PEAC sem alteraes. Em todos os outros
modos de gesto de energia, o selecionado poder de gesto
relgio de modo ir relgio Timer2. Outro poder de gesto
relgios modo provavelmente ir ser diferente do
freqncia de clock principal.
16.4.10.1 Operao com fail-safe
Relgio monitor
Se a prova de falhas monitor relgio est habilitado, uma falha
relgio
forar o dispositivo no RC_RUN de gerenciamento de energia
modo eo bit OSCFIF (PIR2 <7>) ser definido. O
PEAC ser ento cronometrados a partir do oscilador interno
fonte de relgio, o qual pode ter um relgio diferente
do que a frequncia do relgio principal.
Consulte a seo anterior para obter detalhes adicionais.
16.4.11 EFEITOS DE UM REAJUSTE
Ambos Power-on Redefine Reset e posterior forar
todas as portas para o modo de entrada eo PCC registra a sua
Redefinir estados.
Isso fora o mdulo CCP avanado para repor a
estado compatvel com o mdulo CCP padro.
v 2009 Microchip Technology Inc. DS39632E pgina 163
PIC18F2455/2550/4455/4550
TABELA 16-3:
Nome
INTCON
RCON
IPR1
PIR1
PIE1
IPR2
PIR2
PIE2
TRISB
TRISC
TRISD
(2)
REGISTOS ASSOCIADOS PEAC mdulo e TIMER1 TO TIMER3
Bit 7 Bit 6
PEIE / giel
SBOREN(1)
ADIP
ADIF
ADIE
CMIP
CMIF
CMIE
TRISB6
TRISC6
TRISD6
Bit 5
TMR0IE
-
RCIP
RCIF
RCIE
USBIP
USBIF
USBIE
TRISB5
-
TRISD5
Bit 4
INT0IE
RI
TXIP
TXIF
TXIE
EEIP
EEIF
EEIE
TRISB4
-
TRISD4
Bit 3
RBIE
TO
SSPIP
SSPIF
SSPIE
BCLIP
BCLIF
BCLIE
TRISB3
-
TRISD3
Bit 2
TMR0IF
PD
CCP1IP
CCP1IF
CCP1IE
HLVDIP
HLVDIF
HLVDIE
TRISB2
TRISC2
TRISD2
O bit 1
INT0IF
POR
TMR2IP
TMR2IF
TMR2IE
TMR3IP
TMR3IF
TMR3IE
TRISB1
TRISC1
TRISD1
Bit 0
RBIF
BOR
TMR1IP
TMR1IF
TMR1IE
CCP2IP
CCP2IF
CCP2IE
TRISB0
TRISC0
TRISD0
Restabelecer
Valores
na pgina
53
54
56
56
56
56
56
56
56
56
56
54
54
T1CKPS1
T2OUTPS2
T1CKPS0
T2OUTPS1
T1OSCEN
T2OUTPS0
T1SYNC
TMR2ON
TMR1CS
T2CKPS1
TMR1ON
T2CKPS0
54
54
54
54
55
55
T3CKPS1 T3CKPS0 T3CCP1 T3SYNC TMR3CS TMR3ON 55
55
55
CCP1M3
PSSAC1
PDC3
(2)
GIE / GIEH
IPEN
SPPIP
SPPIE
(2)
SPPIF(2)
(2)
OSCFIP
OSCFIF
OSCFIE
TRISB7
TRISC7
TRISD7
TMR1L
TMR1H
T1CON
TMR2
T2CON
PR2
TMR3L
TMR3H
T3CON
CCPR1L
CCPR1H
CCP1CON
ECCP1AS
ECCP1DEL
Legenda:
Nota 1:
2:
Timer1 Registrar Low Byte
Timer1 Register alta Byte
RD16
-
T1RUN
T2OUTPS3
Timer2 Mdulo Registrar
Timer2 Perodo Registrar
Timer3 Registrar Low Byte
Timer3 Register alta Byte
RD16 T3CCP2
Capture / Compare / PWM Register 1 (LSB)
Capture / Compare / PWM Register 1 (MSB)
P1M1(2)
ECCPASE
PRSEN
P1M0(2)
ECCPAS2
PDC6
(2)
DC1B1
ECCPAS1
PDC5
(2)
DC1B0
ECCPAS0
PDC4
(2)
CCP1M2
PSSAC0
PDC2
(2)
CCP1M1
PSSBD1(2)
PDC1
(2)
CCP1M0
PSSBD0(2)
PDC0
(2)
55
55
55
- = No implementado, ler como '0 '. Clulas sombreadas no so usados durante a operao PEAC.
O bit SBOREN s est disponvel quando Boren <1:00> = 01; Caso contrrio, o bit l como '0 '.
Estes bits ou registos so no implementado em dispositivos de 28 pinos; sempre manter esses bits claras.
DS39632E pgina 164 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
17,0 Universal Serial Bus
(USB)
O SIE pode ser conectado diretamente porta USB, utilizando
o transceptor interno, ou pode ser ligado atravs
um receptor externo. Um regulador de 3.3V interno
Tambm disponvel para alimentar o transceptor interno em 5V
aplicaes.
Algumas caractersticas especiais de hardware foram includos para
melhorar o desempenho. Memria de porta dupla no
espao de memria de dados do dispositivo (RAM USB) tem sido
fornecido para compartilhar o acesso direto memria entre o
ncleo microcontrolador e o SIE. Descritores de buffer so
tambm forneceu, permitindo aos usurios programar livremente
final
uso de memria ponto dentro do espao de memria RAM USB. A
Transmisso Porta Paralela foi fornecido para apoiar
a transferncia contnua de grandes volumes de dados,
como dados iscronos, para buffers de memria externa.
Figura 17-1 apresenta uma viso geral do USB
perifrico e as suas caractersticas.
Esta seo descreve os detalhes do USB
perifrico. Devido natureza muito especfica da
mdulo, o conhecimento da USB esperado. Alguns
informaes USB de alto nvel fornecida em
Seo 17.10 "Viso geral de USB" s para aplicao
referncia de design. Designers so encorajados a se referir a
a especificao oficial publicada pelo USB de execuo de
menters Forum (USB-IF) para as ltimas informaes.
Especificao USB Reviso 2.0 o mais atual
especificao no momento da publicao deste documento.
17,1 Viso geral do perifrico USB
A famlia contm um dispositivo PIC18FX455/X550
USB compatvel full-velocidade e baixa velocidade Serial Inter-
cara Engine (SIE), que permite uma comunicao rpida
entre qualquer host USB eo microcontrolador PIC .
FIGURA 17-1: Perifrica e OPES USB
PIC18FX455/X550 Famlia
Regulador 3.3V
VREGEN PT
P
FSEN
UPUEN
UTRDIS
Relgio USB do
Mdulo oscilador
P
Interno Pull-ups
Transceiver
FS
UOE
VUSB
Opcional
Externo
Pull-ups (2)
(Full
Speed)
D +
D-
UOE(1)
VM(1)
VP(1)
VN(1)
VMO(1)
VPO(1)
SPP7: SPP0
CK1SPP
CK2SPP
CSSPP
OESPP
3.3V externa
Alimentao (3)
(Baixo
Speed)
USB Bus
Controle USB e
Configurao
USB
SIE
Externo
Transceiver
USB Bus
1 Kbyte
RAM USB
Nota 1:
2:
3:
Este sinal s est disponvel se o transceptor interno desativado (UTRDIS = 1).
Os internos resistores pull-up deve ser desativada (UPUEN = 0) se externos resistores de pull-up so usados.
No permitir que o regulador interno quando se usa uma fonte de 3.3V externa.
v 2009 Microchip Technology Inc. DS39632E pgina 165
PIC18F2455/2550/4455/4550
17,2 Estado USB e Controle
O funcionamento do mdulo USB configurado e
gerenciados atravs de trs registradores de controle. Alm disso,
um
total de 22 registradores so usados para gerenciar o USB real
operaes. Os registros so:






USB Controle de registo (UCON)
USB configurao de registro (UCFG)
USB Status de Transferncia de registro (USTAT)
USB Device Address Register (UADDR)
Regista o nmero de quadros (UFRMH: UFRML)
Ativar Endpoint registra 0 a 15 (UEPn)
Alm disso, o registo de controlo USB contm um bit de estado,
SE0 (UCON <5>), que usado para indicar a ocor-
ocorrncia de um zero single-ended no nibus. Quando o USB
mdulo ativado, este bit deve ser monitorado para deter-
minar se as linhas de dados diferenciais ter sado de
uma condio de zero single-ended. Isto ajuda a diferenciar
o estado power-up inicial do sinal de reset USB.
O funcionamento global do mdulo controlado por USB
o bit USBEN (UCON <3>). Definir este bit ativa o
mdulo e redefine todos os bits PPBI no buffer
Descriptor Table para '0 '. Este bit tambm ativa o on-chip
regulador de tenso (se o bit de configurao VREGEN
definida) e se conecta internos resistores pull-up, se eles so
ativado. Deste modo, este bit pode ser usado como um suave
ligar / desligar o USB. Apesar de todos os status e controle
bits so ignorados quando este bit clara, o mdulo precisa
para ser totalmente pr-configurado antes de definir este bit.
Nota: Ao desativar o mdulo USB, fazer
se o bit SUSPND (UCON <1>) clara
antes de limpar o bit USBEN. Desobstruo
o bit USBEN quando o mdulo est no
estado suspenso pode evitar que o mdulo
de desligar totalmente.
17.2.1 USB controle Register (UCON)
O USB Controle de registro (Register 17-1) contm bits
necessria para controlar o comportamento durante as
transferncias de mdulo.
O registo contm bits que controlam o seguinte:




Principal perifrico USB Ativar
Ping-Pong Tampo Pointer Reiniciar
O controle do modo de suspenso
Transferncia Packet Desativar
CADASTRE-SE 17-1:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
bit 6
UCON: USB registrador de controle
R/W-0 R-x
SE0
R/C-0
PKTDIS
R/W-0
USBEN
R/W-0
RESUMO
R/W-0
SUSPND
U-0
-
bit 0
C = bit Apagvel
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
PPBRST
Unimplemented: Leia como '0 '
PPBRST: Buffers Ping-Pong Redefinir bit
1= Redefinir todos os ponteiros do buffer de pingue-pongue para o buffer Mesmo descritor (BD) os
bancos
0= Ping-Pong Ponteiros buffer no sendo redefinir
SE0: Vivo Single-Ended bit Flag Zero
1= Single-ended origem ativo no barramento USB
0= No detectado a zero single-ended
PKTDIS: Transferncia Packet Desativar bit
1= SIE token e processamento de pacotes desativado, definida automaticamente quando um sinal recebido
CONFIGURAO
0= SIE token e processamento de pacotes habilitado
USBEN: Mdulo USB Habilitar bit
1= Mdulo USB e circuitos de apoio habilitada (dispositivo anexado)
0= Mdulo USB e suporte deficientes circuitos (dispositivo independente)
RESUMO: Retomar sinalizao permitem bit
1= Retomar sinalizao ativado
0= Retomar sinalizao desativado
SUSPND: Suspender bit USB
1= Mdulo USB e circuitos de apoio em modo de economizar energia, SIE relgio inativo
0= Mdulo USB e os circuitos de suporte durante o funcionamento normal, o relgio SIE cronometrado taxa
configurado
Unimplemented: Leia como '0 '
v 2009 Microchip Technology Inc.
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
DS39632E pgina 166
PIC18F2455/2550/4455/4550
O bit PPBRST (UCON <6>) que controla o status reset
quando o modo de Double-Buffer (ping-pong buffer)
utilizado. Quando o bit PPBRST est definido, tudo Ping-Pong Buf-
fer ponteiros so definidas para os buffers Mesmo. PPBRST tem
ser apuradas pelo firmware. Este bit ignorado em tampo
modos ing no usar buffer ping-pong.
O bit PKTDIS (UCON <4>) uma bandeira que indica que o
SIE desativou a transmisso e recepo de pacotes.
Este bit definido pelo SIE quando um smbolo de configurao
recebida para permitir que a instalao de processamento. Este bit
no pode ser
definida pelo microcontrolador, apenas limpou; limp-lo
permite a SIE continuar transmisso e / ou
recepo. Quaisquer eventos pendentes dentro do buffer
Tabela descritor ainda estar disponvel, indicado no
buffer FIFO do USTAT registo.
O bit RESUME (UCON <2>) permite que o perifrico para
realizar um controle remoto wake-up, executando Retomar
sinalizao. Para gerar um wake-up remoto vlido
firmware deve definir currculo para 10 ms e, em seguida, claro
o bit. Para mais informaes sobre Resume sinalizao, ver
Sees 7.1.7.5, 11.4.4 e 11.9 do USB 2.0
especificao.
O bit SUSPND (UCON <1>) e coloca o mdulo
circuitos de suporte (ou seja, o regulador de tenso) numa
modo de baixa energia. O relgio de entrada para o SIE tambm
desativada. Este bit deve ser definida pelo software em
resposta a uma interrupo IDLEIF. Ele deve ser reposto por
o firmware do microcontrolador depois de uma interrupo ACTVIF
observado. Quando este bit estiver ativo, o dispositivo permanece
anexado ao nibus, mas as sadas transceptor permanecer
Espera. A tenso no pino VUSB podem variar
sobre o valor deste bit. Definir este pouco antes de um IDLEIF
pedido vai resultar em um comportamento imprevisvel nibus.
Nota: Enquanto estiver no modo de suspenso, um nibus
tpico
dispositivo USB limitado a 2,5 mA
de corrente. Cuidados devem ser tomados para
garantir a
trao mnima de corrente quando o dispositivo
entra em modo de suspenso.
O registo UCFG tambm contm dois bits que ajuda na
mdulo de teste, depurao e certificaes USB.
Estes sada de controle pedaos permitir a monitorizao do estado
e
gerao de padro de olho.
Nota: A velocidade do USB, transceptor e puxe-up
s deve ser configurado durante o mod-
fase de instalao ULE. No recomendado para
alterar essas configuraes, enquanto o mdulo
ativado.
17.2.2.1 Transceiver Interno
O perifrico USB tem um built-in, USB 2.0, full-speed
e transceptor compatvel com a baixa velocidade, internamente con-
esteja conectado ao SIE. Esse recurso til para o baixo custo
aplicaes de chip nico. O bit UTRDIS (UCFG <3>)
controla o rdio, que ativado por padro
(UTRDIS = 0). O bit FSEN (UCFG <2>) controla o
Velocidade transceptor, definindo o bit permite full-speed
operao.
O on-chip USB resistores pull-up so controlados pelo
UPUEN bits (UCFG <4>). Eles s podem ser selecionados
quando o transceptor on-chip ativado.
A especificao USB requer operao 3.3V para
comunicaes, no entanto, o resto do chip pode ser
funcionando com uma tenso maior. Assim, o transceptor est
energia de uma fonte independente, VUSB fornecido.
17.2.2.2 Transceiver externo
Este mdulo fornece suporte para utilizao com uma off-chip
transceptor. O transceptor fora do chip destinado
aplicaes onde as condies fsicas determinam o
localizao do transceptor para se afastar do SIE.
Operao transceptor externo ativado, definindo o
UTRDIS bit.
FIGURA 17-2: TPICA EXTERNO
Transceptor com
ISOLAMENTO
VDD isolada
a partir de USB
3.3V derivadas
a partir de USB
17.2.2 USB de configurao de registro
(UCFG)
PIC
Microcontrolador
VDD
VUSB
VM
VP
VN
VMO
VPO
UOE
Antes de se comunicar atravs de USB, o mdulo de
associado interna e / ou hardware externo deve ser
configurado. A maior parte da configurao realizada com
o registo UCFG (Register 17-2). O USB separado
regulador de tenso (ver Seo 17.2.2.8 "Internal
Regulador ") controlado atravs da configurao
registra.
O registo UFCG contm a maioria dos bits que
controlar o comportamento do mdulo USB nvel do sistema.
Estes incluem:




Velocidade do barramento (velocidade mxima
versus baixa velocidade)
On-Chip resistor de pull-up Ativar
Transceiver On-Chip Ativar
Ping-Pong Uso de buffer
Nota:
1,5 kW
Isolamento Transceiver
D +
D-
A definio acima mostra um esquema simplificado
para uma configurao de velocidade mxima usando um
externo
transceptor com isolamento.
v 2009 Microchip Technology Inc. DS39632E pgina 167
PIC18F2455/2550/4455/4550
CADASTRE-SE 17-2:
R/W-0
UTEYE
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
UCFG: USB de configurao de registro
R/W-0 U-0
(1)
R/W-0
UPUEN
(2,3)
R/W-0
UTRDIS
(2)
R/W-0
FSEN
(2)
R/W-0
PPB1
R/W-0
PPB0
bit 0
UOEMON -
UTEYE: USB Eye Test Pattern Habilitar bit
1= Teste padro Eye habilitado
0= Teste padro Eye desativado
UOEMON: USB OE monitor Habilitar bit(1)
1= UOE sinal ativo, indica intervalos durante os quais os D + / D-linhas esto impulsionando
0= Sinal UOE inativo
Unimplemented: Leia como '0 '
UPUEN: USB On-Chip Pull-up Ativar bit(2,3)
1= On-chip de pull-up habilitado (pull-up em D + com FSEN = 1ou D-com FSEN = 0)
0= On-chip de pull-up com deficincia
UTRDIS: Transceiver On-Chip Disable bit(2)
1= Transceptor On-chip com deficincia, interface transceptor digitais habilitado
0= Transceptor On-chip ativo
FSEN: Bit Ativar Full-Speed(2)
1= Dispositivo Full-speed: as taxas de ponta transceptor controles; exige relgio de entrada de 48
MHz
0= Dispositivo de baixa velocidade: as taxas de ponta transceptor controles; exige relgio de entrada
de 6 MHz PPB1: PPB0: Ping-Pong Buffers bits de configurao
11 = Mesmo / buffers ping-pong Odd habilitado para Endpoints 1-15
10 = Mesmo / buffers ping-pong Odd habilitado para todos os endpoints
01 = Mesmo / buffer de ping-pong Odd habilitado para OUT Endpoint 0
00 = Mesmo / buffers ping-pong Odd desativado
Se UTRDIS est definido, o sinal UOE estar ativa independente da configurao UOEMON bit.
Os UPUEN, UTRDIS e FSEN pedaos nunca deve ser alterado enquanto o mdulo USB est ativada. Estes
valores devem ser pr-configurado antes de ativar o mdulo.
Este bit s vlida quando o transceptor on-chip est ativo (UTRDIS = 0); caso contrrio, ele ser ignorado.
Os sinais de VPO e VMO so sadas do SIE para
o transceptor externo. O sinal de sada o VN
do transceptor externo ao SIE, representa
os sinais diferenciais do barramento serial traduzido
em um nico trem de pulsos. Os sinais de VM e VP so
usado para relatar as condies no barramento serial para o SIE
que no pode ser capturada com o sinal de VN. O
combinaes de estados de estes sinais e os seus
interpretao so listadas na Tabela 17-1 e na Tabela 17-2.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1-0
Nota 1:
2:
3:
Existem seis sinais provenientes do mdulo de comunicao
com e controlar um transceptor externo:






VM: Entrada para o single-ended D-line
VP: Entrada do single-ended D + linha
VN: Entrada do receptor diferencial
VMO: Sada para o motorista linha diferencial
VPO: Sada para o motorista linha diferencial
UOE: Output enable
DS39632E pgina 168 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 17-1:
VPO
0
0
1
1
VMO
0
1
0
1
SADAS diferencial
TRANSCEIVER
Estado Bus
Zero Single-Ended
Diferencial '0 '
Diferencial '1 '
Condio ilegal
17.2.2.5 Configurao de buffer Ping-Pong
O uso de buffers ping-pong configurado usando o
PPB1: PPB0 bits. Consulte Seo 17.4.4 "Ping-Pong
Buffering " Para uma explicao completa do ping-pong
tampes.
17.2.2.6 Ativar o Monitor USB Output
TABELA 17-2:
VP
0
0
1
1
VM
0
1
0
1
Entradas simples
DE TRANSCEIVER
Estado Bus
Zero Single-Ended
Low Speed
Alta Velocidade
Erro
O monitor OE USB fornece indicao sobre se
o SIE est ouvindo o nibus ou dirigir ativamente o nibus.
Isso ativado por padro quando usar um externo
transceptor ou quando UCFG <6> = 1.
O monitoramento USB OE til para o sistema inicial
depurao, bem como escopo provocando durante olho
testes de gerao de padres.
17.2.2.7 Eye Test Pattern Ativar
O sinal UOE alterna o estado do externo trans-
ceptor. Esta linha puxado para baixo pelo dispositivo, para permitir
a transmisso de dados a partir de um dispositivo externo para SIE
dispositivo.
Um padro de teste automtico de olho pode ser gerado pela
mdulo quando o UCFG <7> bit definido. O padro de olho
sada ser observvel com base nas configuraes do mdulo,
o que significa que o usurio o primeiro responsvel pela
configurao
as definies do relgio SIE, resistor pull-up e Transceiver
modo. Alm disso, o mdulo tem de ser activado.
Uma vez UTEYE est definido, o mdulo simula uma mudana de
a receber a transmisso do estado e vai comear a transmitir a
Sequncia de bits J-K-J-K (K-K-J-J para a velocidade mxima). O
seqncia ser repetida indefinidamente, enquanto o Olho
Modo de teste padro habilitado.
Note-se que este bit nunca deve ser definida enquanto o mdulo
est ligado a um sistema USB real. Este modo de teste
destina-se a verificao bordo para ajudar com USB certi-
testes ficao. Pretende-se mostrar um desenvolvedor do sistema
a integridade dos sinais de rudo que pode ser USB
afetado por traos de tabuleiro, incompatibilidades de impedncia e
proximidade com outros componentes do sistema. No faz
testar adequadamente a transio de uma para receber uma
transmisso
Estado. Embora o padro de olho no se destina a substituir
o teste de certificao USB mais complexo, que deve ajudar
durante a primeira depurao do sistema ordem.
17.2.2.3 Internos resistores pull-up
Os dispositivos PIC18FX455/X550 tem built-in pull-up
resistores projetados para atender aos requisitos de
baixa velocidade e USB full-speed. O bit UPUEN
(UCFG <4>) permite que os internos pull-ups. Figura 17-1
mostra os pull-ups e seu controle.
17.2.2.4 Externas resistores pull-up
Pull-up externa tambm pode ser usada se a resis-
tores no so utilizados. O pino VUSB pode ser usado para puxar
para cima
D + ou D-. O resistor de pull-up deve ser de 1,5 kW ( 5%) como
exigido pelas especificaes USB. Figura 17-3 mostra
um exemplo.
FIGURA 17-3:
PIC
Microcontrolador
Circuito externo
Hospedeiro
Controller / HUB
VUSB
1,5 kW
D +
D-
Nota: A definio acima mostra uma conexo tpica
para uma configurao de velocidade mxima usando um on-
chip
regulador e um resistor de pull-up externo.
v 2009 Microchip Technology Inc. DS39632E pgina 169
PIC18F2455/2550/4455/4550
17.2.2.8 Regulador Interno
Os dispositivos PIC18FX455/X550 tem um built-in 3.3V reg-
ulator para fornecer energia para o transmissor-receptor interno e
fornecer uma fonte para os internos / externos pull-ups. Um
nF externo 220 ( 20%) do condensador necessria para a
estabilidade.
Nota: A unidade de VUSB suficiente para apenas
dirigir um pull-up externa, alm do
transceptor interno.
SIE processa terminais adicionais (Figura 17-4).
Quando o SIE completa usando um buffer para leitura ou
gravao de dados, atualiza o cadastro USTAT. Se outro
Transferncia USB realizada antes de uma transao
interrupo completa atendido, a SIE ir armazenar a
estado da transferncia seguinte na FIFO de estado.
Limpando a transferncia completa bit bandeira, TRNIF, causa
o SIE para fazer avanar o FIFO. Se os dados seguintes no
FIFO registo da explorao vlida, o SIE vai reafirmar a
interromper a 5 TCY de compensao TRNIF. Se nenhum adicional
dados se referem, TRNIF permanecer claro, os dados USTAT
no ser mais fivel.
Nota: Se um pedido de ponto de extremidade recebida
enquanto a
USTAT FIFO estiver cheio, o SIE vontade
emitir automaticamente um NAK de volta para a
host.
O regulador pode ser ativado ou desativado atravs da
VREGEN bit de configurao. Quando ativado, a tenso
visvel no pino VUSB quando o bit tambm USBEN
definido. Quando o regulador estiver desabilitado (VREGEN = 0),
um
Fonte 3.3V deve ser fornecida atravs do pino VUSB para
o transceptor interno.
Nota 1: No permitir que o regulador interno se um
regulador externo est ligado ao VUSB.
2: VDD deve ser igual ou superior a
VUSB em todos os momentos, mesmo com o regulador
desativada.
FIGURA 17-4: USTAT FIFO
USTAT do SIE
17.2.3 USB registrador de status (USTAT)
4-byte FIFO
para USTAT
Clearing TRNIF
Avanos FIFO
O registo Estado USB relata o status da transao
dentro do SIE. Quando as questes SIE uma transferncia USB
interrupo completa, USTAT deve ser lido para determinar
o estado da transferncia. USTAT contm a transferncia
nmero de endpoint, direo e Ping-Pong Tampo
Valor do ponteiro (se utilizado).
Nota: Os dados do registrador de status USB vlido
apenas quando o flag de interrupo TRNIF
afirmou.
Barramento de
dados
O registo USTAT na verdade uma janela de leitura em um
estado de quatro bytes FIFO, mantida pelo SIE. Ele permite
o microcontrolador para processar uma transferncia enquanto o
DS39632E pgina 170 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 17-3:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
bit 6-3
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
USTAT: USB registrador de status
R-x R-x
ENDP2
R-x
ENDP1
R-x
ENDP0
R-x
DIR
R-x
PPBI
(1)
U-0
-
bit 0
ENDP3
Unimplemented: Leia como '0 '
ENDP3: ENDP0: Codificado Nmero da ltima Endpoint Atividade pedaos
(Representa o nmero da BDT actualizada pela ltima transferncia USB)
1111 = Endpoint 15
1110 = Endpoint 14
....
0001 = Endpoint 1
0000 = Endpoint 0
DIR: ltima BD Direo bit Indicator
1= A ltima operao foi um em sinal
0= A ltima operao foi um OUT ou smbolo CONFIGURAO
PPBI: Ping-Pong BD Pointer bit Indicator(1)
1= A ltima operao foi para o banco BD Odd
0= A ltima operao foi para o banco Mesmo BD
Unimplemented: Leia como '0 '
Este bit s vlida para endpoints disponveis com pares e mpares registros de BD.
bit 2
bit 1
bit 0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E pgina 171
PIC18F2455/2550/4455/4550
17.2.4 CONTROLE ENDPOINT USB
Cada um dos possveis pontos de extremidade 16 tem a sua
bidireccionais
prprio registrador de controle independente, UEPn (onde 'n' rep-
ressente-se o nmero endpoint). Cada registro tem um
complemento idntico de bits de controlo. O prottipo
mostrado na Register 17-4.
O bit EPHSHK (UEPn <4>) controles aperto de mo para
o ponto final; definir este bit permite aperto de mo USB.
Normalmente, este bit sempre definido, exceto quando se usa
endpoints iscronos.
O bit EPCONDIS (UEPn <3>) usado para ativar ou
desativar as operaes de controle USB (SETUP), atravs da
endpoint. Limpando este bit permite CONFIGURAO tran-
es. Note-se que o correspondente e EPINEN
EPOUTEN bits devem ser definidas para permitir IN e OUT
operaes. Para Endpoint 0, este bit deve ser sempre
apuradas desde as especificaes USB identificar
Endpoint 0 como o parmetro de controle padro.
O bit EPOUTEN (UEPn <2>) usado para ativar ou dis-
USB capaz de operaes do host. A definio deste
bit permite que as transaes. Do mesmo modo, o bit EPINEN
(UEPn <1>) habilita ou desabilita o USB em transaes
do host.
O bit EPSTALL (UEPn <0>) usado para indicar um
Condio de bloqueio para o terminal. Se uma barraca emitido
num determinado ponto de extremidade, o bit EPSTALL para esse
fim-
par de pontos ser definida pelo SIE. Este bit permanece definida
at que sejam retirados atravs de firmware, ou at que o SIE
reajustados.
CADASTRE-SE 17-4:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7-5
4 bits
UEPn: USB ENDPOINT n registrador de controle (UEP0 ATRAVS UEP15)
U-0
-
U-0
-
R/W-0
EPHSHK
R/W-0
EPCONDIS
R/W-0
EPOUTEN
R/W-0
EPINEN
R/W-0
EPSTALL
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
Unimplemented: Leia como '0 '
EPHSHK: Handshake Endpoint Habilitar bit
1= Handshake Endpoint habilitado
0= Handshake Endpoint desativado (normalmente usado para endpoints iscronos)
EPCONDIS: Bidirecional Endpoint pouco controle
Se EPOUTEN = 1e EPINEN = 1:
1= Desativar Endpoint n de transferncias de controle, apenas IN e OUT transferncias permitido
0= Ativar Endpoint n para o controle de transferncias (SETUP); IN e OUT transferncias tambm
permitiu
EPOUTEN: Sada Endpoint Habilitar bit
1= Endpoint n sada habilitado
0= Endpoint n sada deficientes
EPINEN: Entrada Endpoint Habilitar bit
1= Endpoint n entrada habilitado
0= Endpoint n entrada com deficincia
EPSTALL: Endpoint Stall bit Indicator
1= Endpoint n emitiu um ou mais pacotes STALL
0N = Endpoint no emitiu quaisquer pacotes STALL
bit 3
bit 2
bit 1
bit 0
DS39632E pgina 172 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
17.2.5 USB endereo de registro
(UADDR)
FIGURA 17-5:
O registo Endereo USB contm a nica USB
endereo que o perifrico ir decodificar quando ativo.
UADDR redefinido para 00h quando um Reincio de USB
recebido,
indicado por URSTIF, ou quando recebido uma reiniciao de
o microcontrolador. O endereo USB deve ser escrito
pelo microcontrolador, durante a fase de instalao USB
(Enumerao), como parte da Microchip firmware USB
apoiar.
IMPLEMENTAO DO
RAM USB DE DADOS
Espao de memria
000h
Bancos 0
a 3
Dados do Usurio
17.2.6 NMERO DO CHASSI USB REGISTOS
(UFRMH: UFRML)
Banks 4
a 7
RAM (USB)
Descritores de buffer,
Dados USB ou Dados do usurio
3FFh
400h
4FFh
500h
O nmero de registros do quadro contm a estrutura de 11 bits
nmero. O byte de ordem est contida em UFRML,
enquanto que os trs bits de ordem alta esto contidos
UFRMH. A par de registro atualizado com o atual
nmero do quadro SOF sempre que um sinal recebido. Para
o microcontrolador, estes registos so somente leitura. O
Registo nmero do quadro usado principalmente para
transferncias iscronos.
USB de Dados ou
Dados do Usurio
7FFh
800h
17,3 RAM USB
Dados USB move entre o ncleo e o microcontrolador
a SIE atravs de um espao de memria conhecido como o USB
RAM. Esta uma memria de acesso duplo que especial
mapeado no espao de memria de dados normal em quatro bancos
a 7 (400h para 7FFh) para um total de 1 Kbyte
(Figura 17-5).
Bank 4 (400h atravs 4FFh) usado especificamente para
controle tampo endpoint, enquanto Banks 5 a 7 so
disponvel para dados USB. Dependendo do tipo de
buffer a ser utilizado, mas todos os 8 bytes de Banco 04 de maio
tambm
estar disponveis para utilizao como espao tampo USB.
Embora RAM USB est disponvel para o microcontrolador
como a memria de dados, as sees que esto sendo acessados
pelo SIE no devem ser acessados pelo
microcontrolador. Um mecanismo de sinal usado para
determinar o acesso a um tampo particular, em qualquer dado
tempo. Isto discutido em Seo 17.4.1.1 "Buffer
Propriedade ".
Banks 8
a 14
No usado
Bank15
SFRs
F00h
F60h
FFFh
v 2009 Microchip Technology Inc. DS39632E pgina 173
PIC18F2455/2550/4455/4550
17,4 Descritores de buffer eo buffer
Descriptor Table
FIGURA 17-6:
Endereo
400h
Tampo
Descritor
401h
402H
403H
500h
Exemplo de um buffer
DESCRIPTOR
Registra
BD0STAT
BD0CNT
BD0ADRL
BD0ADRH
(Xxh)
40h
00h
05h
Tamanho do Bloco
Comeando
Endereo
Contedo
Os registros no Banco 4 so usados especificamente para o fim de
controlo de tampo ponto numa estrutura conhecida como o buffer
Descriptor Table (BDT). Isto proporciona um mtodo flexvel
para usurios de construir e controlar buffers de terminais de
vrios comprimentos e configurao.
A BDT composto de Descritores de buffer (BD), que
so usados para definir e controlar os buffers reais no
Espao USB RAM. Cada BD, por sua vez, constitudo por quatro
regis-
isters, onde n representa um dos 64 possveis BD
(Intervalo de 0 a 63):




BDnSTAT: BD Estado registo
BDnCNT: BD Byte Count registo
BDnADRL: BD Endereo registo Baixo
BDnADRH: BD Endereo alta registo
Tampo
De dados USB
53Fh
Nota: Regies de memria no escala.
BDs sempre ocorrem como um bloco de quatro bytes na seqncia,
BDnSTAT: BDnCNT: BDnADRL: BDnADRH. O endereo
de BDnSTAT sempre um deslocamento de (4n - 1) (em hexa-
decimal) de 400h, com n sendo o descritor de reserva
nmero.
Dependendo da configurao do buffer utilizado
(Seo 17.4.4 "Ping-Pong Buffering"), h at
a 32, 33 ou 64 conjuntos de descritores de buffer. No mnimo,
o BDT deve ser de pelo menos 8 bytes de comprimento. Isto
porque
os mandatos de especificao USB que cada dispositivo deve
ter Endpoint 0 com entrada e sada para inicial
setup. Dependendo do terminal e colocar em buffer
configurao, a BDT pode ser to longo como 256 bytes.
Embora possam ser pensados como funes especiais
Registros, o buffer Descriptor Estado e Endereo
registos de hardware no so mapeados, como convencional
SFRs microcontrolador em Banco 15 so. Se o terminal cor-
respondendo a uma BD em particular no for ativada, seus registros
no so utilizados. Em vez de aparecer como unimplemented
endereos, no entanto, eles aparecem como RAM disponvel.
Somente quando um endpoint est habilitado, definindo o
UEPn <1> bit faz a memria a esses endereos
tornar-se funcional como BD registros. Como acontece com
qualquer endereo
no espao de memria de dados, os registos de BD tem uma
valor indeterminado em qualquer redefinio do dispositivo.
Um exemplo de um BD para um tampo de 64 bytes, comeando
500h, mostrado na Figura 17-6. Um conjunto especfico de BD
registros s vlida se o endpoint correspondente tem
sido ativado usando o registo UEPn. Todos BD registra
esto disponveis na memria RAM de USB. O BD para cada
endpoint
deve ser criado antes da ativao do terminal.
Ao contrrio de outros registradores de controle, a configurao de
bits para
o registo BDnSTAT sensvel ao contexto. Tem
duas configuraes distintas, dependendo se a
microcontrolador ou o mdulo USB est modificando o BD
e tampo em um momento particular. Apenas trs definies dos
bits
so partilhados entre os dois.
17.4.1.1 Propriedade tampo
Porque os tampes e os seus BDs so partilhadas entre
o CPU eo mdulo USB, um semforo simples
mecanismo utilizado para distinguir o que permitido
atualizar o BD e buffers associados na memria.
Isto feito usando o bit UOWN (BDnSTAT <7>) como
um semforo para distinguir o que permitido para actualizar
o BD e buffers associados na memria. UOWN o
nico bit que compartilhada entre as duas configuraes
de BDnSTAT.
Quando UOWN claro, a entrada BD "propriedade" do
ncleo microcontrolador. Quando o bit UOWN est definido, o BD
entrada ea memria buffer so "propriedade" pela USB
perifrico. O ncleo no deve modificar o BD ou o seu
buffer de dados correspondente durante este tempo. Note-se que
ncleo do microcontrolador pode ainda ler BDnSTAT enquanto
a SIE possui o tampo e vice-versa.
Os descritores de buffer tem um significado diferente, baseada
na fonte da actualizao de registo. Antes de colocar
propriedade com o perifrico USB, o usurio pode con-
entender o funcionamento bsico do perifrico, atravs da
BDnSTAT bits. Durante este tempo, a contagem de octetos e buf-
fer localizao registros tambm podem ser definidos.
Quando UOWN est definido, o usurio no pode mais depender
Os valores que foram escritas para os BDs. A partir deste ponto,
As atualizaes SIE os BDs, se necessrio, substituindo o
valores BD originais. O cadastro atualizado BDnSTAT
pelo SIE com o PID token e a contagem de transferncia,
BDnCNT, atualizado.
17.4.1 BD estado e configurao
Descritores de buffer no s definir o tamanho de um fim-
tampo ponto, mas tambm determinar a sua configurao e
controlar. A maior parte da configurao feita com o BD
Estado registo, BDnSTAT. Cada BD tem o seu prprio e nico
e, correspondentemente numeradas BDnSTAT registo.
DS39632E pgina 174 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
O byte BDnSTAT do BDT deve ser sempre o
ltimo byte atualizado quando se preparando para armar um ponto
final.
O SIE ir limpar o bit UOWN quando uma transao
foi concluda. A nica exceo a isso quando KEN
est habilitado e / ou BSTALL est habilitado.
No existe mecanismo de hardware para bloquear o acesso ao
o bit UOWN est definido. Assim, um comportamento inesperado
pode
ocorrer se o microcontrolador tenta modificar memria
quando o SIE o dono. Da mesma forma, a leitura de tal memria
pode produzir dados imprecisos at o perifrico USB
retorna a propriedade para o microcontrolador.
o SIE. Quando ativado, ele verifica par-do pacote de dados
dade em relao ao valor de DTS (BDnSTAT <6>). Se um pacote
chega com uma sincronizao incorreta, os dados sero
essencialmente ser ignorado. No vai ser escrito para o USB
RAM ea transferncia da bandeira de interrupo completa USB
no ser definido. O SIE ir enviar um sinal ACK de volta para o
sede de acusar a recepo, no entanto. Os efeitos da
o bit DTSEN no SIE esto resumidos na
Tabela 17-3.
O bit Stall tampo, BSTALL (BDnSTAT <2>), fornece
suporte para transferncias de controle, geralmente um tempo de
barracas no
Endpoint 0. Ele tambm fornece suporte para o
SET_FEATURE / CLEAR_FEATURE comandos es-
cadas no captulo 9 da especificao USB, normalmente,
barracas contnuas para qualquer desfecho que no seja a
endpoint de controle padro.
O bit BSTALL permite barracas de buffer. Definir BSTALL
faz com que o SIE para retornar um token de barraca para o anfitrio
se um
sinal recebido usaria o BD no local. O
EPSTALL pouco no controle UEPn correspondente regis-
ter est definido e uma interrupo STALL gerado quando um
BLOQUEIO emitido para o host. O bit UOWN permanece definida
e os BDs no so alterados a menos que um sinal de configurao
recebido. Neste caso, o estado de bloqueio eliminado
ea posse da BD devolvido ao
ncleo microcontrolador.
O BD9: BD8 pedaos (BDnSTAT <01:00>) loja os dois mais
algarismos significativos da contagem de bytes SIE; abaixo de 8
dgitos
so armazenadas no registo BDnCNT correspondente. Ver
Seo 17.4.2 "BD Byte Count" Para mais
informao.
17.4.1.2 BDnSTAT Register (CPU Mode)
Quando UOWN = 0, ncleo microcontrolador possui o
BD. Neste ponto, os outros sete bits do registo
assumir funes de controle.
The Keep Habilitar bit, KEN (BDnSTAT <5>), determina
se um BD fica habilitado. Se o bit for definido, uma vez que o UOWN
bit definido, ele permanecer detida pelo SIE independente
da atividade de endpoint. Isto impede que o USTAT FIFO
de ser actualizadas, bem como a operao
completar interrupo de ser definido para o ponto final. Este
recurso s deve ser ativado quando a Transmisso
Porta Paralela selecionado como o I / O canal de dados em vez
de RAM USB.
O incremento Endereo Desativar bit, INCDIS
(BDnSTAT <4>), controla automtica de endereos do SIE
incrementar funo. Definir INCDIS desativa o
auto-incremento do endereo do buffer pelo SIE para
cada byte transmitido ou recebido. Este recurso deve
s pode ser ativado quando usando o Parallel Transmisso
Porto, onde cada byte de dados processado para ou a partir da
mesmo local de memria.
O Data Toggle sincronizao Ativar bit, DTSEN
(BDnSTAT <3>), controla dados alternncia verificao de paridade.
Definir DTSEN permite a sincronizao de dados por comutao
TABELA 17-3:
OUT Packet
do Host
DATA0
DATA1
DATA1
DATA0
Ou
Ou, com erro
EFEITO DA DTSEN pouco ODD / EVEN (DATA0/DATA1) RECEPO DE PACOTES
Configuraes BDnSTAT
DTSEN
1
1
1
1
0
x
DTS
0
0
1
1
x
x
Aperto de mo
ACK
ACK
ACK
ACK
ACK
NAK
Resposta dispositivo aps receber um pacote
UOWN
0
1
0
1
0
1
TRNIF
1
0
1
0
1
0
BDnSTAT e USTAT Estado
Atualizado
No Atualizado
Atualizado
No Atualizado
Atualizado
No Atualizado
Legenda: x= No se importam
v 2009 Microchip Technology Inc. DS39632E pgina 175
PIC18F2455/2550/4455/4550
CADASTRE-SE 17-5:
R / W-x
UOWN(1)
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
bit 6
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
BDnSTAT: Buffer DESCRIPTOR n registrador de status (BD0STAT ATRAVS
BD63STAT), CPU MODE (os dados so gravados ao lado)
R / W-x
DTS(2)
R / W-x
KEN
R / W-x
INCDIS
R / W-x
DTSEN
R / W-x
BSTALL
R / W-x
BC9
R / W-x
BC8
bit 0
UOWN: USB prprio bit(1)
0= O ncleo microcontrolador possui o BD e seu buffer correspondente
DTS: Data Toggle bit de sincronizao(2)
1= Dados 1 pacote
0= Dados 0 pacote
KEN: BD Mantenha Habilitar bit
1= USB vai manter o BD indefinidamente uma vez UOWN est definido (necessrio para a configurao do endpoint
SPP)
0= USB vai devolver o BD uma vez que um smbolo tenha sido processada
INCDIS: Incremento endereo Disable bit
1= Incremento Endereo desativado (necessrio para a configurao do endpoint SPP)
0= Incremento Endereo habilitado
DTSEN: Data Toggle sincronizao Ativar bit
1= Sincronizao de dados alternncia est habilitado; pacotes de dados com valor de sincronizao incorreta sero
ignoradas
com exceo de uma transao de configurao, que aceito, mesmo que os bits de dados alternncia no
corresponderem
0= Sem sincronizao de dados alternncia realizada BSTALL: Stall tampo Habilitar bit
1= Buffer tenda habilitado; handshake STALL emitido se um sinal recebido que usaria o BD no
determinado local (UOWN bit permanece definido, valor BD inalterado)
0= Buffer tenda desativado
BC9: BC8: Byte Conte 9 e de 8 bits
Os bits de contagem de bytes representam o nmero de bytes que sero transmitidos para um em sinal ou recebidos
durante um token OUT. Juntamente com BC <07:00>, as contagens de bytes vlidos so 0-1023.
Este bit deve ser inicializado pelo usurio para o valor desejado antes de ativar o mdulo USB.
Este bit ignorado a menos que DTSEN = 1.
bit 5
4 bits
bit 3
bit 2
bit 1-0
Nota 1:
2:
DS39632E pgina 176 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
17.4.1.3 BDnSTAT Register (Modo SIE)
Quando o BD e seu buffer so de propriedade do SIE, a maioria
dos bits em BDnSTAT assumir um significado diferente. O
configurao mostrada na Register 17-6. Uma vez UOWN
estiver definido, todos os dados ou configuraes de controle escrito
anteriormente
h pelo usurio sero substitudos com os dados da
SIE.
O registo BDnSTAT atualizado pelo SIE com o
sinal identificador de pacote (PID), que armazenada na
BDnSTAT <5:03>. A contagem de transferncia para o correspon-
ing BDnCNT registro atualizado. Valores que transbordam
o registo de 8 bits transitar para os dois mais significativos
dgitos da contagem, armazenados em BDnSTAT <1:00>.
A contagem de bytes de 10 bits distribuda ao longo de dois
registros.
Os menores de 8 bits da contagem residir no BDnCNT
registrar. Os dois bits superiores residir em BDnSTAT <1:00>.
Isso representa um intervalo de bytes vlido de 0 a 1023.
17.4.3 BD ADDRESS VALIDAO
O BD Endereo par registo contm a RAM de partida
endereo de localizao para o buffer de endpoint correspondente.
Para uma localizao inicial endpoint para ser vlido, deve cair
na gama da RAM USB, 400h para 7FFh. No
mecanismo est disponvel em hardware para validar o BD
endereo.
Se o valor do endereo BD no apontam para uma
abordar na RAM USB, ou se ele aponta para um endereo
no tampo de outra extremidade, os dados so susceptveis de
serem perdidos
ou substitudo. Da mesma forma, sobrepondo-se um buffer de
recepo
(OUT endpoint), com uma localizao BD em uso pode render
unexpectedresults.WhendevelopingUSB
aplicativos, o usurio pode querer considerar a
incluso de validao de endereos baseado em software em seu
cdigo.
17.4.2 BD BYTE COUNT
A contagem de byte representa o nmero total de bytes
que ser transmitido durante uma transferncia IN. Depois de um IN
transferncia, o SIE ir retornar o nmero de bytes enviados para
o host.
Para uma transferncia para fora, a contagem de byte representa o
Nmero mximo de bytes que podem ser recebidos e
armazenada na memria RAM USB. Depois de uma transferncia
para fora, o SIE vontade
retornar o nmero real de bytes recebidos. Se o
nmero de bytes recebidos exceder o correspondente
contagem de byte, o pacote de dados, sero rejeitados e um NAK
handshake ser gerado. Quando isso acontece, o
contagem de bytes no ser atualizado.
CADASTRE-SE 17-6: BDnSTAT: Buffer DESCRIPTOR n registrador de status (BD0STAT ATRAVS
BD63STAT), SIE MODE (dados retornados pelo lado da
MICROCONTROLLER)
U-x
-
R / W-x
PID3
R / W-x
PID2
R / W-x
PID1
R / W-x
PID0
R / W-x
BC9
R / W-x
BC8
bit 0
R / W-x
UOWN
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
bit 6
bit 5-2
bit 1-0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
UOWN: USB prprio bit
1= O SIE dono do BD e seu buffer correspondente
Reservados: No escrito pelo SIE
PID3: PID0: Pacote pedaos Identificador
O valor recebido PID smbolo da ltima transferncia (IN, OUT ou apenas as operaes de
configurao).
BC9: BC8: Byte Conte 9 e de 8 bits
Estes bits so atualizados pelo SIE para refletir o nmero real de bytes recebidos em uma transferncia para fora
e o nmero real de bytes transmitidos em uma transferncia IN.
v 2009 Microchip Technology Inc. DS39632E pgina 177
PIC18F2455/2550/4455/4550
17.4.4 BUFFERING PING-PONG
Um ponto final definido para ter um buffer ping-pong quando
ele tem dois conjuntos de entradas BD: um conjunto para um
mesmo
transferir e um conjunto para uma transferncia Odd. Isto permite
que o
CPU para processar um BD, enquanto o processamento est a SIE
outro BD. BDs buffer duplo, desta forma permite
taxa de transferncia mxima de / para o USB.
O mdulo USB suporta quatro modos de operao:




No h suporte a ping-pong
Apoio buffer de ping-pong para OUT Endpoint 0 s
Apoio buffer de ping-pong em todos os endpoints
Apoio buffer de ping-pong para todos os outros pontos de
extremidade
exceto Endpoint 0
a concluso de uma transao (UOWN apuradas pela
SIE), o ponteiro alternado para o BD Odd. Aps o
concluso da transaco seguinte, o ponteiro est
alternado de volta para o mesmo BD e assim por diante.
O Par / mpar status da ltima operao armazenado em
o bit PPBI do registo USTAT. O usurio pode redefinir
todos os ponteiros de pingue-pongue para Mesmo com o pouco
PPBRST.
A Figura 17-7 mostra os quatro modos diferentes de
operao e como RAM USB preenchido com os BDs.
BDs ter um relacionamento fixo para um determinado parmetro,
dependendo da configurao do tampo. O mapeamento
de BDs para endpoints detalhado na Tabela 17-4. Este
relao tambm significa que as diferenas podem ocorrer no
BDT se os terminais no esto habilitados de forma contgua. Este
significa, teoricamente, que os BDs para endpoints com deficincia
pode ser usado como espao tampo. Na prtica, os usurios
deve evitar o uso desses espaos na BDT menos um
mtodo de validar endereos BD implementado.
As configuraes de buffer ping-pong so configurados usando o
PPB1: PPB0 bits no registrador UCFG.
O mdulo USB mantm o controle do ponteiro Ping-Pong
individualmente para cada terminal. Todos os ponteiros so
inicialmente
redefinir a Mesmo BD quando o mdulo ativado. Depois
FIGURA 17-7:
PPB1: PPB0 = 00
No Ping-Pong
Buffers
400h
BUFFER DESCRIPTOR mapeamento da tabela para buffer de MODOS
PPB1: PPB0 = 01
Ping-Pong Tampo
em EP0 OUT
400h
EP0 OUT
Descritor
EP0 IN
Descritor
EP1 OUT
Descritor
EP1 IN
Descritor
PPB1: PPB0 = 10
Buffers de pingue-pongue
em todos os LPs
EP0 OUT Mesmo
Descritor
EP0 OUT Odd
Descritor
EP0 EM Mesmo
Descritor
EP0 IN Odd
Descritor
EP1 OUT Mesmo
Descritor
EP1 OUT Odd
Descritor
EP1 EM Mesmo
Descritor
EP1 IN Odd
Descritor
PPB1: PPB0 = 11
Buffers de pingue-pongue
em todos os outros LPs
exceto EP0
400h
EP0 OUT
Descritor
EP0 IN
Descritor
EP1 OUT Mesmo
Descritor
EP1 OUT Odd
Descritor
EP1 EM Mesmo
Descritor
EP1 IN Odd
Descritor
400h
EP0 OUT Mesmo
Descritor
EP0 OUT Odd
Descritor
EP0 IN
Descritor
EP1 OUT
Descritor
EP1 IN
Descritor
47Fh
EP15 IN
Descritor
EP15 IN
Descritor
483h
Disponvel
como
RAM de dados
Disponvel
como
RAM de dados
4F7h
Disponvel
como
RAM de dados
4FFh
EP15 IN Odd
Descritor
4FFh
Memria Mxima
Utilizados: 128 bytes
BDs mximas:
32 (BD0 para BD31)
4FFh
Memria Mxima
Usado: 132 bytes
BDs mximas:
33 (BD0 para BD32)
4FFh
Memria Mxima
Utilizados: 256 bytes
BDs mximas:
64 (BD0 para BD63)
EP15 IN Odd
Descritor
Memria Mxima
Utilizados: 248 bytes
BDs mximas:
62 (BD0 para BD61)
Nota: rea de memria no mostrado em escala.
DS39632E pgina 178 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 17-4: CESSO DE Descritores de buffer para os diferentes
BUFFERING MODOS
BDs atribudos a Endpoint
Endpoint
Modo 0
(Sem Ping-Pong)
Fora
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Legenda:
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
Em
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
Modo 1
(Ping-Pong em EP0 OUT)
Fora
0 (E), 1 (S)
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
Em
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
Modo 2
(Ping-Pong em todos os EPs)
Fora
0 (E), 1 (S)
4 (E), 5 (S)
8 (E), 9 (O)
12 (E), 13 (S)
16 (E), 17 (O)
20 (E), 21 (S)
24 (E), 25 (S)
28 (E), 29 (S)
32 (E), 33 (S)
36 (E), 37 (S)
40 (E), 41 (S)
44 (E), 45 (S)
48 (E), 49 (O)
52 (E), 53 (S)
56 (E), 57 (S)
60 (E), 61 (S)
Em
2 (E), 3 (S)
6 (E), 7 (S)
10 (E), 11 (S)
14 (E), 15 (S)
18 (E), 19 (S)
22 (E), 23 (S)
26 (E), 27 (S)
34 (E), 35 (S)
38 (E), 39 (S)
42 (E), 43 (O)
46 (E), 47 (S)
50 (E), 51 (S)
54 (E), 55 (S)
58 (E), 59 (S)
62 (E), 63 (O)
Modo 3
(Ping-Pong em todos os outros EPs,
exceto EP0)
Fora
0
2 (E), 3 (S)
6 (E), 7 (S)
10 (E), 11 (S)
Em
1
4 (E), 5 (S)
8 (E), 9 (O)
12 (E), 13 (S)
14 (E), 15 (S) 16 (E), 17 (S)
18 (E), 19 (S) 20 (E), 21 (S)
22 (E), 23 (S), 24 (E), 25 (S)
30 (E), 31 (S) 32 (E), 33 (S)
34 (E), 35 (S) 36 (E), 37 (S)
38 (E), 39 (S) 40 (E), 41 (S)
42 (E), 43 (S) 44 (E), 45 (S)
46 (E), 47 (S) 48 (E), 49 (S)
50 (E), 51 (S), 52 (E), 53 (S)
54 (E), 55 (S) 56 (E), 57 (S)
58 (E), 59 (S), 60 (E), 61 (S)
30 (E), 31 (S) 26 (E), 27 (S) 28 (E), 29 (S)
(E) = Mesmo tampo transao, (O) = buffer de transao Odd
TABELA 17-5:
Nome
BDnSTAT(1)
BDnCNT(1)
BDnADRL
Nota 1:
2:
(1)
(1)
RESUMO DAS Buffer USB Descriptor Table REGISTOS
Bit 7
UOWN
Contagem de bytes
Endereo de buffer Baixa
Tampo Endereo alta
Bit 6
DTS(4)
Bit 5
PID3(2)
KEN(3)
Bit 4
PID2(2)
INCDIS(3)
Bit 3
PID1(2)
DTSEN(3)
Bit 2
PID0(2)
BSTALL(3)
O bit 1
BC9
Bit 0
BC8
BDnADRH
3:
4:
Para registos-tampo descritor, n pode ter um valor de 0 a 63. Por uma questo de brevidade, todos os 64 registradores
so
mostrado como um prottipo genrico. Todos os registros tm valores Redefinir indeterminados (xxxx xxxx).
Bits 5 a 2 do registo BDnSTAT so usados pelo SIE para retornar PID3: PID0 valores uma vez que o registo
entregue ao SIE (UOWN bit definido). Uma vez que os registros esto sob controle SIE, os valores
escrito por KEN, INCDIS, DTSEN e BSTALL no so mais vlidas.
Antes de se tornar o descritor reserva para o SIE (UOWN bit desmarcado), os bits de 5 a 2 do
BDnSTAT registo so utilizados para configurar o KEN, INCDIS, DTSEN e configuraes BSTALL.
Este bit ignorado a menos que DTSEN = 1.
v 2009 Microchip Technology Inc. DS39632E pgina 179
PIC18F2455/2550/4455/4550
17,5 Interrupes USB
O mdulo USB pode gerar mltiplas con-interrupo
condies. Para acomodar todas essas fontes de interrupo,
o mdulo equipado com a sua prpria lgica de interrupo
estrutura, semelhante ao do microcontrolador. USB
interrupes so ativados com um conjunto de registros de controle
e preso com um conjunto separado de registros de bandeira. Tudo
fontes so canalizados para uma nica interrupo USB
pedido, USBIF (PIR2 <5>), em que o microcontrolador do
interromper a lgica.
A Figura 17-8 mostra a lgica de interrupo para o USB
mdulo. Existem duas camadas de registos de interrupo em
o mdulo USB. O nvel superior composto por USB geral
interrupes de estado, que so habilitados e sinalizado no
UIE e UIR registra, respectivamente. O segundo nvel
consiste de condies de erro USB, que so ativados
e sinalizada nos registos UEIR e UEIE. Um
condio de interrupo em qualquer um destes provoca um erro de
USB
Interromper Flag (UERRIF) no nvel superior.
As interrupes podem ser utilizados para prender os eventos de
rotina num USB
transao. A Figura 17-9 mostra alguns eventos comuns
dentro de um quadro USB e suas interrupes correspondentes.
FIGURA 17-8: USB INTERRUPO FUNIL LOGIC
Segundo Nvel Interrupes USB
(Condies de erro USB)
UEIR (Flag) e UEIE (Ativar) Registra
Nvel Superior Interrupes USB
(Interrompe estado USB)
UIR (Flag) e UIE (Ativar) Registra
SOFIF
SOFIE
TRNIF
TRNIE
IDLEIF
IDLEIE
UERRIF
UERRIE
STALLIF
STALLIE
ACTVIF
ACTVIE
URSTIF
URSTIE
USBIF
BTSEF
BTSEE
BTOEF
BTOEE
DFN8EF
DFN8EE
CRC16EF
CRC16EE
CRC5EF
CRC5EE
PIDEF
PIDEE
FIGURA 17-9: Exemplo de uma operao de USB E EVENTOS INTERRUPO
De Anfitrio
Smbolo CONFIGURAO
De Anfitrio
De Anfitrio
Dados
Para Hospedar
Dados
De Anfitrio
Dados vazio
Transao
Transao
Completar
Para Hospedar
ACK
De Anfitrio
ACK
Para Hospedar
ACK Definir TRNIF
Definir TRNIF
Definir TRNIF
USB Reiniciar
URSTIF
Start-Of-Frame
SOFIF
Em sinal
De Anfitrio
OUT token
REAJUSTE
Dados diferenciais
SOF CONFIGURAO DATA STATUS SOF
Transfer Control(1)
Quadro 1 ms
Nota 1: A transferncia do controle mostrado aqui apenas um exemplo que mostra eventos que podem ocorrer para cada transao. Transferncias de controle
tpicos
vai se espalhar em vrios quadros.
DS39632E pgina 180 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
17.5.1 USB INTERRUPO STATUS
CADASTRE-SE (UIR)
O USB interrupo Estado de registro (Register 17-7) con-
tm os bits para cada bandeira do estado de interrupo USB
fontes. Cada uma destas fontes tem uma correspondente
interromper permitir bit no registo UIE. Todo o USB
sinalizadores de status so ORed juntos para gerar o USBIF
interromper bandeira para funil de interrupo do microcontrolador.
Uma vez que um bit de interrupo foi definido pelo SIE, deve
afastada pelo software por escrever um '0 '. Os bits de bandeira
tambm pode ser definido no software que pode ajudar no firmware
depurao.
Quando o mdulo USB est no Low-Power Suspender
modo (UCON <1> = 1), o SIE no se cronometrado.
Quando neste estado, o SIE no pode processar os pacotes,
e, por conseguinte, no possvel detectar novas condies de
interrupo
diferente da Atividade Deteco de interrupo, ACTVIF. O
ACTVIF bit normalmente usado por firmware USB para detectar
quando o microcontrolador deve trazer o mdulo USB
fora do Low-Power no modo de suspenso (UCON <1> = 0).
CADASTRE-SE 17-7:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
bit 6
UIR: USB INTERRUPO registrador de status
R/W-0
SOFIF
R/W-0
STALLIF
R/W-0
IDLEIF(1)
R/W-0
TRNIF(2)
R/W-0
ACTVIF(3)
R-0
UERRIF(4)
R/W-0
URSTIF
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
Unimplemented: Leia como '0 '
SOFIF: Start-Of-Frame token bit de interrupo
1= Um token Start-Of-Frame recebido pelo SIE
0= Sem sinal Start-Of-Frame recebido pelo SIE
STALLIF: A TENDA Handshake bit de interrupo
1= Um aperto de mo com box foi enviado pelo SIE
0= Um aperto de mo BLOQUEIO no foi enviada
IDLEIF: Ocioso Detectar bit de interrupo(1)
1= Condio de inativo detectado (constante estado ocioso de 3 ms ou mais)
0= No estado inativo detectado
TRNIF: Transao completa bit de interrupo(2)
1= Processamento de transao pendente completa; leitura USTAT registrar para obter informaes endpoint
0= Processamento de transao pendente no est completa ou nenhuma transao est pendente
ACTVIF: Atividade Bus Detectar bit de interrupo(3)
1= Atividade na D + / D-linhas foi detectado
0= Sem atividade detectada no D + / D-linhas
UERRIF: USB Condio de erro bit de interrupo(4)
1= Uma condio de erro ocorreu desmascarado
0= No ocorreu condio de erro desmascarado.
URSTIF: USB Reiniciar bit de interrupo
1= Valid Reiniciar USB ocorreu; 00h carregado em UADDR registo
0= No Reiniciar USB ocorreu
Uma vez que detectado um estado de espera, o usurio pode querer colocar o mdulo USB em modo de suspenso.
Desmarcar esta pouco far com que o FIFO USTAT para avanar (vlido somente para os tokens CONFIGURAO IN,
OUT e).
Este bit normalmente desmascarado somente aps a deteco de um caso de interrupo UIDLE.
Somente as condies de erro ativados atravs do registo UEIE ir definir este bit. Este bit apenas um pouco e status
no pode ser definido ou cancelado pelo usurio.
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
2:
3:
4:
v 2009 Microchip Technology Inc. DS39632E pgina 181
PIC18F2455/2550/4455/4550
17.5.1.1 Atividade Bus Detectar Bit Interrupo
(ACTVIF)
O bit ACTVIF no pode ser apagada imediatamente depois
o mdulo USB acorda de suspender ou enquanto o
Mdulo USB est suspenso. Alguns ciclos de clock so
necessrio para sincronizar o estado de hardware interno
mquina antes do bit ACTVIF podem ser apagadas
firmware. Limpar o bit ACTVIF antes do interno
hardware est sincronizado no pode ter um efeito sobre o
o valor de ACTVIF. Alm disso, se o mdulo USB
usa o relgio a partir do PLL 96 MHz fonte, depois
limpando o bit SUSPND, o mdulo USB pode no estar
imediatamente operacional enquanto aguarda a 96 MHz
PLL para bloquear. O cdigo do aplicativo deve limpar o
ACTVIF marcar como mostrado no Exemplo 17-1.
Nota: Apenas uma interrupo gerada ACTVIF
ao retomar a partir do barramento USB Ocioso
condio. Se o firmware usurio cancela a
ACTVIF bit, o bit no imediatamente
se ajustar novamente, mesmo quando no h
trfego de nibus contnua. Trfego de nibus deve
deixa tempo suficiente para gerar outra
Condio IDLEIF antes de outra ACTVIF
de interrupo pode ser gerado.
Exemplo 17-1:
Assemblia:
BCF
COMPENSAO ACTVIF BIT (UIR <2>)
UCON, SUSPND
Loop:
BCFUIR, ACTVIF
BTFSC UIR, ACTVIF
BRALoop
Feito:
C:
UCONbits.SUSPND = 0;
while (UIRbits.ACTVIF) {UIRbits.ACTVIF = 0; }
DS39632E pgina 182 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
17.5.2 INTERRUPO USB ATIVAR
CADASTRE-SE (UIE)
O USB interrupo Ativar registro (Register 17-8)
contm os bits de habilitao para a interrupo estado USB
fontes. A configurao de qualquer desses bits permitir a
respectiva fonte de interrupo no registo UIR.
Os valores neste registo s afetam a propagao
de uma condio de interrupo para o microcontrolador do inter-
corrupta lgica. Os bits de bandeira ainda so definidas por sua
interrupo
condies, permitindo-lhes a ser buscado e manuteno
sem realmente gerar uma interrupo.
CADASTRE-SE 17-8:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
bit 6
UIE: INTERRUPO USB ATIVAR REGISTRAR
R/W-0
SOFIE
R/W-0
STALLIE
R/W-0
IDLEIE
R/W-0
TRNIE
R/W-0
ACTVIE
R/W-0
UERRIE
R/W-0
URSTIE
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
Unimplemented: Leia como '0 '
SOFIE: Start-Of-Frame token interrupo Habilitar bit
1= Start-Of-Frame sinal de interrupo habilitado
0= Start-Of-Frame sinal de interrupo desativado
STALLIE: BLOQUEIO Handshake interrupo Habilitar bit
1= Interrupo BLOQUEIO habilitado
0= BLOQUEIO interrupo desativado
IDLEIE: Ocioso Detectar Interrupo Ativar bit
1= IDLE detectar interromper habilitado
0= IDLE detectar interromper desativado
TRNIE: Transao interrupo completa Ativar bit
1= Interrupo de transaes habilitado
0= Operao de interrupo desativado
ACTVIE: Atividade Bus Detectar Interrupo Ativar bit
1= Atividade Bus detectar interromper habilitado
0= Atividade Bus detectar interromper desativado
UERRIE: Erro de interrupo USB Habilitar bit
1= Interrupo de erro USB ativado
0= Interrupo de erro USB desativado
URSTIE: Redefinio de interrupo USB Habilitar bit
1= Reiniciar interrupo USB ativado
0= Reiniciar interrupo USB desativado
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
v 2009 Microchip Technology Inc. DS39632E pgina 183
PIC18F2455/2550/4455/4550
17.5.3 USB ERROR INTERRUPO STATUS
REGISTRO (UEIR)
O USB de erro de interrupo Estado de registro (Register 17-9)
contm os bits bandeira para cada uma das fontes de erro
no perifrico USB. Cada uma destas fontes est
controlada por um interruptor correspondente permitir bit em
o UEIE registar. Todos os sinalizadores de erro USB so ORed
em conjunto para gerar a interrupo da bandeira de erro USB
(UERRIF) no nvel superior da lgica de interrupo.
Cada bit de erro definido assim que a condio de erro
detectado. Assim, a interrupo no ir tipicamente
correspondem com o fim de um sinal a ser processado.
Uma vez que um bit de interrupo foi definido pelo SIE, deve
afastada pelo software por escrever um '0 '.
CADASTRE-SE 17-9:
R/C-0
BTSEF
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
UEIR: USB ERROR INTERRUPO registrador de status
U-0
-
U-0
-
R/C-0
BTOEF
R/C-0
DFN8EF
R/C-0
CRC16EF
R/C-0
CRC5EF
R/C-0
PIDEF
bit 0
C = bit Apagvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
BTSEF: Bit Coisas erro Flag bit
1= Um erro de material pouco tem sido detectada
0= Nenhum erro material bit
Unimplemented: Leia como '0 '
BTOEF: Bus Turnaround Time-out erro Flag bit
1Ocorreu = reviravolta Bus time-out (vezes mais do que 16 bits do ociosa de EOP anterior decorrido)
0= No nibus turnaround time-out
DFN8EF: Campo de dados Tamanho erro Flag bit
1= O campo de dados no um nmero inteiro de bytes
0= O campo de dados um nmero inteiro de bytes
CRC16EF: CRC16 falha Flag bit
1= O CRC16 falhou
0= O CRC16 passou
CRC5EF: CRC5 Anfitrio erro Flag bit
1= O pacote smbolo foi rejeitado devido a um erro CRC5
0= O pacote simblico foi aceito
PIDEF: PID Verificar falha Flag bit
1= Cheque PID no
0= PID cheque passado
bit 6-5
4 bits
bit 3
bit 2
bit 1
bit 0
DS39632E pgina 184 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
17.5.4 INTERRUPO DE ERRO USB ATIVAR
CADASTRE-SE (UEIE)
TheUSBErrorInterruptEnableregister
(Registrar 17-10) contm os bits de habilitao para cada um dos
as fontes de interrupo de erro USB. Definir qualquer um destes
bocados permitir a respectiva fonte de interrupo de erro no
o UEIR registar para propagar para o bit UERR em
o nvel mais alto da lgica de interrupo.
Tal como acontece com o registo UIE, os bits de habilitao afeta
apenas o
de propagao de uma condio de interrupo para o micro-
lgica de interrupo do controlador. Os bits de bandeira ainda so
definidas por
suas condies de interrupo, permitindo-lhes a ser buscado
e servidos sem realmente gerar uma interrupo.
CADASTRE-SE 17-10: UEIE: INTERRUPO DE ERRO USB ATIVAR REGISTRAR
R/W-0
BTSEE
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
U-0
-
U-0
-
R/W-0
BTOEE
R/W-0
DFN8EE
R/W-0
CRC16EE
R/W-0
CRC5EE
R/W-0
PIDEE
bit 0
BTSEE: Bit Coisas de erro de interrupo Habilitar bit
1= Bit coisas interrupo erro habilitado
0= Bit coisas interrupo erro desativado
Unimplemented: Leia como '0 '
BTOEE: Bus Turnaround Time-out de erro de interrupo Habilitar bit
1= Bus turnaround time-out interrupo erro habilitado
0= Bus turnaround time-out interrupo erro desativado
DFN8EE: Campo de dados Tamanho Erro de interrupo
Habilitar bit
1= Dados de campo de tamanho interrupo erro habilitado
0= Dados de campo de tamanho erro de interrupo desativado
CRC16EE: CRC16 falha Interrupo Ativar bit
1= CRC16 interrupo falha habilitado
0= CRC16 falha de interrupo desativado
CRC5EE: CRC5 Anfitrio Erro de interrupo Habilitar bit
1= CRC5 interrupo erro anfitrio habilitado
0= Interrupo erro CRC5 anfitrio desativado
PIDEE: PID Verificar falha de interrupo Habilitar bit
1= PID verificao de interrupo falha habilitado
0= Falha de verificao PID interromper desativado
bit 6-5
4 bits
bit 3
bit 2
bit 1
bit 0
v 2009 Microchip Technology Inc. DS39632E pgina 185
PIC18F2455/2550/4455/4550
17,6 Modos de alimentao USB
Muitas aplicaes USB provavelmente ter vrios diferente
conjuntos de requisitos de energia e configurao. O
modos de energia mais comuns encontrados so Bus
S poder, auto-Power Only e Dual Power com
Dominance auto-Power. Os casos mais comuns so
aqui apresentada.
O aplicativo deve nunca qualquer fonte de corrente para
o VBUS pino 5V do cabo USB.
FIGURA 17-11:
VBUS
~ 5V
VSELF
~ 5V
100 kW
AUTO-POWER ONLY
Pino de I / O
100 kW
VDD
Anexar Sense
17.6.1 PODER nibus s
Apenas no modo de energia Bus, todo o poder para a aplicao
desenhado a partir da USB (Figura 17-10). Isto
eficazmente o mtodo mais simples de energia para o dispositivo.
A fim de atender s exigncias atuais de irrupo do
Especificaes do USB 2.0, a capacidade efetiva total
aparecendo em VBUS e terra no devem ter mais
de 10 u . Se no, algum tipo de energizao limitante
necessria. Para mais detalhes, consulte a seo 7.2.4 do
Especificao USB 2.0.
De acordo com a especificao USB 2.0, todos os dispositivos USB
tambm deve suportar um modo de suspenso Low-Power. No
Suspender o modo USB, os dispositivos devem consumir mais
de 2,5 mA a partir da linha de 5V VBUS do cabo USB.
O anfitrio sinaliza o dispositivo USB para inserir os Suspender
modo, parando todo o trfego USB para que o dispositivo para obter
mais
de 3 ms. Isto far com que a condio de bits em IDLEIF
a UIR registrar para se tornar definido.
Durante o modo de suspenso USB, o D + ou D-pull-up
resistor deve permanecer ativo, que vai consumir algum
do permitido suspender atual: oramento de 2,5 mA.
VUSB
VSS
17.6.3 PODER DUAL COM AUTO-POWER
DOMINANCE
Algumas aplicaes podem exigir uma opo de poder dual.
Isso permite que o aplicativo para usar o poder interno pri-
Marily, mas mudar a alimentao da USB quando no inter-
poder nal est disponvel. Figura 17-12 mostra um simples
Dual Power com o exemplo Dominance Auto-Power,
que alterna automaticamente entre Auto-Power Only
e USB Bus poder s modos.
Dispositivos de alimentao dupla tambm deve atender toda a
especial
requisitos para o modo atual e suspender inrush
atual e no deve permitir que o mdulo USB at
VPH aumentado. Para obter descries de quem exigem-
mentos, ver Seo 17.6.1 "Power Bus Only" e
Seo 17.6.2 "Auto-Power Only".
Alm disso, os dispositivos de alimentao duplas nunca devem
fonte
atual para o VBUS pinos do cabo USB de 5V.
FIGURA 17-10: PODER nibus s
VBUS
~ 5V
VDD
FIGURA 17-12:
VUSB
VSS
VBUS
~ 5V
100 kW
VSELF
~ 5V
EXEMPLO DE ALIMENTAO DUAL
Pino de I / O
VDD
100 kW Anexar Sense
17.6.2 AUTO-POWER ONLY
VUSB
VSS
No modo S Auto-Power, a aplicao USB fornece
seu prprio poder, com muito pouco poder ser retirado
o USB. A Figura 17-11 mostra um exemplo. Note-se que um
anexar indicao adicionado para indicar quando o USB
foi ligado eo anfitrio est ativamente alimentar
VBUS.
A fim de atender s especificaes de conformidade, o USB
mdulo (e do resistor D + ou D-pull-up) no deve
ser ativado at que o anfitrio impulsiona ativamente VBUS alta. Um
dos pinos de I / O podem ser utilizados para esta finalidade.
Nota: Os usurios devem ter em mente os limites para
dispositivos de desenho de alimentao da USB.
De acordo com a especificao USB 2.0, este
no pode exceder 100 mA por baixo consumo de
energia
dispositivo ou 500 mA por dispositivo de alta potncia.
DS39632E pgina 186 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
17,7 Transmisso da Porta Paralela
A Transmisso de porta paralela (SPP) uma rota alternativa
opo para a RAM de dados alm USB. Usando a SPP, uma
endpoint pode ser configurado para enviar dados para ou receber
dados diretamente de hardware externo.
Esta metodologia apresenta possibilidades de design, onde
o microcontrolador atua como um gerenciador de dados, permitindo
a SPP para passar grandes blocos de dados sem o micro-
controlador realmente process-lo. Uma aplicao
exemplo pode incluir um sistema de aquisio de dados,
onde os dados so transmitidos a partir de um FIFO externo atravs
USB para o computador host. Neste caso, o ponto de extremidade
controle gerenciado pelo microcontrolador e dados brutos
movimento tratado externamente.
A SPP ativada como uma porta USB atravs de endpoint
o descritor reserva endpoint associados. O endpoint
deve ser activado da seguinte forma:
1.
2.
3.
Definir BDnADRL: BDnADRH para apontar para FFFFh.
Definir o bit KEN (BDnSTAT <5>) para deixar SIE manter
controlo de tampo.
Definir o bit INCDIS (BDnSTAT <4>) para desativar
incremento endereo automtico.
Consulte Seo 18,0 "streaming de porta paralela" para
mais informaes sobre o SPP.
Nota 1: Se um terminal est configurado para usar a
SPP SPP o mdulo deve ser tambm
configurado para usar o mdulo USB.
Caso contrrio, a operao inesperada pode
ocorrer.
2: Alm disso, se um terminal configurado para
utilizar a SPP, o tipo de transferncia de dados que
endpoint deve ser apenas isochronous.
17,8 Oscilador
O mdulo USB tem requisitos especficos de clock. Para
operao full-speed, a fonte do relgio deve ser 48 MHz.
Mesmo assim, o ncleo microcontrolador e outros perifricos
no so obrigados a correr naquela velocidade de clock ou mesmo
de
a mesma fonte do relgio. Opes de clock disponveis so
descrito em detalhe no Seo 2.3 "Configuraes oscilador
para USB ".
TABELA 17-6:
Nome
INTCON
IPR2
PIR2
Legenda:
Nota 1:
Ficheiros associados com o mdulo OPERAO USB (1)
Bit 7 Bit 6
PEIE / giel
CMIP
CMIF
Bit 5
TMR0IE
USBIP
USBIF
Bit 4
INT0IE
EEIP
EEIF
Bit 3
RBIE
BCLIP
BCLIF
Bit 2
TMR0IF
HLVDIP
HLVDIF
O bit 1
INT0IF
TMR3IP
TMR3IF
Bit 0
RBIF
CCP2IP
CCP2IF
Detalhes sobre o
pgina
53
56
56
GIE / GIEH
OSCFIP
OSCFIF
- = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pelo mdulo USB.
Esta tabela inclui apenas os SFRs mapeados hardware localizados no Banco 15 do espao de memria de dados. O buffer
Registradores descritor, que so mapeados em Bank 4 e no so verdadeiros SFRs, so listados separadamente na Tabela 17-5.
v 2009 Microchip Technology Inc. DS39632E pgina 187
PIC18F2455/2550/4455/4550
Nome
PIE2
UCON
UCFG
USTAT
UADDR
UFRML
UFRMH
UIR
UIE
UEIR
UEIE
UEP0
UEP1
UEP2
UEP3
UEP4
UEP5
UEP6
UEP7
UEP8
UEP9
UEP10
UEP11
UEP12
UEP13
UEP14
UEP15
Legenda:
Nota 1:
Bit 7
OSCFIE
-
UTEYE
-
-
FRM7
-
-
-
BTSEF
BTSEE
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Bit 6
CMIE
PPBRST
UOEMON
ENDP3
ADDR6
FRM6
-
SOFIF
SOFIE
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Bit 5
USBIE
SE0
-
ENDP2
ADDR5
FRM5
-
STALLIF
STALLIE
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Bit 4
EEIE
PKTDIS
UPUEN
ENDP1
ADDR4
FRM4
-
IDLEIF
IDLEIE
BTOEF
BTOEE
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
EPHSHK
Bit 3
BCLIE
USBEN
UTRDIS
ENDP0
Addr3
FRM3
-
TRNIF
TRNIE
DFN8EF
DFN8EE
Bit 2
HLVDIE
RESUMO
FSEN
DIR
Addr2
FRM2
FRM10
ACTVIF
ACTVIE
CRC16EF
CRC16EE
O bit 1
TMR3IE
SUSPND
PPB1
PPBI
Addr1
FRM1
FRM9
UERRIF
UERRIE
CRC5EF
CRC5EE
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
EPINEN
Bit 0
CCP2IE
-
PPB0
-
ADDR0
FRM0
FRM8
URSTIF
URSTIE
PIDEF
PIDEE
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
EPSTALL
Detalhes sobre o
pgina
56
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
57
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
EPCONDIS EPOUTEN
- = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pelo mdulo USB.
Esta tabela inclui apenas os SFRs mapeados hardware localizados no Banco 15 do espao de memria de dados. O buffer
Registradores descritor, que so mapeados em Bank 4 e no so verdadeiros SFRs, so listados separadamente na Tabela 17-5.
DS39632E pgina 188 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
17,10 Viso de USB
Esta seo apresenta alguns dos conceitos bsicos USB
e informao til necessria para projetar um USB
dispositivo. Embora a quantidade de informaes fornecidas neste
seco, existe uma multiplicidade de informaes fornecidas
dentro das especificaes do USB e especificaes de classe.
Assim, o leitor convidado para se referir a uma porta USB
especificaes para obter mais informaes (www.usb.org). Se
voc est muito familiarizado com os detalhes do USB, ento este
seo serve como uma reciclagem bsica de alto nvel da USB.
17.10.3 TRANSFERNCIAS
Existem quatro tipos de transferncia definidos na USB
especificao.
Isochronous: Isto proporciona um tipo de transferncia
Mtodo para grandes quantidades de dados (at
1023 bytes), com prazo de entrega garantido;
Contudo, a integridade dos dados no assegurada. Isto
bom para aplicaes de streaming onde pequenos dados
perda no crtico, tais como udio.
Massa: Este tipo de mtodo de transferncia permite grande
quantidades de dados a serem transferidas com assegurada
integridade dos dados, no entanto, a pontualidade de entrega
no assegurada.
Interrupo: Este tipo de transferncia prev
entrega oportuna garantida para os pequenos blocos de dados,
acrescida garantida a integridade dos dados.
Controle: Este tipo fornece para configurao do dispositivo
controlar.
Enquanto dispositivos de velocidade total suportar todos os tipos de
transferncia,
dispositivos de baixa velocidade so limitadas a interromper e
controlar
apenas transferncias.
17.10.1 QUADRO LAYERED
Funcionalidade do dispositivo USB est estruturado em camadas
quadro graficamente mostrado na Figura 17-13. Cada
nvel est associado a um nvel funcional dentro do
dispositivo. A camada mais elevada, diferente do dispositivo, o
configurao. Um dispositivo pode ter vrias configura-
es. Por exemplo, um dispositivo em particular podem ter
vrios requisitos de energia com base na auto-Power Only
ou nibus poder s modos.
Para cada configurao, pode haver mltiplas
interfaces. Cada interface poderia apoiar um determinado
de modo que a configurao.
Abaixo da interface o ponto de extremidade (s). Os dados so
diretamente
movido a este nvel. Podem existir tantos quanto
16 terminais bidirecionais. Endpoint 0 sempre um
controlar o ponto final e, por padro, quando o dispositivo est
ligado
o nibus, Endpoint 0 devem estar disponveis para configurar o
dispositivo.
17.10.4 PODER
Poder est disponvel a partir da Universal Serial Bus. O
Especificao USB define os requisitos de energia de nibus.
Os dispositivos podem ser tanto auto-alimentado ou nibus
powered.
Dispositivos de auto-alimentado extrair energia de um provedor
externo
fonte, enquanto os dispositivos alimentados por barramento usar
energia fornecida
do nibus.
17.10.2 FRAMES
Informaes comunicadas no nibus so agrupadas em
1 ms intervalos de tempo, referidos como quadros. Cada quadro
pode
contm muitas transaes para vrios dispositivos e
endpoints. A Figura 17-9 mostra um exemplo de um
transao dentro de um quadro.
FIGURA 17-13: CAMADAS USB
Dispositivo
Para outras configuraes (se houver)
Configurao
Para outras interfaces (se houver)
Interface Interface
Endpoint Endpoint Endpoint Endpoint Endpoint
v 2009 Microchip Technology Inc. DS39632E pgina 189
PIC18F2455/2550/4455/4550
A especificao USB limita a alimentao feita a partir do
nibus. Cada dispositivo assegurada a aproximadamente 100 mA
5V (uma unidade de carga). Energia adicional poder ser solicitada,
, at um mximo de 500 mA. Note-se que o poder acima
uma unidade de carga um pedido eo host ou hub no
obrigado a fornecer a corrente extra. Assim, um dispositivo
capazes de consumir mais do que uma unidade de carga deve ser
capaz de manter a configurao de um baixo consumo de energia
de uma unidade de uma
carregar ou menos, se necessrio.
A especificao USB tambm define um modo de suspenso.
Nesta situao, a corrente deve ser limitada a 2,5 mA,
uma mdia de mais de 1 segundo. Um dispositivo deve digitar um
Suspender estado aps 3 ms de inatividade (ou seja, no SOF
tokens para 3 ms). Um dispositivo entrar em modo de suspenso
deve cair o consumo de corrente dentro de 10 ms aps
Suspender. Da mesma forma, quando a sinalizao de um wake-up,
o
dispositivo deve sinalizar um wake-up dentro de 10 ms de desenho
corrente acima do limite de suspenso.
17.10.6.2 Configurao Descriptor
O descritor de configurao fornece informaes sobre
os requisitos de energia do dispositivo e quantos
diferentes interfaces so suportados quando nesta confi-
rao. Pode haver mais do que uma configurao de um
dispositivo (ou seja, de baixa potncia e configuraes de alta
potncia).
17.10.6.3 Interface Descriptor
A interface descritor detalha o nmero de finais
pontos utilizados nesta interface, bem como a classe do
interface. Pode haver mais do que uma interface para uma
configurao.
17.10.6.4 Endpoint Descriptor
17.10.5 ENUMERATION
O descritor de endpoint identifica o tipo de transferncia
(Seo 17.10.3 "Transferncias") e direco, bem
como alguns outros detalhes para o desfecho. Pode haver
muitos pontos de extremidade de uma extremidade do dispositivo e
pode ser
compartilhado em diferentes configuraes.
Quando o dispositivo inicialmente ligado ao bus, o hospedeiro
entra em um processo de enumerao, na tentativa de identificar
o dispositivo. Essencialmente, o hospedeiro interroga o dispositivo
coleta de informaes, tais como o consumo de energia, os dados
taxas e tamanhos, protocolo e outro descritivo
informao; descritores conter esta informao. A
enumerao processo tpico seria como se segue:
1. USB Reiniciar: Reinicie o dispositivo. Assim, o dispositivo
no est configurado e no tem um endereo
(Endereo 0).
Obter descritor de dispositivo: O host solicita um
pequena poro do descritor de dispositivo.
USB Reiniciar: Reinicie o dispositivo novamente.
Definir Endereo: O host atribui um endereo para o
dispositivo.
Obter descritor de dispositivo: O host recupera o
descritor de dispositivo, coleta de informaes, tais como
fabricante, tipo de dispositivo, o mximo controle
tamanho do pacote.
Obter descritores de configurao.
Obter quaisquer outros descritores.
Defina uma configurao.
17.10.6.5 Cordas Descriptor
Muitos dos descritores anterior referncia um ou
mais descritores de corda. Descritores corda fornecer
informao legvel sobre a camada
(Seo 17.10.1 "Layered-Quadro") eles
descrever. Muitas vezes, essas seqncias aparecem no host
ajudar a identificar o utilizador do dispositivo. Descritores de corda
so
geralmente opcionais para poupar memria e so codificados em
um formato unicode.
2.
3.
4.
5.
17.10.7 Velocidade do
barramento
Cada dispositivo USB deve indicar a sua presena e nibus
acelerar para o anfitrio. Isto conseguido atravs de um
Resistor de 1,5 kW, que conectado ao barramento no
hora do evento anexo.
Dependendo da velocidade do dispositivo, a resistncia
ou pega o D + ou D-line para 3.3V. Para um
dispositivos de baixa velocidade, o resistor de pull-up est ligado a
a linha D. Para um dispositivo full-speed, o resistor de pull-up
ligada linha D +.
6.
7.
8.
17.10.8
O processo de enumerao exata depende do host.
ESPECIFICAES classe e
MOTORISTAS
17.10.6 DESCRITORES
H oito diferentes tipos descritores padro de
quais cinco so os mais importantes para este dispositivo.
17.10.6.1 Descritor de dispositivo
O descritor de dispositivo fornece informaes gerais,
como fabricante, nmero do produto, nmero de srie
a classe de dispositivo e o nmero de configuraes.
Existe apenas um descritor de dispositivo.
Especificaes USB incluem especificaes de classe que
fornecedores de sistemas operacionais opcionalmente suportar.
Exemplos de classes incluem udio, armazenamento em massa,
Comunicaes e interface humana (HID). Na maioria
casos, um motorista exigido no lado do host para 'falar' com o
Dispositivo USB. Em aplicaes personalizadas, um motorista pode
precisar
a ser desenvolvido. Felizmente, os drivers esto disponveis para
sistemas hospedeiros mais comuns para o mais comum
as classes de dispositivos. Assim, esses drivers podem ser
reutilizados.
DS39632E pgina 190 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
18,0
Nota:
STREAMING PORTO PARALELO
A Transmisso de porta paralela apenas
disponvel em dispositivos 40/44-pin.
PIC18F4455/4550 dispositivos USB fornecem uma transmisso
Porta Paralela como uma interface de alta velocidade para dados
mveis
e a partir de um sistema externo. Este porta paralela
funciona como uma porta mestre, com chip de escolha
e as sadas de relgio para controlar o movimento de dados para
dispositivos escravos. Os dados podem ser canalizados quer
directamente a
o USB SIE ou ao ncleo do microprocessador. Figura 18-1
mostra uma vista em bloco do caminho de dados spp.
Alm disso, o SPP pode proporcionar um tempo multiplexado
informaes de endereamento, juntamente com os dados usando o
segunda sada de strobe. Assim, o nmero de ponto de extremidade
USB
pode ser escrita em conjunto com os dados para aquele
endpoint.
18,1 SPP Configurao
FIGURA 18-1: SPP DATA PATH
PIC18F4455/4550
A operao do SPP controlada por dois registos:
SPPCON e SPPCFG. O registo SPPCON
(Registo 18-1) controla o funcionamento geral do
porta paralela e determina se ele opera com USB ou
controle microcontrolador. O registo SPPCFG
(Registrar 18-2) controla a configurao de tempo e pin
sadas.
18.1.1 Ativando o SPP
USB
SIE
SPP
Lgica
CPU
CK1SPP
CK2SPP
OESPP
CSSPP
SPP <7:00>
Para ativar o SPP, defina o bit SPPEN (SPPCON <0>).
Alm disso, os bits de TRIS para o correspondente SPP
pinos devem ser configurados corretamente. No mnimo:
Bits TRISD <07:00> deve ser definido (= 1)
Bits TRISE <02:01> devem ser apuradas (= 0)
CK1SPP Se para ser usado:
Bit TRISE <0> devem ser apuradas (= 0)
CSPP Se para ser usado:
Bit TRISB <4> devem ser apuradas (= 0)
CADASTRE-SE 18-1:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7-2
bit 1
SPPCON: SPP registro de controle
U-0
-
U-0
-
U-0
-
U-0
-
U-0
-
R/W-0
SPPOWN
R/W-0
SPPEN
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
Unimplemented: Leia como '0 '
SPPOWN: SPP bit propriedade
1= USB perifrico controla o SPP
0= Microcontrolador controla diretamente o SPP
SPPEN: SPP Habilitar bit
1= SPP est habilitado
0= SPP est desativado
bit 0
v 2009 Microchip Technology Inc. DS39632E-pgina 191
PIC18F2455/2550/4455/4550
CADASTRE-SE 18-2:
R/W-0
CLKCFG1
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7-6
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SPPCFG: SPP configurao de registro
R/W-0 R/W-0
CSEN
R/W-0
CLK1EN
R/W-0
WS3
R/W-0
WS2
R/W-0
WS1
R/W-0
WS0
bit 0
CLKCFG0
CLKCFG1: CLKCFG0: Bits de configurao de clock SPP
1x = CLK1 alterna em ler ou escrever de um endereo de endpoint Odd;
Clk2 alterna em ler ou escrever de um endereo de endpoint Mesmo
01 = CLK1 alterna na gravao; clk2 alterna em ler
00 = CLK1 alterna somente em escrever o endereo endpoint; clk2 alterna em dados ler ou escrever
CSEN: SPP Chip Select Pin Habilitar bit
1= Pino RB4 controlado pelo mdulo e funes como sada CS SPP SPP
0= RB4 funciona como uma porta de E / S digital
CLK1EN: SPP CLK1 Pin Habilitar bit
1= Pino RE0 controlado pelo mdulo e funes SPP SPP como sada CLK1
0= RE0 funciona como uma porta de E / S digital
WS3: WS0: SPP Espere Unidos pedaos
1111 = 30 estados de espera adicionais
1110 = 28 estados de espera adicionais


0001 = 2 estados de espera adicionais
0000 = 0 estados de espera adicionais
bit 5
4 bits
bit 3-0
18.1.2 Overclock DATA 18.1.3 Estados de espera
A SPP tem quatro sadas de controle:
Duas sadas de clock separado (CK1SPP e
CK2SPP)
Output enable (OESPP)
Chip select (CSSPP)
Juntos, eles permitem vrias configuraes diferentes
para controlar o fluxo de dados para os dispositivos escravos.
Quando
todas as sadas de controle so usados, as trs principais opes
so: CLK1 relgios endpoint informaes de endereo enquanto
Clk2 relgios de dados
CLK1 relgios escrever operaes enquanto clk2 relgios
l
CLK1 relgios de dados endereo mpar enquanto clk2 relgios
Mesmo o envio de dados
Opes de controle adicionais so derivadas por desativar o
CK1SPP e sadas CSSPP. Estes so ativados ou
desativada com o CLK1EN e CSEN pedaos, respectivamente,
localizado na Register 18-2.
A SPP projetado com a capacidade de adicionar espera
estados a ler e escrever operaes. Isto permite o acesso
em paralelo dispositivos que necessitam de tempo extra para
acesso.
Estado de espera clocking baseia-se na fonte de dados de relgio.
Se o SPP est configurado para operar como um terminal USB,
aguarde estados so baseados no relgio USB. Da mesma forma,
se a SPP est configurado para operar a partir do micro-
controlador, e depois esperar estados so baseados na instruo
taxa (FOSC / 4).
O WS3: WS0 bits definidos os estados de espera utilizados pelo
SPP,
com uma gama de estados de espera no para 30 estados de
espera, em multi-
pios de dois. Os estados de espera so adicionados de forma
simtrica para
todas as operaes, com um meio adicionado seguindo cada um
dos
dois ciclos de clock normalmente exigido para a transao.
Figura 18-3 ea Figura 18-4 mostram exemplos de sinalizao
com 4 estados de espera adicionados a cada transao.
18.1.4 SPP PULL-UPS
As linhas de dados SPP (SPP <07:00>) esto equipados com
interna pull-ups para aplicaes que podem deixar o porto
num estado de alta impedncia. O pull-ups so
ativado usando o bit de controle, RDPU (PORTE <7>).
DS39632E pgina 192 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 18-2: CALENDRIO PARA MICROCONTROLLER escrever o endereo, ESCREVER DE DADOS E
Ler dados (NO estados de espera)
FOSC / 4
OESPP
CSSPP
CK1SPP
CK2SPP
SPP <7:00> ADDR DATA DATA
Escrever Endereo
MOVWF SPPEPS
Gravar dados
MOVWF SPPDATA
Ler dados
MOVF SPPDATA, W
FIGURA 18-3:
USB Relgio
OESPP
CSSPP
CK1SPP
CK2SPP
SPP <7:00>
Tempo para escrever endereo USB E DATA (4 estados de espera)
Escrever Endereo
2 Aguarde Unidos
Gravar dados
2 Aguarde Unidos 2 Aguarde Unidos 2 Aguarde Unidos
FIGURA 18-4:
USB Relgio
OESPP
CSSPP
CK1SPP
CK2SPP
SPP <7:00>
CALENDRIO PARA USB escrever o endereo e ler dados (4 estados de espera)
Escrever Endereo Ler dados
2 Aguarde Unidos 2 Aguarde Unidos
2 Aguarde Unidos 2 Aguarde Unidos
v 2009 Microchip Technology Inc. DS39632E pgina 193
PIC18F2455/2550/4455/4550
18,2 Configurao para Controle USB
18.3.1 SPP INTERRUPTS
Quando o SPP est configurado para operao USB, os dados
pode ser cronometrado directamente para e do perifrico USB
sem a interveno do microcontrolador, assim, nenhuma
necessrio um tempo de processo. Os dados so cronometrados
dentro ou para fora
da SPP com endpoint (endereo) informao em primeiro lugar,
seguido de um ou mais bytes de dados, como mostrado na
Figura 18-5. Este ideal para aplicaes que requerem
iscrono, grande movimentao de dados de volume.
Os passos a seguir so necessrios para configurar o SPP para
Controle USB:
1.
2.
3.
4.
5.
6.
Configure a SPP como desejado, incluindo espera
estados e relgios.
Definir o bit SPPOWN para a posse USB.
Definir o descritor de endereo inicial do buffer
(BDnADRL: BDnADRH) a FFFFh.
Definir o bit KEN (BDnSTAT <5>) para o buffer
descritor mantido indefinidamente pelo SIE.
Definir o bit INCDIS (BDnSTAT <4>) para desativar
buffer de incremento automtico de endereo.
Definir o bit SPPEN de ativar o mdulo.
Nota: Se um terminal USB est configurado para usar a
SPP, do tipo de que a transferncia de dados
endpoint deve ser apenas isochronous.
Quando possudo pelo ncleo do microcontrolador, o controle pode
gerar uma interrupo para notificar o aplicativo quando
cada um ler e escrever operao for concluda. O
interrupo bit bandeira SPPIF (PIR1 <7>) e ativado por
o bit SPPIE (PIE1 <7>). Como todos os outros microcontroladores
interrompe nvel, que pode ser definido como uma prioridade baixa
ou elevada.
Isto feito com o bit SPPIP (IPR1 <7>).
18.3.2 Escrito ao SPP
Uma vez configurado, por escrito, ao SPP realizada por
escrevendo aos registos SPPEPS e SPPDATA. Se o
SPP est configurado para relgio fora endpoint endereo infor-
mao com os dados, escrevendo para o registo SPPEPS
inicia o ciclo de escrita de endereo. Caso contrrio, a escrita
comeou por escrever os dados para o registo SPPDATA.
O bit SPPBUSY indica o estado do endereo
e os ciclos de escrita de dados.
O seguinte uma seqncia de gravao exemplo:
1. Escreva o endereo de 4 bits para o registo SPPEPS.
A SPP iniciado automaticamente escrever o
endereo. Se o endereo de gravao no usado, ento
pule
ao passo 3.
Monitorizar o bit SPPBUSY para determinar quando o
endereo foi enviada. A durao depende
nos estados de espera.
Anote os dados para o registo SPPDATA. O
SPP inicia automaticamente a gravao dos dados.
Monitorizar o bit SPPBUSY para determinar quando o
dados foram enviados. A durao depende
os estados de espera.
Volte para as etapas 1 ou 3 a escrever um novo endereo
ou dados.
Nota: O bit SPPBUSY devem ser entrevistados para
a certeza de que sucessivas escreve para o
SPPEPS ou SPPDATA registros no
superado o tempo de espera, devido ao estado de
espera
criao.
2.
18,3 Configurao de Controle de microcontrolador
3.
4.
A SPP tambm pode atuar como uma porta paralela para o
microcontrolador. Neste modo, os SPPEPS registar
(Registrar 18-3) fornece gravao de status e endereo
controlar. Os dados so gravados e lidos a partir do SPPDATA
registrar. Quando a SPP de propriedade da
microcontrolador, o relgio SPP impulsionado pela
relgio instruo (FOSC / 4).
Os passos a seguir so necessrios para configurar o SPP para
operao microcontrolador:
1.
2.
3.
Configure a SPP como desejado, incluindo espera
estados e relgios.
Limpar o bit SPPOWN.
Conjunto SPPEN para permitir que o mdulo.
5.
FIGURA 18-5: Transferncia de dados entre SIE USB E SPP
Escreva o nmero de endpoint USB para SPP
Escreve dados USB sada para SPP ou
ler dados USB de entrada de SPP
Endpoint
Endereo
Byte 0 Byte 1 Byte 2 Byte 3 Byte n
DS39632E pgina 194 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
18.3.3 Leitura do SPP 3.
Leitura do SPP envolve a leitura do SPPDATA
registrar. Lendo a registar a primeira vez que inicia o
operao de leitura. Quando a leitura est terminada, indicado pela
o bit SPPBUSY, o SPPDATA sero carregados com o
dados atuais.
O seguinte um exemplo ler seqncia:
1. Escreva o endereo de 4 bits para o registo SPPEPS.
A SPP iniciado automaticamente escrever o
endereo. Se o endereo de gravao no usado, em
seguida, pular para
o passo 3.
Monitorizar o bit SPPBUSY para determinar quando o
endereo foi enviada. A durao depende
nos estados de espera.
Leia os dados do registo SPPDATA, o
os dados da operao de leitura anterior
retornado. A SPP iniciado automaticamente a leitura
para o prximo ciclo de leitura.
Monitorizar o bit SPPBUSY para determinar quando o
de dados tenha sido lida. A durao depende
os estados de espera.
Volte para a etapa 3 para ler o byte atual
o SPP e iniciar o prximo ciclo de leitura.
4.
5.
2.
CADASTRE-SE 18-3:
R-0
RDSPP
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
SPPEPS: SPP ENDEREO terminais e registrador de status
R-0 U-0
-
R-0
SPPBUSY
R/W-0
Addr3
R/W-0
Addr2
R/W-0
Addr1
R/W-0
ADDR0
bit 0
WRSPP
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
RDSPP: SPP Leia bit Estado (Vlido quando SPPCON <SPPOWN> = 1, USB)
1= A ltima operao foi uma leitura a partir da SPP
0= A ltima operao no foi uma leitura a partir da SPP
WRSPP: SPP Escrever bit Estado (Vlido quando SPPCON <SPPOWN> = 1, USB)
1= A ltima operao foi a escrever para o SPP
0= A ltima transao no foi a escrever para o SPP
Unimplemented: Leia como '0 '
SPPBUSY: SPP Handshaking bit Override
1= O SPP est ocupado
0= O SPP est pronto para aceitar um outro pedido de leitura ou gravao
Addr3: ADDR0: Endpoint bits de endereo SPP
1111 = Endpoint Endereo 15


0001
0000 = Endpoint Address 0
bit 6
bit 5
4 bits
bit 3-0
v 2009 Microchip Technology Inc. DS39632E pgina 195
PIC18F2455/2550/4455/4550
TABELA 18-1:
Nome
SPPCON(3)
SPPCFG(3)
SPPEPS(3)
SPPDATA(3)
PIR1
PIE1
IPR1
PORTE
Ficheiros associados com a porta paralela STREAMING
Bit 7
-
RDSPP
Dados7
SPPIF
(3)
Bit 6
-
WRSPP
Dados6
ADIF
ADIE
ADIP
-
Bit 5
-
CSEN
-
DATA5
RCIF
RCIE
RCIP
-
Bit 4
-
CLK1EN
SPPBUSY
Data4
TXIF
TXIE
TXIP
-
Bit 3
-
WS3
Addr3
DATA3
SSPIF
SSPIE
SSPIP
RE3(1,2)
Bit 2
-
WS2
Addr2
DATA2
CCP1IF
CCP1IE
CCP1IP
RE2(3)
O bit 1
SPPOWN
WS1
Addr1
DATA1
TMR2IF
TMR2IE
TMR2IP
RE1(3)
Bit 0
SPPEN
WS0
ADDR0
DATA0
TMR1IF
TMR1IE
TMR1IP
RE0(3)
Restabelecer
Valores
na pgina
57
57
57
57
56
56
56
56
CLKCFG1 CLKCFG0
SPPIE(3)
SPPIP(3)
RDPU(3)
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados para a porta paralela de streaming.
Nota 1: Implementado somente quando Master Clear funcionalidade desativada (bit Configurao MCLRE = 0).
2: RE3 o nico bit PORTE implementado em ambos os 28 pinos e dispositivos 40/44-pin. Todos os outros bits so
implementado somente quando PORTE implementado (ou seja, dispositivos 40/44-pin).
3: Estes registos e / ou bits so no implementado em dispositivos de 28 pinos.
DS39632E pgina 196 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
19,0 MESTRE SNCRONO
PORTA SERIAL (MSSP)
MDULO
Mestre SSP Module (MSSP)
Viso global
19,3 SPI Modo
O modo SPI permite oito bits de dados a ser sincronizadamente
transmitidos e recebidos simultaneamente. Todos os quatro
modos da SPI so suportados. Para realizar
comunicao, so tipicamente utilizados trs pinos:
Fora de srie de dados (SDO) - RC7/RX/DT/SDO
Dados de srie no (SDI) - RB0/AN12/INT0/FLT0/SDI/SDA
Serial Clock (SCK) - RB1/AN10/INT1/SCK/SCL
Alm disso, um quarto pino pode ser utilizado, quando em um
escravo
modo de operao:
Slave Select (SS) - RA5/AN4/SS/HLVDIN/C2OUT
A Figura 19-1 mostra o diagrama de blocos do MSSP
mdulo quando operando em modo SPI.
19,1
O mdulo de porta serial sncrona Master (MSSP)
uma interface serial, til para se comunicar com outro
dispositivos perifricos ou microcontrolador. Estes perifricos
dispositivos podem ser EEPROMs seriais, registradores de
deslocamento,
drivers de vdeo, conversores A / D, etc O mdulo MSSP
pode operar em um dos dois modos:
Serial Peripheral Interface (SPI)
Circuito Inter-integrado (I2C )
- Modo Master completa
- Modo Slave (com chamada endereo geral)
A interface I2C suporta os seguintes modos de
Equipamento:
modo Master
Modo Multi-Master
Modo Slave
FIGURA 19-1: MSSP DIAGRAMA DE BLOCO
(SPI MODE)
Interno
Barramento de
dados
Ler
SSPBUF reg
Escrever
19.2 Controle de Registros
SSPSR reg
SDI
bit0 Mudana
Relgio
O mdulo tem trs MSSP controle associado regis-
ters. Estes incluem um registrador de status (SSPSTAT) e
dois registradores de controle (SSPCON1 e SSPCON2). O
o uso desses registros e sua configurao individual
pedaos diferem significativamente dependendo se o MSSP
mdulo operado em modo I2C ou SPI.
Detalhes adicionais so fornecidos sob o indivduo
sees.
SDO
SS Controle
Permitir
SS
Borda
Selecionar
2
Relgio Selecione
SSPM3: SSPM0
SMP: CKE
4
TMR2 Output
2
2
Borda
Selecionar
Prescaler tosc
4, 16, 64
( )
SCK
Dados para TX / RX em SSPSR
TRIS bit
Nota: Apenas as funes relevantes para pino SPI
operao so mostrados aqui.
v 2009 Microchip Technology Inc. DS39632E pgina 197
PIC18F2455/2550/4455/4550
19.3.1 REGISTOS
O mdulo MSSP tem quatro registros para o modo SPI
operao. Estes so os seguintes:
MSSP Controle Register 1 (SSPCON1)
MSSP Estado Register (SSPSTAT)
Serial recepo / transmisso do buffer Registrar
(SSPBUF)
MSSP Shift (SSPSR) - No diretamente
acessvel
SSPCON1 e SSPSTAT so o controle e status
registra em SPI modo de operao. O SSPCON1
registo legvel e gravvel. Os seis bits mais baixos de
o SSPSTAT so somente leitura. Os dois bits superiores do
SSPSTAT so de leitura / gravao.
SSPSR a mudana de registo usado para transferir dados ou
para fora. SSPBUF o buffer de registro a que os dados bytes
so escritos ou lidos.
Em operaes de recebimento, SSPSR e SSPBUF juntos
criar um receptor de buffer duplo. Quando SSPSR
recebe um byte completo, ele transferido para SSPBUF
ea interrupo SSPIF est definido.
Durante a transmisso, o SSPBUF no duplo
tamponado. A gravao para SSPBUF ir gravar tanto SSPBUF
e SSPSR.
CADASTRE-SE 19-1:
R/W-0
SMP
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
SSPSTAT: MSSP registrador de status (SPI MODE)
R/W-0
CKE(1)
R-0
D / D
R-0
P
R-0
S
R-0
R / W
R-0
UA
R-0
BF
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SMP: Bit Sample
Modo Master SPI:
1= Dados de entrada amostrado no final do tempo de sada de dados
0= Dados de entrada amostrado a meio do tempo de sada de dados
Modo Slave SPI:
SMP deve ser limpo quando SPI usado no modo Slave.
CKE: SPI Relgio Selecione bit(1)
1= Transmisso ocorre em transio de ativo para o estado do relgio Ocioso
0= Transmisso ocorre em transio de inativo para o estado do relgio ativo
D / D: Bits de dados / Address
Usado apenas no modo I2C.
P: Pare bit
Usado apenas no modo I2C. Este bit apagado quando o mdulo MSSP est desativado, SSPEN est
desmarcada.
S: Comece bit
Usado apenas no modo I2C.
R / W: Read / Write bit Informao
Usado apenas no modo I2C.
UA: Atualize bit Endereo
Usado apenas no modo I2C.
BF: Buffer cheio bit Estado (Modo de recepo apenas)
1= Receber completa, SSPBUF est cheio
0= Receber no est completa, SSPBUF est vazia
Polaridade de Estado relgio definido pelo bit CKP (SSPCON1 <4>).
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
DS39632E pgina 198 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 19-2:
R/W-0
WCOL
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SSPCON1: MSSP registro de controle 1 (SPI MODE)
R/W-0 R/W-0
SSPEN
R/W-0
CKP
R/W-0
SSPM3
R/W-0
SSPM2
R/W-0
SSPM1
R/W-0
SSPM0
bit 0
(1)
SSPOV
WCOL: Escrever Collision Detect bit (modo de transmisso apenas)
1= O SSPBUF est escrito enquanto ele ainda est transmitindo a palavra anterior
(Deve ser limpo por software)
0= No coliso
SSPOV: Receba Overflow bit Indicator(1)
Modo Slave SPI:
1= Um novo byte recebido enquanto o SSPBUF ainda est segurando os dados anteriores. Em caso de excesso de
fluxo, os dados no SSPSR perdida. Overflow s pode ocorrer em modo Slave. O usurio deve ler o
SSPBUF, mesmo que apenas a transmisso de dados, para evitar a configurao de overflow (deve ser limpo por
software).
0N = transbordamento
SSPEN: Mestre Synchronous Serial Port Ativar bit
1= Ativa porta serial e configura SCK, SDO, SDI e SS como pinos da porta serial(2)
0= Desabilita a porta serial e configura esses pinos como I / O pinos da porta(2)
CKP: Relgio Polaridade Selecione bit
1= Estado ocioso para o relgio um alto nvel
0= Estado ocioso para o relgio um nvel baixo
SSPM3: SSPM0: Mestre Synchronous Serial Port Mode Select pedaos
0101 = Modo Slave SPI, clock = pino SCK, controle SS pin desativado, SS pode ser usado como eu O pin /(3)
0100 = Modo Slave SPI, clock = SCK pino, SS controle pin habilitado(3)
0011 = SPI modo Master, clock = TMR2 sada / 2(3,4)
0010 = SPI modo Master, clock = FOSC/64(3)
0001 = SPI modo Master, clock = FOSC/16(3)
0000 = SPI modo Master, clock = FOSC / 4(3)
No modo Master, o bit de overflow no est definido, pois cada nova recepo (e transmisso) iniciada por
escrito ao SSPBUF.
Quando ativado, estes pinos devem estar devidamente configurado como entrada ou sada.
Combinaes de bits no especificamente listados aqui ou so reservados ou implementadas no modo I2C s.
PR2 = 0x00 no suportada durante a execuo do mdulo SPI em TMR2 sada / modo 2.
bit 6
bit 5
4 bits
bit 3-0
Nota 1:
2:
3:
4:
v 2009 Microchip Technology Inc. DS39632E pgina 199
PIC18F2455/2550/4455/4550
19.3.2 OPERAO
Ao inicializar o SPI, vrias opes precisam ser
especificada. Isto feito atravs da programao do apropriada
bits de controle (SSPCON1 <05:00> e SSPSTAT <07:06>).
Estes bits de controle permitem o seguinte a ser especificado:
Modo Master (SCK a sada do relgio)
Modo Slave (SCK a entrada de clock)
Polaridade Clock (estado ocioso de SCK)
Exemplo de dados de fase de entrada (no meio ou no final de
dados
tempo de sada)
Borda do Relgio (sada de dados sobre o aumento / queda
borda
SCK)
Taxa de relgio (apenas modo Master)
Selecione o modo Slave (somente no modo Slave)
O mdulo consiste num MSSP transmitir / receber turno
registo (SSPSR) e um registo tampo (SSPBUF). O
SSPSR transfere os dados para dentro e para fora do dispositivo,
MSb
em primeiro lugar. O SSPBUF detm os dados que foram gravados
no
SSPSR at que os dados recebidos imediata. Uma vez que o oito
bits de dados foram recebidos, esse byte transferido para
o SSPBUF. Em seguida, o buffer cheio detectar bit,
BF (SSPSTAT <0>) eo bit de flag de interrupo, SSPIF, so
definido. Este duplo-buffering dos dados recebidos
(SSPBUF) permite que o prximo byte para iniciar a recepo antes
a leitura dos dados que acabou de ser recebidos. Qualquer escrever
para o
SSPBUF durante a transmisso / recepo de dados
ser ignorada ea Write Collision detectar bit, WCOL
(SSPCON1 <7>), ser definido. Software usurio deve desmarcar




o bit WCOL de modo que possa ser determinado se o seguimento
o de escrita (s) SSPBUF concluda
com xito.
Nota: Quando o software de aplicao de esperar-
o para receber dados vlidos, o SSPBUF
deve ser lido antes do prximo byte de
dados a serem transferidos so gravados no SSPBUF.
Software aplicativo deve seguir este
processar, mesmo quando o contedo atual
SSPBUF no so importantes.
O buffer bit completa, BF (SSPSTAT <0>), indica quando
SSPBUF tenha sido carregado com os dados recebidos
(Transmisso est completa). Quando o SSPBUF lido,
o bit BF est desmarcada. Estes dados podem ser irrelevante se o
SPI apenas um transmissor. Geralmente, a interrupo MSSP
usada para determinar quando a transmisso / recepo
foi concluda. Se o mtodo de interrupo no vai
ser usado, ento polling software pode ser feito para garantir
que no ocorra uma coliso de gravao. Exemplo 19-1
mostra o carregamento da SSPBUF (SSPSR) para dados
transmisso.
O SSPSR no diretamente lidos ou escritos e pode
s pode ser acessado por abordar a SSPBUF.
Alm disso, o Estado registo MSSP (SSPSTAT)
indica as vrias condies de status.
Nota: O SSPBUF no pode ser utilizado com
ler-modificar-escrever instrues, como
BCF, BTFSC e COMF.
Exemplo 19-1: CARREGANDO O SSPBUF (SSPSR) registrar
, Certifique-se bandeira de interrupo claro (pode ter sido definido a partir de
anterior
transmisso).
, Executam a leitura, mesmo se os dados no SSPBUF no importante
, Salvar byte recebido anteriormente em user RAM, se os dados so significativos
, WREG = ndice de TxDados (dados do usurio para enviar)
, Os dados de carga para enviar para buffer de transmisso
, Repetir at terminar a transmisso de dados
, Bandeira de interrupo definido quando a transmisso
est completa
TransmitSPI:
BCFPIR1, SSPIF
MOVF
MOVWF
MOVF
MOVWF
SSPBUF, W
RxData
TxDados, W
SSPBUF
WaitComplete:
BTFSSPIR1, SSPIF
BRAWaitComplete
DS39632E pgina 200 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
19.3.3 HABILITAO SPI I / O
Para ativar a porta serial, MSSP Habilitar bit, SSPEN
(SSPCON1 <5>), deve ser definido. Para repor ou reconfigurar
Modo SPI, limpar o bit SSPEN, reinicializar o SSPCON
registros e, em seguida, definir o bit SSPEN. Isto configura
os pinos SDI, SDO, SCK e SS como os pinos da porta serial. Para
os pinos de comportar-se como a funo da porta serial, alguns
devem
tem seus bits de direo de dados (no registo TRIS)
devidamente programado como se segue:
SDI deve ter TRISB <0> set bit (configurar como
digital no ADCON1)
SDO deve ter TRISC <7> pouco apagada
SCK (modo Master) deve ter TRISB <1> bit
apuradas
SCK (modo escravo) deve ter TRISB <1> conjunto de bits
(Configurar como digital ADCON1)
SS deve ter TRISA <5> set bit (configurar como
digital no ADCON1)
Qualquer funo de porta serial que no desejada pode ser
substitudo por programar os dados correspondentes
direo (TRIS) registrar o valor oposto. Entrada
funes que no sero utilizados no precisa ser
configurados como entradas digitais.
19.3.4 Conexo tpica
A Figura 19-2 mostra uma conexo normal entre dois
microcontroladores. O controlador mestre (processador 1)
inicia a transferncia de dados, enviando o sinal de SCK.
Os dados so deslocados para fora de ambos os registos de
deslocamento no seu
clock programado e agarrou o oposto
borda do relgio. Ambos os processadores devem ser pro-
programado para a mesma polaridade do Relgio (CKP), ambos
controladores iria enviar e receber dados ao mesmo
tempo. Se os dados so significativos (ou dados fictcios)
depende do software aplicativo. Isto leva a
trs cenrios para a transmisso de dados:
Mestre envia dados - Escravo envia dados fictcios
Mestre envia dados - Escravo envia dados
Mestre envia dados fictcios - Escravo envia dados
FIGURA 19-2: SPI ligao mestre / escravo
SPI Mestre SSPM3: SSPM0 = 00xxb
SDO SDI
SPI Slave SSPM3: SSPM0 = 010xb
Buffer de entrada serial
(SSPBUF)
Buffer de entrada serial
(SSPBUF)
Shift Register
(SSPSR)
MSb LSB
SDI SDO
Shift Register
(SSPSR)
MSb LSB
SCK
Processador de 1
Relgio Serial
SCK
PROCESSADOR 2
v 2009 Microchip Technology Inc. DS39632E pgina 201
PIC18F2455/2550/4455/4550
19.3.5 MODO DE MESTRE
O mestre pode iniciar a transferncia de dados a qualquer momento
porque controla a SCK. O mestre determina
quando o slave (processador 2, A Figura 19-2)
transmitir dados pelo protocolo de software.
No modo Master, os dados so transmitidos / recebidos como
Assim que a SSPBUF est escrito. Se o SPI
s vai receber, a sada SDO poderia ser dis-
abled (programada como entrada). O registo SSPSR
continuar a deslocar no sinal presente no pino de SDI
a uma taxa programada de relgio. medida que cada byte
recebido, ser carregado para a SSPBUF quanto
Se um byte normais recebidos (interrompe e pedaos de status
adequadamente definido). Isto poderia ser til no receptor
aplicaes como um modo de "Linha Activity Monitor".
A polaridade do relgio selecionado por adequadamente
programar o bit CKP (SSPCON1 <4>). Isto, ento,
daria formas de onda para a comunicao como SPI
mostrado na Figura 19-3, A Figura 19-5 e Figura 19-6,
onde o MSB transmitido em primeiro lugar. No modo Mestre, o
SPI clock rate (taxa de bits) programvel pelo usurio para ser um
o seguinte:




FOSC / 4 (ou TCY)
FOSC/16 (ou 4 TCY)
FOSC/64 (ou 16 TCY)
Timer2 sada / 2
Isto permite uma taxa de dados mxima (a 48 MHz)
12,00 Mbps.
Quando usado em Timer2 sada / modo 2, a taxa de bits pode
ser configurado atravs do registo Perodo PR2 ea
Timer2 prescaler. No entanto, escrever para SSPBUF faz
no est claro o valor atual TMR2 em hardware. Dependem-
o sobre o valor atual de TMR2 quando firma de o usurio
Ware grava SSPBUF, isto pode resultar numa
imprevisvel largura MSb bits, a no ser que o processo de
Exemplo 19-2 usado.
A Figura 19-3 mostra as formas de onda para o modo Mestre.
Quando o bit CKE est definido, os dados do SDO vlido antes
existe uma borda relgio em SCK. A mudana das entradas
amostra mostrado com base no estado do bit de PMS. O
momento em que a SSPBUF carregado com o recebido
de dados mostrado.
Exemplo 19-2: CARREGANDO SSPBUF com o modo TEMP2 / 2 CLOCK
, Certifique-se bandeira de interrupo claro (pode ter sido definido a partir de
anterior
transmisso)
, Executam a leitura, mesmo se os dados no SSPBUF no importante
, Salvar byte recebido anteriormente em user RAM, se os dados so significativos
, Desligue o temporizador ao carregar SSPBUF
, Ajustar o temporizador para um estado conhecido
, WREG = ndice de TxDados (dados do usurio para enviar)
, Os dados de carga para enviar para buffer de transmisso
, Comear temporizador para iniciar a transmisso
, Repetir at terminar a transmisso de dados
, Bandeira de interrupo definido quando a transmisso
est completa
TransmitSPI:
BCFPIR1, SSPIF
MOVF
MOVWF
BCF
CLRF
MOVF
MOVWF
BSF
SSPBUF, W
RxData
T2CON, TMR2ON
TMR2
TxDados, W
SSPBUF
T2CON, TMR2ON
WaitComplete:
BTFSSPIR1, SSPIF
BRAWaitComplete
DS39632E pgina 202 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 19-3:
Escreva para
SSPBUF
SCK
(CKP = 0
CKE = 0)
SCK
(CKP = 1
CKE = 0)
SCK
(CKP = 0
CKE = 1)
SCK
(CKP = 1
CKE = 1)
SDO
(CKE = 0)
SDO
(CKE = 1)
SDI
(SMP = 0)
Entrada
Amostra
(SMP = 0)
SDI
(SMP = 1)
Entrada
Amostra
(SMP = 1)
SSPIF
SSPSR para
SSPBUF
Prximo Ciclo Q4
depois Q2
bit 7 bit 0
bit 7
bit 7
bit 6
bit 6
bit 5
bit 5
4 bits
4 bits
bit 3
bit 3
bit 2
bit 2
bit 1
bit 1
bit 0
bit 0
SPI MODO DE ONDA (MASTER MODE)
4 Relgio
Modos
bit 7 bit 0
v 2009 Microchip Technology Inc. DS39632E pgina 203
PIC18F2455/2550/4455/4550
19.3.6 Modo Slave
No modo escravo, os dados so transmitidos e recebidos,
os pulsos de clock externo aparecem SCK. Quando o
ltimo bit fechada, o SSPIF interrupo bandeira bit definido.
Enquanto estiver no modo escravo, o relgio externo fornecido
pelo
a fonte de relgio externo no pino SCK. Este externo
relgio deve atender s vezes altos e baixos mnimos como
nas especificaes eltricas.
Enquanto estiver no modo de espera, o escravo pode transmitir /
receber
dados. Quando um byte recebido, o dispositivo pode ser con-
figurado para acordar de sono.
transmitida byte e torna-se uma separao de potencial. Exter-
resistores pull-up/pull-down nal pode ser desejvel
dependendo da aplicao.
Nota 1: Quando o mdulo est no modo SPI Escravo
pincontrolenabledwithSS
(SSPCON1 <3:00> = 0100), o mdulo SPI
ir repor se o pino SS est definido para VDD.
2: Se o SPI usado no modo Slave com CKE
definido, ento o controle pino SS deve ser
ativado.
Quando o mdulo de SPI repe o contador de bit forado
em '0 '. Isto pode ser feito por qualquer forando o pino SS
um nvel elevado ou limpando o bit SSPEN.
Para emular a comunicao de dois fios, o pino SDO pode
estar ligado ao pino de SDI. Quando o SPI precisa
operar como um receptor, o pino pode ser configurado SDO
como uma entrada. Isso desativa as transmisses do SDO.
A SDI sempre pode ser deixado como uma entrada (funo SDI)
uma vez que no pode criar um conflito de nibus.
19.3.7 SLAVE SELECIONE
SINCRONIZAO
O pino SS permite um modo Slave Synchronous. O
SPI deve estar no modo Slave com o controle SS pin
ativado (SSPCON1 <3:00> = 04h). Quando o pino SS
baixa, a transmisso ea recepo so ativados eo
SDO pin conduzido. Quando o pino SS vai alto, o
SDO pino j no conduzido, mesmo no meio de um
FIGURA 19-4:
SS
SCK
(CKP = 0
CKE = 0)
SCK
(CKP = 1
CKE = 0)
SLAVE SINCRONIZAO ONDA
Escreva para
SSPBUF
SDO bit 7 bit 6 bit 7 bit 0
SDI
(SMP = 0)
Entrada
Amostra
(SMP = 0)
SSPIF
Interromper
Bandeira
SSPSR para
SSPBUF
bit 0
bit 7 bit 7
Prximo Ciclo Q4
depois Q2
DS39632E pgina 204 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 19-5:
SS
Opcional
SCK
(CKP = 0
CKE = 0)
SCK
(CKP = 1
CKE = 0)
Escreva para
SSPBUF
SDO
SDI
(SMP = 0)
Entrada
Amostra
(SMP = 0)
SSPIF
Interromper
Bandeira
SSPSR para
SSPBUF
Prximo Ciclo Q4
depois Q2
bit 7 bit 6 bit 5 4 bits bit 3 bit 2 bit 1 bit 0
SPI MODO DE ONDA (slave com CKE = 0)
bit 7 bit 0
FIGURA 19-6:
SS
No Opcional
SCK
(CKP = 0
CKE = 1)
SCK
(CKP = 1
CKE = 1)
Escreva para
SSPBUF
SDO
SDI
(SMP = 0)
Entrada
Amostra
(SMP = 0)
SSPIF
Interromper
Bandeira
SSPSR para
SSPBUF
SPI MODO DE ONDA (slave com CKE = 1)
bit 7 bit 6 bit 5 4 bits bit 3 bit 2 bit 1 bit 0
bit 7 bit 0
Prximo Ciclo Q4
depois Q2
v 2009 Microchip Technology Inc. DS39632E pgina 205
PIC18F2455/2550/4455/4550
19.3.8 OPERAO NO PODER de gesto
MODOS
19.3.9 EFEITOS DE UM REAJUSTE
No modo Master SPI, relgios de mdulos podem estar operando
a uma velocidade diferente do que quando em modo Full-Power, em
o caso do modo de suspenso, todos os relgios so interrompidas.
Na maioria dos modos de inactividade, um relgio fornecido ao
perif-
als. O relgio deve ser a partir do relgio principal
fonte, o relgio secundrio (Timer1 oscilador) ou
Fonte INTOSC. Ver Seo 2.4 "fontes de relgio
e oscilador de comutao " para obter informaes adicionais.
Na maioria dos casos, a velocidade que o mestre temporiza SPI
dados no importante, contudo, este deve ser
avaliada para cada sistema.
Se MSSP interrupes so ativados, eles podem acordar o con-
troller do modo de suspenso ou de um dos modos ocioso quando
o mestre completar o envio de dados. Se uma sada do
Dormir ou modo de espera no desejada, interrompe MSSP
deve ser desativada.
Se o modo de suspenso selecionado, todos os relgios do
mdulo so
parou e a transmisso / recepo, permanecer no
nesse estado at que os dispositivos acorda. Aps o dispositivo
retorna ao modo Run, o mdulo ser retomada
transmitir e receber dados.
No modo Slave SPI, o SPI transmisso / recepo de Mudana
registo funciona de forma assncrona para o dispositivo. Este
permite que o dispositivo seja colocado em qualquer poder de
gesto
modo de dados e a ser deslocada para dentro da SPI Transmit /
Receba registrador de deslocamento. Quando todos os oito bits
foram
recebido, o MSSP interrupo bit flag ser definido e se
ativado, vai acordar o dispositivo.
A Redefinir desativa o mdulo MSSP e termina a
transferncia atual.
19.3.10 BUS modo de compatibilidade
A Tabela 19-1 mostra o grau de compatibilidade entre o
modos SPI padro e os estados do CKP e
Bits de controle CKE.
TABELA 19-1: SPI MODOS DE NIBUS
Controle do Estado Bits
CKP
0
0
1
1
CKE
1
0
1
0
SPI Standard Mode
Terminologia
0, 0
0, 1
1, 0
1, 1
H tambm um pouco SMP que controla quando os dados
amostrado.
TABELA 19-2:
Nome
INTCON
PIR1
PIE1
IPR1
TRISA
TRISB
TRISC
SSPBUF
SSPCON1
SSPSTAT
REGISTOS ASSOCIADO SPI OPERAO
Bit 7 Bit 6 Bit 5 Bit 4
INT0IE
TXIF
TXIE
TXIP
TRISA4
TRISB4
-
CKP
P
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
TRISA3
TRISB3
-
SSPM3
S
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
TRISA2
TRISB2
TRISC2
SSPM2
R / W
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
TRISA1
TRISB1
TRISC1
SSPM1
UA
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
TRISA0
TRISB0
TRISC0
SSPM0
BF
Restabelecer
Valores
na pgina
53
56
56
56
56
56
56
54
54
54
GIE / GIEH PEIE / giel TMR0IE
SPPIF(1)
SPPIE(1)
SPPIP(1)
-
TRISB7
TRISC7
WCOL
SMP
ADIF
ADIE
ADIP
TRISA6(2)
TRISB6
TRISC6
SSPOV
CKE
RCIF
RCIE
RCIP
TRISA5
TRISB5
-
SSPEN
D / D
MSSP buffer de recepo / transmisso Registrar
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pela MSSP no modo SPI.
Nota 1: Estes bits so no implementado em dispositivos de 28 pinos; sempre manter esses bits claras.
2: RA6 est configurado como um pino de porta com base em vrios modos de oscilador primrios. Quando o pino porta est
desativada,
todos os bits associados ler '0 '.
DS39632E pgina 206 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
19,4
Modo I2C
19.4.1 REGISTOS
O mdulo MSSP no modo 2C I implementa completamente todas
funes de mestre e escravo (incluindo chamada geral
de apoio) e fornece interrupes em iniciar e parar os bits
em hardware para determinar um autocarro gratuito (multi-master
funo). O mdulo MSSP implementa o padro
especificaes do modo, assim como de 7 bits e 10 bits
endereamento.
Dois dos pinos so utilizados para a
transferncia de dados:
relgio de srie (SCL) - RB1/AN10/INT1/SCK/SCL
dados seriais (SDA) - RB0/AN12/INT0/FLT0/SDI/SDA
O usurio deve configurar esses pinos como entradas, definindo
os TRIS pedaos associados.
O mdulo MSSP tem seis registros de operao I2C.
Estes so os seguintes:




MSSP Controle Register 1 (SSPCON1)
MSSP Controle Register 2 (SSPCON2)
MSSP Estado Register (SSPSTAT)
Serial recepo / transmisso do buffer Registrar
(SSPBUF)
MSSP Shift (SSPSR) - No diretamente
acessvel
MSSP Address Register (SSPADD)
SSPCON1, SSPCON2 e SSPSTAT so o controle
eo estado registra em operao no modo I2C. O
SSPCON1 e SSPCON2 registros so legveis e
gravvel. Os seis bits mais baixos do SSPSTAT so somente leitura.
Os dois bits superiores do SSPSTAT so de leitura / gravao.
SSPSR a mudana de registo usado para transferir dados ou
para fora. SSPBUF o buffer de registro a que os dados bytes
so escritos ou lidos.
SSPADD registo contm o endereo do dispositivo escravo quando
o MSSP est configurado no modo Slave I2C. Quando o
MSSP est configurado no modo Master, menor de sete
pedaos de ato SSPADD como o Baud Rate Generator recarga
valor.
Em operaes de recebimento, SSPSR e SSPBUF juntos
criar um receptor de buffer duplo. Quando SSPSR
recebe um byte completo, ele transferido para SSPBUF
ea interrupo SSPIF est definido.
Durante a transmisso, o SSPBUF no duplo
tamponado. A gravao para SSPBUF ir gravar tanto SSPBUF
e SSPSR.
FIGURA 19-7: MSSP DIAGRAMA DE BLOCO
(I2C MODO )
Interno
Barramento de
dados
Ler
SCL
Mudana
Relgio
SSPSR reg
SDA
MSb
SSPBUF reg
Escrever
LSB
End. jogo Combinar Detectar
Mscara de endereo
SSPADD reg
Iniciar e
Pare bit Detectar
Definir, Reset
S, P bocados
(SSPSTAT reg)
Nota: Apenas os nomes de portas de E / S so usados neste diagrama
para
razes de brevidade. Consulte o texto para uma lista completa
de
funes multiplexado.
v 2009 Microchip Technology Inc. DS39632E pgina 207
PIC18F2455/2550/4455/4550
CADASTRE-SE 19-3:
R/W-0
SMP
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SSPSTAT: MSSP registrador de status (I2C MODO )
R/W-0
CKE
R-0
D / D
R-0
P(1)
R-0
S(1)
R-0
R / W(2,3)
R-0
UA
R-0
BF
bit 0
SMP: Taxa de excurso pouco controle
No modo Master ou Slave:
1= Controle da taxa de Slew desabilitado para o modo de velocidade padro (100 kHz e 1
MHz)
0= Controle da taxa de rotao habilitado para o modo de alta velocidade (400 kHz)
CKE: SMBus Selecione bit
No modo Master ou Slave:
1= Ativar entradas especficas SMBus
0= Desativar entradas especficas SMBus
D / D: Bits de dados / Address
No modo Master:
Reservados.
No modo Slave:
1= Indica que o ltimo byte recebido ou transmitido havia dados
0= Indica que o ltimo byte recebido ou transmitido estava endereo
P: Pare bit(1)
1= Indica que um bit de parada foi detectado pela ltima vez
0= Bit de parada no foi detectada ltima
S: Comece bit(1)
1= Indica que um bit de incio foi detectado ltima
0= Bit de incio no foi detectada ltima
R / W: Read / Write bit Informao(2,3)
No modo Slave:
1= Leia
0= Escrever
No modo Master:
1= Transmisso est em andamento
0= Transmit no est em andamento
UA: Atualize bit Endereo (somente no modo Slave 10-Bit)
1= Indica que o usurio precisa atualizar o endereo no cadastro SSPADD
0= Endereo no precisa ser atualizado
BF: Buffer cheio bit Estado
No modo de transmisso:
1= SSPBUF est cheio
0= SSPBUF est vazia
: No modo Receber
1= SSPBUF est cheio (no inclui os bits ACK e Stop)
0= SSPBUF est vazia (no inclui os bits ACK e Stop)
Este bit cancelado em Reiniciar e quando SSPEN est desmarcada.
Este bit tem a informao de bit R / W aps o ltimo jogo endereo. Este bit s vlida a partir da
abordar combinar para o prximo bit Start, Stop bit ou no bit ACK.
ORing este bit com NEE, RSEN, PEN, RCEN ou ACKEN vai indicar se o MSSP est no modo ativo.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
2:
3:
DS39632E pgina 208 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 19-4:
R/W-0
WCOL
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SSPCON1: MSSP registro de controle 1 (I2C MODO )
R/W-0 R/W-0
SSPEN
R/W-0
CKP
R/W-0
SSPM3
R/W-0
SSPM2
R/W-0
SSPM1
R/W-0
SSPM0
bit 0
SSPOV
WCOL: Escrever Collision Detect bit
Mestre em modo de transmisso:
1= A gravao para o SSPBUF foi tentada quando as condies I2C no eram vlidos para a
transmisso a ser iniciado (deve ser limpo por software)
0= No coliso
No Slave modo de transmisso:
1= O SSPBUF est escrito enquanto ele ainda est transmitindo a palavra anterior (devem ser apuradas em
software)
0= No coliso
: No modo (modos de mestre ou escravo) Receber
Este um "no me importo" bit.
SSPOV: Receba Overflow bit Indicator
: No modo Receber
1= Um byte recebido enquanto o SSPBUF ainda est segurando o byte anterior (devem ser apuradas em
software)
0N = transbordamento
No modo de transmisso:
Este um "no me importo" bit em modo de transmisso.
SSPEN: Mestre Synchronous Serial Port Ativar bit
1= Permite que a porta serial e configura os pinos SDA e SCL como os pinos da porta serial(1)
0= Desabilita a porta serial e configura esses pinos como I / O pinos da porta(1)
CKP: SCK Lanamento bit Controle
No modo Slave:
1= Relgio Lanamento
0= Possui relgio baixa (trecho do relgio), utilizado para garantir o tempo de
configurao de dados
No modo Master:
No utilizado neste modo.
SSPM3: SSPM0: Mestre Synchronous Serial Port Mode Select pedaos
1111 = Modo Slave I2C, o endereo de 10 bits com Start e Stop interrompe bit habilitado(2)
1110 = Modo Slave I2C, endereo de 7 bits com Start e Stop interrompe bit habilitado(2)
1011 = Modo Master Controlled Firmware I2C (escravo ociosa)(2)
1000 = I2C modo Mestre, o relgio FOSC = / (4 * (SSPADD + 1))(2,3)
0111 = Modo Slave I2C, o endereo de 10 bits(2)
0110 = Modo Slave I2C, endereo de 7 bits(2)
Quando ativado, os pinos SDA e SCL deve estar devidamente configurado como entrada ou sada.
Combinaes de bits no especificamente listados aqui so reservados ou seja implementado apenas no modo SPI.
Orientao s; taxa de transmisso exata ligeiramente dependente das condies do circuito, mas a maior taxa de
relgio
no deve exceder essa frmula. SSPADD valores de '0 'e '1' no so suportados.
bit 6
bit 5
4 bits
bit 3-0
Nota 1:
2:
3:
v 2009 Microchip Technology Inc. DS39632E pgina 209
PIC18F2455/2550/4455/4550
CADASTRE-SE 19-5:
R/W-0
GCEN
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
bit 6
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SSPCON2: MSSP controle Register 2 (I2C MESTRE MODE)
R/W-0 R/W-0
ACKDT(1)
R/W-0
ACKEN(2)
R/W-0
RCEN(2)
R/W-0
PEN(2)
R/W-0
RSEN(2)
R/W-0
SEN(2)
bit 0
ACKSTAT
GCEN: Chamada Geral Ativar (somente no modo Slave) bit
No utilizado em modo Master.
ACKSTAT: Reconhea bit Estado (modo Master transmisso apenas)
1= Reconhea no foi recebida de escravo
0= Reconhecer foi recebida escravo
ACKDT: Reconhea bit de dados (modo Master Receber apenas)(1)
1= No reconhecem
0= Reconhecer
ACKEN: Reconhea Sequence Habilitar bit(2)
1= Iniciar Reconhea seqncia em SDA e SCL pinos e transmitir ACKDT bit de dados. Automaticamente
apuradas por hardware.
0= Reconhecer seqncia Ocioso
RCEN: Receba Habilitar bit (modo Master Receber apenas)(2)
1= Ativa o modo de recebimento de I2C
0= Receber Ocioso
PENA: Condio de Parada Habilitar bit(2)
1= Iniciar condio de parada em SDA e SCL pinos. Apagadas automaticamente por hardware.
0= Pare condio Ocioso
RSEN: Repetiu Iniciar Condio Habilitar bit(2)
1= Iniciado repetida Comece condio em SDA e SCL pinos. Apagadas automaticamente por hardware.
0= Repetida condio Iniciar Ocioso
SEN: Comece Condio Ativa / Estende Habilitar bit(2)
1= Iniciar condio Iniciar na SDA e SCL pinos. Apagadas automaticamente por hardware.
0= Comece condio de inativo
Valor que ser transmitido quando o utilizador inicia uma sequncia Reconhecer no final de um receber.
Se o mdulo I2C est ativo, esses bits no pode ser definido (sem spool) eo SSPBUF no pode ser escrito (ou
escreve para o SSPBUF esto desativados).
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
2:
DS39632E pgina 210 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 19-6:
R/W-0
GCEN
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
SSPCON2: MSSP controle Register 2 (I2C MODO SLAVE)
R/W-0 R/W-0
ADMSK5
R/W-0
ADMSK4
R/W-0
ADMSK3
R/W-0
ADMSK2
R/W-0
ADMSK1
R/W-0
SEN(1)
bit 0
ACKSTAT
GCEN: Chamada Geral Ativar (somente no modo Slave) bit
1= Ativar interromper quando um endereo de chamada geral (0000h) recebida no SSPSR
0= Endereo chamada geral desativado
ACKSTAT: Reconhea bit Estado
No utilizado no modo Slave.
ADMSK5: ADMSK2: Slave Address Mask Escolha pedaos
1= Mscara de bits correspondentes de SSPADD habilitado
0= Mscara de bits correspondentes de SSPADD desativado
ADMSK1: Slave Address Mask Selecione bit
Em 7-Bit Modo de endereamento:
1= Mscara de SPADD <1> apenas habilitado
0= Mscara de SPADD <1> apenas desativado
Em 10-Bit Modo de endereamento:
1= Mscara de SSPADD <01:00> habilitado
0= Mscara de SSPADD <01:00> desativado
SEN: Estique Habilitar bit(1)
1= Relgio alongamento est habilitado tanto para transmisso de escravos e escravos receber (trecho
ativado)
0= Relgio alongamento desativado
Se o mdulo I2C est activo, este bit no pode ser definido (sem spool) eo SSPBUF no pode ser escrito (ou
escreve para o SSPBUF esto desativados).
bit 6
bit 5-2
bit 1
bit 0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E pgina 211
PIC18F2455/2550/4455/4550
19.4.2 OPERAO 19.4.3.1 Dirigindo-se
As funes do mdulo MSSP so ativados atravs da criao
MSSP Habilitar bit, SSPEN (SSPCON1 <5>).
O registo SSPCON1 permite o controle da I2C
operao. Quatro bits de seleco de modo (SSPCON1 <3:00>)
permitir que um dos seguintes modos de I2C ser seleccionados:




I2C Mestre modo, o relgio
Eu modo Slave 2C (endereo de 7 bits)
Modo Slave 2C I (endereo 10-bit)
Eu modo Slave 2C (endereo de 7 bits), com incio e
Parar interrompe bit habilitado
Modo Slave I 2C (endereo 10-bit), com incio e
Parar interrompe bit habilitado
I modo Master 2C Firmware controlada, escravo
Ocioso
Seleo de qualquer modo 2C I com o conjunto de bits SSPEN
obriga os pinos SCL e SDA ser open-dreno,
desde que estes pinos so programadas como entradas por
definindo o TRISC apropriado ou pedaos TRISD. Para garantir
o bom funcionamento do mdulo, resistores pull-up deve
ser fornecidos externamente aos pinos de SCL e SDA.
Uma vez que o mdulo MSSP foi ativado, ele aguarda
uma condio comeam a ocorrer. Aps a condio em Iniciar,
os 8 bits so deslocados para o registro SSPSR. Tudo
bits de entrada so coletados com a borda de subida do
relgio line (SCL). O valor do registo SSPSR <07:01>
em comparao com o valor do registo SSPADD. O
endereo comparado com o bordo descendente do oitavo
relgio de pulso (SCL). Se o jogo endereos eo BF
e SSPOV bits so claras, ocorrem os seguintes eventos:
1.
2.
3.
4.
O valor SSPSR registo carregado para o
SSPBUF.
O buffer bit completa, BF, est definido.
Um sinal ACK gerado.
O MSSP interrupo bit Bandeira, SSPIF, est definido (e
interrupo gerada, se habilitado) na queda
aresta da nona SCL pulso.
19.4.3 Modo Slave
No modo Slave, os pinos SCL e SDA deve ser
configurados como entradas (TRISC <04:03> set). O MSSP
mdulo ir substituir o estado de entrada com os dados de sada
quando necessrio (slave-transmissor).
Hardware modo Slave sempre ir gerar anthe I
interromper em um jogo de endereo. Mascaramento de endereo
ser
permitir que o equipamento para gerar uma interrupo para mais
de um endereo (at 31 em 7 bits de endereamento e at
em 10 a 63 bits de endereamento). Atravs do modo de escolha
pedaos, o usurio tambm pode optar por interromper em Iniciar e
Pare de bits.
Quando um endereo correspondido, ou a transferncia de dados
aps
um endereo de partida recebido, o equipamento automtico
automaticamente ir gerar a Reconhecer (ACK) de pulso
e carregar o SSPBUF com o valor recebido
atualmente no registo SSPSR.
Qualquer combinao das seguintes condies causaro
o mdulo MSSP no dar este pulso ACK:
O buffer bit completa, BF (SSPSTAT <0>), foi criado
antes da transferncia foi recebida.
O bit overflow, SSPOV (SSPCON1 <6>), foi
definido antes da transferncia foi recebida.
Neste caso, o valor SSPSR registo no carregado
no SSPBUF, mas pouco, SSPIF, est definido. O bit BF
apuradas pela leitura do SSPBUF, enquanto bit,
SSPOV, eliminado atravs de software.
A entrada de relgio SCL deve ter um elevado valor e
baixo para uma operao adequada. Os tempos de alta e baixa do
Especificao I2C, bem como o requisito de o
Mdulo MSSP, so mostrados no parmetro de temporizao 100 e
parmetro 101.
2C
Em 10-Bit Modo de endereamento, dois bytes de endereo precisa
ser recebida pelo escravo. Os cinco bits mais significativos
(MSB) do primeiro byte de endereo especifica se este um 10-bit
endereo. Bit R / W (SSPSTAT <2>) deve especificar um
escrever para o dispositivo escravo vai receber a segunda
endereo de byte. Para um endereo de 10 bits, o primeiro byte
seria igual a '11110 A8 A9 0 ', onde 'A9' e 'A8'
so os dois MSBs do endereo. A seqncia de
eventos para endereamento de 10 bits como se segue, com as
etapas
7 a 9 para o escravo-transmissor:
1. Receba primeiro byte (alto) de endereo (bits SSPIF,
BF e UA (SSPSTAT <1>) so definidas no endereo
combinar).
Atualizar o cadastro SSPADD com o segundo (baixo)
byte de endereo (limpa bit, UA, e libera o
Linha SCL).
Leia o SSPBUF (limpa bit, BF) e
claro bit bandeira, SSPIF.
Receba segundo byte (baixo) de endereo (bits,
SSPIF, BF e UA, so definidos).
Atualizar o cadastro SSPADD com o primeiro (alto)
byte de endereo. Se o jogo libera linha SCL, este
vai limpar bit, UA.
Leia o SSPBUF (limpa bit, BF) e
claro bit bandeira, SSPIF.
Receba repetida condio Start.
Receba primeiro byte (alto) de endereo (bits, SSPIF
e BF, so definidos).
Leia o SSPBUF (limpa bit, BF) e
claro bit bandeira, SSPIF.
2.
3.
4.
5.
6.
7.
8.
9.
DS39632E pgina 212 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
19.4.3.2 Masking endereo
Mascarando um pouco o endereo faz com que esse pouco para se
tornar um
"No me importo". Quando um bit endereo mascarado, dois
endereos ser reconhecido e causar um
interromper. possvel mascarar mais de um endereo
bit de cada vez, o que torna possvel reconhecer
at 31 endereos no modo de 7 bits e at
63 endereos no modo 10-bit (ver Exemplo 19-3).
O Slave I2C se comporta da mesma maneira se o endereo
mascaramento usado ou no. No entanto, quando o endereo
mascaramento usado, o escravo pode I2C Reconhecer
mltiplos endereos e causar interrupes. Quando esta
ocorre, necessrio determinar qual o endereo
causou a interrupo, verificando SSPBUF.
No modo Endereo 7-Bit, abordar os bits da mscara
ADMSK <5:01> (SSPCON2 <05:01>) mascarar o corre-
correspondentes bits de endereo no cadastro SSPADD. Para
quaisquer
Pedaos ADMSK que so definidas (ADMSK <n> = 1), o
correspondingaddressbitisignored
(SSPADD <n> = x). Para o mdulo de emitir um endereo
Reconhecer, suficiente para corresponder apenas
endereos que no tm uma mscara de endereo ativo.
No modo Endereo 10-Bit, bits ADMSK <05:02> mscara
bits de endereo correspondentes no registo SSPADD. Em
adio, ADMSK1 simultaneamente as duas mscaras LSBs
do endereo (SSPADD <01:00>). Para qualquer pedaos ADMSK
que esto ativos (ADMSK <n> = 1), o correspondente
bit endereo ignorado (SSPADD <n> = x). Alm disso, observe
que, embora no modo de endereamento de 10 bits, a parte superior
bits de endereo reutilizar parte dos bits de registro SSPADD, os
endereo de bits da mscara no interagem com esses bits. Eles
afetam apenas os bits de endereo mais baixos.
Nota 1: ADMSK1 mscaras os dois menos significativos
bits do endereo.
2: Os dois bits mais significativos dos
abordar no so afetados por endereo
mascaramento.
Exemplo 19-3:
7-bit de endereamento:
ENDEREO EXEMPLOS MASCARANTES
SSPADD <7:01> = A0h (1010000) (SSPADD <0> assumido ser '0 ')
ADMSK <5:01>
10-bit de endereamento:
SSPADD <7:00> = A0h (10100000) (os dois MSBs do endereo so ignorados neste exemplo, desde
eles no so afetados por mascaramento)
ADMSK <5:01> =00111
Reconhecido endereos: A0h, A1h, A2h, A3H, A4h, A5H, A6H, A7h, A8h, A9h, AAh, ABh, ACh, ADh,
AEH, AFh
=00111
Reconhecido endereos: A0h, A2h, A4h, A6H, A8h, AAh, ACh, AEH
v 2009 Microchip Technology Inc. DS39632E pgina 213
PIC18F2455/2550/4455/4550
19.4.3.3 Recepo 19.4.3.4 Transmisso
Quando o bit de R / W do byte de endereo clara e uma
endereo de correspondncia, o bit de R / W do SSPSTAT
registo cancelado. O endereo recebido carregado na
o SSPBUF ea linha SDA mantido baixo
(ACK).
Quando o endereo condio de estouro de byte existe, ento
a no Reconhea (ACK) de pulso dada. Um estouro
condio definida como qualquer um pouco, BF (SSPSTAT <0>),
definido, ou bit, SSPOV (SSPCON1 <6>), est definido.
Uma interrupo MSSP gerado para cada transferncia de dados
byte. O bit de flag de interrupo, SSPIF, devem ser apuradas em
software. O registo SSPSTAT usado para determinar
o estado do byte.
Se SEN est habilitado (SSPCON2 <0> = 1), RB1/AN10 /
INT1/SCK/SCL ser realizada baixa (trecho relgio) aps
cada transferncia de dados. O relgio deve ser lanado pela
definindo bit, CKP (SSPCON1 <4>). Ver Seo 19.4.4
"Clock estica" para mais detalhes.
Quando o bit de R / W do byte de endereo de entrada definida
e um endereo de partida ocorre, o bit R / W do
SSPSTAT registo est definido. O endereo recebido
carregado no SSPBUF. O pulso ACK vontade
ser enviado no nono bit e pin RB1/AN10/INT1/SCK /
SCL mantida baixa, independentemente da SEN (ver Seo 19.4.4
"Clock estica" para mais detalhes). Ao esticar o
relgio, o mestre no ser capaz de afirmar um outro relgio
pulso at que o escravo feita a preparao da transmisso
dados. Os dados de transmisso tem de ser carregado para o
SSPBUF que tambm carrega o registo SSPSR.
Em seguida, o pino deve ser RB1/AN10/INT1/SCK/SCL
ativado com o bit, CKP (SSPCON1 <4>). Os oito
bits de dados so deslocados para fora na borda de descida do SCL
entrada. Isto assegura que o sinal SDA vlido durante
o tempo de SCL (Figura 19-10).
O pulso ACK do receptor principal fechada em
a borda de subida do pulso de entrada SCL nono. Se o SDA
A linha alto (no ACK), em seguida, a transferncia de dados
completar. Neste caso, quando o ACK travada pela
escravo, a lgica escravo reset (reseta SSPSTAT regis-
ter) e os monitores de escravos para uma outra ocorrncia de
o bit de Start. Se a linha SDA foi baixo (ACK), o prximo
transmitir os dados devem ser carregados no SSPBUF.
Mais uma vez, o pino tem de ser RB1/AN10/INT1/SCK/SCL
ativado com o bit CKP (SSPCON1 <4>).
Uma interrupo MSSP gerado para cada transferncia de dados
byte. O bit SSPIF devem ser apuradas em software e
o registo SSPSTAT utilizado para determinar o estado
do byte. O bit SSPIF est situado na borda de descida
o relgio de pulso em nono.
DS39632E pgina 214 v 2009 Microchip Technology Inc.
FIGURA 19-8:
v 2009 Microchip Technology Inc.
Receber
Endereo
A5
ACK
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
A4
A3
A2
A1
D3
R / W = 0
Recebendo dados
ACK
Recebendo dados
D2
D1
D0
ACK
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
Bus
masterterminatestransfe
r
Apuradas em
softwareSSPBUF
lido
SSPOV setbecause
SSPBUF isstill
completo. ACK no
enviado.
SDA
A7
A6
SCL
S
1
2
SSPIF (PIR1 <3>)
BF (SSPSTAT
<0>)
SSPOV
(SSPCON1 <6>)
I2C SLAVE TEMPO MODO com NEE = 0(Recepo, 7 bits de endereo)
PIC18F2455/2550/4455/4550
CKP
(CKP no repe a
'0 'quando SEN =
0)
DS39632E pgina 215
FIGURA 19-9:
DS39632E pgina 216
Receber
Endereo
A5
X
A3
X
X
ACK
D7
D6
D5
D4
D3
D2
D1
D0
D7
D6
D5
D4
D3
D2
R / W = 0
Recebendo dados
ACK
Recebendo dados
D1
D0
ACK
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
Bus
masterterminatestransfe
r
Apuradas em
softwareSSPBUF
lido
SSPOV setbecause
SSPBUF isstill
completo. ACK no
enviado.
SDA
A7
A6
SCL
S
1
2
SSPIF (PIR1 <3>)
PIC18F2455/2550/4455/4550
BF (SSPSTAT
<0>)
SSPOV
(SSPCON1 <6>)
CKP
(CKP no repe a
'0 'quando SEN =
0)
Nota
1:
x= No me
importo (ou
seja, bits de
endereo pode
ser um '1 'ou
'0').
I2C SLAVE TEMPO MODO com NEE = 0E ADMSK <5:01> = 01011
(Recepo, 7 bits de endereo)
v 2009 Microchip Technology Inc.
2:
Neste exemplo,
um endereo
de igual
A7.A6.A5.X.A3.
XX ir ser
reconhecido e
provocar uma
interrupo.
FIGURA 19-10:
v 2009 Microchip Technology Inc.
R / W = 1
ACK
D1
D0
D4
D3
D5
D7
D6
D2
A1
D3
D2
ACK
D5
D4
D7
D6
Transmitindo
dados
Transmitindo
dados
D1
D0
ACK
A4
A2
A3
4
SCL realizada
CPUresponds lowwhile
para SSPIF
5
6
7
8
9
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
P
Apuradas em
software
SSPBUF escrito
em software
De SSPIF ISR
Apuradas em
software
SSPBUF escrito
em software
De SSPIF ISR
CKP est definido
em software
CKP est definido
em software
Receber
Endereo
SDA
A7
A6
A5
SCL
S
1
2
3
Dados insampled
SSPIF (PIR1 <3>)
BF (SSPSTAT
<0>)
I2C CALENDRIO modo escravo (TRANSMISSO, ENDEREO 7-BIT)
PIC18F2455/2550/4455/4550
CKP
DS39632E pgina 217
FIGURA 19-11:
DS39632E pgina 218
Relgio mantido baixo
untilupdate de SSPADD
lugar hastaken
R / W = 0
A8
D3 D2
ACK
A7
A6
A5
A4 A3
A2 A1
D7
D6 D5 D4
D3 D2
D1 D0 ACK D7 D6
D5 D4
A0 ACK
D1 D0
Receba segundo
byte de endereo
Receba Byte
Dados
Receba Byte
Dados
ACK
Relgio mantido baixo
untilupdate de SSPADD
lugar hastaken
0
A9
5
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
6
7
8
9
P
Bus
masterterminatestransfer
Apuradas em
software
Apuradas em
software
Apuradas em
software
Manequim ler de
SSPBUFto claro BF
bandeira
SSPOV setbecause
SSPBUF isstill
completo. ACK no
enviado.
Apuradas por
hardwarewhen SSPADD
updatedwith baixo
byte de endereo
UA definida indicando
necessidades
thatSSPADD para
beupdated
Apuradas por hardware
whenSSPADD
atualizado com highbyte
de endereo
Receba primeiro
byte do endereo
SDA
1
1
1
1
SCL
S
1
2
3
4
SSPIF (PIR1 <3>)
Apuradas em
software
BF (SSPSTAT
<0>)
SSPBUF escrito
withcontents de
SSPSR
PIC18F2455/2550/4455/4550
SSPOV
(SSPCON1 <6>)
UA (SSPSTAT
<1>)
UA definida indicando
thatthe necessidades
SSPADD para
beupdated
I2C SLAVE TEMPO MODO com NEE = 0(Recepo, 10-BIT ADDRESS)
v 2009 Microchip Technology Inc.
CKP
(CKP no repe a
'0 'quando SEN =
0)
FIGURA 19-12:
Relgio mantido baixo
untilupdate de SSPADD
lugar hastaken
R / W = 0
A8
D3 D2
ACK
A7
A6
A5
X
A3
A2
X
X
D7
D6 D5 D4
D3 D2
D1 D0 ACK D7 D6
D5 D4
ACK
Receba segundo
byte de endereo
Receba Byte
Dados
Receba Byte
Dados
D1 D0
ACK
Relgio mantido baixo
untilupdate de SSPADD
lugar hastaken
Receba primeiro
byte do endereo
v 2009 Microchip Technology Inc.
6
1
2
3
4
7
8
9
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
5
6
7
8
9
P
Bus
masterterminatestransfer
Apuradas em
software
Apuradas em
software
Apuradas em
software
Manequim ler de
SSPBUFto claro BF
bandeira
SSPOV setbecause
SSPBUF isstill
completo. ACK no
enviado.
Apuradas por
hardwarewhen SSPADD
updatedwith baixo
byte de endereo
UA definida indicando
necessidades
thatSSPADD para
beupdated
Apuradas por hardware
whenSSPADD
atualizado com highbyte
de endereo
SDA
1
1
1
1
0
A9
SCL
S
1
2
3
4
5
SSPIF (PIR1 <3>)
Apuradas em
software
BF (SSPSTAT
<0>)
SSPBUF escrito
withcontents de
SSPSR
SSPOV
(SSPCON1 <6>)
UA (SSPSTAT
<1>)
UA definida indicando
thatthe necessidades
SSPADD para
beupdated
CKP
(CKP no repe a
'0 'quando SEN =
0)
I2C SLAVE TEMPO MODO com NEE = 0E ADMSK <5:01> = 01001
(Recepo, 10-BIT ADDRESS)
Nota
1:
x= No me
importo (ou
seja, bits de
endereo pode
ser um '1 'ou
'0').
2:
Neste exemplo,
um endereo
de igual
A9.A8.A7.A6.A
5.X.A3.A2.XX
ir ser
reconhecido e
provocar uma
interrupo.
PIC18F2455/2550/4455/4550
DS39632E pgina 219
3:
Note-se que os
bits mais
significativos do
endereo no
so afectados
pelo
mascaramento
de bits.
FIGURA 19-13:
DS39632E pgina 220
Relgio mantido baixo
untilupdate de SSPADD
lugar hastaken
Relgio mantido
baixo untilCKP est
definido para '1 '
R / W = 1
ACK
Transmisso de
dados Byte
D7 D6 D5 D4 D3
D2 D1 D0
ACK
Receba segundo
byte de endereo
A7
A6 A5 A4 A3 A2
ACK
1
1
1
1
A9 A8
0
A1 A0
Receba primeiro
byte do endereo
Relgio mantido baixo
untilupdate de SSPADD
lugar hastaken
Bus
masterterminatestransfe
r
1
ACK
0
A9 A8
4
Sr
6
5
6
7
8
9
1
2
3
4
5
6
7
8
9
1
2
3
4
5
7
8
9
1
2
3
4
5
6
7
8
9
P
Apuradas em
software
Apuradas em
software
Apuradas em
software
Manequim ler de
SSPBUFto claro BF
bandeira
Manequim ler de
SSPBUFto claro BF
bandeira
Escrever
de SSPBUF
BF bandeira claro
inicia
transmisso
no final da sequncia de
endereo thethird
Concluso ofdata
transmissionclears BF
bandeira
Apuradas por hardware
whenSSPADD
atualizado com Lowbyte
de endereo
UA definida indicando
necessidades
thatSSPADD para
beupdated
Apuradas por hardware
whenSSPADD
atualizado com highbyte
de endereo.
CKP est definido
em software
CKP
automaticamente
cancelado em
hardware,
mantendo SCL
baixo
Receba primeiro
byte do endereo
R / W = 0
SDA
1
1
1
SCL
S
1
2
3
SSPIF (PIR1 <3>)
BF (SSPSTAT
<0>)
SSPBUF escrito
withcontents de
SSPSR
PIC18F2455/2550/4455/4550
UA (SSPSTAT
<1>)
UA definida indicando
thatthe necessidades
SSPADD para
beupdated
I2C CALENDRIO modo escravo (TRANSMISSO, ENDEREO 10-bit)
CKP (SSPCON1
<4>)
v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
19.4.4 CLOCK ESTICA 19.4.4.3
Ambos os modos Slave 7-bit e 10-Bit implementar
relgio automtico de alongamento durante uma sequncia de
transmisso.
O bit SEN (SSPCON2 <0>) permite relgio que se estende at
ser habilitado durante recebe. Definir SEN causar
o pino SCL ser mantidos baixos no final de cada um dos dados
receber seqncia.
Relgio Alongamento para 7-Bit Slave
Modo de transmisso
Modo de transmisso Slave 7-Bit implementa stretch-relgio
ing, limpando o bit CKP aps a borda de descida do
nono relgio se o bit BF clara. Isso ocorre independentemente
do estado do bit SEN.
ISR O usurio deve definir o bit CKP antes de transmis-
Sion permitido continuar. Mantendo a linha SCL
baixo, o usurio tem tempo para atender o ISR e carregar o
contedo do SSPBUF antes de o dispositivo mestre pode
iniciar outra sequncia de transmisso (ver Figura 19-10).
Nota 1: Se o utilizador carrega os contedos da SSPBUF,
definindo o bit BF antes da borda de descida
a nona relgio, o bit CKP no ser
apuradas e relgio alongamento no ocorrer.
2: O bit CKP pode ser definido no software
independentemente do estado do bit BF.
19.4.4.1 Relgio Alongamento para 7-Bit Slave
Modo de recepo (SEN = 1)
Em 7-Bit Slave Modo de recepo, na borda de descida do
nona relgio no final da sequncia de ACK se a BF
bit definido, o bit CKP no registo SSPCON1
automaticamente cancelado, forando a sada do SCL ser
realizada baixa. O bit CKP sendo liberado para '0 'afirmar
a linha SCL baixa. O bit CKP deve ser definido em que o usurio do
ISR antes da recepo permitido continuar. Mantendo
a linha SCL baixo, o usurio tem tempo para atender o ISR
e ler o contedo da SSPBUF antes da
dispositivo mestre pode iniciar outra sequncia de recepo.
Isso vai evitar estouros de buffer ocorra (ver
Figura 19-15).
Nota 1: Se o utilizador l o contedo da
SSPBUF antes da borda de descida do
nono relgio, abrindo, assim, o pouco BF, o
CKP bit no ser apagado e relgio
alongamento no ocorrer.
2: O bit CKP pode ser definido no software
independentemente do estado do bit BF. O
usurio deve ter o cuidado de limpar o bit BF
no ISR antes de receber a prxima
sequncia, a fim de evitar um transbordamento
condio.
19.4.4.4 Relgio Alongamento para Slave 10-Bit
Modo de transmisso
No modo de transmisso Slave 10-Bit, relgio alongamento
controlado durante as duas primeiras sequncias de endereos por
o estado do bit de AI, tal como o na 10-Bit Escravo
Modo de recepo. Os dois primeiros endereos so seguidas
por uma terceira sequncia de endereos que contm o maior
bits de ordem do endereo de 10 bits eo bit R / W definida para
'1 '. Aps a terceira sequncia de endereo realizado, o
UA bit no est definido, o mdulo est configurado em
Modo de transmisso e relgios de estiramento controlada pela
a bandeira BF como no modo de transmisso Slave 7-Bit (ver
Figura 19-13).
19.4.4.2 Relgio Alongamento para Slave 10-Bit
Modo de recepo (SEN = 1)
Em 10-Bit modo Slave recebe durante o endereo
seqncia, relgio alongamento ocorre automaticamente
mas CKP no est desmarcada. Durante este tempo, se o bit UA
definido aps a nona relgio, alongamento iniciada.
A UA bit definido depois de receber o byte superior do
Endereo de 10 bits e seguindo o recebimento da segunda
o byte de endereo de 10 bits com o bit R / W foi afastada para
'0 '. O lanamento da linha de clock ocorre aps a atualizao
SSPADD. Relgio alongamento ocorrer em cada um dos dados
receber sequncia como descrito no modo de 7 bits.
Nota: Se o usurio controla o bit UA e limpa-lo
atualizao do cadastro SSPADD antes do
flanco do nono relgio e se ocorre
o usurio no tenha esclarecido o bit BF pela leitura
o do SSPBUF antes desse tempo,
ento o bit CKP ainda no sero afirmou
baixa. Relgio de alongamento na base da
estado do bit BF s ocorre durante um
seqncia de dados, e no uma seqncia de
endereo.
v 2009 Microchip Technology Inc. DS39632E pgina 221
PIC18F2455/2550/4455/4550
19.4.4.5 Sincronizao de relgio e
o bit CKP
Quando o bit CKP estiver desmarcada, a sada SCL forado
em '0 '. No entanto, limpando o bit CKP no vai valer a
Sada SCL baixo at que a sada SCL j est
amostrados baixo. Portanto, o bit CKP no vai valer a
Linha SCL at que um dispositivo mestre I2C externo tem
j afirmado a linha SCL. A sada SCL vontade
permanecem baixos at o bit CKP est definido e todos os outros
dispositivos no barramento I2C ter inativa SCL. Este
garante que uma gravao para o bit CKP no violar o
exigncia de tempo mnimo elevado para SCL (ver
Figura 19-14).
FIGURA 19-14: Sincronizao do relgio CALENDRIO
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 DX - 1
SCL
CKP
Dispositivo mestre
afirma relgio
Dispositivo mestre
deasserts relgio
Escrever
SSPCON1
DS39632E pgina 222 v 2009 Microchip Technology Inc.
FIGURA 19-15:
v 2009 Microchip Technology Inc.
O relgio no realizada
lowbecause buffer cheio
(BF) bit isclear antes de
cair edgeof nono relgio
Relgio mantido
baixo untilCKP est
definido para '1 '
ACK
D2
D1
D0
D7
D6
D5
D4
Recebendo dados
D3
D2
D1
D0
Receber
Endereo
A5
D7
A4
A3
A2
A1
ACK
D6
D5
D4
D3
R / W = 0
Recebendo dados
O relgio no
realizada lowbecause
= ACK 1
ACK
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
Bus
masterterminatestransfe
r
Apuradas em
software
SSPBUF lido
SSPOV setbecause
SSPBUF isstill
completo. ACK no
enviado.
Se BF clearedprior ao
fallingedge da nona relgio, CKP
no ser resetto '0 'e no
ocorrer clockstretching
BF definido aps
fallingedge do nono relgio,
CKP reposto a '0
'andclock alongamento
ocorre
CKPwrittento '1 'insoftware
SDA
A7
A6
SCL
S
1
2
SSPIF (PIR1 <3>)
BF (SSPSTAT
<0>)
SSPOV
(SSPCON1 <6>)
I2C SLAVE TEMPO MODO com NEE = 1(Recepo, 7 bits de endereo)
PIC18F2455/2550/4455/4550
CKP
DS39632E pgina 223
FIGURA 19-16:
DS39632E pgina 224
Relgio mantido baixo
untilupdate de SSPADD
lugar hastaken
Relgio mantido
baixo untilCKP est
definido para '1 '
Receba Byte
Dados
D1 D0
ACK
D7 D6 D5
D4
D3 D2
D1 D0
R / W = 0 ACK
A7
A6
A5
A4
A3
A2 A1
A0
ACK
D7 D6 D5 D4
D3 D2
Receba segundo
byte de endereo
Receba Byte
Dados
ACK
Relgio mantido baixo
untilupdate de SSPADD
lugar hastaken
O relgio no
realizada lowbecause
= ACK 1
A9 A8
6
1
2
3
4
7
8
9
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
5
6
7
8
9
P
Apuradas em
software
Apuradas em
software
Apuradas em
software
Bus
masterterminatestransfer
Manequim ler de
SSPBUFto claro BF
bandeira
Manequim ler de
SSPBUFto claro BF
bandeira
SSPOV setbecause
SSPBUF isstill
completo. ACK no
enviado.
Apuradas por hardware
whenSSPADD atualizado
com Lowbyte de endereo
depois de cair edgeof nono
relgio
UA definida indicando
necessidades
thatSSPADD para
beupdated
Apuradas por hardware
whenSSPADD atualizado
com highbyte de endereo
depois de cair edgeof nono
relgio
Nota: Uma atualizao do
SSPADDregister antes do
fallingedge do nono relgio
willhave nenhum efeito sobre
andUA UA continuar a ser
definido.
Nota: Uma actualizao
do registo SSPADD
beforethe borda de
descida do nono relgio
haveno efeito sobre UA
e UA continuar a ser
definido.
Receba primeiro
byte do endereo
SDA
1
1
1
1
0
SCL
S
1
2
3
4
5
SSPIF (PIR1 <3>)
Apuradas em
software
BF (SSPSTAT
<0>)
SSPBUF escrito
withcontents de
SSPSR
PIC18F2455/2550/4455/4550
SSPOV
(SSPCON1 <6>)
UA (SSPSTAT
<1>)
UA definida indicando
thatthe necessidades
SSPADD para
beupdated
CKP
I2C SLAVE TEMPO MODO com NEE = 1(Recepo, 10-BIT ADDRESS)
v 2009 Microchip Technology Inc.
CKP escrito para '1
'em software
PIC18F2455/2550/4455/4550
19.4.5 GERAL endereo de chamada
APOIO
O procedimento de endereamento para o barramento I2C tal que
o primeiro byte aps a condio Iniciar normalmente
determina qual o dispositivo ser o escravo endereado pelo
o mestre. A exceo o endereo de chamada geral
que pode resolver todos os dispositivos. Quando este endereo
utilizado, todos os dispositivos devem, em teoria, responder com um
Reconhecer.
O endereo de chamada geral um dos oito endereos
reservados para fins especficos pelo protocolo I2C. Ele
consiste de todos '0 's com R / W = 0.
O endereo de chamada geral reconhecida quando o Gen-
eral chamada Ativar (GCEN) bit ativado (SSPCON2 <7>
definido). Aps um incio de deteco de bits, 8 bits so deslocados
para
o SSPSR e o endereo comparado com o
SSPADD. Tambm comparada chamada geral
endereo fixo e em hardware.
Se o endereo de chamada geral corresponde a SSPSR
transferido para o SSPBUF, a BF bit sinalizador est definido (oitavo
bits) e na borda de descida do nono bit (bit de ACK), o
SSPIF interrupo bandeira bit definido.
Quando a interrupo atendido, a fonte para o
de interrupo pode ser verificada atravs da leitura do contedo da
SSPBUF. O valor pode ser usado para determinar se o
endereo era de dispositivo especfico ou um endereo de chamada
geral.
No modo de 10 bits, o SSPADD necessrio para ser actualizado
para o segundo semestre do endereo para corresponder ea UA
bit definido (SSPSTAT <1>). Se o endereo de chamada geral
amostrados quando o bit GCEN est definida, enquanto o escravo
configurado no modo de endereamento de 10 bits, ento o segundo
metade do endereo no necessria, o bit de UC no vai
ser definido eo escravo vai comear a receber dados aps o
Reconhecer (Figura 19-17).
FIGURA 19-17: SLAVE MODO GERAL DE CHAMADAS ENDEREO SEQNCIA
(7 ou 10-bit modo de endereamento)
Endereo comparado ao de chamadas geral Endereo
depois ACK, definir interromper
R / W = 0
ACK D7
Recebendo dados
D6 D5 D4 D3 D2 D1 D0
ACK
SDA
SCL
S
SSPIF
BF (SSPSTAT <0>)
Chamada Geral Endereo
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
Apuradas em software
SSPBUF lido
SSPOV (SSPCON1 <6>)
GCEN (SSPCON2 <7>)
'1 '
'0 '
v 2009 Microchip Technology Inc. DS39632E pgina 225
PIC18F2455/2550/4455/4550
19.4.6 MODO DE MESTRE
Nota:
Modo master ativado atravs da criao e limpar o
pedaos SSPM apropriados SSPCON1 e definindo o
SSPEN bit. No modo mestre, o SCL e SDA linhas
so manipulados pelo hardware MSSP se os bits de TRIS
esto definidos.
Mestre modo de operao apoiada por interrupo
gerao na deteco do incio e parada
condies. O Stop (P) e comear a (s) bits so apagadas
de um reset ou quando o mdulo MSSP est desativado.
O controlo da I 2C barramento pode ser feita quando o bit P
definir ou o nibus est ocioso, tanto com o S e P bits claras.
No modo, o cdigo do usurio Firmware Controlled Mestre
realiza todas as operaes de nibus eu 2C baseadas em Iniciar e
Pare condies bits.
Uma vez que o modo Master ativado, o usurio tem seis
opes:
1.
2.
3.
4.
5.
6.
Afirmar uma condio de incio em SDA e SCL.
Afirmar uma condio de incio repetida em SDA e
SCL.
Escreva para o SSPBUF iniciar
transmisso de dados / endereo.
Configure a porta I2C para receber dados.
Gerar uma condio Reconhecer no final
de um byte dos dados recebidos.
Gerar uma condio de parada em SDA e SCL.
O mdulo MSSP, quando configurados em
Modo Master I2C, no permite filas
de eventos. Por exemplo, o utilizador no est
permitido iniciar uma condio de incio e
escreva imediatamente a SSPBUF para
iniciar a transmisso antes do incio
condio completa. Neste caso, o
SSPBUF no vai ser escrito eo
Bit WCOL ser definido, indicando que a gravao
ao SSPBUF no ocorreu.
Os seguintes eventos far com que a interrupo MSSP
Bit Bandeira, SSPIF, a ser definido (e interrupo MSSP, se
ativado):





Comece condio
Condio de parada
Byte de transferncia de dados transmitidos /
recebidos
Reconhea transmitir
Iniciar repetido
FIGURA 19-18:
MSSP ESQUEMA DE BLOCO (I2C MESTRE MODE)
Interno
Barramento de
dados
Ler
SSPBUF
Escrever
Baud
Taxa
Gerador
Relgio Arbitrar /
WCOL Detect
(Adiar fonte de
clock)
v 2009 Microchip Technology Inc.
Mudana
Relgio
SSPSR
Receba
Ativar
MSb LSB
SSPM3: SSPM0
SSPADD <6:00>
SDA
SDA Em
SCL
SCL In
Coliso de nibus
Comece bit Detectar
Pare bit Detectar
Escrever Collision Detect
Relgio de Arbitragem
Contador de Estado para
Fim da XMIT / VN
Set / reset S, P, WCOL (SSPSTAT, SSPCON1);
conjunto SSPIF, BCLIF;
redefinir ACKSTAT, PEN (SSPCON2)
DS39632E pgina 226
Relgio Cntl
Comece bit, bit de parada,
Reconhecer
Gerar
PIC18F2455/2550/4455/4550
19.4.6.1
I2C Mestre Modo de Operao
A seqncia de transmisso tpico iria da seguinte forma:
1. O usurio gera uma condio de incio, definindo
Iniciar Ativar bit, SEN (SSPCON2 <0>).
2. SSPIF est definido. O mdulo MSSP vai esperar o
necessrio tempo de incio antes de qualquer outra operao
ocorre.
3. O usurio carrega o SSPBUF com o escravo
abordar a transmitir.
4. Endereo deslocado para fora o pino SDA at que todos os
oito
bits so transmitidos.
5. O mdulo MSSP desloca no bit ACK do
dispositivo escravo e escreve seu valor para o
SSPCON2 registo (SSPCON2 <6>).
6. O mdulo MSSP gera uma interrupo na
fim do ciclo de relgio, definindo o nono SSPIF
bit.
7. O usurio carrega o SSPBUF com oito bits de
dados.
8. Os dados so deslocados para fora o pino SDA at que todos
os oito bits
so transmitidos.
9. O mdulo MSSP desloca no bit ACK do
dispositivo escravo e escreve seu valor para o
SSPCON2 registo (SSPCON2 <6>).
10. O mdulo MSSP gera uma interrupo na
fim do ciclo de relgio, definindo o nono SSPIF
bit.
11. O usurio gera uma condio de parada, definindo
Ative o Parar bit, PEN (SSPCON2 <2>).
12. Interrupo gerada uma vez que a condio de parada
completar.
O dispositivo mestre gera todo o relgio em srie
pulsos e no incio e condies de parar. Uma transferncia
terminou com uma condio de parada ou com um comeo repetida
condio. Como a condio de incio tambm repetida
o incio da prxima transferncia em srie, o barramento I2C
vontade
no ser liberado.
No modo Transmissor Mestre, os dados de srie a sada
atravs da SDA, enquanto SCL produz o relgio serial. O
primeiro byte transmitido contm o endereo escravo do
dispositivo de recepo (sete bits) e da leitura / escrita (R / W)
bit. Neste caso, o bit R / W ser lgica '0 '. Dados seriais
transmitida oito bits de cada vez. Depois de cada byte
transmitido, um bit Reconhecer recebido. Iniciar e
Condies de parada so a sada para indicar o incio
e no final de uma transferncia em srie.
Mestre em modo de recepo, o primeiro byte transmitido con-
tm o endereo do escravo do dispositivo de transmisso
(7 bits) e o bit R / W. Neste caso, o bit R / W ser
lgico '1 'Assim, o primeiro byte transmitido um 7 bits escravo
tratar seguido por um '1 'para indicar o bit de receber.
Dados seriais recebido via SDA enquanto SCL emite o
de relgio em srie. Dados seriais recebido oito bits de cada vez.
Depois de cada byte recebido, um pouco Reconhecer
transmitido. Iniciar e parar condies indicam a
incio e no final da transmisso.
O gerador de taxa de transmisso utilizada para o modo SPI
operao usado para definir a freqncia de clock SCL para
ou 100 kHz, 400 kHz ou uma operao I2C MHz. Ver
Seo 19.4.7 "Baud Rate" para mais detalhes.
v 2009 Microchip Technology Inc. DS39632E pgina 227
PIC18F2455/2550/4455/4550
19.4.7 TAXA DE
TRANSMISSO
No modo I2C Mestre, o Gerador de Baud Rate (BRG)
valor de recarga colocado nas sete bits inferiores do
SSPADD registo (Figura 19-19). Quando ocorre uma gravao
para SSPBUF, o Gerador de Baud Rate ser automaticamente
comear a contar. A BRG contagem regressiva para '0 'e pra
at que outra recarga tenha ocorrido. A contagem BRG
decrementado duas vezes por ciclo de instruo (TCY) sobre o
Relgios Q2 e Q4. No modo I2C Mestre, o BRG
recarregado automaticamente.
Uma vez que a determinada operao est completa (ou seja, trans-
o do ltimo bit de dados seguido por ACK), o interno
relgio parar automaticamente a contagem eo pino SCL
permanecer em seu ltimo estado.
Tabela 19-3 demonstra taxas de clock com base em
ciclos de instruo e do valor carregado em BRG
SSPADD. SSPADD valores inferiores a 2 no so
suportada. Devido necessidade de apoiar relgio I2C
alongamento capacidade, taxas de transmisso I2C so
parcialmente
dependente de parmetros do sistema, como a linha
capacitncia e resistncia pull-up. Os parmetros
fornecidos na Tabela 19-3 so diretrizes, eo real
taxa de transmisso pode ser um pouco mais lento do que o previsto
em
da tabela. A taxa de transmisso frmula mostrada no bit
descrio do Registro 19-4 define a taxa de transmisso mxima
taxa que pode ocorrer devido a um determinado valor SSPADD.
FIGURA 19-19: BAUDIOS GERADOR DE BLOCO DIAGRAMA
SSPM3: SSPM0 SSPADD <6:00>
SSPM3: SSPM0
SCL
Recarregar
Controle
CLKO
Recarregar
BRG Baixo Contador FOSC / 4
TABELA 19-3:
FCY
I2C Clock Rate W / BRG
* 2 FCY
20 MHz
20 MHz
20 MHz
8 MHz
8 MHz
8 MHz
2 MHz
2 MHz
BRG Valor
18h
1Fh
63h
09h
0Ch
27h
02h
09h
FSCL
(2 Sobreposies de BRG)
400 kHz(1)
312,5 kHz
100 kHz
400 kHz(1)
308 kHz
100 kHz
333 kHz(1)
100 kHz
10 MHz
10 MHz
10 MHz
4 MHz
4 MHz
4 MHz
1 MHz
1 MHz
Nota 1:
A interface I2C no se conforma com a especificao I2C 400 kHz (que se aplica a taxas superiores
100 kHz) em todos os detalhes, mas pode ser usado com cuidado onde as taxas mais altas so necessrias pela
aplicao.
DS39632E pgina 228 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
19.4.7.1 Relgio de Arbitragem
Arbitragem relgio ocorre quando o mestre, durante qualquer
receber, transmitir ou repetida Start / Stop condio,
deasserts o pino SCL (SCL autorizado a flutuar alto).
Quando o pino de SCL permitido flutuar elevado, a taxa de
transmisso
Taxa Gerador (RPP) suspenso a partir de contagem
at que o pino de SCL efectivamente amostrado elevada. Quando
o
SCL pino amostrado alta, o Gerador de taxa de transmisso
recarregado com o contedo do SSPADD <06:00> e
comea a contagem. Isto assegura que o elevado tempo de SCL
ser sempre pelo menos um BRG rollover contagem no
caso em que o relgio mantido baixo por um dispositivo externo
(Figura 19-20).
FIGURA 19-20:
SDA
BAUDIOS CALENDRIO COM GERADOR DE ARBITRAGEM CLOCK
DX DX - 1
SCL inativa, mas mantm escravo
SCL baixa (arbitragem relgio)
SCL deixada transio alta
SCL
BRG decrscimos em
Ciclos Q2 e Q4
BRG
Valor
03h 02h 01h 00h (adiar) 03h 02h
SCL amostrado alta, recarga leva
lugar e BRG inicia a sua contagem
BRG
Recarregar
v 2009 Microchip Technology Inc. DS39632E pgina 229
PIC18F2455/2550/4455/4550
19.4.8
I2C MESTRE MODO DE ARRANQUE
CALENDRIO CONDIO
Nota:
Para dar incio a uma condio de incio, o usurio define o incio
Ativar bit, SEN (SSPCON2 <0>). Se o SDA e SCL
pins so amostrados alta, o Gerador de taxa de transmisso
recarregado com o contedo do SSPADD <06:00> e comea a
sua contagem. Se SCL e SDA so ambos amostrados elevada
quando
o Baud Rate Generator vezes fora (TBRG), a SDA
pin impulsionado baixo. A ao da SDA sendo conduzido
baixo enquanto SCL est alto a condio inicial e provoca
o bit S (SSPSTAT <3>) a ser definido. Depois disso, o
Gerador de Baud Rate recarregado com o contedo do
SSPADD <06:00> e recomea a contagem. Quando o Baud
Taxa Generator vezes fora (TBRG), o bit SEN
(SSPCON2 <0>) ser apagada automaticamente pelo
hardware, o gerador de taxa de transmisso suspensa
deixando a linha SDA realizou baixo ea condio Start
completar.
Se, no incio da condio de incio,
os pinos SDA e SCL j esto sam-
confessou baixo, ou se durante a condio de partida,
o
Linha SCL amostrado baixo antes da SDA
linha impulsionada baixo, uma coliso de nibus
ocorre,
o Bus interrupo Bandeira Collision, BCLIF,
conjunto, a condio de Start abortada eo
Mdulo I2C reposto em seu estado inativo.
19.4.8.1 Bandeira Estado WCOL
Se o usurio escreve o SSPBUF quando uma seqncia Incio
est em andamento, o bit WCOL est definido e os contedos de
buffer mantm-se inalterados (a gravao no ocorre).
Nota: Porque filas de eventos no
permitiu, por escrito, s cinco bits mais baixos de
SSPCON2 est desativada at o incio
condio completa.
FIGURA 19-21: Primeira partida BIT CALENDRIO
Escreva-bit SEN ocorre aqui
Set S bit (SSPSTAT <3>)
SDA = 1,
SCL = 1
TBRG TBRG
Na concluso do Iniciar bit,
hardware limpa SEN bit
e define SSPIF bit
Escreva para SSPBUF ocorre aqui
1 bit
TBRG
TBRG
S
2 bit
SDA
SCL
DS39632E pgina 230 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
19.4.9
I2C modo Master REPETIDO
Iniciar a cronometragem CONDIO
Nota 1: Se estiver programado RSEN embora qualquer outra
evento est em andamento, no ter efeito.
2: A coliso de nibus durante a partida repetida
condio ocorre se:
SDA amostrado baixo quando SCL vai
de baixo para maior.
SCL vai baixa antes SDA
afirmou baixa. Isto pode indicar que
outro mestre est tentando
transmitir dados de um '1 '.
Imediatamente aps o bit SSPIF comeando o jogo, o usurio
podem escrever o SSPBUF com o endereo de 7-bit em 7 bits
o modo ou o primeiro endereo padro no modo 10-bit. Aps o
primeiros oito bits so transmitidos e recebido um ACK,
o utilizador pode, em seguida, transmitir um perodo adicional de oito
bits
endereo (modo 10 bits) ou oito bits de dados (modo 7 bits).
Uma condio de incio repetida ocorre quando o bit RSEN
(SSPCON2 <1>) programado elevada e a lgica I2C
mdulo est no estado inativo. Quando o bit RSEN est definido,
o pino SCL afirmado baixo. Quando o pino SCL sam-
confessou baixa, o Gerador de Baud Rate carregado com o
contedo de SSPADD <05:00> e comea a contar. O
SDA pino liberado (trazido alto) para uma taxa de transmisso
Gerador de contagem (TBRG). Quando a taxa de transmisso
Genera-
vezes tor fora, se SDA amostrado alta, o pino SCL vontade
ser desabilitados (trazido de altura). Quando SCL amostrado
alta, o Gerador de Baud Rate recarregado com o
contedo de SSPADD <06:00> e comea a contar. SDA
SCL e devem ser colhidas amostras para uma alta TBRG. Este
ao seguida pela afirmao do pino SDA
(SDA = 0) para uma TBRG enquanto SCL elevado. Seguido
isso, o bit RSEN (SSPCON2 <1>) ser automaticamente
apuradas eo Gerador de Baud Rate no ser
recarregado, deixando o pino SDA realizou baixo. Assim que um
Condio de incio detectado na SDA e SCL pinos,
o bit S (SSPSTAT <3>) ser definido. O bit SSPIF vontade
no estar definida at o Gerador de Baud Rate expirou.
19.4.9.1 Bandeira Estado WCOL
Se o usurio escreve o SSPBUF quando um comeo repetida
seqncia est em andamento, o bit WCOL est definido eo
contedo do buffer mantm-se inalterados (a gravao no
ocorrer).
Nota: Porque filas de eventos no
permitiu, por escrito, dos cinco bits mais baixos de
SSPCON2 est desativado at o repetida
Condio de incio est completa.
FIGURA 19-22: REPETIDA condio de incio ONDA
Escreva para SSPCON2
ocorre aqui.
SDA = 1,
SCL (sem alterao).
Set S (SSPSTAT <3>)
SDA = 1,
SCL = 1
Na concluso do Iniciar bit,
hardware limpa bit RSEN
e conjuntos SSPIF
TBRG
1 bit
Escreva para SSPBUF ocorre aqui
TBRG
TBRG
Sr = Start repetida
TBRG
SDA
Flanco descendente da nona relgio,
final de Xmit
SCL
TBRG
v 2009 Microchip Technology Inc. DS39632E pgina 231
PIC18F2455/2550/4455/4550
19.4.10
I2C modo Master
TRANSMISSO
A transmisso de um byte de dados, um endereo de 7 bits, ou o
a outra metade de um endereo de 10 bits realizada simplesmente
escrever um valor para o SSPBUF. Esta ao ir
definir o buffer cheio bandeira bit, BF, e permitir que a taxa de
transmisso
Gerador de comear a contagem e iniciar o prximo
transmisso. Cada bit de endereo / dados sero transferidos
fora no pino SDA aps a borda de descida do SCL
afirmado (ver dados segurar especificao de tempo
parmetro 106). SCL mantido baixo para uma taxa de transmisso
Gerador de rollover count (TBRG). Os dados devem ser vlidos
antes SCL liberado alta (ver tempo de configurao de dados
espe-
parmetro ification 107). Quando o pino de SCL libertado
alta, realizada dessa forma por TBRG. Os dados sobre a SDA
pin deve permanecer estvel para que a durao e alguns defendem
tempo aps a prxima borda de descida do SCL. Depois da oitava
bit deslocado para fora (a margem caindo do oitavo relgio),
a bandeira BF apagada eo mestre lanamentos SDA.
Isso permite que o dispositivo escravo ser dirigida aos
reagir com um pouco de ACK durante o tempo de um bit se um nono
endereo de partida ocorreu, ou se os dados foram recebidos
adequadamente. O estado de ACK escrito no ACKDT
bit na borda de descida do nono dia. Se o mestre
recebe uma confirmao, o Reconhecer bit Status,
ACKSTAT, est desmarcada. Se no, o bit definido. Aps a nona
relgio, o bit SSPIF est definido eo relgio mestre (Baud
Taxa Gerador) suspenso at o prximo byte de dados
carregado no SSPBUF, deixando acessvel SCL e SDA
inalterados (Figura 19-23).
Aps a gravao no SSPBUF, cada bit do endereo
vai ser deslocado para fora na borda de descida de SCL at todo
sete bits de endereo eo bit R / W esto concludas. Em
a borda de descida do oitavo relgio, o mestre
deassert o pino SDA, permitindo que o escravo para responder
com um Reconhecer. Na borda de descida do nono
relgio, o mestre vai provar o pino SDA para ver se o
endereo foi reconhecido por um escravo. O estado do
ACK bit carregado para o bit de estado ACKSTAT
(SSPCON2 <6>). Seguindo o flanco descendente do nono
transmisso relgio do endereo, o SSPIF est definido, o
BF flag limpa eo Gerador taxa de transmisso
desligada at que outra gravao para o SSPBUF leva
lugar, mantendo SCL baixo e permitindo SDA para flutuar.
O usurio deve verificar se o WCOL claro depois
cada um escrever a SSPBUF para assegurar a transferncia est
correto.
Em todos os casos, WCOL devem ser apuradas em software.
19.4.10.3 ACKSTAT Estado Bandeira
No modo de transmisso, o bit ACKSTAT (SSPCON2 <6>)
apagados quando o escravo enviou um Reconhea
(ACK = 0) e definido quando o escravo no reco-
borda (ACK = 1). Um escravo envia uma confirmao quando
ele reconheceu o seu endereo (incluindo uma chamada geral),
ou quando o escravo tiver recebido correctamente os dados.
19.4.11
I2C MESTRE MODO DE RECEPO
Recepo modo Master est habilitado atravs da programao do
Receba Habilitar bit, RCEN (SSPCON2 <3>).
Nota: O mdulo MSSP deve estar em um estado inativo
antes do bit RCEN est definido ou o bit RCEN
sero desconsiderados.
O gerador de taxa de transmisso comea a contagem e em cada
capotamento, o estado do pino SCL mudanas (maior para baixo /
de baixo para alto) e os dados so deslocados para o SSPSR.
Depois
a borda de descida do oitavo relgio, a receber possibilitar
flag automaticamente cancelado, o contedo do
SSPSR so carregados no SSPBUF, a BF bit bandeira
definido, o SSPIF bit sinalizador est definido e a taxa de
transmisso Gener-
ator est suspenso a partir de contagem, segurando SCL baixa. O
MSSP est agora no estado ocioso aguardando o prximo comando.
Quando o buffer lido pelo CPU, o BF bit bandeira
automaticamente cancelado. O usurio pode, ento, enviar um
Reconhecer pouco no final da recepo, definindo a
Reconhea Sequence Habilitar bit, ACKEN
(SSPCON2 <4>).
19.4.11.1 BF Estado Bandeira
Na operao de recepo, o bit BF definido quando um endereo
ou byte de dados carregado no SSPBUF de SSPSR.
apagada quando o SSPBUF lido.
19.4.11.2 SSPOV Estado Bandeira
Na operao de recebimento, o bit SSPOV definido quando oito
bits so recebidos na SSPSR eo BF bit bandeira
j definido a partir de uma recepo anterior.
19.4.10.1 BF Estado Bandeira
19.4.11.3 Bandeira Estado WCOL
No modo de transmisso, o bit BF (SSPSTAT <0>) definido
quando a CPU escreve SSPBUF e apagado quando
todos os oito bits so deslocados para fora.
Se o usurio escreve o SSPBUF quando a recepo
j em andamento (ie, SSPSR ainda est se deslocando em uma
base de dados
byte), o bit WCOL est definido e o contedo da memria intermdia
mantm-se inalterados (a gravao no ocorre).
19.4.10.2 Bandeira Estado WCOL
Se o usurio escreve o SSPBUF quando a transmisso
j em andamento (ie, SSPSR ainda est mudando um
byte de dados), o bit WCOL est definido e os contedos do
tampo mantm-se inalterados (a gravao no ocorre), aps
2 TCY aps a gravao SSPBUF. Se SSPBUF reescrito
dentro de dois TCY, o bit WCOL est definido e SSPBUF
atualizado. Isto pode resultar numa transferncia corrompido.
DS39632E pgina 232 v 2009 Microchip Technology Inc.
FIGURA 19-23:
Escrever
SSPCON2 <0>
SEN = 1,Condio
de incio comea
De escravo,
claro bit
ACKSTAT
SSPCON2 <6>
R / W = 0
A1
= ACK 0
D7
D6
D5
D4
D3
D2
Transmisso de
dados ou segunda
Halfof 10-Bit
Endereo
D1
D0
SEN = 0
Transmitir
Endereo para
Slave
SDA
SSPBUF escrito
com o endereo
de 7 bits e R /
Wstart transmitir
SCL
S
SCL realizada CPU
lowwhile
responde a SSPIF
Apuradas em
software servio
routinefrom MSSP
interrupo
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
A7
A6
A5
A4
A3
A2
v 2009 Microchip Technology Inc.
ACKSTAT
inSSPCON2 = 1
ACK
P
SSPIF
Apuradas em
software
Apuradas em
software
BF (SSPSTAT
<0>)
SSPBUF
escrito
SEN
Depois
condio
Iniciar, SEN
desmarcada
por hardware
SSPBUF
escrito em
software
PEN R / W
Eu 2C modo Master ONDA (TRANSMISSO, 7 ou o endereo de 10 bits)
PIC18F2455/2550/4455/4550
DS39632E pgina 233
FIGURA 19-24:
DS39632E pgina 234
Escreva para SSPCON2
<4> para comear
Reconhea
sequenceSDA = ACKDT
(SSPCON2 <5>) = 0
Mestre configurado
como uma
programao
receiverby SSPCON2
<3> (= RCEN 1)
ACK de Slave
R / W = 1
Recepo de
dados de Slave
ACK
Recepo de
dados de Slave
RCEN
clearedautomatically
RCEN = 1,
startnext receber
RCEN
clearedautomatically
ACK
ACK do mestre, SDA
= ACKDT = 0
Definir ACKEN,
comece Reconhea
seqncia,
SDA = ACKDT =
1
PEN bit = 1escrito
aqui
Escreva para
SSPCON2 <0> (SEN
= 1),Iniciar Inicie
Condio
SEN = 0
Escreva para
SSPBUF ocorre aqui,
comece Xmit
Transmitir
Endereo para
Slave
SDA
D0
A7
A1
D7 D6 D5 D4
D3 D2 D1
D7 D6 D5 D4
D3 D2 D1
D0
A6 A5 A4 A3
A2
ACK
ACK no
enviado
Bus
masterterminatestransfe
r
SCL
Definir SSPIF
interruptat final de
receber
S
1
5
1
2
3
4
5
6
7
8
9
1
2
3
4
5
2
3
4
7
8
6
9
6
7
8
9
Definir SSPIF em
endof receber
P
Definir SSPIF
interruptat final
Acknowledgesequence
Dados mudou em
caindo borda CLK
SSPIF
Apuradas em
software
Apuradas em
software
Definir SSPIF
interruptat final
Acknowledgesequence
Apuradas em
software
Apuradas insoftware
PIC18F2455/2550/4455/4550
SDA = 0, SCL =
1enquanto
CPUresponds para
SSPIF
Apuradas em
software
Set P bit (SSPSTAT
<4>) e SSPIF
BF (SSPSTAT
<0>)
ltima bit
deslocado para
SSPSR andcontents
so descarregados
em SSPBUF
SSPOV
SSPOV est definido
becauseSSPBUF
ainda est cheio
Eu 2C modo Master ONDA (recepo, ENDEREO 7-BIT)
v 2009 Microchip Technology Inc.
ACKEN
PIC18F2455/2550/4455/4550
19.4.12 RECONHECE SEQNCIA
CALENDRIO
19.4.13 Interromper a cronometragem
CONDIO
Uma seqncia de reconhecer habilitado, definindo o
Reconhea Sequence Habilitar bit, ACKEN
(SSPCON2 <4>). Quando este bit for definido, o pino SCL
puxada baixo e os contedos de bits de dados a Reconhecer
so apresentados no pino SDA. Se o usurio deseja gen-
rado um Reconhecer, ento o bit deve ser ACKDT
apagadas. Caso contrrio, o usurio deve definir o bit ACKDT antes
Iniciando uma seqncia Reconhecer. A taxa de transmisso
Gerador ento conta para um perodo de rollover (TBRG)
eo pino SCL est inativa (puxada alta). Quando o
SCL pino amostrado alta (arbitragem do relgio), o Baud
Taxa de contagem de gerador para TBRG. O pino , em seguida,
SCL
puxado baixo. Depois disso, o bit automaticamente ACKEN
desmarcada, o gerador de taxa de transmisso desligado eo
Mdulo MSSP ento entra em um estado inativo
(Figura 19-25).
Um bit de fim afirmado no pino de SDA no final de um
recepo / transmisso, definindo o Parar Habilitar bit, PEN
(SSPCON2 <2>). No final de um receptor / transmissor, a
Linha SCL mantido baixo aps a borda de descida do nono
relgio. Quando o bit PEN est definido, o senhor vai fazer valer
a linha SDA baixo. Quando a linha SDA amostrado baixa,
Gerador de Baud Rate recarregado e faz a contagem regressiva
a 0. Quando os tempos Gerador de Baud Rate para fora, o
SCL pino ser trazido de altura e um TBRG (Baud Rate
Gerador de capotamento contagem) depois, o pino SDA ser
inativa. Quando o pino SDA amostrado alta enquanto
SCL elevada, o bit P (SSPSTAT <4>) definida. A TBRG
depois, a pouco PEN eliminado eo bit SSPIF est definido
(Figura 19-26).
19.4.13.1 Bandeira Estado WCOL
19.4.12.1 Bandeira Estado WCOL
Se o usurio escreve o SSPBUF quando um Reconhea
seqncia est em andamento, ento WCOL est definido eo
contedo do buffer mantm-se inalterados (a gravao no
ocorrer).
Se o usurio escreve o SSPBUF quando uma seqncia de parada
est em andamento, ento o bit WCOL est definido eo
contedo do buffer mantm-se inalterados (a gravao no
ocorrer).
FIGURA 19-25: RECONHECE ONDA SEQNCIA
ACKEN apagadas automaticamente
TBRG
ACK
9
TBRG
Reconhea seqncia comea aqui,
escrever para SSPCON2
ACKEN = 1, ACKDT = 0
SDA
SCL
D0
8
SSPIF
Situado no SSPIF
fim de receber
Apuradas em
software
Apuradas em
software
Situado na extremidade SSPIF
Reconhecer de seqncia
Nota: TBRG = um perodo Gerador de Baud Rate.
FIGURA 19-26: CONDIO DE PARADA receber ou transmitir MODO
Escreva para SSPCON2,
conjunto de canetas
Flanco descendente de
nono relgio
SCL = 1para TBRG, seguido pelo SDA = 1para TBRG
depois SDA amostrado elevada. P bit (SSPSTAT <4>) definido.
Bit PEN (SSPCON2 <2>) est desmarcada por
hardware eo pouco SSPIF est definido
TBRG
SCL
SDA ACK
P
TBRG TBRG TBRG
SCL trouxe alta aps TBRG
SDA afirmou baixa antes de borda de subida de relgio
configurar condio de parada
Nota: TBRG = um perodo Gerador de Baud Rate.
v 2009 Microchip Technology Inc. DS39632E pgina 235
PIC18F2455/2550/4455/4550
19.4.14 DORMIR DE OPERAO 19.4.17
Enquanto no modo de suspenso, o mdulo I2C pode receber
endereos ou dados e, quando uma correspondncia ou endereo
ocorre completa transferncia byte, acordar o processador
de sono (se a interrupo MSSP est habilitado).
MULTI-MASTER COMUNICAO,
COLISO NIBUS E NIBUS
ARBITRAGEM
19.4.15 EFEITOS DE UM REAJUSTE
A Redefinir desativa o mdulo MSSP e termina a
transferncia atual.
19.4.16 MODO MULTI-MASTER
No modo multi-mestre, a gerao de interrupo no
deteco do incio e condies de paragem permite que o
determinao de quando o nibus gratuito. O Stop (P) e
Iniciar (S) bits so apagadas a partir de um reset ou quando o
Mdulo MSSP est desativado. O controlo da I 2C barramento pode
ser tomada quando o bit P (SSPSTAT <4>) definido, ou o
nibus est ocioso, tanto com o S e P bits claras. Quando o
autocarro est ocupado, permitindo a interrupo MSSP gerar
a interrupo quando a condio de parada ocorre.
Em operao multi-mestre, a linha SDA deve ser
monitorizados de arbitragem para saber se o nvel de sinal o
Espera nvel de sada. Esta verificao realizada em
hardware com o resultado colocado no bit BCLIF.
Os estados onde a arbitragem podem ser perdidas so:





Transferncia de endereo
Transferncia de Dados
A Start Condition
A repetida Iniciar Condio
Reconhea um Estado
Suporte ao modo Multi-Master atingido por nibus arbitra-
o. Quando o mestre envia o endereo / bits de dados para
o pino SDA, a arbitragem tem lugar quando o mestre
gera um '1 'no SDA, deixando SDA bia de alta e
outro mestre afirma um '0 '. Quando o pino SCL flutua
alta, os dados devem ser estveis. Se os dados esperados sobre
SDA um '1 'e os dados amostrados no pino SDA = 0,
em seguida, uma coliso de nibus ocorreu. O comandante ir
definir
o Bus interrupo Bandeira Collision, BCLIF, e redefinir o
Porta I2C para o estado ocioso (Figura 19-27).
Se a transmisso estava em andamento quando a coliso de nibus
ocorreu, a transmisso interrompida, a bandeira BF
desmarcada, o SDA e SCL linhas so desabilitados ea
SSPBUF podem ser gravados. Quando os servios o usurio a
barramento coliso a rotina de interrupo de servio, e se o I2C
nibus gratuito, o usurio pode retomar a comunicao por
afirmao de uma condio inicial.
Se a comear, comear repetida, Parar ou Reconhea
condio estava em andamento quando a coliso de nibus
ocorreu, a condio abortada, a SDA e SCL
linhas so inativa e os respectivos bits de controlo
o SSPCON2 so apagadas. Quando o utilizador ser-
vcios do nibus coliso a rotina de interrupo de servio, e se
o barramento I2C livre, o usurio pode retomar a comunicao
afirmando a condio de Start.
O mestre vai continuar a acompanhar a SDA e SCL
dos pinos. Se ocorrer uma condio de parada, o bit SSPIF ser
definido.
A gravao para o bit SSPBUF vai comear a transmisso de
dados no primeiro bit de dados, independentemente de onde o
transmissor parou quando a coliso de nibus ocorrido.
No modo multi-mestre, a gerao de interrupo no
deteco de incio e condies de paragem permite a determinao
nao de quando o nibus gratuito. Controle do barramento I2C
pode
ser tomada quando o bit P definido no registo SSPSTAT,
ou o nibus est ocioso e os bits S e P so apagadas.
FIGURA 19-27: BUS CALENDRIO coliso para transmitir e RECONHECE
As alteraes de dados
enquanto SCL = 0
Linha SDA puxado baixo
por outra fonte
SDA liberado
pelo mestre
Amostra SDA. Enquanto SCL elevada,
dados no corresponde ao que acionado
pelo mestre.
Ocorreu coliso de nibus.
SDA
SCL
Definir Collision Bus
Interromper Flag (BCLIF)
BCLIF
DS39632E pgina 236 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
19.4.17.1 Coliso de nibus durante uma partida
Condio
Durante uma condio de incio, uma coliso de nibus ocorre
se:
um)
b)
SDA ou SCL so amostrados a partir do incio do
a condio de Start (Figura 19-28).
SCL amostrado baixo antes SDA afirmado baixo
(Figura 19-29).
Se o pino SDA amostrado baixa durante esta contagem, o
BRG reposto ea linha SDA afirmado mais cedo
(Figura 19-30). Se, no entanto, um '1 ' amostrado na SDA
pinos, o pino de SDA afirmado baixo no final da BRG
contar. O gerador de taxa de transmisso ento recarregada e
contagem regressiva para 0. Se o pino de SCL amostrada como '0
'
durante este tempo no ocorre uma coliso autocarro. No
fim da contagem RPP, o pino de SCL afirmado acessvel.
Nota: A razo pela qual coliso barramento no um factor
durante uma condio de incio que no h dois
nibus
masters pode afirmar uma condio de incio no
exatamente o mesmo tempo. Portanto, um mestre
sempre afirmar SDA antes do outro.
Esta condio de no causar um autocarro
coliso porque os dois mestres deve ser
permitido para arbitrar o primeiro endereo
aps a condio de Start. Se o endereo
o mesmo, a arbitragem deve ser permitido
continuar na parte de dados, repetida
Iniciar ou parar condies.
Durante uma condio de incio, tanto o SDA e SCL
dos pinos so monitorados.
Se o pino SDA j baixa, ou o pino de SCL j
baixo, em seguida, todos os seguintes ocorrem:
a condio de Start abortada,
a bandeira BCLIF est definido e
o mdulo MSSP redefinido para seu estado inativo
(Figura 19-28).
A condio Incio comea com os pinos SDA e SCL
inativa. Quando o pino de SDA amostrado elevada, o
Gerador de Baud Rate carregado a partir SSPADD <6:00>
e faz a contagem regressiva para '0 '. Se o pino SCL amostrado
baixo
enquanto SDA alta, uma coliso de barramento ocorre porque
presumir que outro mestre est tentando dirigir um
dados '1 'durante a condio de Start.
FIGURA 19-28: COLISO BUS durante a condio de START (SDA ONLY)
SDA vai baixa antes do bit SEN est definido.
Definir BCLIF,
S bit e set SSPIF porque
SDA = 0, SCL = 1.
SDA
SCL
Definir SEN, ativar a partida
condio se SDA = 1, SCL = 1
SEN
SDA amostrados baixo antes
Comece condio. Definir BCLIF.
S bit e set SSPIF porque
SDA = 0, SCL = 1.
SSPIF e BCLIF so
apuradas em software
S
SEN apagadas automaticamente por causa da coliso de nibus.
Mdulo MSSP repor em estado ocioso.
BCLIF
SSPIF
SSPIF e BCLIF so
apuradas em software
v 2009 Microchip Technology Inc. DS39632E pgina 237
PIC18F2455/2550/4455/4550
FIGURA 19-29: COLISO BUS durante a condio de START (SCL = 0)
SDA = 0, SCL = 1
TBRG TBRG
SDA
Definir SEN, ativar a partida
seqncia se SDA = 1, SCL = 1
SCL = 0antes SDA = 0,
coliso de nibus ocorre. Definir BCLIF.
SCL = 0antes BRG time-out,
coliso de nibus ocorre. Definir BCLIF.
BCLIF
Interromper apuradas
em software
S
SSPIF
'0'
'0'
'0'
'0'
SCL
SEN
FIGURA 19-30: BRG repostas devido a SDA ARBITRAGEM DURANTE condio de incio
SDA = 0, SCL = 1
Definir S
Menos de TBRG
TBRG
Definir SSPIF
SDA SDA puxado baixo por outro mestre.
Redefinir BRG e afirmar SDA.
SCL
S
SCL puxado baixa aps BRG
intervalo
Definir SEN, ativar a partida
seqncia se SDA = 1, SCL = 1
SEN
BCLIF '0 '
S
SSPIF
SDA = 0, SCL = 1,
definir SSPIF
Interrupes apuradas
em software
DS39632E pgina 238 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
19.4.17.2 Coliso de autocarro durante a repetida
Comece Condio
Durante uma condio de incio repetida, uma coliso de nibus
ocorre se:
um)
b)
Um nvel baixo amostrada em SDA SCL quando vai
de baixo nvel para alto nvel.
SCL vai baixa antes SDA afirmado baixa,
indicando que outro mestre est tentando
transmitir dados de um '1 '.
Se SDA baixa, ocorreu uma coliso de nibus (ou seja, outra
mestre est tentando transmitir um dado '0 ', veja
Figura 19-31). Se SDA amostrado elevada, a RPP
recarregado e comea a contar. Se SDA vai de maior para
baixo antes do BRG vezes para fora, nenhuma coliso de nibus
ocorre
porque no h dois mestres pode afirmar SDA exatamente no
mesmo tempo.
Se SCL vai de alto a baixo antes dos tempos BRG fora
e SDA j no tenha sido afirmado, uma coliso de nibus
ocorre. Neste caso, um outro mestre est tentando
transmitir dados de um '1 'durante a condio Incio repetida
(Veja a Figura 19-32).
Se, no final da BRG tempo limite, tanto SCL e SDA
ainda elevada, o pino conduzido SDA baixa e a RPP
recarregado e comea a contar. No fim da contagem,
independentemente do estado do pino de SCL, o pino SCL
impulsionado baixo ea condio Iniciar repetida
completar.
Quando o utilizador deasserts SDA e o pino permitido
flutuar alta, a BRG carregado com SSPADD <06:00> e
contagem regressiva para '0 '. O pino , ento, SCL e inativa
quando amostrados alto, o pino SDA amostrado.
FIGURA 19-31:
SDA
COLISO nibus durante uma condio de incio repetida (caso 1)
SCL
Experimente SDA quando SCL vai alto.
Se SDA = 0, definir BCLIF e liberao SDA e SCL.
RSEN
BCLIF
Apuradas em software
S
SSPIF
'0 '
'0 '
FIGURA 19-32: COLISO nibus durante REPETIDA condio de partida (caso 2)
TBRG TBRG
SDA
SCL
SCL vai baixa antes SDA,
definir BCLIF. Lanamento SDA e SCL.
Interromper apuradas
em software
RSEN
S
SSPIF
'0 '
BCLIF
v 2009 Microchip Technology Inc. DS39632E pgina 239
PIC18F2455/2550/4455/4550
19.4.17.3 Coliso de nibus durante uma parada
Condio
Coliso de nibus ocorre durante uma condio de parada
se:
um) Depois de o pino de SDA foi inativa e
autorizado a flutuar alta, SDA amostrado baixa aps
o BRG expirou.
Aps o pino SCL est inativa, SCL amostrado
baixo antes SDA vai alto.
A condio de parada comea com SDA afirmou baixa.
Quando SDA amostrado baixo, o pino de SCL permitido
flutuar. Quando o pino amostrado elevada (arbitragem do relgio),
Gerador de Baud Rate carregado com SSPADD <6:00>
e faz a contagem regressiva para 0. Depois dos tempos BRG fora,
SDA
amostrado. Se SDA amostrado baixo, uma coliso de nibus tem
ocorreu. Isto devido a um outro mestre tenta
conduzir a dados '0 '. (Figura 19-33). Se o pino SCL
amostrados baixo antes SDA est autorizado a flutuar alto, um
nibus
coliso ocorre. Este outro caso de outro mestre
tentar conduzir um dado '0 '(Figura 19-34).
b)
FIGURA 19-33: COLISO BUS durante uma condio de STOP (caso 1)
TBRG TBRG TBRG
SDA amostrados
baixa aps TBRG,
definir BCLIF
SDA
SDA afirmou baixa
SCL
PEN
BCLIF
P
SSPIF
'0 '
'0 '
FIGURA 19-34: COLISO BUS durante uma condio de STOP (caso 2)
TBRG TBRG TBRG
SDA
Assert SDA
SCL
PEN
BCLIF
P
SSPIF
'0 '
'0 '
SCL vai baixa antes SDA vai alto,
definir BCLIF
DS39632E pgina 240 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 19-4:
Nome
INTCON
PIR1
PIE1
IPR1
PIR2
PIE2
IPR2
TRISC
TRISD(1)
SSPBUF
SSPADD
TMR2
PR2
SSPCON1
SSPCON2
SSPSTAT
Ficheiros associados com a operao I2C
Bit 7 Bit 6 Bit 5
TMR0IE
RCIF
RCIE
RCIP
USBIF
USBIE
USBIP
-
TRISD5
2C
Bit 4
INT0IE
TXIF
TXIE
TXIP
EEIF
EEIE
EEIP
-
TRISD4
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
BCLIF
BCLIE
BCLIP
-
TRISD3
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
HLVDIF
HLVDIE
HLVDIP
TRISC2
TRISD2
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
TMR3IF
TMR3IE
TMR3IP
TRISC1
TRISD1
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
CCP2IF
CCP2IE
CCP2IP
TRISC0
TRISD0
Restabelecer
Valores
na Pgina
53
56
56
56
56
56
56
56
56
54
54
54
54
GIE / GIEH PEIE / giel
SPPIF(1)
SPPIE(1)
SPPIP(1)
OSCFIF
OSCFIE
OSCFIP
TRISC7
TRISD7
ADIF
ADIE
ADIP
CMIF
CMIE
CMIP
TRISC6
TRISD6
MSSP buffer de recepo / transmisso Registrar
MSSP Address Register em modo I Slave.
MSSP Baud Rate Atualizar Registrar no modo I2C Mestre.
Timer2 Registrar
Timer2 Perodo Registrar
WCOL
GCEN
SMP
SSPOV
ACKSTAT
CKE
SSPEN
ACKDT
D / D
CKP
ACKEN
P
SSPM3
RCEN
S
SSPM2
PEN
R / W
SSPM1
RSEN
UA
SSPM0
SEN
BF
54
54
54
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pelo MSSP no modo I2C .
Nota 1: Esses registros ou bits no so implementadas em dispositivos de 28 pinos.
v 2009 Microchip Technology Inc. DS39632E pgina 241
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 242 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
20,0 REFORADA UNIVERSAL
SNCRONO
Asynchronous Receiver
TRANSMISSOR (EUSART)
Os pinos da USART avanado so multiplexados
com PORTC. Para configurar RC6/TX/CK e
RC7/RX/DT/SDO como EUSART:
SPEN bit (RCSTA <7>) deve ser definido (= 1)
TRISC <7> bit deve ser definido (= 1)
TRISC <6> bit deve ser definido (= 1)
Nota: O controle EUSART ser automaticamente
reconfigure o pino da entrada sada como
necessrio.
A Universal Synchronous Asynchronous aprimorada
Mdulo transmissor receptor (EUSART) um dos
dois mdulos de E / S serial. (Genericamente, o USART tambm
conhecido como um Communications Interface Serial ou SCI).
O EUSART pode ser configurado como um full-duplex
sistema assncrono que pode se comunicar com
dispositivos perifricos, tais como terminais de CRT e
computadores pessoais. Ele tambm pode ser configurada como
uma semi-
sistema sncrono duplex que pode comunicar
com os dispositivos perifricos, tais como a A / D ou D / D integrado
circuitos, EEPROMs seriais, etc
O mdulo USART avanado implementa adicional
recursos, incluindo deteco e taxa de transmisso automtica
calibrao, despertar automtico em sincronizao Quebra recep-
o e caractere de quebra de 12 bits transmitir. Estes tornam
idealmente adequado para utilizao em autocarros Rede Local
Interconnect
(LIN bus) sistemas.
O EUSART pode ser configurada da seguinte
Modos:
Asynchronous (full-duplex) com:
- Auto-wake-up em sinal de Interrupo
- Calibrao Auto-baud
- 12-bit transmisso caractere de quebra
Synchronous - Master (half-duplex), com
selecionvel polaridade relgio
Synchronous - Slave (half-duplex), com selecionvel
relgio polaridade
O funcionamento do mdulo USART reforada
controlada atravs de trs registros:
Transmitir Estado e Controle (TXSTA)
receber o status e Controle (RCSTA)
Controle de Taxa de Transmisso (BAUDCON)
Estes so detalhados nas prximas pginas em
Registrar 20-1, 20-2 e Registrar Registrar 20-3,
respectivamente.
v 2009 Microchip Technology Inc. DS39632E pgina 243
PIC18F2455/2550/4455/4550
CADASTRE-SE 20-1:
R/W-0
CSRC
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
TXSTA: TRANSMITIR ESTATUTO E CADASTRO DE CONTROLE
R/W-0
TX9
R/W-0
TXEN
(1)
R/W-0
SYNC
R/W-0
SENDB
R/W-0
BRGH
R-1
TRMT
R/W-0
TX9D
bit 0
CSRC: Clock Source Select bit
Modo assncrono:
No me importo.
Modo sncrono:
1= Modo Master (relgio gerado internamente a partir de BRG)
0= Modo Slave (relgio de fonte externa)
TX9: 9-Bit Transmitir Habilitar bit
1= Seleciona transmisso de 9 bits
0= Seleciona transmisso de 8 bits
TXEN: Transmitir Habilitar bit(1)
1= Transmitir habilitado
0= Transmitir desativado
SYNC: EUSART Mode Select bit
1= Modo sncrono
0= Modo assncrono
SENDB: Enviar Quebre bit Character
Modo assncrono:
1= Enviar Pausa Sync no lado de transmisso (desmarcada por hardware aps a concluso)
0= Sincronizao transmisso Quebra concluda
Modo sncrono:
No me importo.
BRGH: Alta taxa de transmisso Select bit
Modo assncrono:
1= Alta velocidade
0= Velocidade baixa
Modo sncrono:
No utilizado neste modo.
TRMT: Transmitir Shift Register bit Estado
1= TSR vazio
0= TSR completo
TX9D: Nono bit de dados de transmisso
Pode ser o endereo / bit de dados ou um bit de
paridade.
SREN / CREN substitui TXEN no modo de sincronizao com a ressalva de que SREN no tem efeito em Synchronous
Modo Slave.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
Nota 1:
DS39632E pgina 244 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 20-2:
R/W-0
SPEN
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
RCSTA: receber o status E REGISTRO DE CONTROLE
R/W-0
RX9
R/W-0
SREN
R/W-0
CREN
R/W-0
ADDEN
R-0
FERR
R-0
OERR
R-x
RX9D
bit 0
SPEN: Porta Serial Habilitar bit
1= Enabled porta Serial (configura RX / DT e TX / CK pinos como os pinos da porta serial)
0= Porta Serial desativado (realizada em Reset)
RX9: 9-Bit Receba Habilitar bit
1= Seleciona recepo de 9 bits
0= Seleciona recepo 8-bit
SREN: nico Receba Habilitar bit
Modo assncrono:
No me importo.
Modo sncrono - Master:
1= Permite nico receber
0= Desativa nico receber
Este bit apagado aps a recepo est completa.
Modo sncrono - Slave:
No me importo.
CREN: Continuous Receba Habilitar bit
Modo assncrono:
1= Permite receptor
0= Desativa o receptor
Modo sncrono:
1= Permite receber contnua at permitir bit CREN apagada (CREN substitui SREN)
0= Desativa contnua receber
ADDEN: Endereo Detectar Habilitar bit
Modo assncrono 9-bit (RX9 = 1):
1= Permite a deteco de endereo, permite interrupo e carrega o buffer de recepo quando RSR <8> est
definido
0= Desactiva deteco de endereo, todos os bytes so recebidos e nono bit pode ser usado como bit de paridade
Modo assncrono de 8 bits (= RX9 0):
No me importo.
FERR: Framing bit de erro
1= Erro Framing (pode ser atualizado atravs da leitura RCREG cadastro e receber no prximo byte vlido)
0= Nenhum erro de enquadramento
OERR: Superao bit de erro
1= Erro Superao (pode ser apagada, limpando bit CREN)
0= Sem erro de saturao
RX9D: 9 bits de dados recebidos
Este pode ser o endereo / bit de dados ou um bit de paridade e deve ser calculada pelo firmware
usurio.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
v 2009 Microchip Technology Inc. DS39632E pgina 245
PIC18F2455/2550/4455/4550
CADASTRE-SE 20-3:
R/W-0
ABDOVF
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
BAUDCON: BAUDIOS registro de controle
R-1
RCIDL
R/W-0
RXDTP
R/W-0
TXCKP
R/W-0
BRG16
U-0
-
R/W-0
WUE
R/W-0
ABDEN
bit 0
ABDOVF: Auto-Baud Aquisio Rollover bit Estado
1= A rollover BRG ocorreu durante a Auto-Baud Rate mode (deve ser limpo por software) Detectar
0N = BRG capotamento ocorreu
RCIDL: Receba Operao Ocioso bit Estado
1= Receber operao ocioso
0= Receber operao est ativo
RXDTP: Recebido Polaridade Dados Selecione bit
Modo assncrono:
1= Dados RX invertido
0= Dados RX recebido no invertido
Modos sncronos:
1Data = recebidas (DT) invertido. Estado de repouso um nvel baixo.
0N = inverso de dados (DT). Estado de repouso um nvel elevado.
TXCKP: Relgio e Dados Polaridade Selecione bit
Modo assncrono:
1= TX de dados invertido
0= TX de dados no invertido
Modos sncronos:
1= Clock (CK) invertido. Estado de repouso um nvel elevado.
0= Sem inverso do relgio (CK). Estado de repouso um nvel
baixo.
BRG16: 16-Bit Baud Rate Registre Habilitar bit
1= 16-bit Gerador Taxa Baud - SPBRGH e SPBRG
0= Gerador de Taxa de Transmisso de 8 bits - SPBRG apenas (modo compatvel), valor SPBRGH
ignorado
Unimplemented: Leia como '0 '
WUE: Wake-up Ativar bit
Modo assncrono:
1= EUSART vai continuar a provar o pino RX - interromper gerado na borda de descida; pouco apuradas em
hardware no seguinte borda de subida
0= RX pino no monitorados ou subida do sinal detectado
Modo sncrono:
No utilizado neste modo.
ABDEN: Auto-Baud Detectar Habilitar bit
Modo assncrono:
1= Ativar a medio da frequncia de transmisso do prximo caractere. Requer recepo de um campo Sync (55h);
apuradas em hardware aps a concluso.
0= Medio da taxa de Baud desativado ou concludas
Modo sncrono:
No utilizado neste modo.
bit 6
bit 5
4 bits
bit 3
bit 2
bit 1
bit 0
DS39632E pgina 246 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
20,1 Gerador de Baud Rate (BRG)
A RPP um dedicado de 8 bits ou de 16 bits, que o gerador
suporta tanto o sncrona e assncrona
modos da EUSART. Por padro, o BRG opera
no modo de 8 bits. Definir o bit BRG16 (BAUDCON <3>)
seleciona o modo de 16 bits.
O SPBRGH: SPBRG registo par controla o perodo
de um temporizador free-running. No modo assncrono, bits,
BRGH (TXSTA <2>) e BRG16 (BAUDCON <3>), tambm
controlar a taxa de transmisso. No modo sncrono, BRGH
ignorados. A Tabela 20-1 apresenta a frmula para o clculo
da taxa de transmisso para diferentes modos EUSART que
s se aplicam no modo Master (relgio gerado internamente).
Dada a taxa de transmisso desejada e FOSC, o mais prximo
valor inteiro para o SPBRGH: SPBRG registros pode ser
calculado usando as frmulas da Tabela 20-1. A partir da,
o erro na velocidade de transmisso pode ser determinado. Um
exemplo
clculo mostrado no Exemplo 20-1. Transmisso tpico
taxas e valores de erro para os vrios Asynchronous
modos so apresentados na Tabela 20-2. Pode ser vantajoso
para usar a alta taxa de transmisso (BRGH = 1), ou o BRG 16
bits
para reduzir a taxa de erro de transmisso, ou conseguir uma
transmisso lenta
taxa para a frequncia do oscilador rpido.
Escrevendo um novo valor para o SPBRGH: SPBRG registra
faz com que o temporizador BRG para ser reposto (ou limpo). Este
garante a BRG no espera por um estouro de temporizador
antes de emitir a nova taxa de transmisso.
20.1.1 OPERAO NO PODER de gesto
MODOS
O relgio do dispositivo utilizado para gerar a transmisso
desejada
taxa. Quando um dos modos de potncia gerenciados
entrou, a nova fonte de relgio pode estar operando em um
freqncia diferente. Isso pode exigir um ajuste
o valor do par de registradores SPBRG.
20.1.2 AMOSTRAGEM
Os dados sobre o pino de RX amostrado por trs vezes por um
circuito de deteco de maioria para determinar se um elevado ou
um baixo
nvel est presente no pino de RX.
TABELA 20-1:
SYNC
0
0
0
0
1
1
FRMULAS taxa de transmisso
BRG16
0
0
1
1
0
1
BRGH
0
1
0
1
x
x
Modo BRG / EUSART
8-bit/Asynchronous
8-bit/Asynchronous
16-bit/Asynchronous
16-bit/Asynchronous
8-bit/Synchronous
16-bit/Synchronous
FOSC / [4 (n + 1)]
Formula Taxa Baud
FOSC / [64 (n + 1)]
FOSC / [16 (n + 1)]
Bits de configurao
Legenda: x= No me importo, n = valor de SPBRGH: SPBRG par de registradores
v 2009 Microchip Technology Inc. DS39632E pgina 247
PIC18F2455/2550/4455/4550
Exemplo 20-1: CLCULO DE TRANSMISSO taxa de erro
Para um dispositivo com FOSC de 16 MHz, taxa de transmisso desejada de 9600, o modo assncrono, 8 bits BRG:
Desejado Baud Rate = FOSC / (64 ([SPBRGH: SPBRG] + 1))
Resolvendo para SPBRGH: SPBRG:
X = ((FOSC / desejado taxa de transmisso) / 64) - 1
= ((16000000/9600) / 64) - 1
= [25,042] 25 =
Calculado Taxa Baud = 16000000 / (64 (25 + 1))
= 9615
Erro = (Calculado Baud Rate - Taxa de transmisso desejado) / desejado Taxa Baud
= (9615 - 9600) / 9600 = 0,16%
TABELA 20-2:
Nome
TXSTA
RCSTA
SPBRGH
SPBRG
REGISTROS DE TRANSMISSO ASSOCIADA GERADOR DE TAXA
Bit 7
CSRC
SPEN
Bit 6
TX9
RX9
RCIDL
Bit 5
TXEN
SREN
RXDTP
Bit 4
SYNC
CREN
TXCKP
Bit 3
SENDB
ADDEN
BRG16
Bit 2
BRGH
FERR
-
O bit 1
TRMT
OERR
WUE
Bit 0
TX9D
RX9D
ABDEN
Repor Valores
na pgina
55
55
55
55
55
BAUDCON ABDOVF
EUSART Baud Rate Generator Register alta Byte
EUSART Baud Rate Generator Registrar Low Byte
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pela BRG.
DS39632E pgina 248 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 20-3:
BAUD
TAXA
(K)
Velocidade Baud para MODOS assncrona
SYNC = 0, BRGH = 0, BRG16 = 0
FOSC = 20,000 MHz
Real
Taxa
(K)
-
1.221
2.404
9,766
19,531
62.500
104.167
%
Erro
-
1.73
0,16
1.73
1.73
8.51
-9,58
SPBRG
valor
(Decimal)
FOSC = 40,000 MHz
Real
Taxa
(K)
-
-
2.441
9.615
19,531
56,818
125.000
%
Erro
-
-
1.73
0,16
1.73
-1,36
8.51
SPBRG
valor
(Decimal)
FOSC = 10,000 MHz
Real
Taxa
(K)
-
1.202
2.404
9,766
19,531
52.083
78.125
%
Erro
-
0,16
0,16
1.73
1.73
-9,58
-32,18
SPBRG
valor
(Decimal)
FOSC = 8.000 MHz
Real
Taxa
(K)
-
1.201
2.403
9.615
-
-
-
%
Erro
-
-0,16
-0,16
-0,16
-
-
-
SPBRG
valor
(Decimal)
0.3
1.2
2.4
9,6
19.2
57.6
115,2
-
-
255
64
31
10
4
-
255
129
31
15
4
2
-
129
64
15
7
2
1
-
103
51
12
-
-
-
SYNC = 0, BRGH = 0, BRG16 = 0
BAUD
TAXA
(K)
FOSC = 4.000 MHz
Real
Taxa
(K)
0.300
1.202
2.404
8,929
20,833
62.500
62.500
%
Erro
0,16
0,16
0,16
-6,99
8.51
8.51
-45,75
SPBRG
valor
(Decimal)
FOSC = 2.000 MHz
Real
Taxa
(K)
0.300
1.201
2.403
-
-
-
-
%
Erro
-0,16
-0,16
-0,16
-
-
-
-
SPBRG
valor
(Decimal)
FOSC = 1.000 MHz
Real
Taxa
(K)
0.300
1.201
-
-
-
-
-
%
Erro
-0,16
-0,16
-
-
-
-
-
SPBRG
valor
(Decimal)
0.3
1.2
2.4
9,6
19.2
57.6
115,2
207
51
25
6
2
0
0
103
25
12
-
-
-
-
51
12
-
-
-
-
-
SYNC = 0, BRGH = 1, BRG16 = 0
BAUD
TAXA
(K)
FOSC = 40,000 MHz
Real
Taxa
(K)
-
-
-
9,766
19,231
58,140
113,636
%
Erro
-
-
-
1.73
0,16
0,94
-1,36
SPBRG
valor
(Decimal)
FOSC = 20,000 MHz
Real
Taxa
(K)
-
-
-
9.615
19,231
56,818
113,636
%
Erro
-
-
-
0,16
0,16
-1,36
-1,36
SPBRG
valor
(Decimal)
FOSC = 10,000 MHz
Real
Taxa
(K)
-
-
2.441
9.615
19,531
56,818
125.000
%
Erro
-
-
1.73
0,16
1.73
-1,36
8.51
SPBRG
valor
(Decimal)
FOSC = 8.000 MHz
Real
Taxa
(K)
-
-
2.403
9.615
19,230
55,555
-
%
Erro
-
-
-0,16
-0,16
-0,16
3.55
-
SPBRG
valor
(Decimal)
0.3
1.2
2.4
9,6
19.2
57.6
115,2
-
-
-
255
129
42
21
-
-
-
129
64
21
10
-
-
255
64
31
10
4
-
-
207
51
25
8
-
SYNC = 0, BRGH = 1, BRG16 = 0
BAUD
TAXA
(K)
FOSC = 4.000 MHz
Real
Taxa
(K)
-
1.202
2.404
9.615
19,231
62.500
125.000
%
Erro
-
0,16
0,16
0,16
0,16
8.51
8.51
SPBRG
valor
(Decimal)
FOSC = 2.000 MHz
Real
Taxa
(K)
-
1.201
2.403
9.615
-
-
-
%
Erro
-
-0,16
-0,16
-0,16
-
-
-
SPBRG
valor
(Decimal)
FOSC = 1.000 MHz
Real
Taxa
(K)
0.300
1.201
2.403
-
-
-
-
%
Erro
-0,16
-0,16
-0,16
-
-
-
-
SPBRG
valor
(Decimal)
0.3
1.2
2.4
9,6
19.2
57.6
115,2
-
207
103
25
12
3
1
-
103
51
12
-
-
-
207
51
25
-
-
-
-
v 2009 Microchip Technology Inc. DS39632E pgina 249
PIC18F2455/2550/4455/4550
TABELA 20-3:
BAUD
TAXA
(K)
Velocidade Baud para MODOS assncrona (CONTINUAO)
SYNC = 0, BRGH = 0, BRG16 = 1
FOSC = 20,000 MHz
Real
Taxa
(K)
0.300
1.200
2,399
9.615
19,231
56,818
113,636
%
Erro
0.02
-0.03
-0.03
0,16
0,16
-1,36
-1,36
SPBRG
valor
(Decimal)
FOSC = 40,000 MHz
Real
Taxa
(K)
0.300
1.200
2.402
9.615
19,231
58,140
113,636
%
Erro
0.00
0.02
0.06
0,16
0,16
0,94
-1,36
SPBRG
valor
(Decimal)
FOSC = 10,000 MHz
Real
Taxa
(K)
0.300
1.200
2.404
9.615
19,531
56,818
125.000
%
Erro
0.02
-0.03
0,16
0,16
1.73
-1,36
8.51
SPBRG
valor
(Decimal)
FOSC = 8.000 MHz
Real
Taxa
(K)
0.300
1.201
2.403
9.615
19,230
55,555
-
%
Erro
-0,04
-0,16
-0,16
-0,16
-0,16
3.55
-
SPBRG
valor
(Decimal)
0.3
1.2
2.4
9,6
19.2
57.6
115,2
8332
2082
1040
259
129
42
21
4165
1041
520
129
64
21
10
2082
520
259
64
31
10
4
1665
415
207
51
25
8
-
SYNC = 0, BRGH = 0, BRG16 = 1
BAUD
TAXA
(K)
FOSC = 4.000 MHz
Real
Taxa
(K)
0.300
1.202
2.404
9.615
19,231
62.500
125.000
%
Erro
0.04
0,16
0,16
0,16
0,16
8.51
8.51
SPBRG
valor
(Decimal)
FOSC = 2.000 MHz
Real
Taxa
(K)
0.300
1.201
2.403
9.615
-
-
-
%
Erro
-0,16
-0,16
-0,16
-0,16
-
-
-
SPBRG
valor
(Decimal)
FOSC = 1.000 MHz
Real
Taxa
(K)
0.300
1.201
2.403
-
-
-
-
%
Erro
-0,16
-0,16
-0,16
-
-
-
-
SPBRG
valor
(Decimal)
0.3
1.2
2.4
9,6
19.2
57.6
115,2
832
207
103
25
12
3
1
415
103
51
12
-
-
-
207
51
25
-
-
-
-
SYNC = 0, BRGH = 1, BRG16 = 1ou SYNC = 1, BRG16 = 1
BAUD
TAXA
(K)
FOSC = 40,000 MHz
Real
Taxa
(K)
0.300
1.200
2.400
9,606
19,193
57,803
114,943
%
Erro
0.00
0.00
0.02
0.06
-0.03
0.35
-0,22
SPBRG
valor
(Decimal)
FOSC = 20,000 MHz
Real
Taxa
(K)
0.300
1.200
2.400
9,596
19,231
57,471
116,279
%
Erro
0.00
0.02
0.02
-0.03
0,16
-0,22
0,94
SPBRG
valor
(Decimal)
FOSC = 10,000 MHz
Real
Taxa
(K)
0.300
1.200
2.402
9.615
19,231
58,140
113,636
%
Erro
0.00
0.02
0.06
0,16
0,16
0,94
-1,36
SPBRG
valor
(Decimal)
FOSC = 8.000 MHz
Real
Taxa
(K)
0.300
1.200
2.400
9.615
19,230
57,142
117,647
%
Erro
-0.01
-0,04
-0,04
-0,16
-0,16
0,79
-2,12
SPBRG
valor
(Decimal)
0.3
1.2
2.4
9,6
19.2
57.6
115,2
33332
8332
4165
1040
520
172
86
16665
4165
2082
520
259
86
42
8332
2082
1040
259
129
42
21
6665
1665
832
207
103
34
16
SYNC = 0, BRGH = 1, BRG16 = 1ou SYNC = 1, BRG16 = 1
BAUD
TAXA
(K)
FOSC = 4.000 MHz
Real
Taxa
(K)
0.300
1.200
2.404
9.615
19,231
58,824
111.111
%
Erro
0.01
0.04
0,16
0,16
0,16
2.12
-3,55
SPBRG
valor
(Decimal)
FOSC = 2.000 MHz
Real
Taxa
(K)
0.300
1.201
2.403
9.615
19,230
55,555
-
%
Erro
-0,04
-0,16
-0,16
-0,16
-0,16
3.55
-
SPBRG
valor
(Decimal)
FOSC = 1.000 MHz
Real
Taxa
(K)
0.300
1.201
2.403
9.615
19,230
-
-
%
Erro
-0,04
-0,16
-0,16
-0,16
-0,16
-
-
SPBRG
valor
(Decimal)
0.3
1.2
2.4
9,6
19.2
57.6
115,2
3332
832
415
103
51
16
8
1665
415
207
51
25
8
-
832
207
103
25
12
-
-
DS39632E pgina 250 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
20.1.3 TAXA DE AUTO-BAUD DETECTAR
O mdulo USART melhorada suporta o automtico
deteco e calibrao de taxa de transmisso. Este recurso
ativa apenas no modo assncrono e ao mesmo tempo a EUA
pouco clara.
A seqncia de medio de taxa de transmisso automtica
(Figura 20-1) comea sempre que um bit de incio recebido
eo bit ABDEN est definido. O clculo
auto-mdia.
No modo Auto-Detect Taxa de Baud (ABD), o relgio para
a RPP invertida. Ao invs da BRG cronometrar o
sinal RX de entrada, o sinal de RX o tempo do BRG. Em
Modo ABD, o Gerador de Baud Rate interno usado
como um contador de tempo para o perodo de bits em srie de
entrada
byte stream.
Uma vez que o bit ABDEN est definida, a mquina do Estado ir
limpar
o BRG e procurar um pouco Start. A Taxa de Auto-Baud
Detectar deve receber um byte com o valor 55h (ASCII
"U", que tambm o carcter de sincronizao canal LIN), em
ordem
para calcular a taxa de bit apropriada. A medio
tomado tanto um baixo e um tempo de bit alto, a fim de min-
zar os efeitos causados pela assimetria da entrada
sinal. Depois de um pouco de partida, o SPBRG comea a contar-
se,
usando a fonte de relgio pr-selecionado na primeira rising
borda de RX. Depois de oito bits no pino RX, ou o quinto
borda de subida, um valor acumulado totalizando o bom
Perodo BRG deixado na SPBRGH: SPBRG par registo.
Uma vez que a ponta 5 vista (isto deve corresponder ao
Stop bit), o bit ABDEN automaticamente apagado.
Se a rolagem da BRG ocorre (um estouro de FFFFh
a 0000h), o evento preso pelo status ABDOVF
bits (BAUDCON <7>). Ele definido em hardware por BRG
capotamentos e pode ser ajustado ou cancelado pelo usurio
software. ABD modo permanece ativo aps capotamento
eventos eo bit ABDEN permanece definida (Figura 20-2).
Enquanto calibrar o perodo a taxa de transmisso, o BRG
registradores so clock de 1/8th o relgio pr-configurado
taxa. Note-se que o relgio BRG ser configurado pela
BRG16 e BRGH bits. Independente do bit BRG16
configurao, tanto o eSPBRG SPBRGH e ser utilizado como
um contador de 16 bits. Isso permite que o usurio verifique se no
realizar ocorreu para os modos de 8 bits, verificando 00h em
o SPBRGH registar. Consulte a Tabela 20-4 para o contador
taxas de clock para o BRG.
Enquanto a seqncia ABD acontece, o EUSART
mquina de estado realizada em ocioso. A interrupo RCIF est
definido
uma vez que o quinto borda de subida em RX detectado. O valor
de
no RCREG precisa ser lido para limpar a RCIF
interromper. O contedo de RCREG deve ser descartada.
Nota 1: Se o bit WUE definido com o bit ABDEN,
Auto-Baud Taxa de Deteco ocorrer em
o byte seguido o carter Break.
2: Cabe ao usurio determinar que o
taxa de transmisso de caracteres de entrada est
dentro da
gama da fonte de relgio BRG seleccionado.
Algumas combinaes de freqncia do oscilador
e EUSART taxas de transmisso no so possveis
devido a taxas de erro de bit. Sistema global
sincronismo e comunicao taxas de transmisso
deve ser levado em considerao quando
utilizando a Taxa de Deteco Auto-Baud
caracterstica.
TABELA 20-4:
BRG16
0
0
1
1
Nota:
BRGH
0
1
0
1
BRG COUNTER
RELGIO PREOS
BRG Contra Relgio
FOSC/512
FOSC/128
FOSC/128
FOSC/32
Durante a seqncia ABD, SPBRG e
SPBRGH so utilizados tanto como um contador de 16
bits,
independente da configurao BRG16.
20.1.3.1 ABD e EUSART Transmisso
Desde o relgio BRG revertida durante ABD aquisi-
o, o transmissor EUSART no pode ser utilizado durante a
ABD. Isto significa que sempre que o bit ABDEN est definido,
TXREG no pode ser gravado. Os usurios tambm devem garantir
ABDEN que no se passa durante uma transmisso
seqncia. No fazer isso pode resultar em imprevisveis
Operao EUSART.
v 2009 Microchip Technology Inc. DS39632E pgina 251
PIC18F2455/2550/4455/4550
FIGURA 20-1:
BRG Valor
RX pin
AUTOMTICO DE CLCULO TAXA DE TRANSMISSO
XXXXh 0000h
Comear
Borda # 1
bit 1 bit 0
Borda # 2
bit 3bit 2
Borda # 3
bit 5BIT 4
Borda # 4
bit 7 bits 6
001Ch
Borda N 5
Pare bit
BRG Relgio
Definido pelo usurio
ABDEN bit
RCIF bit
(Interrupo)
Ler
RCREG
SPBRG
SPBRGH
XXXXh
XXXXh
1Cr
00h
Auto-Cancelado
Nota: A seqncia ABD requer o mdulo EUSART a ser configurado no modo assncrono e EUA = 0.
FIGURA 20-2:
BRG Relgio
ABDEN bit
RX pin
ABDOVF bit
BRG SEQNCIA OVERFLOW
Comear bit 0
FFFFh
BRG Valor XXXXh 0000h 0000h
DS39632E pgina 252 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
20,2 Modo assncrono EUSART
O modo assncrono de operao selecionada por
limpando o bit SYNC (TXSTA <4>). Neste modo, o
EUSART usa o padro Non-Return-to-Zero (NRZ)
format (Iniciar um bit, oito ou nove bits de dados e um
Pare bit). O formato mais comum de 8 bits de dados. Um
on-chip 8-bit/16-bit Baud Rate Generator dedicado
pode ser usado para derivar as frequncias de taxa de transmisso
padro
a partir do oscilador.
O EUSART transmite e recebe o LSB primeiro. O
Transmissor e receptor de EUSART so funcionalmente
independente, mas utilizam o mesmo formato de dados e
transmisso
taxa. O gerador de taxa de transmisso produz um relgio, ou
x16 e x64 da taxa de mudana de bit dependendo do BRGH
e BRG16 pedaos (TXSTA <2> e BAUDCON <3>). Paridade
no suportada pelo hardware, mas pode ser
implementadas em software e armazenado como o bit de dados 9.
TheTXCKP (BAUDCON <4>) andRXDTP
(BAUDCON <5>) bits permitem que os sinais de Tx e Rx ser
invertida (polaridade invertida). Os dispositivos que os sinais de
tampo
entre os nveis TTL e RS-232 tambm inverter o sinal.
Ajustando o TXCKP e RXDTP pedaos permite a utilizao de
circuitos que proporcionam tampo sem inverter o sinal.
Quando operando no modo assncrono, o EUSART
mdulo constitudo pelos seguintes elementos importantes:








Gerador de Baud Rate
A amostragem do circuito
Transmissor Asynchronous
Asynchronous Receiver
Auto-Wake-up em sinal de Interrupo
12-Bit caractere de quebra de transmisso
Auto-Baud Taxa de Deteco
Pin Polaridade Estado
Uma vez que o registo TXREG transfere os dados para o TSR
registrar (ocorre em um TCY), o registo TXREG est vazia
eo bit flag TXIF (PIR1 <4>) definido. Esta interrupo pode
ser ativada ou desativada pelo marcando ou desmarcando a
interrupo
bit de habilitao, TXIE (PIE1 <4>). TXIF ser definido
independentemente de
o estado de TXIE, que no pode ser limpo por software. TXIF
Tambm no apagada imediatamente aps o carregamento
TXREG, mas
tornam-se vlidos no segundo ciclo seguinte instruo
a instruo de carga. TXIF Polling imediatamente aps a
carga de TXREG retornar resultados invlidos. Enquanto TXIF indica o estado do registo TXREG,
outro bit, TRMT (TXSTA <1>), mostra o status de
o TSR registar. TRMT um pouco s de leitura que definido
quando o registo TSR est vazio. Nenhuma lgica de interrupo
vinculados a este bit para que o usurio tem para consultar este bit,
a fim de
determinar se o registo da TSR est vazio.
O bit TXCKP (BAUDCON <4>) permite que o sinal TX para
ser invertida (polaridade invertida). Dispositivos que tampo
sinais TTL para nveis RS-232 tambm inverter o sinal
(Quando TTL = 1, RS-232 = negativo). Invertendo a polar-
dade dos dados pino TX definindo o bit TXCKP permite
o uso de circuitos que proporcionam tamponamento sem inverter o
sinal.
Nota 1: O registo TSR no mapeado em dados
memria de modo que no est disponvel para o utilizador.
2: Bit Bandeira, TXIF, definido quando permitir bit,
TXEN, est definido.
Para configurar uma transmisso assncrona:
1. Inicializar o SPBRGH: registros SPBRG para o
taxa de transmisso adequada. Definir ou limpar a BRGH
e BRG16 bocados, como requerido, para conseguir o
taxa de transmisso desejada.
Ative a porta serial assncrona, limpando
bit, SYNC e configurao bit, SPEN.
Se o sinal a partir do pino de TX est a ser invertido, definida
o bit TXCKP.
Se as interrupes so desejados, definir bit de habilitao,
TXIE.
Se a transmisso de 9 bits desejada, definir transmitir bit,
TX9. Pode ser usado como endereo / dados bit.
Permitir a transmisso, definindo bit, TXEN,
que tambm ir definir bit, TXIF.
Se a transmisso de 9 bits for selecionada, o nono bit
deve ser carregado em bits, TX9D.
Carregar dados para o registo TXREG (comea
transmisso).
Se estiver usando o interrompe, garantir que o GIE e PEIE
bits no registrador INTCON (INTCON <07:06>) so
definido.
2.
3.
4.
5.
6.
7.
8.
9.
20.2.1 EUSART ASYNCHRONOUS
TRANSMISSOR
O diagrama de blocos do transmissor EUSART mostrado na
Figura 20-3. O corao do transmissor a transmisso
(Serial) Shift Register (TSR). O registrador de deslocamento obtm
seus dados a partir da leitura / gravao de transmisso registo
tampo,
TXREG. O registo TXREG carregado com os dados
software. O registo TSR no carregado at o Parar
bits foi transmitido a partir da carga anterior. Como
Assim que o bit de paragem transmitido, a TSR carregado
com novos dados do registo TXREG (se disponvel).
v 2009 Microchip Technology Inc. DS39632E pgina 253
PIC18F2455/2550/4455/4550
FIGURA 20-3: EUSART TRANSMITIR ESQUEMA DE BLOCO
Barramento de dados
TXIF
TXIE
MSb
(8)
Interromper
TXEN Taxa de transmisso CLK
TRMT
BRG16 SPBRGH SPBRG
TX9
TX9D
SPEN

TSR Registrar
TXREG Registrar
8
LSB
0
Pin tampo
e Controle
TX pin
TXCKP
Gerador de Baud Rate
FIGURA 20-4:
Escreva para TXREG
BRG Output
(Deslocao Clock)
TX (pin)
TXIF bit
(Buffer de transmisso
Reg. Vazio Flag)
Transmisso assncrona, TXCKP = 0(TX no invertida)
Palavra 1
Comece bit
1 TCY
bit 0 bit 1
Palavra 1
bit 7/8
Pare bit
Bit TRMT
(Transmisso Mudana
Reg. Vazio Flag)
Palavra 1
Transmitir a tecla Shift Reg
FIGURA 20-5: Transmisso assncrona (BACK TO BACK),
TXCKP = 0(TX no invertida)
Palavra 1 Palavra 2
Escreva para TXREG
BRG Output
(Deslocao Clock)
TX (pin)
TXIF bit
(Interrupo Reg. Flag)
1 TCY
1 TCY
Palavra 1
Transmitir a tecla Shift Reg.
Palavra 2
Transmitir a tecla Shift Reg.
Comece bit bit 0 bit 1
Palavra 1
bit 7/8
Pare bit
Comece bit
Palavra 2
bit 0
Bit TRMT
(Transmisso Mudana
Reg. Vazio Flag)
Nota: Este diagrama de tempo mostra duas transmisses consecutivas.
DS39632E pgina 254 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 20-5:
Nome
INTCON
PIR1
PIE1
IPR1
RCSTA
TXREG
TXSTA
BAUDCON
SPBRGH
SPBRG
REGISTOS associados transmisso ASYNCHRONOUS
Bit 7 Bit 6 Bit 5
TMR0IE
RCIF
RCIE
RCIP
SREN
TXEN
RXDTP
Bit 4
INT0IE
TXIF
TXIE
TXIP
CREN
SYNC
TXCKP
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
ADDEN
SENDB
BRG16
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
FERR
BRGH
-
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
OERR
TRMT
WUE
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
RX9D
TX9D
ABDEN
Restabelecer
Valores
na pgina
53
56
56
56
55
55
55
55
55
55
GIE / GIEH PEIE / giel
SPPIF(1)
SPPIE(1)
SPPIP(1)
SPEN
CSRC
ABDOVF
ADIF
ADIE
ADIP
RX9
TX9
RCIDL
EUSART Transmitir Registrar
EUSART Baud Rate Generator Register alta Byte
EUSART Baud Rate Generator Registrar Low Byte
Legenda: - = Locais no implementadas ler como '0 '. Clulas sombreadas no so utilizados para a transmisso assncrona.
Nota 1: Reservados em dispositivos de 28 pinos; sempre manter esses bits clara.
v 2009 Microchip Technology Inc. DS39632E pgina 255
PIC18F2455/2550/4455/4550
20.2.2 EUSART ASYNCHRONOUS
RECEPTOR
20.2.3 CONFIGURAO 9-BIT COM MODO
ENDEREO DETECTAR
O diagrama de bloco receptor mostrada na Figura 20-6.
Os dados so recebidos no pino de RX e dirige os dados
bloco de recuperao. O bloco de recuperao de dados , na
verdade, um
alta velocidade shifter operacional em at 16 vezes a taxa de
transmisso,
Considerando que o principal receber shifter serial opera no
taxa de bits ou a FOSC. Este modo seria normalmente usado
em sistemas RS-232.
O bit RXDTP (BAUDCON <5>) permite que o sinal RX
ser invertida (polaridade invertida). Dispositivos que tampo
sinais RS-232 para nveis TTL tambm realizar uma inver-
o do sinal (quando o RS-232 = positivo, TTL = 0).
A inverso da polaridade dos dados RX pino definindo o
RXDTP bits permite a utilizao de circuitos que proporcionam
tampo sem inverter o sinal.
Para configurar uma recepo assncrona:
Inicializar o SPBRGH: registros SPBRG para o
taxa de transmisso adequada. Definir ou limpar a BRGH
e BRG16 bocados, como requerido, para conseguir o
taxa de transmisso desejada.
2. Ative a porta serial assncrona, limpando
bit, SYNC e configurao bit, SPEN.
3. Se o sinal no pino RX para ser invertido, definida
o bit RXDTP.
4. Se as interrupes so desejados, definir bit de habilitao,
RCIE.
5. Se a recepo de 9 bits desejada, definir bit, RX9.
6. Permitir a recepo ajustando bit, CREN.
7. Bit Bandeira, RCIF, ser definido quando a recepo
preencher e uma interrupo ser gerado se
bit de habilitao, RCIE, foi definida.
8. Leia o RCSTA para obter o nono bit (se
ativado) e determinar se ocorreu algum erro
durante a recepo.
9. Leia os dados recebidos de 8 bits atravs da leitura do
RCREG registar.
10. Se tiver ocorrido qualquer erro, eliminar o erro, limpando
bit de habilitao, CREN.
11. Se estiver usando o interrompe, garantir que o GIE e PEIE
bits no registrador INTCON (INTCON <07:06>) so
definido.
1.
Este modo seria normalmente usado nos sistemas RS-485.
Para configurar uma recepo assncrona com Endereo
Detectar Ativar:
1. Inicializar o SPBRGH: registros SPBRG para o
taxa de transmisso adequada. Definir ou limpar a BRGH
e BRG16 bocados, como requerido, para conseguir o
taxa de transmisso desejada.
2. Ative a porta serial assncrona, limpando
o bit SYNC e definindo o bit SPEN.
3. Se o sinal no pino RX para ser invertido, definida
o bit RXDTP. Se o sinal a partir do pino de TX
ser invertida, defina o bit TXCKP.
4. Se for necessrio interromper, defina o bit RCEN e
seleccionar o nvel de prioridade desejado com o bit RCIP.
5. Definir o bit RX9 para permitir a recepo de 9 bits.
6. Definir o bit ADDEN para permitir endereo detectar.
7. Ativar recepo, definindo o bit CREN.
8. O bit RCIF ser definido quando a recepo
completar. A interrupo ser reconhecido se
os RCIE e GIE bits so definidos.
9. Leia o RCSTA para determinar se algum
Ocorreu um erro durante a recepo, bem como ler
bit 9 de dados (se aplicvel).
10. Leia RCREG para determinar se o dispositivo est a ser
abordadas.
11. Se tiver ocorrido qualquer erro, limpar o bit CREN.
12. Se o dispositivo tem sido abordada, desmarque a
ADDEN pouco para permitir que todos os dados recebidos para
o
buffer de recepo e interromper a CPU.
DS39632E pgina 256 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 20-6: EUSART RECEBER ESQUEMA DE BLOCO
CREN
64 Taxa de transmisso CLK
BRG16 SPBRGH SPBRG
| 64
ou
| 16
ou
|4
MSb
Pare
(8) 7
RSR Registrar

1 0
LSB
Comear
OERR FERR
Gerador de Baud Rate
RX9
Pin tampo
e Controle
RX
Dados
Recuperao
RX9D RCREG Registrar
FIFO
RXDTP SPEN
Interromper RCIF
RCIE
8
Barramento de dados
FIGURA 20-7:
RX (pino)
VN Mudana Reg
VN tampo Reg
Leia Rcv
Tampo Reg
RCREG
RCIF
(Flag de interrupo)
OERR bit
CREN
Nota:
RECEPO assncrona, RXDTP = 0(RX no invertida)
Comear
bocado bit 0 bit 1 bit 7/8 Parar
bocado
Comear
bocado bit 0 bit 7/8 Pare
bocado
Comear
bocado bit 7/8
Pare
bocado
Palavra 1
RCREG
Palavra 2
RCREG
Este diagrama de tempo mostra trs palavras que aparecem na entrada de RX. O RCREG (buffer de recebimento) lido aps a terceira palavra
fazendo com que o OERR (Superao) bit a ser definido.
TABELA 20-6:
Nome
INTCON
PIR1
PIE1
IPR1
RCSTA
RCREG
TXSTA
BAUDCON
SPBRGH
SPBRG
Ficheiros associados com a recepo ASYNCHRONOUS
Bit 7 Bit 6 Bit 5
TMR0IE
RCIF
RCIE
RCIP
SREN
TXEN
RXDTP
Bit 4
INT0IE
TXIF
TXIE
TXIP
CREN
SYNC
TXCKP
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
ADDEN
SENDB
BRG16
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
FERR
BRGH
-
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
OERR
TRMT
WUE
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
RX9D
TX9D
ABDEN
Restabelecer
Valores
na pgina
53
56
56
56
55
55
55
55
55
55
GIE / GIEH PEIE / giel
SPPIF(1)
SPPIE(1)
SPPIP(1)
SPEN
CSRC
ABDOVF
ADIF
ADIE
ADIP
RX9
TX9
RCIDL
EUSART Receba Registrar
EUSART Baud Rate Generator Register alta Byte
EUSART Baud Rate Generator Registrar Low Byte
Legenda: - = Locais no implementadas ler como '0 '. Clulas sombreadas no so utilizados para a recepo assncrona.
Nota 1: Reservados em dispositivos de 28 pinos; sempre manter esses bits clara.
v 2009 Microchip Technology Inc. DS39632E pgina 257
PIC18F2455/2550/4455/4550
20.2.4 AUTO-WAKE-UP ON SYNC
QUEBRA DE CARACTERES
Durante o modo de suspenso, todos os relgios para o EUSART
so
suspenso. Devido a isso, o gerador de taxa de transmisso
inativo e uma recepo byte adequada no pode ser per-
formado. O recurso de auto-wake-up permite que o controlador
para acordar devido atividade na linha RX / DT enquanto o
EUSART est operando no modo assncrono.
O recurso de auto-wake-up est habilitado, definindo o
EUA expressos bits (BAUDCON <1>). Uma vez definido, o tpico
receber
seqncia em RX / DT desativado eo EUSART
permanece em um estado inativo, o monitoramento para um evento
de wake-up
independente do modo CPU. Um evento de wake-up
consiste numa maior para baixo transio na linha RX / DT.
(Isto coincide com o incio de uma ou de uma ruptura de
sincronizao
Carter de sinal de despertar para o protocolo LIN).
Aps um evento de despertar, o mdulo gera uma
RCIF interromper. A interrupo gerada Sincronizada
nously aos relgios Q em modos de funcionamento normais
(Figura 20-8) e de forma assncrona, se o dispositivo est em
Modo Sleep (Figura 20-9). A condio de interrupo
apuradas atravs da leitura do registo RCREG.
O bit WUE limpa automaticamente uma vez por low-to-
alta de transio observado na linha RX seguindo o
evento wake-up. Neste ponto, o mdulo est em EUSART
Modo de espera e retorna operao normal. Isso sinaliza
para o usurio que o evento Quebra Sync over.
Dados de caracteres e causa ou erros de enquadramento. Para
trabalhar
adequadamente, por conseguinte, o caracter inicial no trans
misso deve ser tudo '0 's. Isto pode ser 00h (8 bits) para
dispositivos padro RS-232 ou 000h (12 bits) para LIN bus.
Oscilador tempo start-up tambm deve ser considerado,
especialmente em aplicaes que utilizam osciladores com mais
start-up intervalos (ou seja, XT ou modo HS). A sincronizao
Quebrar (ou Wake-up Sinal) personagem deve ser de
comprimento suficiente e ser seguido por um intervalo suficiente
para permitir o tempo suficiente para o oscilador seleccionados para
iniciar
e fornecer adequada inicializao do EUSART.
20.2.4.2 Consideraes Especiais Usando
o Bit WUE
O momento de EUA e eventos RCIF pode causar alguma
confuso quando se trata de determinar a validade da
os dados recebidos. Como se observa, definindo o bit WUE coloca o
EUSART em um modo de espera. O evento wake-up faz com que
um
receber interromper definindo o bit RCIF. O bit a EUA
apuradas aps isso quando uma borda de subida visto em RX /
DT.
A condio de interrupo ento apagada pela leitura do
RCREG registar. Normalmente, os dados sero RCREG
dados fictcios e deve ser descartada.
O fato de que o bit WUE foi liberado (ou ainda
definido) ea bandeira RCIF definido no deve ser utilizado como
um
indicador da integridade dos dados na RCREG. Usurios
devem considerar a implementao de um mtodo paralelo em
firmware para verificar a integridade dos dados recebidos.
Para garantir que nenhum dado real perdido, verifique a RCIDL
bit para verificar se uma operao de recebimento no est em
andamento. Se
uma operao de recebimento no est ocorrendo, o bit pode WUE
em seguida, ser definido um pouco antes de entrar no modo de
suspenso.
20.2.4.1 Consideraes Especiais Usando
Auto-Wake-up
Desde auto-wake-up funes de deteco borda de subida
transies no RX / DT, informaes com qualquer estado
alteraes antes do bit de parada pode ser sinal de um falso End-Of-
FIGURA 20-8:
OSC1
Bit WUE(1)
RX / DT Linha
RCIF
Nota 1:
AUTO-wake-up bit (EUA) TIMINGS durante a operao normal
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
Bit definido pelo usurio Auto-Cancelado
Apagadas devido leitura de RCREG usurio
O EUSART permanece ocioso, enquanto o bit WUE est definido.
FIGURA 20-9:
OSC1
Bit WUE
(2)
AUTO-wake-up bit (EUA) TIMINGS durante o sono
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
Bit definido pelo usurio Auto-Cancelado
RX / DT Linha
RCIF
Comando executado dormir
Nota 1:
2:
Termina sono
Nota 1
Apagadas devido leitura de RCREG usurio
Se o evento de despertar requer longo oscilador tempo de aquecimento, a auto-clara do pouco WUE pode ocorrer antes do oscilador est pronto. Este
seqncia no deve depender da presena de relgios q.
O EUSART permanece ocioso, enquanto o bit WUE est definido.
DS39632E pgina 258 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
20.2.5 QUEBRAR seqncia de caracteres
O mdulo EUSART tem a capacidade de enviar o
sequncias de caracteres pausa especial que so exigidos por
o padro de barramento LIN. O caractere de quebra de transmitir
consiste de um bit de partida, seguido por doze '0 'bits que uma
Pare bit. O caractere de quebra de quadro enviado sempre que
o SENDB e TXEN pedaos (TXSTA <3> e
TXSTA <5>) so definidos enquanto o Transmit Shift
carregada com dados. Note-se que o valor dos dados gravados
TXREG ser ignorado e todos '0 's sero transmitidos.
O bit SENDB reposto automaticamente pelo hardware aps
o correspondente bit de parada enviado. Isto permite ao utilizador
para pr-carregar o FIFO de transmisso com o byte seguinte de
transmisso
seguindo o carter Break (normalmente, a sincronizao
personagem na especificao LIN).
Note-se que o valor de dados para a escrita para o TXREG
Caractere de quebra ignorado. A gravao serve simplesmente o
propsito de iniciar a seqncia correta.
O bit TRMT indica quando a operao de transmisso est
ativo ou inativo, tal como acontece durante normais transmis-
Sion. Veja a Figura 20-10 para o momento da ruptura
seqncia de caracteres.
1.
2.
3.
4.
5.
Configure o EUSART para o modo desejado.
Defina o TXEN e SENDB bits para configurar a
Quebre personagem.
Carregue o TXREG com um personagem fictcio para
iniciar a transmisso (o valor ignorado).
Escrever '55h 'para TXREG para carregar o carter de
sincronizao
para o FIFO de transmisso.
Depois do intervalo foi enviado, o bit SENDB
reposto por hardware. O personagem Sincronizar agora
transmite no modo pr-configurado.
Quando o TXREG fica vazia, como indicado pela
TXIF, o prximo byte de dados podem ser gravados TXREG.
20.2.6 Recepo de um caractere INTERVALO
O mdulo USART avanado pode receber uma ruptura
carter de duas maneiras.
A primeira configurao da taxa de transmisso foras mtodo
a uma frequncia de 9/13 a velocidade tpica. Isto permite
o bit de transio de parada para estar na amostragem correta
localizao (13 bits para a ruptura contra Iniciar bit e 8 de dados
bits para dados tpicos).
O segundo mtodo usa o recurso de auto-wake-up
descrito em Seo 20.2.4 "Auto-Wake-up on Sincronizao
Quebre Character ". Ao ativar esse recurso, o
EUSART ir provar as prximas duas transies em RX / DT,
provocar uma interrupo RCIF e receber o prximo byte de dados
seguido por uma outra interrupo.
Note-se que depois de um caractere de quebra, o usurio ter
normalmente querem permitir a Taxa Auto-Baud Detectar
caracterstica. Para ambos os mtodos, o usurio pode definir o bit
ABD
uma vez que a interrupo TXIF observada.
20.2.5.1 Quebre e Sincronizar Seqncia de transmisso
A seqncia a seguir ir enviar um quadro de mensagem
cabealho feito de uma ruptura, seguido de um Auto-Baud
Sincronize byte. Esta sequncia tpica de um canal LIN
mestre.
FIGURA 20-10:
Escreva para TXREG
BRG Output
(Deslocao Clock)
TX (pin)
ENVIAR QUEBRAR seqncia de caracteres
Escrever manequim
Comece bit
bit 0 bit 1
Quebrar
bit 11 Pare bit
TXIF bit
(Buffer de transmisso
Reg. Vazio Flag)
Bit TRMT
(Transmisso Mudana
Reg. Vazio Flag)
SENDB amostrado aqui
SENDB
(Transmisso Mudana
Reg. Vazio Flag)
Auto-Cancelado
v 2009 Microchip Technology Inc. DS39632E pgina 259
PIC18F2455/2550/4455/4550
20,3 EUSART Synchronous
Master Mode
Uma vez que o registo TXREG transfere os dados para o TSR
registrar (ocorre em um TCY), o TXREG est vazia e
o bit de flag TXIF (PIR1 <4>) definido. A interrupo pode ser
ativada ou desativada pelo marcando ou desmarcando a interrupo
bit de habilitao, TXIE (PIE1 <4>). TXIF definido
independentemente do
o estado do bit de habilitao, TXIE, no podem ser apagados
software. Ele ir repor apenas quando novos dados so carregados
no
o TXREG registar.
Enquanto bit bandeira, TXIF, indica o status da TXREG
registrar, outro pouco, TRMT (TXSTA <1>), mostra o
estado do registo TSR. TRMT um pouco s de leitura que
definido quando o TSR est vazio. No h nenhuma lgica de
interrupo ligada
este bit para que o usurio tem para consultar este bit, a fim de
deter-
meu se o registo TSR est vazio. A TSR no est
mapeada na memria de dados de modo que no est disponvel
para o utilizador.
Para configurar uma transmisso sncrona Mestre:
1. Inicializar o SPBRGH: registros SPBRG para o
taxa de transmisso adequada. Definir ou limpar a BRG16
bits, conforme necessrio, para alcanar a velocidade de
transmisso desejada.
Ative a porta serial mestre sncrona
definio de bits, SYNC, SPEN e CSRC.
Se as interrupes so desejados, definir bit de habilitao,
TXIE.
Se a transmisso de 9 bits desejada, definir bit, TX9.
Permitir a transmisso, definindo bit, TXEN.
Se a transmisso de 9 bits for selecionada, o nono bit
deve ser carregado em bits, TX9D.
Iniciar a transmisso atravs do carregamento de dados para
o TXREG
registrar.
Se estiver usando o interrompe, garantir que o GIE e PEIE
bits no registrador INTCON (INTCON <07:06>) so
definido.
O modo Master Synchronous inserido atravs da criao
o bit CRV (TXSTA <7>). Neste modo, os dados so
transmitidos de uma forma semi-duplex (isto , a transmisso
e recepo no ocorrem ao mesmo tempo). Quando
transmisso de dados, a recepo inibida e vice
versa. Modo sncrono inserido atravs da criao bit,
SYNC (TXSTA <4>). Alm disso, permitir bits, SPEN
(RCSTA <7>), definido de modo a configurar o TX e RX
dos pinos para CK (clock) e as linhas de dados (DT),
respectivamente.
O modo principal indica que o processador
transmite o relgio mestre na linha CK.
Polaridade do relgio (CK) selecionada com o bit TXCKP
(BAUDCON <4>). Definir TXCKP define o estado inativo em
CK to alto, enquanto limpando o bit define o estado ocioso como
baixa. Polaridade de dados (DT) for selecionado com o bit RXDTP
(BAUDCON <5>). Definir RXDTP define o estado inativo em
DT to alto, enquanto limpando o bit define o estado ocioso como
baixa. DT amostrado quando CK retorna ao seu estado de
repouso.
Esta opo fornecida para suportar dispositivos Microwire
com este mdulo.
2.
3.
4.
5.
6.
7.
8.
20.3.1 EUSART SNCRONO MESTRE
TRANSMISSO
O diagrama de blocos do transmissor EUSART mostrado na
Figura 20-3. O corao do transmissor a transmisso
(Serial) Shift Register (TSR). O registrador de deslocamento obtm
seus dados a partir da leitura / gravao de transmisso registo
tampo,
TXREG. O registo TXREG carregado com os dados
software. O registo TSR no carregada at que o ltimo
bits foi transmitido a partir da carga anterior. Como
Assim que o ltimo bit transmitido, o TSR carregado
com novos dados do TXREG (se disponvel).
FIGURA 20-11: Transmisso sncrona
Q3 Q4 Q1 Q2 Q3 Q4 Q1Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
bit 7 bit 0 bit 1 bit 7
Q1 Q2 Q3Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1Q2 Q3 Q4 Q1Q2 Q3 Q4
RC7/RX/DT /
SDO pin
RC6/TX/CK pin
(TXCKP = 0)
RC6/TX/CK pin
(TXCKP = 1)
Escreva para
TXREG Reg
TXIF bit
(Flag de interrupo)
Bit TRMT
TXEN bit '1 '
Nota:
bit 0 bit 1 bit 2
Palavra 1 Palavra 2
Escrever uma palavra Escrever Palavra 2
'1 '
Modo Master Sync, SPBRG = 0, transmisso contnua de duas palavras de 8 bits.
DS39632E pgina 260 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 20-12: Transmisso sncrona (ATRAVS TXEN)
bit 0 bit 1 bit 2 bit 6 bit 7 RC7/RX/DT/SDO pin
RC6/TX/CK pin
Escreva para
TXREG reg
TXIF bit
Bit TRMT
TXEN bit
TABELA 20-7:
Nome
INTCON
PIR1
PIE1
IPR1
RCSTA
TXREG
TXSTA
BAUDCON
SPBRGH
SPBRG
REGISTOS ASSOCIADO SNCRONO MESTRE DE TRANSMISSO
Bit 7 Bit 6 Bit 5 Bit 4
INT0IE
TXIF
TXIE
TXIP
CREN
SYNC
TXCKP
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
ADDEN
SENDB
BRG16
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
FERR
BRGH
-
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
OERR
TRMT
WUE
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
RX9D
TX9D
ABDEN
Restabelecer
Valores
na pgina
53
56
56
56
55
55
55
55
55
55
GIE / GIEH PEIE / giel TMR0IE
SPPIF(1)
SPPIE(1)
SPPIP(1)
SPEN
CSRC
ABDOVF
ADIF
ADIE
ADIP
RX9
TX9
RCIDL
RCIF
RCIE
RCIP
SREN
TXEN
RXDTP
EUSART Transmitir Registrar
EUSART Baud Rate Generator Register alta Byte
EUSART Baud Rate Generator Registrar Low Byte
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados para transmisso de mestre sncrona.
Nota 1: Reservados em dispositivos de 28 pinos; sempre manter esses bits clara.
v 2009 Microchip Technology Inc. DS39632E pgina 261
PIC18F2455/2550/4455/4550
20.3.2 EUSART SNCRONO
MESTRE DE RECEPO
4.
Uma vez que o modo sncrono selecionada, a recepo
ativado pela configurao ou o nico Receba Habilitar bit,
SREN (RCSTA <5>), ou o contnuo Receber
Ativar bit, CREN (RCSTA <4>). Os dados so amostrados na
Pino RX na borda de descida do relgio.
Se enable bit, SREN, est definido, apenas uma nica palavra
recebido. Se enable bit, CREN, est definida, a recepo
contnua at CREN est desmarcada. Se ambos os bits so
definidos,
ento CREN tem precedncia.
Para configurar uma recepo Mestre Synchronous:
1. Inicializar o SPBRGH: registros SPBRG para o
taxa de transmisso adequada. Definir ou limpar a BRG16
bits, conforme necessrio, para alcanar a velocidade de
transmisso desejada.
Ative a porta serial mestre sncrona
definio de bits, SYNC, SPEN e CSRC.
Certifique-se de pedaos, CREN e SREN, so claras.
Se o sinal a partir do pino de CK para ser invertido, definida
o bit TXCKP. Se o sinal a partir do pino de DT
ser invertida, defina o bit RXDTP.
5. Se as interrupes so desejados, definir bit de habilitao,
RCIE.
6. Se a recepo de 9 bits desejada, definir bit, RX9.
7. Se uma nica recepo necessria, definir bit, SREN.
Para a recepo contnua, definida bit, CREN.
8. Interrupo bit bandeira, RCIF, ser definido quando a
recepo
est completa e uma interrupo ser gerado se
O bit habilitado, RCIE, foi definida.
9. Leia o RCSTA para obter o nono bit (se
ativado) e determinar se ocorreu algum erro
durante a recepo.
10. Leia os dados recebidos de 8 bits atravs da leitura do
RCREG registar.
11. Se tiver ocorrido qualquer erro, eliminar o erro, limpando
bit, CREN.
12. Se estiver usando o interrompe, garantir que o GIE e PEIE
pedaos
no registo INTCON (INTCON <07:06>) esto definidos.
2.
3.
FIGURA 20-13:
RC7/RX/DT/SDO
pin
RC6/TX/CK pin
(TXCKP = 0)
RC6/TX/CK pin
(TXCKP = 1)
Escreva para
bit SREN
SREN bit
CREN bit '0 '
RCIF bit
(Interrupo)
Ler
RXREG
Nota:
RECEPO SNCRONO (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
bit 0 bit 1 bit 2 bit 3 4 bits bit 5 bit 6 bit 7
'0 '
Diagrama do timing demonstra modo Master Sincronizao com pouco SREN = 1e pouco BRGH = 0.
TABELA 20-8:
Nome
INTCON
PIR1
PIE1
IPR1
RCSTA
RCREG
TXSTA
SPBRGH
SPBRG
Ficheiros associados SNCRONO MESTRE COM RECEPO
Bit 7 Bit 6 Bit 5 Bit 4
INT0IE
TXIF
TXIE
TXIP
CREN
SYNC
TXCKP
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
ADDEN
SENDB
BRG16
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
FERR
BRGH
-
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
OERR
TRMT
WUE
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
RX9D
TX9D
ABDEN
Repor Valores
na pgina
53
56
56
56
55
55
55
55
55
55
GIE / GIEH PEIE / giel TMR0IE
SPPIF(1)
SPPIE(1)
SPPIP(1)
SPEN
CSRC
ADIF
ADIE
ADIP
RX9
TX9
RCIDL
RCIF
RCIE
RCIP
SREN
TXEN
RXDTP
EUSART Receba Registrar
BAUDCON ABDOVF
EUSART Baud Rate Generator Register alta Byte
EUSART Baud Rate Generator Registrar Low Byte
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados para recepo mestre sncrona.
Nota 1: Reservados em dispositivos de 28 pinos; sempre manter esses bits clara.
DS39632E pgina 262 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
20,4 EUSART Synchronous
Modo Slave
Para configurar uma transmisso sncrona Slave:
1. Ative a porta serial escravo sncrona por
definio de bits, SYNC e SPEN e bits de compensao,
CSRC.
Limpar bits, CREN e SREN.
Se as interrupes so desejados, definir bit de habilitao,
TXIE.
Se o sinal a partir do pino de CK para ser invertido, definida
o bit TXCKP. Se o sinal a partir do pino de DT
ser invertida, defina o bit RXDTP.
Se a transmisso de 9 bits desejada, definir bit, TX9.
Permitir a transmisso, definindo bit enable,
TXEN.
Se a transmisso de 9 bits for selecionada, o nono bit
deve ser carregado em bits, TX9D.
Iniciar a transmisso atravs do carregamento de dados para
o TXREG
registrar.
Se estiver usando o interrompe, garantir que o GIE e PEIE
bits no registrador INTCON (INTCON <07:06>) so
definido.
Modo Slave Synchronous introduzido por pouco clareira,
CSRC (TXSTA <7>). Este modo difere do
Modo Master Synchronous em que o relgio mudana su-
manejado externamente no pino de CK (em vez de ser fornecido
internamente no modo Mestre). Isto permite que o dispositivo
transferir ou receber dados ao mesmo tempo em qualquer poder de
gesto
modo.
2.
3.
4.
20.4.1 EUSART SNCRONO
TRANSMISSO SLAVE
5.
6.
7.
8.
9.
A operao do Mestre Synchronous e Slave
modos idntico, excepto no caso do sono
modo.
Se duas palavras so escritas no TXREG e, em seguida, o
DORMIR instruo executada, ocorrer o seguinte:
um)
b)
c)
d)
A primeira palavra vai transferir imediatamente para o
TSR registar e transmitir.
A segunda palavra permanecer no TXREG
registrar.
Bit Bandeira, TXIF, no ser definido.
Quando a primeira palavra foi deslocado para fora da TSR,
o registo TXREG ir transferir a segunda palavra
a TSR e bandeira bit, TXIF, ser definida agora.
Se enable bit, TXIE, est programado, a interrupo vai
acordar
o chip do sono. Se a interrupo global est
ativado, o programa ir desviar para a interrupo
vetor.
e)
TABELA 20-9:
Nome
INTCON
PIR1
PIE1
IPR1
RCSTA
TXREG
TXSTA
BAUDCON
SPBRGH
SPBRG
REGISTOS ASSOCIADOS SNCRONO TRANSMISSO SLAVE
Bit 7 Bit 6 Bit 5 Bit 4
INT0IE
TXIF
TXIE
TXIP
CREN
SYNC
TXCKP
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
ADDEN
SENDB
BRG16
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
FERR
BRGH
-
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
OERR
TRMT
WUE
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
RX9D
TX9D
ABDEN
Restabelecer
Valores
na pgina
53
56
56
56
55
55
55
55
55
55
GIE / GIEH PEIE / giel TMR0IE
SPPIF(1)
SPPIE(1)
SPPIP(1)
SPEN
CSRC
ABDOVF
ADIF
ADIE
ADIP
RX9
TX9
RCIDL
RCIF
RCIE
RCIP
SREN
TXEN
RXDTP
EUSART Transmitir Registrar
EUSART Baud Rate Generator Register alta Byte
EUSART Baud Rate Generator Registrar Low Byte
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados para a transmisso sncrona escravo.
Nota 1: Reservados em dispositivos de 28 pinos; sempre manter esses bits clara.
v 2009 Microchip Technology Inc. DS39632E pgina 263
PIC18F2455/2550/4455/4550
20.4.2 EUSART SLAVE SNCRONO
RECEPO
Para configurar uma recepo Slave Synchronous:
1. Ative a porta serial mestre sncrona
definio de bits, SYNC e SPEN e bits de compensao,
CSRC.
2. Se as interrupes so desejados, definir bit de habilitao,
RCIE.
3. Se o sinal a partir do pino de CK para ser invertido, definida
o bit TXCKP. Se o sinal a partir do pino de DT
ser invertida, defina o bit RXDTP.
4. Se a recepo de 9 bits desejada, definir bit, RX9.
5. Para ativar a recepo, definir bit de habilitao, CREN.
6. Bit Bandeira, RCIF, ser definido quando a recepo
completar. Uma interrupo ser gerado se
bit de habilitao, RCIE, foi definida.
7. Leia o RCSTA para obter o nono bit (se
ativado) e determinar se ocorreu algum erro
durante a recepo.
8. Leia os dados recebidos de 8 bits atravs da leitura do
RCREG registar.
9. Se tiver ocorrido qualquer erro, eliminar o erro, limpando
bit, CREN.
10. Se estiver usando o interrompe, garantir que o GIE e PEIE
bits no registrador INTCON (INTCON <07:06>) so
definido.
A operao do Mestre Synchronous e Slave
modos idntico, excepto no caso de suspenso ou qualquer
Modo ocioso e pouco, SREN, que um "no me importo" em
Modo Slave.
Se receber habilitado, definindo o bit CREN antes
entrar em qualquer modo de espera do sono, ou, ento, uma palavra
pode ser
recebido enquanto estiver neste modo de baixa energia. Uma vez
que a palavra
recebida, o registo RSR vai transferir os dados para o
RCREG registar. Se o enable bit RCIE est definido, o
interromper gerado vai acordar o chip da baixa
modo de potncia. Se a interrupo global estiver ativada, o
programa desviar para o vetor de interrupo.
TABELA 20-10: ficheiros associados COM RECEPO SNCRONO SLAVE
Nome
INTCON
PIR1
PIE1
IPR1
RCSTA
RCREG
TXSTA
BAUDCON
SPBRGH
SPBRG
Bit 7 Bit 6 Bit 5 Bit 4
INT0IE
TXIF
TXIE
TXIP
CREN
SYNC
TXCKP
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
ADDEN
SENDB
BRG16
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
FERR
BRGH
-
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
OERR
TRMT
WUE
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
RX9D
TX9D
ABDEN
Restabelecer
Valores
na pgina
53
56
56
56
55
55
55
55
55
55
GIE / GIEH PEIE / giel TMR0IE
SPPIF(1)
SPPIE(1)
SPPIP(1)
SPEN
CSRC
ABDOVF
ADIF
ADIE
ADIP
RX9
TX9
RCIDL
RCIF
RCIE
RCIP
SREN
TXEN
RXDTP
EUSART Receba Registrar
EUSART Baud Rate Generator Register alta Byte
EUSART Baud Rate Generator Registrar Low Byte
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados para a recepo sncrona escravo.
Nota 1: Reservados em dispositivos de 28 pinos; sempre manter esses bits clara.
DS39632E pgina 264 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
21,0 10-BIT ANALOG-TO-DIGITAL
CONVERTER (A / D) MDULO
O ADCON0 registo, mostrado na Register 21-1,
controla o funcionamento do mdulo A / D. O
ADCON1 registo, mostrado na Register 21-2, configura
as funes dos pinos da porta. O registo ADCON2,
mostrado na Register 21-3, configura o relgio A / D
origem, tempo de aquisio programada e justificao.
O (A / D) mdulo conversor analgico-digital tem
10 entradas para os dispositivos de 28 pinos e 13 para o
Dispositivos 40/44-pin. Este mdulo permite a converso de um
sinal de entrada analgico para digital de um correspondente 10 bits
nmero.
O mdulo tem cinco registros:





A / D Resultado alta Register (ADRESH)
A / D Resultado Low Register (ADRESL)
A / D Controle Register 0 (ADCON0)
A / D Controle Register 1 (ADCON1)
A / D Controle Register 2 (ADCON2)
CADASTRE-SE 21-1:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7-6
bit 5-2
ADCON0: A / D de controle de registros 0
U-0
-
R/W-0
CHS3
R/W-0
CHS2
R/W-0
CHS1
R/W-0
CHS0
R/W-0
GO / DONE
R/W-0
ADON
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
Unimplemented: Leia como '0 '
CHS3: CHS0: Analgicas Channel Select pedaos
0000 = Canal 0 (AN0)
0001 = Canal 1 (AN1)
0010 = Canal 2 (AN2)
0011 = Canal 3 (AN3)
0100 = Channel 4 (AN4)
0101 = Canal 5 (AN5)(1,2)
0110 = Canal 6 (AN6)(1,2)
0111 = Canal 7 (AN7)(1,2)
1000 = Canal 8 (AN8)
1001 = Channel 9 (AN9)
1010 = Canal 10 (AN10)
1011 = Canal 11 (AN11)
1100 = Canal 12 (AN12)
1101 = Unimplemented(2)
1110 = Unimplemented(2)
1111 = Unimplemented(2)
GO / DONE: Converso A / D bit Estado
Quando ADON = 1:
1= / D converso em progresso
0= A / D Ocioso
ADON: A / D Em pouco
1= Um mdulo conversor A / D est habilitado
0= Um mdulo conversor A / D est desativado
Estes canais no esto implementados em dispositivos de 28 pinos.
Efectuar uma converso em canais no implementadas voltar a medio de entrada flutuante.
bit 1
bit 0
Nota 1:
2:
v 2009 Microchip Technology Inc. DS39632E pgina 265
PIC18F2455/2550/4455/4550
CADASTRE-SE 21-2:
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7-6
bit 5
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
ADCON1: A / D Registro de controle 1
U-0
-
R/W-0
VCFG1
R/W-0
VCFG0
R/W-0(1)
PCFG3
R / W(1)
PCFG2
R / W(1)
PCFG1
R / W(1)
PCFG0
bit 0
Unimplemented: Leia como '0 '
VCFG1: Tenso Configurao bit de referncia (VREF-source)
1= VREF-(AN2)
0= VSS
VCFG0: Tenso de Referncia de configurao bit (VREF + fonte)
1= VREF + (AN3)
0= VDD
PCFG3: PCFG0: A / D Porta bits de controle de configurao:
AN7 (2) AN6 (2)
AN9 AN8 AN4 AN3 AN2 AN1
A
A
A
A
A
A
A
A
A
A
A
A
A
A
D
D
AN0
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
D
PCFG3:
PCFG0
0000(1)
0001
0010
0011
0100
0101
0110
0111(1)
1000
1001
1010
1011
1100
1101
1110
1111
AN5 (2)
A
A
A
A
A
A
A
A
A
A
D
D
D
D
D
D
AN12 AN10
A
A
A
A
A
D
D
D
D
D
D
D
D
D
D
D
AN11
A
A
A
A
D
D
D
D
D
D
D
D
D
D
D
D
4 bits
bit 3-0
A
A
A
D
D
D
D
D
D
D
D
D
D
D
D
D
A
A
A
A
A
A
D
D
D
D
D
D
D
D
D
D
A
A
A
A
A
A
A
D
D
D
D
D
D
D
D
D
A
A
A
A
A
A
A
A
D
D
D
D
D
D
D
D
A
A
A
A
A
A
A
A
A
D
D
D
D
D
D
D
A
A
A
A
A
A
A
A
A
A
A
D
D
D
D
D
A
A
A
A
A
A
A
A
A
A
A
A
D
D
D
D
A
A
A
A
A
A
A
A
A
A
A
A
A
D
D
D
A entrada analgica = D = Digital I / O
Nota 1:
2:
O valor dos bits POR PCFG depende do valor do bit de configurao PBADEN. Quando
PBADEN = 1, PCFG <3:00> = 0000; quando PBADEN = 0, PCFG <3:00> = 0111.
AN5 atravs AN7 esto disponveis apenas em dispositivos 40/44-pin.
DS39632E pgina 266 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 21-3:
R/W-0
ADFM
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
ADCON2: A / D Registro de controle 2
U-0
-
R/W-0
ACQT2
R/W-0
ACQT1
R/W-0
ACQT0
R/W-0
ADCS2
R/W-0
ADCS1
R/W-0
ADCS0
bit 0
ADFM: A Format Resultado / D Escolha bit
1= Right justificado
0= Esquerda justificado
Unimplemented: Leia como '0 '
ACQT2: ACQT0: A / D Tempo de Aquisio Escolha pedaos
111 = 20 TAD
110 = 16 TAD
101 = 12 TAD
100 = 8 TAD
011 = 6 TAD
010 = 4 TAD
001 = 2 TAD
000 = 0 TAD(1)
ADCS2: ADCS0: Converso A / D Relgio Escolha pedaos
111 = FRC (clock derivado de um oscilador RC D /)(1)
110 = FOSC/64
101 = FOSC/16
100 = FOSC / 4
011 = FRC (clock derivado de um oscilador RC D /)(1)
010 = FOSC/32
001 = FOSC / 8
000 = FOSC / 2
Se o A / D FRC fonte de clock selecionado, um atraso de um TCY (ciclo de instruo) adicionado antes do A / D
relgio comea a funcionar. Isto permite que o DORMIR instruo a ser executada antes de iniciar uma converso.
bit 6
bit 5-3
bit 2-0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E pgina 267
PIC18F2455/2550/4455/4550
A tenso de referncia analgica seleccionvel de software
ou tenso de alimentao positiva e negativa do dispositivo
(VSS e VDD) ou o nvel de tenso no
RA3/AN3/VREF + e RA2/AN2/VREF-/CVREF pinos.
O conversor A / D tem uma caracterstica nica de ser capaz
para operar enquanto o dispositivo est no modo Sleep. A
operar Dormir, A / D do relgio de converso deve ser
derivada de A / D's oscilador RC interno.
A sada da amostra e reteno a entrada para o
conversor, o qual gera o resultado atravs sucessiva
aproximao.
A redefinio do dispositivo obriga todos os registros de seu estado
Reset.
Isto obriga a um mdulo A / D para ser desligado e quaisquer
converso em andamento abortada.
Cada pino de porta associado com o conversor A / D pode ser
configurado como uma entrada analgica ou como um I / O. digitais
O
ADRESH e ADRESL registros contm o resultado de
a converso A / D. Quando a converso A / D com-
pleta, o resultado carregado no ADRESH: ADRESL
registar par, o GO / DONE bit (ADCON0 registro)
apuradas e uma interrupo de pouco Bandeira / D, ADIF, est
definido. O
diagrama de blocos do mdulo A / D mostrado em
Figura 21-1.
FIGURA 21-1: Um diagrama de blocos / D
CHS3: CHS0
1100
1011
1010
1001
1000
0111
0110
0101
0100
VO
10-Bit
Conversor
A / D
(Tenso de entrada)
0011
0010
VCFG1: VCFG0
VDD(2)
Referncia
Tenso
VREF +
VREF-
X0
X1
1X
AN12
AN11
AN10
AN9
AN8
AN7(1)
AN6(1)
AN5(1)
AN4
AN3
AN2
AN1
AN0
0001
0000
0X
VSS(2)
Nota 1:
2:
Canais AN5 atravs AN7 no esto disponveis em dispositivos de 28 pinos.
Pinos de I / O tm proteo diodo para VDD e VSS.
DS39632E pgina 268 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
O valor no ADRESH: registros ADRESL
seguinte POR desconhecido e BOR Redefine e no
afetado por qualquer outro Reset.
Aps o mdulo A / D foi configurado como desejado,
o canal selecionado deve ser adquirida antes da con-
verso iniciado. Os canais de entrada analgica deve
tem seus bits TRIS correspondentes selecionados como
entrada. Para determinar o tempo de aquisio, veja Seo 21.1
"A / D requisitos de aquisio". Aps este aquisi-
o de tempo tiver decorrido, a converso A / D pode ser
iniciado. Um tempo de aquisio pode ser programado para
ocorrer entre definindo o bit GO / DONE eo real
incio da converso.
Os seguintes passos devem ser seguidos para realizar uma
A converso A / D:
1. Configure o mdulo A / D:
Configurar os pinos analgicos, tenso de referncia e
I / O digital (ADCON1)
Selecione A / D canal de entrada (ADCON0)
Escolha um tempo de aquisio / D (ADCON2)
Selecione A / D relgio de converso (ADCON2)
Ligue um mdulo de E / D (ADCON0)
Configurar A interrupo / D (se desejar):
Limpar bit ADIF
Set ADIE bit
Set GIE bit
Aguardar o tempo de aquisio necessria (se necessrio).
Iniciar a converso:
Bit Definir GO / DONE (ADCON0 registo)
5. Espere para converso A / D para completar, por meio de:
Pesquisa para o GO / DONE bit a ser apuradas
OR
6.
7.
Esperando o D interrupo A /
Leia A / D (registros Resultado ADRESH: ADRESL);
claro ADIF pouco, se necessrio.
Para o prximo converso, v para o passo 1 ou o passo 2,
como
necessria. A / D tempo de converso por bit
definido como TAD. A espera mnima de 3 TAD
necessria antes que a prxima aquisio comea.
FIGURA 21-2:
3FFh
3FEh
Cdigo de
sada Digital
Uma funo de transferncia / D
003h
002H
001H
000h
1022 LSB 1.022,5 LSB 1023 LSB 1 LSB 2 LSB 3 LSB 1.023,5 LSB 0.5 LSB 1.5 LSB 2,5 LSB
1
2.
3.
4.
Tenso de entrada analgica
FIGURA 21-3: MODELO DE ENTRADA ANALGICA
VDD
VT = 0,6 V
RIC o 1k
Sampling
Mudar
SS
RSS
Rs
ANX
VO
CPIN
5 PF
VT = 0,6 V
ILEAKAGE
100 nA
Chold = 25 pF
VSS
Legenda: CPIN = capacitncia de entrada
VT = tenso de limiar
ILEAKAGE = corrente de fuga no pino devido a
vrias junes
= ResistanceRIC Interconnect
= Amostragem SwitchSS
= Sample / Hold capacitncia (do DAC) chold
RSS = Resistncia de amostragem
VDD
6V
5V
4V
3V
2V
2 3 4
Mudar de amostragem (kW)
v 2009 Microchip Technology Inc. DS39632E pgina 269
PIC18F2455/2550/4455/4550
21,1 A / D requisitos de aquisio
Para o conversor A / D para cumprir a sua exactido,
o capacitor segurando carga (chold) deve ser permitido
para carregar totalmente para o nvel de tenso do canal de entrada.
O
modelo de entrada analgico mostrado na Figura 21-3. O
impedncia de fonte (RS) e a amostragem interna
switch (RSS) impedncia afeta diretamente o tempo de
necessrio para carregar o condensador chold. A amostragem
switch (RSS) impedncia varia com a tenso de dispositivo
(VDD). A impedncia da fonte afeta a tenso de offset
na entrada analgica (devido ao pino corrente de fuga). O
impedncia mxima recomendada para analgico
fontes de 2,5 kW. Depois que o canal de entrada analgica
selecionado (alterado), o canal deve ser amostrados para
pelo menos o tempo mnimo de aquisio antes de iniciar uma
converso.
Nota: Quando a converso iniciada, o
segurando capacitor desconectado do
pino de entrada.
Para calcular o tempo mnimo de aquisio,
Equao 21-01 maio ser utilizado. Esta equao assume
que o erro 1/2 LSB usado (1024 passos para a A / D). O
1/2 erro LSB o erro mximo permitido para o A / D
para atender a sua resoluo especificada.
Exemplo 21-3 mostra o clculo do mnimo
necessrio a aquisio tempo TACQ. Este clculo
com base no seguinte sistema de aplicao
premissas:
Chold
Rs
Erro de converso
VDD
Temperatura
=
=
o
=
=
25 pF
2,5 kW
1/2 LSB
5V RSS = 2 kW
85 C (sistema de mx.)
EQUAO 21-1:
TACQ =
=
Tempo de aquisio
Coeficiente Amplifier Tempo de deposio Segurando + Capacitor Tempo de carregamento +
Temperatura
TAMP + CT + TCOFF
EQUAO 21-2:
VHOLD
ou
TC
=
=
A MNIMA / D TEMPO DE CARGA
(VREF - (VREF/2048)) (1 - e (-TC/CHOLD (RIC + RSS + RS)))
- (Chold) (RIC + RSS + RS) ln (1/2048)
EQUAO 21-3:
TACQ
Apertar
TCOFF
=
=
=
0,2 o
Calculando o tempo de aquisio mnimo exigido
TAMP + CT + TCOFF
(Temperatura - 25 C) (0,02 o / X )
(85 C - 25 C) (0,02 o / X )
1.2 o
- (Chold) (RIC + RSS + RS) ln (1/2048) o
- (25 pF) (1 kW + 2 + 2,5 kf kf) ln (0,0004883) o
1.05 o
0,2 o + 1,05 o + 1.2 o
2.45 o
Coeficiente de temperatura necessria apenas para temperaturas> 25 C. Abaixo de 25 C, TCOFF = 0 o .
TC =
TACQ =
DS39632E pgina 270 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
21,2 Selecionando e configurando
Tempo de Aquisio
21,3 Selecionando o D converso A /
Relgio
O registo ADCON2 permite que o usurio selecione uma
tempo de aquisio, que ocorre cada vez que o GO / DONE
bit definido. Ele tambm d aos usurios a opo de usar um
determinado automaticamente o tempo de aquisio.
Tempo de aquisio pode ser definido com a ACQT2: ACQT0
pedaos (ADCON2 <05:03>), que oferecem uma gama de 2 a
20 TAD. Quando a GO / DONE bit definido, o mdulo A / D
continua a provar a entrada para o selecionado aquisi-
o do tempo, em seguida, inicia-se automaticamente uma
converso.
Uma vez que programado o tempo de aquisio, pode haver
se h necessidade de esperar por um tempo de aquisio entre
seleccionar um canal e definir o GO / bit FEITO.
Manualacquisitionisselectedwhen
ACQT2: ACQT0 = 000. Quando a GO / DONE bit definido,
amostragem for interrompido e inicia uma converso. O utilizador
responsvel por garantir o tempo de aquisio necessria
passou entre selecionar a entrada desejada
canal e definir o GO / bit FEITO. Esta opo
tambm o estado reset padro do ACQT2: ACQT0 pedaos
e compatvel com dispositivos que no oferecem
tempos de aquisio programveis.
Em qualquer caso, quando a converso completa, o
GO / bit FEITO estiver desmarcada, a bandeira ADIF definida ea
A / D comea a amostragem do canal atualmente selecionado
novamente. Se estiver programado um tempo de aquisio, existe
nada que indique se o tempo de aquisio foi encerrada ou
se a converso foi iniciada.
A / D converso por pouco tempo definido como TAD. O
Converso A / D 11 requer TAD por converso de 10 bits.
A fonte do conversor A / D do relgio de converso um software
selecionvel. H sete opes possveis para TAD:







2 tosc
4 tosc
8 tosc
16 tosc
32 tosc
64 tosc
Oscilador interno RC
Para corrigir converses A / D, o relgio / A converso D
(TAD) tem de ser to curto quanto possvel, mas maior do que o
TAD mnimo (ver parmetro 130 na Tabela 28-29 para
mais informaes).
A Tabela 21-1 mostra os tempos de TAD resultantes derivados
as freqncias de operao do dispositivo eo relgio A / D
fonte selecionada.
TABELA 21-1: TAD vs DEVICE freqncias de operao
AD Clock Source (TAD) Assume TAD Min. = 0,8 mS
Mximo FOSC
2,50 MHz
5,00 MHz
10,00 MHz
20,00 MHz
40,00 MHz
48.00 MHz
1,00 MHz(1)
ADCS2: ADCS0
000
100
001
101
010
110
x11
Operao
2 tosc
4 tosc
8 tosc
16 tosc
32 tosc
64 tosc
RC(2)
Nota 1:
2:
A fonte de RC tem um tempo de TAD tpico de 2,5 mS.
Para freqncias de dispositivos acima de 1 MHz, o dispositivo deve estar em sono para toda a converso ou a FOSC
divisor deve ser usado em seu lugar. Caso contrrio, a preciso A / D podem estar fora da especificao.
v 2009 Microchip Technology Inc. DS39632E pgina 271
PIC18F2455/2550/4455/4550
21,4 Operao em Power-Managed
Modos
21,5 Configurando analgicos Pinos
O ADCON1, TRISA, TRISB e TRISE registra tudo
configurar os pinos de uma porta / d. Os pinos da porta necessrios
como
entradas analgicas devem ter seus bits TRIS correspondentes
set (entrada). Se o bit TRIS apagada (output), o digitais
nvel de sada (VOH ou VOL) sero convertidos.
A operao A / D independente do estado do
CHS3: CHS0 bits e os bits TRIS.
Nota 1: Ao ler o registo PORT, todos os pinos
configurados como canais de entrada analgica
lido como apuradas (nvel baixo). Pinos de config-
gurado como entradas digitais ir converter como
entradas analgicas. Nveis analgicos em uma
digitalmente
entrada configurada ser exacta
convertido.
2: Nveis analgicos em qualquer pino definido como um
entrada digital pode causar a entrada digital
amortecer a consumir corrente para fora da
limites de especificao do dispositivo.
3: O bit PBADEN em Configurao
Registre 3H configura PORTB pinos para
redefinir como os pinos analgicos ou digitais de
controle
ling como os bits em PCFG0 so ADCON1
reajustados.
A seleco do tempo de aquisio automtica e A / D
relgio de converso determinada em parte pelo relgio
fonte e frequncia, enquanto em um poder de gesto
modo.
Se A / D esperado o seu funcionamento enquanto o dispositivo
est em
um modo de gerenciamento de energia, o ACQT2: ACQT0 e
ADCS2: ADCS0 bits ADCON2 deve ser atualizado em
de acordo com a fonte do relgio a ser utilizada nesse
modo. Depois de entrar no modo, uma aquisio de A / D ou
a converso pode ser iniciado. Uma vez iniciado, o dispositivo
deve continuar a ser cronometrado pelo mesmo relgio
origem at que a converso foi completa.
Se desejado, o dispositivo pode ser colocado no
modo de espera correspondente durante a converso. Se o
frequncia de relgio do dispositivo menor do que 1 MHz, o A / D
V
fonte de relgio deve ser selecionada.
Operao no modo de suspenso exige a A / D FRC
relgio para ser selecionado. Se os bits ACQT2: ACQT0 esto
definidas para
'000 'E uma converso iniciado, a converso ser
atrasadas um ciclo de instruo para permitir a execuo da
DORMIR instruo e entrada em modo de suspenso. O IDLEN
bit (OSCCON <7>) j deve ter sido apagado
antes do incio da converso.
DS39632E pgina 272 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
21,6 A Converses / D
A Figura 21-4 mostra o funcionamento do conversor A / D
aps o bit GO / DONE foi definido eo
ACQT2: ACQT0 bits so apagadas. A converso
iniciado aps a seguinte instruo para permitir a entrada em
O modo de suspenso antes de iniciar a converso.
A Figura 21-5 mostra o funcionamento do conversor A / D
aps o bit GO / DONE tiver sido definido, o
ACQT2: ACQT0 bits so definidos como '010 'e selecionar um
4 tempo de aquisio TAD antes da converso comea.
Limpando a GO / bit feito durante a converso
abortar a converso de corrente. O resultado D A / Registro
par no vai ser atualizado com a parcialmente concluda
A / Dconversionsample.Thismeansthe
ADRESH: ADRESL registros continuaro a conter
o valor da ltima converso completa (ou o ltimo
valor escrito no ADRESH: registros ADRESL).
Aps a converso A / D concluda ou cancelada, a
2 TCY espera necessria antes que a prxima aquisio pode ser
iniciado. Aps essa espera, a aquisio no selecionado
canal iniciado automaticamente.
Nota: A GO / DONE bit deve NO ser definido em
a mesma instruo que liga o A / D.
Cdigo deve esperar pelo menos 2 mS depois
permitindo que o A / D, antes de iniciar uma
aquisio e do ciclo de converso.
21,7 Quitao
A fase de descarga usado para inicializar o valor de
a matriz de capacitores. A matriz descarregada antes
cada amostra. Esse recurso ajuda a otimizar o
unidade de ganho do amplificador como o circuito sempre precisa
chargethecapacitorarray, ratherthan
carga / descarga com base na medio anterior
valores.
FIGURA 21-4: Converso A / D TAD ciclos (ACQT <2:00> = 000, TACQ = 0)
TCY - TAD TAD1 TAD2 TAD3 TAD4 TAD5 TAD6 TAD7 TAD8 TAD9 TAD10 TAD11 TAD1
b4b1b0b6b7b2b9b8b3b5
A converso iniciada
Segurando capacitor desligado da entrada analgica (normalmente 100 ns)
Definir GO / DONE bit
No ciclo seguinte:
ADRESH: ADRESL carregado, GO / bit FEITO estiver desmarcada,
ADIF bit definido, mantendo capacitor ligado entrada analgica.
Quitao
(Tipicamente, 200 ns)
FIGURA 21-5: Converso A / D TAD ciclos (ACQT <2:00> = 010, TACQ = 4 TAD)
Ciclos TAD
4 1 2
b9
3
b8
4
b7
5
b6
6
b5
7
b4
8
b3
9
b2
10
b1
11
b0
Quitao
(Normalmente
200 ns)
TAD1
TACQ Cycles
1 2 3
Automtico
Aquisio
Tempo
A converso iniciada
(Holding do capacitor desligado)
Definir GO / DONE bit
(Segurando capacitor continua
aquisio de entrada)
No ciclo seguinte:
ADRESH: ADRESL carregado, GO / bit FEITO estiver desmarcada,
ADIF bit definido, mantendo capacitor ligado entrada analgica.
v 2009 Microchip Technology Inc. DS39632E pgina 273
PIC18F2455/2550/4455/4550
21,8 O uso do Gatilho CCP2
Uma converso A / D pode ser iniciado pelo evento especial
Gatilho do mdulo CCP2. Isto requer que o
CCP2M3: CCP2M0 pedaos (CCP2CON <03:00>) ser pr-
mado como '1011 'e que o mdulo A / D activada
(ADON bit definido). Quando ocorre o disparo, a
GO / bit FEITO ser definida, a partir da aquisio A / D
e converso eo contador Timer1 (ou Timer3) ir
ser zerado. Timer1 (ou Timer3) redefinido para automatica-
camente repetir o perodo de aquisio A / D com o mnimo
sobrecarga de software (que se deslocam ADRESH: ADRESL ao
local desejado). A entrada analgica apropriada chan-
nel devem ser selecionados ea aquisio mnima
perodo ou cronometrado pelo utilizador, ou uma adequada
Tempo TACQ selecionado antes do disparo Evento Especial
define o bit GO / DONE (comea uma converso).
Se o mdulo A / D no est habilitado (ADON desmarcado), o
Gatilho evento especial ser ignorada pelo mdulo A / D
mas ainda ir repor o Timer1 (ou Timer3) balco.
TABELA 21-2:
Nome
INTCON
PIR1
PIE1
IPR1
PIR2
PIE2
IPR2
ADRESH
ADRESL
ADCON0
ADCON1
ADCON2
PORTA
TRISA
PORTB
TRISB
LATB
PORTE
Trise(4)
LATE(4)
Ficheiros associados a uma operao / D
Bit 7 Bit 6 Bit 5
TMR0IE
RCIF
RCIE
RCIP
USBIF
USBIE
USBIP
Bit 4
INT0IE
TXIF
TXIE
TXIP
EEIF
EEIE
EEIP
Bit 3
RBIE
SSPIF
SSPIE
SSPIP
BCLIF
BCLIE
BCLIP
Bit 2
TMR0IF
CCP1IF
CCP1IE
CCP1IP
HLVDIF
HLVDIE
HLVDIP
O bit 1
INT0IF
TMR2IF
TMR2IE
TMR2IP
TMR3IF
TMR3IE
TMR3IP
Bit 0
RBIF
TMR1IF
TMR1IE
TMR1IP
CCP2IF
CCP2IE
CCP2IP
Restabelecer
Valores
na pgina
53
56
56
56
56
56
56
54
54
CHS2
VCFG0
ACQT1
RA4
TRISA4
RB4
TRISB4
LATB4
-
-
-
CHS1
PCFG3
ACQT0
RA3
TRISA3
RB3
TRISB3
LATB3
RE3(1,3)
-
-
CHS0
PCFG2
ADCS2
RA2
TRISA2
RB2
TRISB2
LATB2
RE2(4)
TRISE2
LATE2
GO / DONE
PCFG1
ADCS1
RA1
TRISA1
RB1
TRISB1
LATB1
RE1(4)
TRISE1
LATE1
ADON
PCFG0
ADCS0
RA0
TRISA0
RB0
TRISB0
LATB0
RE0(4)
TRISE0
LATE0
54
54
54
56
56
56
56
56
56
56
56
GIE / GIEH PEIE / giel
SPPIF(4)
SPPIE(4)
SPPIP(4)
OSCFIF
OSCFIE
OSCFIP
ADIF
ADIE
ADIP
CMIF
CMIE
CMIP
Um resultado / D Registre alta Byte
Um resultado / D Registrar Low Byte
-
-
ADFM
-
-
RB7
TRISB7
LATB7
RDPU(4)
-
-
-
-
-
RA6(2)
TRISA6(2)
RB6
TRISB6
LATB6
-
-
-
CHS3
VCFG1
ACQT2
RA5
TRISA5
RB5
TRISB5
LATB5
-
-
-
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados para converso A / D.
Nota 1: Implementado somente quando Master Clear funcionalidade desativada (bit Configurao MCLRE = 0).
2: RA6 e sua trava de direo associada e os bits de dados so ativados como pinos de I / O baseado em oscilador
configurao, caso contrrio, eles so lidos como '0 '.
3: RE3 porta bits est disponvel apenas como um pino de entrada quando o bit de configurao MCLRE '0 '.
4: Estes registos e / ou bits no so implementadas em dispositivos de 28 pinos.
DS39632E pgina 274 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
22,0 MDULO COMPARADOR
O mdulo comparador analgico contm duas compara-
res que podem ser configuradas numa variedade de formas. O
entradas podem ser selecionadas a partir das entradas analgicas
multiplexadas
com pinos RA0 atravs RA5, bem como sobre o chip volt-
referncia a idade (ver Seo 23,0 "Voltage Comparator
Mdulo de referncia "). As sadas digitais (normal ou
invertido) esto disponveis a nvel do pino e tambm pode ser
ler o registro de controle.
O registo CMCON (Register 22-1) seleciona o
entrada do comparador e configurao da sada. Bloquear
diagramas das vrias configuraes de comparao so
mostrado na Figura 22-1.
CADASTRE-SE 22-1:
R-0
C2OUT
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
CMCON: CONTROLE COMPARADOR REGISTRAR
R-0 R/W-0
C2INV
R/W-0
C1INV
R/W-0
CIS
R/W-1
CM2
R/W-1
CM1
R/W-1
CM0
bit 0
C1OUT
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
C2OUT: Comparador 2 bit de sada
Quando C2INV = 0:
1VIN = C2 +> C2 VIN-
0VIN = C2 + <C2 VIN-
Quando C2INV = 1:
1VIN = C2 + <C2 VIN-
0VIN = C2 +> C2 VIN-
C1OUT: Comparador 1 bit de sada
Quando C1INV = 0:
1VIN = C1 +> C1 VIN-
0VIN = C1 + <C1 VIN-
Quando C1INV = 1:
1VIN = C1 + <C1 VIN-
0VIN = C1 +> C1 VIN-
C2INV: Comparador 2 bit Inverso de sada
1= Sada C2 invertido
0C2 = sada no invertida
C1INV: Comparador um pouco Inverso de sada
1= C1 sada invertida
0= Sada C1 no invertida
CIS: Comparador de entrada bit Mudar
Quando CM2: CM0 = 110:
1= C1-VIN conecta RA3/AN3/VREF +
C2 VIN-se conecta a RA2/AN2/VREF-/CVREF
0= C1-VIN conecta RA0/AN0
C2 VIN-se conecta a RA1/AN1
CM2: CM0: Comparador bits de modo
Figura 22-1 mostra os modos de comparao e do CM2: configuraes cm0 bits.
bit 6
bit 5
4 bits
bit 3
bit 2-0
v 2009 Microchip Technology Inc. DS39632E pgina 275
PIC18F2455/2550/4455/4550
22,1 Configurao do comparador
H oito modos de operao para a compara-
res, mostrado na Figura 22-1. Bits, CM2: cm0 do
CMCON registo, so usados para selecionar estes modos. O
TRISA registo controla a direco dos dados
pinos de comparao para cada modo. Se o comparador
modo alterado, o nvel de sada do comparador no pode
ser vlida para o atraso mudana de modo especfico mostrado na
Seo 28,0 "Caractersticas eltricas".
Nota: Interrompe comparao deve ser desativado
durante uma mudana de modo comparadores.
Caso contrrio, pode ocorrer um falso interrupo.
FIGURA 22-1:
Comparadores Redefinir
CM2: CM0 = 000
RA0/AN0
A
COMPARATOR I / O MODO DE OPERAO
Comparadores OFF (POR valor padro)
CM2: CM0 = 111
VIN-
VIN +
RA0/AN0
C1 Off (Leia como '0 ')
RA3/AN3 /
VREF +
RA1/AN1
C2 Off (Leia como '0 ')
D
D
VIN-
VIN +
RA3/AN3 / D
VREF +
RA1/AN1
A
C1 Off (Leia como '0 ')
VIN-
VIN +
D VIN-
VIN +
RA2/AN2 / D
VREF-/CVREF
DRA2/AN2 /
VREF-/CVREF
C2 Off (Leia como '0 ')
Dois comparadores independentes
CM2: CM0 = 010
RA0/AN0
A VIN-
VIN +
Dois comparadores independentes com sadas
CM2: CM0 = 011
C1OUT
RA0/AN0
RA3/AN3 /
VREF +
A
A
VIN-
VIN +
RA3/AN3 / D
VREF +
RA1/AN1
A
C1 C1 C1OUT
RA4/T0CKI/C1OUT * / VN
VIN-
VIN +
RA2/AN2 / D
VREF-/CVREF
C2 C2OUT
RA1/AN1
A VIN-
VIN + RA2/AN2 / D
VREF-/CVREF
C2 C2OUT
RA5/AN4/SS/HLVDIN/C2OUT *
Dois comparadores de referncia comum
CM2: CM0 = 100
RA0/AN0
A VIN-
VIN +
Dois comparadores de referncia comum com sadas
CM2: CM0 = 101
C1OUT
RA0/AN0
RA3/AN3 /
VREF +
A
A
VIN-
VIN +
RA3/AN3 / D
VREF +
RA1/AN1
A
C1 C1 C1OUT
VIN-
VIN +
RA4/T0CKI/C1OUT * /
VN
C2 C2OUT RA1/AN1
RA2/AN2 /
VREF-/CVREF
A
D
VIN-
VIN +
RA2/AN2 / D
VREF-/CVREF C2 C2OUT
RA5/AN4/SS/HLVDIN/C2OUT *
Um comparador independente com sada
CM2: CM0 = 001
RA0/AN0
A VIN-
VIN +
Quatro entradas diversificadas para dois comparadores
CM2: CM0 = 110
RA0/AN0
A
A
CIS = 0
CIS = 1
VIN-
VIN +
RA3/AN3 / D
VREF +
C1 C1OUT
RA3/AN3 /
VREF +
RA1/AN1
C1 C1OUT
RA4/T0CKI/C1OUT * / VN
RA1/AN1
D VIN-
VIN +
A
CIS = 0
CIS = 1
VIN-
VIN +
ARA2/AN2 /
VREF-/CVREF
C2 C2OUT
RA2/AN2 / D
VREF-/CVREF
C2 Off (Leia como '0 ')
CVREF
De VREF Module
A = entrada analgica, a porta l zeros alwaysD = InputCIS Digital (CMCON <3>) a chave de entrada Comparador
* Definir o TRISA <05:04> pedaos ir desativar as sadas de comparao, configurando os pinos como entradas.
DS39632E pgina 276 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
22,2 Operao comparador
22.3.2 SINAL referncia interna
Um nico comparador mostrado na Figura 22-2, juntamente com
a relao entre os nveis e as entradas analgicas
a sada digital. Quando a entrada analgica no VIN + menos
do que a entrada analgica-VIN, a sada do comparador
um baixo nvel digital. Quando a entrada analgica no VIN +
maior do que a entrada analgica-VIN, a sada do
comparador um nvel elevado digital. As reas sombreadas
a sada do comparador da Figura 22-2 representam
a incerteza, devido s compensaes de entrada e tempo de
resposta.
O mdulo de comparao permite tambm a seleco de um
referncia de tenso gerado internamente pela
mdulo de tenso de referncia do comparador. Este mdulo
descritos em mais detalhe em Seo 23,0 "Comparador
Mdulo de Referncia de tenso ".
A referncia interna est disponvel apenas no modo
onde quatro entradas so multiplexadas para dois comparadores
(CM2: CM0 = 110). Neste modo, a tenso interna
referncia aplicada ao pino de VIN + tanto
comparadores.
22,3 Referncia comparador
Dependendo do modo de operao do comparador, tanto
uma referncia externa ou interna de tenso pode ser utilizada.
O sinal analgico presente no VIN-se em comparao com o
sinal no VIN + e a sada digital do comparador
ajustado em conformidade (Figura 22-2).
22,4 Comparador Tempo de Resposta
FIGURA 22-2: NICA COMPARADOR
O tempo de resposta o tempo mnimo, depois de selecionar um
nova tenso de entrada ou fonte de referncia, antes do
de sada do comparador tem um nvel vlido. Se o interno ref-
cia alterada, o atraso mximo do mercado interno
tenso de referncia deve ser considerado quando se utiliza o
sadas de comparao. Caso contrrio, o atraso mximo de
os produtos de comparao deve ser utilizada (veja Seo 28.0
"Caractersticas eltricas").
VIN +
VIN-
+
-
Sada
22.5 Sadas de comparao
VIN-
VIN +
As sadas de comparao so lidos atravs do CMCON
registrar. Estes bits so somente leitura. O comparador
as sadas podem tambm ser directamente sada e RA4 RA5
E / S dos pinos. Quando ativado, multiplexadores no caminho de
sada
RA4 dos pinos e RA5 mudar ea sada de
cada pino ser a sada do unsynchronized
comparador. A incerteza de cada um dos
comparadores est relacionada com a tenso de deslocamento de
entrada e
o tempo de resposta dadas nas especificaes.
A Figura 22-3 mostra o bloco de sada do comparador
diagrama.
Os bits TRISA ainda funcionar como uma sada ativar /
desativar para os pinos RA4 e RA5 enquanto estiver neste modo.
Sada
22.3.1 Sinal de referncia externo
A polaridade das sadas do comparador pode ser alterado
usando o C2INV e C1INV bocados (CMCON <5:04>).
Nota 1: Ao ler o registo PORT, todos os pinos
configurados como entradas analgicas vai ler como um
'0 '. Pinos configurados como entradas digitais
converter uma entrada analgica de acordo com a
Schmitt especificao entrada Trigger.
2: Nveis analgicos em qualquer pino definido como um
entrada digital pode causar o buffer de entrada para
consumir mais corrente do que especificado.
Quando so usadas referncias de tenso externa, o
mdulo de comparao pode ser configurado para que o com-
parators operar a partir do mesmo ou diferente de referncia
fontes. No entanto, as aplicaes de detectores limite pode
requerem a mesma referncia. O sinal de referncia deve
estar entre VSS e VDD e pode ser aplicado a qualquer
pino do comparador (s).
v 2009 Microchip Technology Inc. DS39632E pgina 277
PIC18F2455/2550/4455/4550
FIGURA 22-3: COMPARADOR sada do bloco ESQUEMA
MULTIPLEX
Porto Pinos
+
-
D
CxINV
PT
Q
Para CxOUT
pin
nibus
Dados
Leia CMCON
D
PT
Restabelecer
Q
CL
De
Outro
Comparador
Conjunto
CMIF
bocado
22,6 Interrupes de comparao 22,7
O flag de interrupo do comparador definida sempre que houver
uma alterao no valor de qualquer um comparador de sada.
Software vai precisar para manter as informaes sobre o
estado dos bits de sada, tal como lidos CMCON <7:06>, a
determinar a alterao real que ocorreu. O CMIF
bit (PIR2 <6>) a interrupo da bandeira de comparao. O
CMIF bit deve ser reajustado por limp-lo. Uma vez que tambm
possvel escrever um '1 'a este registo, um simulado
de interrupo pode ser iniciada.
Tanto o bit CMIE (PIE2 <6>) e o bit de PEIE (INT
CON <6>) deve ser ajustado para permitir a interrupo. Alm-
o, o bit GIE (INTCON <7>) tambm deve ser definido. Se algum
desses bits so claras, a interrupo no est habilitado,
embora o pouco CMIF ainda ser definido se uma interrupo
condio ocorre.
Nota: Se uma alterao no registo CMCON
(C1OUT ou C2OUT) deve ocorrer quando um
operao de leitura est sendo executado (incio da
o ciclo Q2), ento a FIMC (PIR2 <6>)
flag de interrupo pode no ser definido.
Operao comparador
Durante o sono
Quando uma comparao activa e o dispositivo colocado
no modo de suspenso, o comparador permanece ativa ea
interrupo funcional, se habilitado. Esta interrupo ser
despertar o dispositivo do modo de suspenso, quando ativado.
Cada comparador operacional ir consumir adicional
corrente, conforme mostrado nas especificaes de comparao. A
minimizar o consumo de energia em modo de Suspenso, desligue
fora os comparadores (CM2: CM0 = 111) antes de entrar
Dormir. Se o dispositivo acorda do sono, o contedo
do registo CMCON no so afetados.
22,8 Efeitos de um Reset
O usurio, na rotina do servio de interrupo, pode limpar o
interromper da seguinte forma:
um)
b)
Qualquer leitura ou gravao de CMCON vai acabar com a
condio de incompatibilidade.
Limpar bit CMIF bandeira.
A redefinio do dispositivo obriga o CMCON registar a sua Reiniciar
estado, fazendo com que o comparador de mdulos para ser
desligado
(CM2: CM0 = 111). No entanto, os pinos de entrada (RA0
atravs RA3) so configurados como entradas analgicas por
padro em Reiniciar dispositivo. A configurao de I / O para estes
pinos determinada pela configurao do PCFG3: PCFG0
pedaos (ADCON1 <03:00>). Portanto, a corrente do dispositivo
minimizado quando entradas analgicas esto presentes em
Restabelecer
tempo.
A condio de incompatibilidade continuar a fixar bandeira bit
CMIF.
CMCON leitura vai acabar com a condio de incompatibilidade e
permitir bandeira bit CMIF ser apuradas.
DS39632E pgina 278 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
22,9 Conexo de entrada analgica
Consideraes
gama de mais de 0.6V em qualquer direo, um dos
diodos polarizado e uma condio de trava-up pode
ocorrer. A impedncia mxima fonte de 10 k
recomendados para as fontes de som. Qualquer externo
componente ligado a um pino de entrada analgica, tal como
um condensador ou um dodo Zener, que tm muito pouca
fuga de corrente.
Um circuito simplificado de uma entrada analgica mostrado na
Figura 22-4. Uma vez que os pinos analgicos so ligados a um
sada digital, que tm diodos polarizado inversamente a VDD
e VSS. A entrada analgica, por conseguinte, deve estar entre
VSS e VDD. Se a tenso de entrada desvia desta
FIGURA 22-4: Comparador analgico MODELO DE ENTRADA
VDD
RS <10k
AIN
VT = 0,6 V
RIC
Comparador
Entrada
CPIN
5 PF
VT = 0,6 V
ILEAKAGE
500 nA
VA
VSS
Legenda: CPIN
VT
ILEAKAGE
RIC
RS
VA
=
=
=
=
=
=
Capacitncia de entrada
Tenso de limiar
Corrente no pino devido a vrias junes
Resistncia Interconnect
Impedncia da fonte
Tenso Analgico
TABELA 22-1:
Nome
CMCON
CVRCON
INTCON
PIR2
PIE2
IPR2
PORTA
LATA
TRISA
Ficheiros associados com o Mdulo COMPARADOR
Bit 7
C2OUT
CVREN
OSCFIF
OSCFIE
OSCFIP
-
-
-
Bit 6
C1OUT
CVROE
CMIF
CMIE
CMIP
RA6(1)
LATA6(1)
TRISA6(1)
Bit 5
C2INV
CVRR
TMR0IE
USBIF
USBIE
USBIP
RA5
LATA5
TRISA5
Bit 4
C1INV
CVRSS
INT0IE
EEIF
EEIE
EEIP
RA4
LATA4
TRISA4
Bit 3
CIS
CVR3
RBIE
BCLIF
BCLIE
BCLIP
RA3
LATA3
TRISA3
Bit 2
CM2
CVR2
TMR0IF
HLVDIF
HLVDIE
HLVDIP
RA2
LATA2
TRISA2
O bit 1
CM1
RCV1
INT0IF
TMR3IF
TMR3IE
TMR3IP
RA1
LATA1
TRISA1
Bit 0
CM0
CVR0
RBIF
CCP2IF
CCP2IE
CCP2IP
RA0
LATA0
TRISA0
Restabelecer
Valores
na pgina
55
55
53
56
56
56
56
56
56
GIE / GIEH PEIE / giel
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so usados pelo mdulo comparador.
Nota 1: PORTA <6> e sua direo e bits de selo so configurados individualmente como pinos da porta com base em vrios
Modos de oscilador. Quando desativada, esses bits lidos como '0 '.
v 2009 Microchip Technology Inc. DS39632E pgina 279
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 280 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
23,0 TENSO COMPARADOR
MDULO DE REFERNCIA
utilizado selecionado pelo bit CVRR (CVRCON <5>). O
principal diferena entre os intervalos que o tamanho da
etapas selecionadas pelos bits Seleo CVREF
(CVR3: CVR0), com uma resoluo mais fina que oferece alcance.
As equaes utilizadas para calcular a sada do
referncia de tenso do comparador so como se segue:
Se CVRR = 1:
CVREF = ((CVR3: CVR0) / 24) x CVRSRC
Se CVRR = 0:
CVREF = (CVRSRC / 4) + (((CVR3: CVR0) / 32) x
CVRSRC)
A tenso de referncia do comparador pode vir
a partir de qualquer VSS e VDD, ou o VREF + e externo
VREF-que so multiplexados com RA2 e RA3. O
fonte de tenso selecionado pelo bit CVRSS
(CVRCON <4>).
O tempo de estabilizao da tenso de referncia do comparador
deve ser considerado quando se muda o CVREF
sada (ver Tabela 28-3 em Seo 28.0 "Electrical
Caractersticas ").
A referncia de tenso do comparador um resistor de 16 torneira
rede escada que serve de referncia selecionvel
tenso. Embora o seu principal objectivo consiste em proporcionar
um
de referncia para os comparadores analgicos, que pode tambm
ser
usado de forma independente.
Um diagrama de blocos do mdulo mostrado na Figura 23-1.
A escada resistor segmentado para proporcionar duas gamas
de valores CVREF e tem uma funo de desligamento para
economizar energia quando a referncia no est sendo usado.
Referncia de alimentao do mdulo pode ser fornecida a partir
ou dispositivo VDD / VSS ou uma referncia de tenso externa.
23,1 Configurando o comparador
Voltagem de referncia
O mdulo de referncia de tenso controlado por meio da
CVRCON registro (Register 23-1). O comparador
referncia de tenso fornece dois intervalos de sada
tenso, cada uma com 16 nveis distintos. A faixa a ser
CADASTRE-SE 23-1:
R/W-0
CVREN
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
CVRCON: COMPARADOR tenso de referncia de controle de registros
R/W-0 R/W-0
CVRR
R/W-0
CVRSS
R/W-0
CVR3
R/W-0
CVR2
R/W-0
RCV1
R/W-0
CVR0
bit 0
CVROE(1)
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
CVREN: Reference Voltage Comparator Habilitar bit
1= CVREF circuito ligado
0= CVREF circuito desligado
CVROE: Comparador de ativao de sada VREF bit(1)
1= Nvel de tenso CVREF tambm a sada no pino RA2/AN2/VREF-/CVREF
0= Tenso CVREF est desconectado da pin RA2/AN2/VREF-/CVREF
CVRR: Comparador VREF Faixa bit Seleo
1= 0-0,667 CVRSRC, com CVRSRC/24 tamanho do passo (gama baixa)
0= 0,25 para 0,75 CVRSRC CVRSRC, com CVRSRC/32 tamanho do passo (gama alta)
CVRSS: Comparador VREF Fonte bit Seleo
1= Fonte de referncia Comparador, CVRSRC = (VREF +) - (VREF-)
0= Fonte de referncia Comparador, CVRSRC = VDD - VSS
CVR3: CVR0: Comparador vref pedaos seleo de valor (0 o (CVR3: CVR0) o 15)
Quando CVRR = 1:
CVREF = ((CVR3: CVR0) / 24) (CVRSRC)
Quando CVRR = 0:
CVREF = (CVRSRC / 4) + ((CVR3: CVR0) / 32) (CVRSRC)
CVROE substitui a configurao bit TRISA <2>.
bit 6
bit 5
4 bits
bit 3-0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E pgina 281
PIC18F2455/2550/4455/4550
FIGURA 23-1: COMPARADOR tenso de referncia DIAGRAMA DE BLOCO
VREF +
VDD
CVRSS = 1
CVRSS = 0
8R
R
R
R
CVR3: CVR0
CVREN
16 Passos
16-a-1 MUX R
CVREF
R
R
R
CVRR
VREF-
CVRSS = 1
8R
CVRSS = 0
23,2 Tenso Preciso de Referncia / Error 23,4 Efeitos de um Reset
A gama de referncia de tenso no pode ser realizada
devido construo do mdulo. Os transistores
na parte superior e inferior da rede de escada resistor
(Figura 23-1) manter CVREF de se aproximar do refe-
rails fonte cia. A referncia de tenso derivado
a partir da fonte de referncia e, portanto, a sada CVREF
alteraes com flutuaes na referida fonte. O testado
preciso absoluta da referncia de tenso pode ser
encontrada em Seo 28,0 "Caractersticas eltricas".
A redefinio do dispositivo desativa a referncia de tenso por
limpar bit, CVREN (CVRCON <7>). Este reset tambm
desconecta a referncia do pino RA2 limpando
bit, CVROE (CVRCON <6>) e seleciona a alta tenso
gama de compensao bit, CVRR (CVRCON <5>). A CVR
Value Select pedaos tambm so apagadas.
23,5 Consideraes de conexo
23,3 Operao durante o sono
Quando o dispositivo acorda do sono atravs de um
interromper ou um temporizador Watchdog time-out, o contedo do
o registo CVRCON no so afetados. Para minimizar
consumo de corrente em modo de suspenso, a tenso
referncia deve ser desativada.
O mdulo de referncia de tenso funciona de forma independente
do mdulo comparador. A sada da referncia
gerador pode ser ligado ao pino RA2 se o
TRISA <2> bit eo bit CVROE esto definidos.
Permitindo a sada de referncia de tenso para RA2 quando
ele est configurado como uma entrada digital vai aumentar a
corrente
consumo. Conectando RA2 como uma sada digital com
CVRSS permitiu tambm aumentar a corrente
consumo.
O pino RA2 pode ser usado como uma simples D / A de sada com
capacidade de movimentao limitada. Devido unidade de
corrente limitada
capacidade, um tampo tem de ser utilizado na tenso
sada de referncia para conexes externas para VREF.
A Figura 23-2 mostra um exemplo de tcnica de tamponamento.
DS39632E pgina 282 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 23-2: COMPARADOR tenso de referncia buffer de sada EXEMPLO
PIC18FXXXX
CVREF
Mdulo
R(1)
Tenso
Referncia
Sada
Impedncia
RA2
+
-
CVREF Output
Nota 1: R dependente dos bits de configurao de referncia de tenso, CVRCON <5> e CVRCON <3:00>.
TABELA 23-1:
Nome
CVRCON
CMCON
TRISA
Ficheiros associados com comparador de tenso de referncia
Bit 7
CVREN
C2OUT
-
Bit 6
CVROE
C1OUT
Bit 5
CVRR
C2INV
Bit 4
CVRSS
C1INV
TRISA4
Bit 3
CVR3
CIS
TRISA3
Bit 2
CVR2
CM2
TRISA2
O bit 1
RCV1
CM1
TRISA1
Bit 0
CVR0
CM0
TRISA0
Restabelecer
Valores
na pgina
55
55
56
TRISA6(1) TRISA5
Legenda: Clulas sombreados no so usadas com a tenso de referncia do comparador.
Nota 1: PORTA <6> e sua direo e bits de selo so configurados individualmente como pinos da porta com base em vrios
Modos de oscilador. Quando desativada, esses bits lidos como '0 '.
v 2009 Microchip Technology Inc. DS39632E pgina 283
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 284 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
24,0 ALTA / BAIXA TENSO DETECTAR
(HLVD)
Registrar o High / Low-Voltage Controle Detect
(Registo 24-1) controla toda a operao do
Mdulo HLVD. Isto permite que o circuito a ser "virado
off "pelo usurio sob controle de software que minimiza
o consumo de corrente para o dispositivo.
O diagrama de bloco do mdulo mostrado em HLVD
Figura 24-1.
PIC18F2455/2550/4455/4550 dispositivos tm um
High / Low-Voltage mdulo Detect (HLVD). Este um pr-
circuito programvel que permite ao usurio especificar um
dispositivo de ponto de disparo da tenso e da direo da mudana
a partir desse ponto. Se o dispositivo apresentar uma excurso
alm do ponto viagem nessa direo, uma bandeira de interrupo
definido. Se a interrupo ativada, a execuo do programa
desvie para o endereo de vetor de interrupo eo
software pode ento reagir com a interrupo.
CADASTRE-SE 24-1:
R/W-0
VDIRMAG
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7
HLVDCON: HIGH / LOW-tenso de controle DETECT REGISTRAR
U-0
-
R-0
IRVST
R/W-0
HLVDEN
R/W-0
HLVDL3(1)
R/W-1
HLVDL2(1)
R/W-0
HLVDL1(1)
R/W-1
HLVDL0(1)
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
VDIRMAG: Tenso Direo Magnitude Select bit
1= Evento ocorre quando a tenso igual ou superior a ponto de disparo (HLVDL3: HLDVL0)
0= Evento ocorre quando a tenso igual ou desce abaixo do ponto de disparo (HLVDL3:
HLVDL0)
Unimplemented: Leia como '0 '
IRVST: Interno Voltagem de referncia estvel bit Bandeira
1= Indica que a lgica de deteco de tenso ir gerar o flag de interrupo na faixa de tenso especificada
0= Indica que a lgica de deteco de tenso no ir gerar o sinalizador de interrupo na tenso especificada
alcance ea interrupo HLVD no deve ser ativado
HLVDEN: High / Low-Voltage Detect Poder Habilitar bit
1= HLVD habilitado
0= HLVD desativado
HLVDL3: HLVDL0: Tenso limite de deteco pedaos(1)
1111 = Entrada analgica externa utilizado (entrada vem do pino HLVDIN)
1110 = Configurao mxima
.
.
.
0000 = Configurao mnima
Ver Tabela 28-6 em Seo 28,0 "Caractersticas eltricas" para especificaes.
bit 6
bit 5
4 bits
bit 3-0
Nota 1:
v 2009 Microchip Technology Inc. DS39632E pgina 285
PIC18F2455/2550/4455/4550
O mdulo habilitado, definindo o bit HLVDEN.
Cada vez que o mdulo HLVD estiver ativado, o
circuito requer algum tempo para estabilizar. O bit IRVST
um bit de leitura e utilizado para indicar quando o circuito
estvel. O mdulo s pode gerar uma interrupo
depois de o circuito est estvel e IRVST est definida.
O bit VDIRMAG determina o funcionamento global do
o mdulo. Quando VDIRMAG estiver desmarcada, o mdulo
monitores de gotas em VDD abaixo de um conjunto predeterminado
ponto. Quando o bit definido, o mdulo monitora sobe
em VDD acima do ponto de ajuste.
o caso, dependendo da configurao do mdulo.
Quando a tenso de alimentao igual ao ponto de desengate, o
tenso virado para fora da matriz do resistor igual ao
tenso de referncia interna gerada pela tenso
mdulo de referncia. O comparador gera ento um
interromper o sinal, definindo o bit HLVDIF.
A tenso no ponto de viagem um software programvel para
qualquer
um dos 16 valores. O ponto de disparo selecionado por
programmingtheHLVDL3: HLVDL0bits
(HLVDCON <3:00>).
O mdulo HLVD tem um recurso adicional que permite
o utilizador para fornecer a tenso de viagem para o mdulo a partir
de um
fonte externa. Este modo ativado quando os bits,
HLVDL3: HLVDL0, so indicadas para '1111 '. Neste estado, o
entrada do comparador multiplexada da entrada externa
pin, HLVDIN. Isso d aos usurios a flexibilidade, pois
lhes permite configurar o High / Low-Voltage Detect
interromper a ocorrer em qualquer tenso na operao vlida
range.
24,1 Operao
Quando o mdulo HLVD estiver habilitado, um comparador usa
uma tenso de referncia gerado internamente como o conjunto
ponto. O ponto de ajuste comparado com o ponto de disparo,
onde cada nodo no divisor de resistncia representa um
ponto de tenso viagem. O "ponto de trip" tenso a tenso
nvel ao qual o dispositivo detecta uma alta ou baixa voltagem
FIGURA 24-1: HLVD MDULO DE ESQUEMA DE BLOCO (com entrada externa)
VDD
Externamente Gerado
Point viagem
VDD
HLVDL3: HLVDL0
HLVDCON
Registrar
VDIRMAG
HLVDIN
HLVDEN
16-a-1 MUX Conjunto
HLVDIF
HLVDEN
Boren
Tenso interna
Referncia
1.2V tpica
DS39632E pgina 286 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
24,2 Setup HLVD
So necessrios os seguintes passos para configurar o HLVD
Mdulo:
1.
2.
3.
4.
5.
Desativar o mdulo, limpando o bit HLVDEN
(HLVDCON <4>).
Escreva o valor para o HLVDL3: HLVDL0 bits que
seleciona o ponto de viagem HLVD desejado.
Definir o bit VDIRMAG para detectar alta tenso
(VDIRMAG = 1) ou de baixa tenso (VDIRMAG = 0).
Habilite o mdulo HLVD, definindo o
HLVDEN bit.
Limpar o flag de interrupo HLVD, HLVDIF
(PIR2 <2>), o que pode ter sido definida a partir de um
interrupo anterior.
Permitir a interrupo HLVD, se interrompe so
desejada, definindo o HLVDIE e GIE / GIEH
pedaos (PIE2 <2> e INTCON <7>). Uma interrupo
no vai ser gerado at que o bit IRVST est definida.
Dependendo da aplicao, o mdulo faz HLVD
no precisa de estar a funcionar constantemente. Para diminuir o
exigncias atuais, o circuito HLVD s pode
precisa ser ativado por curtos perodos em que a tenso
est marcada. Depois de fazer a verificao, o mdulo HLVD
pode ser desativado.
24,4 HLVD Tempo Start-up
6.
A tenso do mdulo HLVD referncia interna,
especificado no parmetro de especificao eltrica D420 (ver
Tabela 28-6 em Seo 28.0 "eltricos caracte-
tiques "), podem ser utilizados por outros circuitos internos, tais
como
Reset Brown-out programvel. Se o ou HLVD
outros circuitos usando a referncia de tenso esto desativados
para
diminuir o consumo atual do dispositivo, a referncia
circuito de tenso necessita de um tempo para se tornar estvel
antes
uma condio de baixa ou de alta tenso pode ser detectado com
segurana.
Desta vez, start-up, TIRVST, um intervalo que indepen-
dente de velocidade de clock do dispositivo. Ele especificado em
eltrica
especificao de parmetros 36 (Tabela 28-12).
A bandeira de interrupo HLVD no est habilitado at TIRVST tem
expirado e uma tenso de referncia estvel atingido. Para
esta razo, breves excurses para alm do ponto de ajuste pode
no ser detectado durante este intervalo. Consulte
Figura 24-2 e Figura 24-3.
24,3 Consumo de corrente
Quando o mdulo ativado, o comparador HLVD
e divisor de tenso so habilitados e vai consumir esttica
corrente. O consumo total de corrente, quando ativado,
especificado no parmetro de especificao eltrica D022
(Seo DC 28.2 "Caractersticas").
FIGURA 24-2:
Caso 1:
VDD
OPERAO DETECT baixa tenso (VDIRMAG = 0)
HLVDIF no pode ser definido
VHLVD
HLVDIF
Ativar HLVD
IRVST
TIRVST
Referncia interna estvel
Caso 2:
VDD
VHLVD
HLVDIF
Ativar HLVD
IRVST
Referncia interna estvel
HLVDIF apuradas em software
HLVDIF apuradas em software,
HLVDIF permanece definida como a condio HLVD ainda existe
TIRVST
HLVDIF apuradas em software
v 2009 Microchip Technology Inc. DS39632E pgina 287
PIC18F2455/2550/4455/4550
FIGURA 24-3:
Caso 1:
OPERAO DE DETECO DE ALTA TENSO (VDIRMAG = 1)
HLVDIF no pode ser definido
VHLVD
VDD
HLVDIF
Ativar HLVD
IRVST
TIRVST
HLVDIF apuradas em software
Referncia interna estvel
Caso 2:
VHLVD
VDD
HLVDIF
Ativar HLVD
IRVST
Referncia interna estvel
HLVDIF apuradas em software
HLVDIF apuradas em software,
HLVDIF permanece definida como a condio HLVD ainda existe
TIRVST
24,5 Aplicaes
FIGURA 24-4:
Para aplicaes gerais da bateria, a Figura 24-4 mostra uma
curva de voltagem possvel. Ao longo do tempo, a tenso do
dispositivo
diminui. Quando a tenso atinge dispositivo de tenso,
VA, a lgica HLVD gera uma interrupo de tempo, AT.
A interrupo pode provocar a realizao de um ISR
o que permitiria a aplicao para executar "casa-
manuteno de tarefas "e realizar um desligamento controlado
antes que a tenso sai do dispositivo de explorao vlida
gama de TB. O HLVD, assim, daria a apli-
o de uma janela de tempo, representada pela diferena
entre TA e TB, para sair com segurana.
Tenso
Em muitas aplicaes, a capacidade de detectar uma queda abaixo
ou elevar-se acima de um limiar em particular desejvel. Para
exemplo, o mdulo pode ser periodicamente HLVD
habilitado para detectar Universal Serial Bus (USB) ou anexar
desanexar. Isso pressupe que o dispositivo alimentado por uma
menor
fonte de tenso do que a USB quando separada. Um anexar
indicaria uma deteco de alta tenso a partir de, por exemplo,
3.3V a 5V (a tenso em USB) e vice-versa para um
desanexar. Este recurso pode salvar um projeto alguns extras
componentes e anexar um sinal (pino de entrada).
TPICA
ALTA / BAIXA TENSO
DETECO DE APLICAO
VA
VB
Tempo
TA
Tuberculose
Legenda: VA = HLVD ponto viagem
VB = dispositivo vlido mnima
tenso de operao
DS39632E pgina 288 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
24,6 Operao durante o sono 24,7 Efeitos de um Reset
Quando ativado, o circuito HLVD continua a operar
Durante o sono. Se o dispositivo de tenso atravessa a viagem
ponto, o bit HLVDIF ser definido eo dispositivo
wake-up do sono. Execuo dispositivo continuar
a partir do endereo de vetor de interrupo se interrompe ter
foram globalmente ativado.
A redefinio do dispositivo obriga todos os registros de seu estado
Reset.
Isso fora o mdulo HLVD ser desligado.
TABELA 24-1:
Nome
HLVDCON
INTCON
PIR2
PIE2
IPR2
REGISTOS associada com alta / BAIXA TENSO MDULO DETECT
Bit 7 Bit 6
-
CMIF
CMIE
CMIP
Bit 5
IRVST
TMR0IE
USBIF
USBIE
USBIP
Bit 4
HLVDEN
INT0IE
EEIF
EEIE
EEIP
Bit 3
HLVDL3
RBIE
BCLIF
BCLIE
BCLIP
Bit 2
HLVDL2
TMR0IF
HLVDIF
HLVDIE
HLVDIP
O bit 1
HLVDL1
INT0IF
TMR3IF
TMR3IE
TMR3IP
Bit 0
HLVDL0
RBIF
CCP2IF
CCP2IE
CCP2IP
Restabelecer
Valores
na pgina
54
53
56
56
56
VDIRMAG
OSCFIF
OSCFIE
OSCFIP
GIE / GIEH PEIE / giel
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so usados pelo mdulo HLVD.
v 2009 Microchip Technology Inc. DS39632E pgina 289
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 290 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
25,0 As caractersticas especiais do
CPU
Alm de sua Power-up e Oscillator Start-up Tim-
ers previstas Redefine, PIC18F2455/2550/4455/4550
dispositivos tm um temporizador Watchdog, que pode ser
permanentemente habilitado atravs dos bits de configurao ou
software controlado (se configurado como desativado).
A incluso de um oscilador interno V tambm fornece
os benefcios adicionais de uma falha de segurana do Monitor
Relgio
(FSCM) e duas velocidades de arranque. FSCM prev
monitorizao de fundo do relgio perifrica e
comutao automtica em caso de seu fracasso.
Duas Velocidades Start-up permite que o cdigo a ser executado
quase que imediatamente no arranque, enquanto o relgio principal
fonte completa seus atrasos start-up.
Todos esses recursos esto ativados e configurados por
definindo os bits do registro de configurao adequados.
PIC18F2455/2550/4455/4550 dispositivos incluem vrios
elementos que se destinam a aumentar a confiabilidade e minimizar
custo atravs da eliminao de componentes externos.
Estes so os seguintes:
Seleo oscilador
Redefine:
- Power-on Reset (POR)
- Temporizador Power-up (PWRT)
- Oscillator Start-up timer (OST)
- Redefinio de Brown-out (BOR)
Interrupes
Watchdog Timer (WDT)
prova de falhas Monitor de Relgio
Duas Velocidades Start-up
Proteo de Cdigo
Locais de identificao
In-Circuit Serial Programming
O oscilador pode ser configurado para a aplicao
dependendo da frequncia, a potncia, a preciso e custo. Tudo
das opes so discutidos em detalhe na Seo 2.0
"Configuraes oscilador".
Uma discusso completa do dispositivo Redefine e interrompe
est disponvel em sees anteriores deste folha de dados.
v 2009 Microchip Technology Inc. DS39632E pgina 291
PIC18F2455/2550/4455/4550
25,1 Bits de configurao
Os bits de configurao podem ser programados (lido como
'0 ') Ou para a esquerda no programada (leia-se '1') para selecionar
vrios
configuraes do dispositivo. Estes bits so mapeados de partida
na memria de programa 300000h localizao.
O usurio vai notar que o endereo 300000h est alm do
user espao de memria do programa. Na verdade, ele pertence
espao de memria de configurao (300000h-3FFFFFh)
que s pode ser acessado usando a tabela l e
mesa escreve.
Programao dos registros de configurao feita em um
forma semelhante programao da memria Flash. O
WR bit no registo EECON1 inicia um auto-cronometrado escrever
para a configurao do registro. No modo de funcionamento normal,
umTBLWT instrues, com o que aponta para a TBLPTR
Registro de configurao, configura o endereo eo
dados para o registro de configurao escrever. Definir o WR
bit comea uma longa gravao para o registro de configurao. O
Registros de configurao so escritos um byte de cada vez. A
gravar ou apagar uma clula de configurao, um TBLWT instruo
pode escrever um '1 'ou um '0' para a clula. Para obter detalhes
adicionais
sobre a programao Flash, referem-se a Seo 6.5 "Writing
para a memria flash Program ".
TABELA 25-1:
Nome do arquivo
300000h
300001h
300002h
300003h
300005h
300006h
300008h
300009h
30000Ah
30000Bh
30000Ch
30000Dh
3FFFFFh
Legenda:
Nota 1:
2:
3:
BITS configurao e IDs de dispositivos
Bit 7
-
IESO
-
-
MCLRE
DEBUG
-
CPD
-
WRTD
-
-
DEV2
DEV10
Bit 6
-
FCMEN
-
-
-
XINST
-
CPB
-
WRTB
-
EBTRB
DEV1
Dev9
Bit 5 Bit 4 Bit 3 Bit 2 O bit 1
PLLDIV1
FOSC1
Bit 0
PLLDIV0
FOSC0
WDTEN
STVREN
CP0
-
WRT0
-
EBTR0
-
REV0
Dev3
Padro /
Unprogrammed
Valor
- 00 0000
00-0101
- 01 1111
--- 1 1111
1 ---- 011
100 - 1-1
---- 1111
11 ------
---- 1111
111 -----
---- 1111
-1 ------
xxxx xxxx(2)
0001 0010(2)
CONFIG1L
CONFIG1H
CONFIG2L
CONFIG2H
CONFIG3H
CONFIG4L
CONFIG5L
CONFIG5H
CONFIG6L
CONFIG6H
CONFIG7L
CONFIG7H
DEVID2
USBDIV CPUDIV1 CPUDIV0 PLLDIV2
-
VREGEN
-
-
ICPRT(3)
-
-
-
WRTC
-
-
DEV0
Dev8
-
BORV1
-
-
-
-
-
-
-
-
REV4
DEV7
FOSC3
BORV0
-
-
CP3(1)
-
WRT3
-
EBTR3
-
REV3
DEV6
(1)
(1)
FOSC2
BOREN1 BOREN0 PWRTEN
WDTPS3 WDTPS2 WDTPS1 WDTPS0
LVP
CP2
-
WRT2
-
EBTR2
-
REV2
DEV5
-
CP1
-
WRT1
-
EBTR1
-
REV1
DEV4
LPT1OSC PBADEN CCP2MX
3FFFFEh DEVID1
x= Desconhecido, u= Inalterado, -= No implementado. Clulas sombreadas so implementados, ler como '0 '.
Unimplemented em PIC18FX455 dispositivos; manter este conjunto de bits.
Veja Registre 25-13 e 25-14 Registre para valores Devid. Devid registros so somente leitura e no pode ser programado pelo
o utilizador.
Disponvel apenas em PIC18F4455/4550 dispositivos em pacotes TQFP de 44 pinos. Sempre deixe este pouco clara em todos os outr os
dispositivos.
DS39632E pgina 292 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-1:
U-0
-
bit 7
Legenda:
R = pouco legvel P = bit programvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7-6
bit 5
Unimplemented: Leia como '0 '
USBDIV: USB bit Relgio Selection (utilizado somente no modo USB Full-Speed; UCFG: FSEN = 1)
1= Fonte de relgio USB vem do 96 MHz PLL dividido por 2
0= Fonte de relgio USB vem diretamente do bloco oscilador primrio sem postscale
CPUDIV1: CPUDIV0: Sistema de relgio postscaler pedaos Seleo
Para XT, HS, CE e modos de oscilador ECIO:
11 = Oscilador primria dividido por 4 para derivar relgio do sistema
10 = Oscilador primria dividido por trs para derivar relgio do sistema
01 = Oscilador primria dividido por dois para derivar relgio do sistema
00 = Oscilador primrio usado diretamente para o relgio do sistema (sem
postscaler)
Para XTPLL, HSPLL, ECPLL e modos de oscilador ECPIO:
11 = 96 MHz PLL dividido por 6 para derivar relgio do sistema
10 = 96 MHz divididos por 4 PLL para derivar relgio do sistema
01 = 96 MHz PLL dividido por trs para derivar relgio do sistema
00 = 96 MHz PLL dividido por dois para derivar relgio do sistema
PLLDIV2: PLLDIV0: PLL Prescaler pedaos Seleo
111 = Divide por 12 (48 entrada do oscilador MHz)
110 = Divide por 10 (40 entrada do oscilador MHz)
101 = Dividir por 6 (24 entrada do oscilador MHz)
100 = Divide por 5 (entrada do oscilador 20 MHz)
011 = Divide por 4 (16 de entrada do oscilador MHz)
010 = Dividir por 3 (12 entrada do oscilador MHz)
001 = Divide por 2 (8 de entrada do oscilador MHz)
000 = No pr-escala (entrada do oscilador 4 MHz PLL dirige diretamente)
CONFIG1L: configurao de registro 1 LOW (ENDEREO BYTE 300000h)
U-0
-
R/P-0
USBDIV
R/P-0
CPUDIV1
R/P-0
CPUDIV0
R/P-0
PLLDIV2
R/P-0
PLLDIV1
R/P-0
PLLDIV0
bit 0
bit 4-3
bit 2-0
v 2009 Microchip Technology Inc. DS39632E pgina 293
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-2:
R/P-0
IESO
bit 7
Legenda:
R = pouco legvel P = bit programvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7
CONFIG1H: configurao de registro 1 HIGH (ENDEREO BYTE 300001h)
R/P-0 U-0
-
U-0
-
R/P-0
FOSC3(1)
R/P-1
FOSC2(1)
R/P-0
FOSC1(1)
R/P-1
FOSC0(1)
bit 0
FCMEN
IESO: Interno / Externo oscilador bit Comutao
1= Modo de comutao oscilador habilitado
0= Modo de comutao oscilador desativado
FCMEN: Fail-safe Relgio Monitor de Ativar bit
1= Monitor de relgio prova de falhas habilitado
0= Relgio Monitor de fail-safe desativado
Unimplemented: Leia como '0 '
FOSC3: FOSC0: Bits de seleo do oscilador(1)
111X = Oscilador HS, PLL ativado (HSPLL)
110x = Oscilador HS (HS)
1011 = Oscilador interno, oscilador HS usado por USB (INTHS)
1010 = Oscilador interno, XT usado por USB (INTXT)
1001 = Oscilador interno, funo CLKO em RA6, CE usada por USB (INTCKO)
1000 = Oscilador interno, a funo de porta em RA6, CE usada por USB (intio)
0111 = Oscilador CE, PLL habilitado, a funo CLKO em RA6 (ECPLL)
0110 = Oscilador CE, PLL habilitado, a funo de porta em RA6 (ECPIO)
0101 = Oscilador CE, funo CLKO em RA6 (CE)
0100 = Oscilador CE, a funo de porta em RA6 (ECIO)
001X = XT oscilador PLL ativado (XTPLL)
000x = Oscilador XT (XT)
O mdulo de microcontrolador e USB usam o oscilador selecionado como fonte de relgio em XT, HS e
Modos CE. O mdulo USB usa o indicado XT, HS ou CE oscilador como sua fonte de relgio sempre que o
microcontrolador usa o oscilador interno.
bit 6
bit 5-4
bit 3-0
Nota 1:
DS39632E pgina 294 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-3:
U-0
-
bit 7
Legenda:
R = pouco legvel P = bit programvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7-6
bit 5
Unimplemented: Leia como '0 '
VREGEN: USB Interno Voltage Regulator Habilitar bit
1= Regulador de tenso USB ativado
0= Regulador de tenso USB desativado
BORV1: BORV0: Brown-out Redefinir pedaos de tenso(1)
11 = Configurao mnima
.
.
.
00 = Configurao mxima
BOREN1: BOREN0: Brown-out Restaurar Ativar os bits(2)
11 = Brown-out Redefinir habilitado no hardware apenas (SBOREN est desativado)
10 = Brown-out Redefinir habilitado apenas em hardware e desativado no modo Sleep (SBOREN est desativado)
01 = Brown-out Redefinir habilitado e controlado por software (SBOREN est habilitado)
00 = Brown-out Redefinir desativado em hardware e software
PWRTEN: Power-up timer Habilitar bit(2)
1= PWRT desativado
0= PWRT enabled
Ver Seo 28,0 "Caractersticas eltricas" para as especificaes.
O timer Power-up dissociado da Reiniciar Brown-out, permitindo que esses recursos a ser independente
controlado.
CONFIG2L: configurao de registro 2 LOW (ENDEREO BYTE 300002h)
U-0
-
R/P-0
VREGEN
R/P-1
BORV1(1)
R/P-1
BORV0(1)
R/P-1
BOREN1(2)
R/P-1
BOREN0(2)
R/P-1
PWRTEN(2)
bit 0
bit 4-3
bit 2-1
bit 0
Nota 1:
2:
v 2009 Microchip Technology Inc. DS39632E pgina 295
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-4:
U-0
-
bit 7
Legenda:
R = pouco legvel P = bit programvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7-5
bit 4-1
Unimplemented: Leia como '0 '
WDTPS3: WDTPS0: Watchdog Timer Postscale Selecionar pedaos
1111 = 1:32,768
1110 = 1:16,384
1101 = 1:8,192
1100 = 1:4.096
1011 = 1:2,048
1010 = 1:1.024
1001 = 1:512
1000 = 1:256
0111 = 1:128
0110 = 1:64
0101 = 01:32
0100 = 01:16
0011 = 01:08
0010 = 01:04
0001 = 1:02
0000 = 1:1
WDTEN: Watchdog Timer Ativar bit
1WDT = enabled
0= WDT desactivado (controlo colocado no bit SWDTEN)
CONFIG2H: configurao de registro 2 HIGH (ENDEREO BYTE 300003h)
U-0
-
U-0
-
R/P-1
WDTPS3
R/P-1
WDTPS2
R/P-1
WDTPS1
R/P-1
WDTPS0
R/P-1
WDTEN
bit 0
bit 0
DS39632E pgina 296 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-5:
R/P-1
MCLRE
bit 7
Legenda:
R = pouco legvel P = bit programvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7
CONFIG3H: configurao de registro 3 HIGH (ENDEREO BYTE 300005h)
U-0
-
U-0
-
U-0
-
U-0
-
R/P-0
LPT1OSC
R/P-1
PBADEN
R/P-1
CCP2MX
bit 0
MCLRE: MCLR Pin Habilitar bit
1= Pino MCLR habilitado, o pino de entrada RE3 desativado
0= RE3 pino de entrada habilitada, o pino MCLR
desabilitado
Unimplemented: Leia como '0 '
LPT1OSC: Low-Power Timer1 oscilador Habilitar bit
1= Timer1 configurado para operao de baixa potncia
0= Timer1 configurado para operao em potncia superior
PBADEN: PORTB A / D Habilitar bit
(Afeta ADCON1 estado Reset. ADCON1 controla PORTB <04:00> configurao de pinos).
1= PORTB <04:00> pinos so configurados como canais de entrada analgica em Reiniciar
0= PORTB <04:00> pinos so configurados como I / O digital em Reiniciar
CCP2MX: CCP2 bit MUX
1= CCP2 entrada / sada multiplexado com RC1
0= CCP2 entrada / sada multiplexado com RB3
bit 6-3
bit 2
bit 1
bit 0
v 2009 Microchip Technology Inc. DS39632E-pgina 297
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-6:
R/P-1
DEBUG
bit 7
Legenda:
R = pouco legvel P = bit programvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7
CONFIG4L: configurao de registro 4 LOW (ENDEREO BYTE 300006h)
R/P-0
XINST
R/P-0
ICPRT(1)
U-0
-
U-0
-
R/P-1
LVP
U-0
-
R/P-1
STVREN
bit 0
DEBUG: Fundo Debugger Habilitar bit
1= Fundo deficientes depurador, RB6 e RB7 configurado como objetivo geral pinos de I / O
0= Background debugger enabled, RB6 e RB7 so dedicados a depurao In-Circuit
XINST: Instruo estendida Defina Ativar bit
1= Extenso do conjunto de instrues eo modo de endereamento indexado habilitado
0= Extenso do conjunto de instrues e endereamento indexado deficientes (Modo Legado)
ICPRT: Dedicado In-Circuit Debug / Programao do Porto (ICPORT) Ativar bit(1)
1= ICPORT enabled
0= ICPORT desativado
Unimplemented: Leia como '0 '
LVP: Single-alimentao ICSP Ativar bit
1= ICSP de fornecimento nico habilitado
0= ICSP Single-alimentao desativado
Unimplemented: Leia como '0 '
STVREN: Stack Full / Reiniciar Underflow Habilitar bit
1= Full stack / underflow far Redefinir
0= Full stack / underflow no causar Redefinir
Disponvel apenas nos pacotes TQFP de 44 pinos. Sempre deixe este pouco clara em todos os outros
dispositivos.
bit 6
bit 5
bit 4-3
bit 2
bit 1
bit 0
Nota 1:
DS39632E pgina 298 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-7:
U-0
-
bit 7
Legenda:
R = pouco legvel C = bit Apagvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7-4
bit 3
Unimplemented: Leia como '0 '
CP3: Cdigo de Proteo bit(1)
1= Bloco 3 (006000-007FFFh) no um cdigo protegido
0= Bloco 3 (006000-007FFFh) um cdigo protegido
CP2: Cdigo de Proteo bit
1= Bloco 2 (004000-005FFFh) no um cdigo protegido
0= Bloco 2 (004000-005FFFh) o cdigo-protegido
CP1: Cdigo de Proteo bit
1= Bloco 1 (002000-003FFFh) no um cdigo protegido
0= Bloco 1 (002000-003FFFh) o cdigo-protegido
CP0: Cdigo de Proteo bit
1= Bloco 0 (000800-001FFFh) no um cdigo protegido
0= Bloco 0 (000800-001FFFh) o cdigo-protegido
Unimplemented em PIC18FX455 dispositivos; manter este conjunto de bits.
CONFIG5L: configurao de registro 5 LOW (ENDEREO BYTE 300008h)
U-0
-
U-0
-
U-0
-
R/C-1
CP3(1)
R/C-1
CP2
R/C-1
CP1
R/C-1
CP0
bit 0
bit 2
bit 1
bit 0
Nota 1:
CADASTRE-SE 25-8:
R/C-1
CPD
bit 7
Legenda:
R = pouco legvel
CONFIG5H: configurao de registro 5 HIGH (ENDEREO BYTE 300009h)
R/C-1
CPB
U-0
-
U-0
-
U-0
-
U-0
-
U-0
-
U-0
-
bit 0
C = bit Apagvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7 CPD: Dados EEPROM Cdigo bit Proteo
1= Dados EEPROM no est protegido por cdigo
0= Dados EEPROM um cdigo protegido
bit 6 CEC: Bota cdigo de bloco bit Proteo
1= Bloco de inicializao (000000-0007FFh) no um cdigo
protegido
0= Bloco de inicializao (000000-0007FFh) um cdigo protegido
Unimplemented: Leia como '0 ' bit 5-0
v 2009 Microchip Technology Inc. DS39632E pgina 299
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-9:
U-0
-
bit 7
Legenda:
R = pouco legvel C = bit Apagvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7-4
bit 3
Unimplemented: Leia como '0 '
WRT3: Escrever bit Proteo(1)
1= Bloco 3 (006000-007FFFh) no est protegido contra gravao
0= Bloco 3 (006000-007FFFh) protegido contra gravao
WRT2: Escrever bit Proteo
1= Bloco 2 (004000-005FFFh) no est protegido contra gravao
0= Bloco 2 (004000-005FFFh) protegido contra gravao
WRT1: Escrever bit Proteo
1= Bloco 1 (002000-003FFFh) no est protegido contra gravao
0= Bloco 1 (002000-003FFFh) protegido contra gravao
WRT0: Escrever bit Proteo
1= Bloco 0 (000800-001FFFh) ou (001000-001FFFh) no est protegido contra gravao
0= Bloco 0 (000800-001FFFh) ou (001000-001FFFh) protegido contra gravao
Unimplemented em PIC18FX455 dispositivos; manter este conjunto de bits.
CONFIG6L: configurao de registro 6 LOW (ENDEREO BYTE 30000Ah)
U-0
-
U-0
-
U-0
-
R/C-1
WRT3
(1)
R/C-1
WRT2
R/C-1
WRT1
R/C-1
WRT0
bit 0
bit 2
bit 1
bit 0
Nota 1:
CADASTRE-SE 25-10: CONFIG6H: configurao de registro 6 HIGH (ENDEREO BYTE 30000Bh)
R/C-1
WRTD
bit 7
Legenda:
R = pouco legvel C = bit Apagvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7 WRTD: Dados EEPROM Escrever bit Proteo
1= Dados EEPROM no est protegido contra gravao
0= Dados EEPROM est protegido contra gravao
WRTB: Bota Write Block bit Proteo
1= Bloco de inicializao (000000-0007FFh) no protegido contra
gravao
0= Bloco de inicializao (000000-0007FFh) protegido contra
gravao
WRTC: Configurao Register Escrever bit Proteo(1)
1= Registros de configurao (300000-3000FFh) no est protegido contra gravao
0= Registros de configurao (300000-3000FFh) so protegido contra gravao
Unimplemented: Leia como '0 '
Este bit somente leitura no modo de execuo normal, que pode ser escrita apenas em modo de
Programa.
R/C-1
WRTB
R-1
WRTC
(1)
U-0
-
U-0
-
U-0
-
U-0
-
U-0
-
bit 0
bit 6
bit 5
bit 4-0
Nota 1:
DS39632E pgina 300 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-11: CONFIG7L: configurao de registro 7 LOW (ENDEREO BYTE 30000Ch)
U-0
-
bit 7
Legenda:
R = pouco legvel C = bit Apagvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7-4
bit 3
Unimplemented: Leia como '0 '
EBTR3: Tabela Leia bit Proteo(1)
1= Bloco 3 (006000-007FFFh) no protegido da tabela l executado em outros blocos
0= Bloco 3 (006000-007FFFh) protegido da tabela l executado em outros blocos
EBTR2: Tabela Leia bit Proteo
1= Bloco 2 (004000-005FFFh) no protegido da tabela l executado em outros blocos
0= Bloco 2 (004000-005FFFh) protegido da tabela l executado em outros blocos
EBTR1: Tabela Leia bit Proteo
1= Bloco 1 (002000-003FFFh) no est protegido de tabela l executado em outros blocos
0= Bloco 1 (002000-003FFFh) protegido a partir da tabela l executado em outros blocos
EBTR0: Tabela Leia bit Proteo
1Bloco = 0 (000800-001FFFh) no est protegido de tabela l executado em outros blocos
0Bloco = 0 (000800-001FFFh) protegido a partir da tabela l executado em outros blocos
Unimplemented em PIC18FX455 dispositivos; manter este conjunto de bits.
U-0
-
U-0
-
U-0
-
R/C-1
EBTR3
(1)
R/C-1
EBTR2
R/C-1
EBTR1
R/C-1
EBTR0
bit 0
bit 2
bit 1
bit 0
Nota 1:
CADASTRE-SE 25-12: CONFIG7H: configurao de registro 7 HIGH (ENDEREO BYTE 30000Dh)
U-0
-
bit 7
Legenda:
R = pouco legvel C = bit Apagvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7
bit 6
Unimplemented: Leia como '0 '
EBTRB: Bota Bloco Quadro Leia bit Proteo
1= Bloco de inicializao (000000-0007FFh) no est protegido da mesa l executado em outros blocos
0= Bloco de inicializao (000000-0007FFh) protegida da mesa l executado em outros blocos
Unimplemented: Leia como '0 '
R/C-1
EBTRB
U-0
-
U-0
-
U-0
-
U-0
-
U-0
-
U-0
-
bit 0
bit 5-0
v 2009 Microchip Technology Inc. DS39632E pgina 301
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-13: DEVID1: DEVICE ID REGISTRO 1 PARA DISPOSITIVOS PIC18F2455/2550/4455/4550
R
DEV2
bit 7
Legenda:
R = Read-only bit P = bit programvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7-5
bit 4-0
DEV2: DEV0: Bits de ID do dispositivo
Para uma lista completa, consulte Registrar 25-14.
REV4: REV0: Reviso bits da identificao
Estes bits so usados para indicar a reviso do dispositivo.
R
DEV1
R
DEV0
R
REV4
R
REV3
R
REV2
R
REV1
R
REV0
bit 0
CADASTRE-SE 25-14: DEVID2: DEVICE ID registar 2 PARA DISPOSITIVOS PIC18F2455/2550/4455/4550
R
DEV10
bit 7
Legenda:
R = Read-only bit P = bit programvel U = bit Unimplemented, ler como '0 '
u = Inalterado de estado programado -N = valor quando o dispositivo no programada
bit 7-0 DEV10: dev3: Bits de ID do dispositivo
DEV10: dev3
(DEVID2 <7:00>)
0001 0010
0010 1010
0001 0010
0010 1010
0001 0010
0010 1010
0001 0010
0010 1010
DEV2: DEV0
(DEVID1 <7:05>)
011
011
010
010
001
001
000
000
Dispositivo
PIC18F2455
PIC18F2458
PIC18F2550
PIC18F2553
PIC18F4455
PIC18F4458
PIC18F4550
PIC18F4553
R
Dev9
R
Dev8
R
DEV7
R
DEV6
R
DEV5
R
DEV4
R
Dev3
bit 0
DS39632E pgina 302 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
25,2 Watchdog Timer (WDT)
Para PIC18F2455/2550/4455/4550 dispositivos, o WDT
impulsionado pela fonte INTRC. Quando o WDT
ativada, a fonte de relgio tambm est habilitado. O nominal
WDT perodo de 4 ms e tem a mesma estabilidade que a
Oscilador INTRC.
O perodo de 4 ms do WDT multiplicada por um 16 bits
postscaler. Qualquer sada do WDT postscaler
seleccionado por um multiplexador, controlado por bits em Configu-
rao Register 2H. Perodos disponveis variam de 4 ms
a 131,072 segundo (2.18 minutos). A WDT e
postscaler so apagados quando qualquer um dos seguintes
eventos
ocorrer: a DORMIR ou CLRWDT instruo executada, o
IRCF pedaos (OSCCON <06:04>) so alterados ou um relgio
ocorreu uma falha.
.
Nota 1: O CLRWDT e DORMIR instrues
limpar as contagens de WDT e postscaler
quando executado.
2: A alterao da configurao dos bits IRCF
(OSCCON <06:04>) limpa o WDT e
postscaler conta.
3: Quando um CLRWDT instruo executada,
a contagem postscaler sero apagados.
25.2.1 Registro de controle
Registre 25-15 mostra o WDTCON registar. Este um
registro legvel e gravvel que contm um controle
bit que permite que o software para substituir o WDT permitir
Bit de configurao, mas apenas se o bit de configurao tem
desabilitado o WDT.
FIGURA 25-1:
SWDTEN
WDTEN
INTRC Fonte
Alterar em IRCF pedaos
CLRWDT
Todos Redefine Dispositivo
WDTPS <3:00>
DORMIR
WDT DIAGRAMA DE BLOCO
Ativar WDT
INTRC Controle
Wake-up de
Power-Managed
Modos
Postscaler Programmable
1:1 a 1:32,768
4
Restabelecer
WDT
Restabelecer
WDT Contador
| 1 2 8
WDT
v 2009 Microchip Technology Inc. DS39632E pgina 303
PIC18F2455/2550/4455/4550
CADASTRE-SE 25-15: WDTCON: Watchdog Timer controle Register
U-0
-
bit 7
Legenda:
R = pouco legvel
-N = Value at POR
bit 7-1
bit 0
W = bit gravvel
'1 '= Bit definido
U = bit Unimplemented, ler como '0 '
'0 '= Bit eliminado x = Bit desconhecida
U-0
-
U-0
-
U-0
-
U-0
-
U-0
-
U-0
-
R/W-0
SWDTEN(1)
bit 0
Unimplemented: Leia como '0 '
SWDTEN: Software Controlled Watchdog Timer Ativar bit(1)
1= Temporizador Watchdog est em
0= Temporizador Watchdog est fora
Este bit no tem efeito se o bit de configurao, WDTEN, est habilitado. Nota 1:
TABELA 25-2:
Nome
RCON
WDTCON
RESUMO DAS watchdog timer REGISTOS
Bit 7
IPEN
-
Bit 6
SBOREN(1)
-
Bit 5
-
-
Bit 4
RI
-
Bit 3
TO
-
Bit 2
PD
-
O bit 1
POR
-
Bit 0
BOR
SWDTEN
Restabelecer
Valores
na pgina
54
54
Legenda: - = No implementado, ler como '0 '. Clulas sombreadas no so utilizados pelo Watchdog Timer.
Nota 1: O bit SBOREN s est disponvel quando Boren <1:00> = 01; Caso contrrio, o bit l como '0 '.
DS39632E pgina 304 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
25,3 Duas Velocidades Start-up
O recurso Start-up Dois velocidade ajuda a minimizar o
perodo de latncia, do oscilador start-up de cdigo de execu-
o, ao permitir que o microcontrolador usar o INTRC
oscilador como uma fonte de relgio at que o relgio principal
fonte disponvel. Ele ativado, definindo o IESO
Bit de configurao.
Duas Velocidades Start-up deve ser ativado somente se a
modo de oscilador principal XT, HS, XTPLL ou HSPLL
(Modos de Crystal-based). Outras fontes no requerem
um atraso de arranque OST, para estes, Duas Velocidades Start-up
deve ser desativada.
Quando ativado, Redefine e wake-ups do modo de suspenso
fazer com que o dispositivo para configurar-se a correr a partir da
inter-
bloco oscilador nal como a fonte de relgio, seguindo o
time-out do timer Power-up depois de um Power-on reset
ativado. Isto permite que o cdigo quase imediata
execuo enquanto o oscilador principal e comea o
OST est em execuo. Uma vez que o tempo de sada de OST, o
dispositivo
muda automaticamente para o modo de PRI_RUN.
Porque o registo OSCCON cancelado em Reiniciar
eventos, o INTOSC (ou postscaler) fonte de relgio no
inicialmente disponvel depois de um evento de reset, o relgio
INTRC
usado diretamente na sua freqncia de base. Para usar um maior
velocidade de clock de wake-up, o INTOSC ou postscaler
fontes de relgio pode ser seleccionada para fornecer um relgio
maior
Velocidade, definindo bits, IRCF2: IRCF0, imediatamente aps
Redefinir. Para wake-ups de sono, o INTOSC ou ps-
fontes de relgio scaler pode ser selecionado atravs da criao
IRCF2: IRCF0 antes de entrar em modo de suspenso.
Em todos os outros modos de gerenciamento de energia, Duas
Velocidades Start-up
no utilizado. O dispositivo ser temporizados pela actualmente
fonte de clock selecionado at o relgio fonte primria
se torna disponvel. A definio do bit IESO
ignorados.
25.3.1 Consideraes especiais para
Usando dois VELOCIDADE DE ARRANQUE
Enquanto estiver usando o oscilador INTRC em Duas Velocidades
Start-up,
o dispositivo ainda obedece as sequncias de comandos normais
para a entrada de energia administradas modos, incluindo de srie
DORMIR instrues (consulte Seo 3.1.4 "Multiple
Comandos dormir "). Na prtica, isto significa que o utilizador
cdigo pode mudar a SCS1: configuraes ou emitir SCS0 bit
DORMIR instrues antes da OST vezes fora. Isto
permitir que um aplicativo brevemente acordar, executar a rotina
Tarefas "domsticas" e voltar a dormir antes da
dispositivo comea a operar a partir do oscilador primrio.
Cdigo do usurio tambm pode verificar se a fonte de relgio
principal
actualmente a fornecer o dispositivo de clock, verificando o
estado do bit USTOS (OSCCON <3>). Se o bit for definido,
o oscilador principal fornecer o relgio. Caso contrrio,
o bloco oscilador interno est fornecendo o relgio durante
despertar do modo de suspenso ou Reiniciar.
FIGURA 25-2: CALENDRIO DE TRANSIO PARA DOIS-SPEED START-UP (INTOSC TO HSPLL)
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3
INTOSC
Multiplexer
OSC1
TOST(1)
PLL Clock
Sada
CPU Clock
Perifrico
Relgio
Programa
Contador
PC PC + 2
USTOS bit Set
+ PC 4 PC + 6
TPLL(1)
1 2 n-1 n
Relgio
Transio
Despertar do evento de interrupo
Nota 1: TOST = 1024 tosc; TPLL = 2 ms (aproximadamente). Estes intervalos no esto desenhadas escala.
v 2009 Microchip Technology Inc. DS39632E pgina 305
PIC18F2455/2550/4455/4550
25,4 Fail-safe Monitor de Relgio
O Monitor de relgio prova de falhas (FSCM) permite a
microcontrolador para continuar a operao, no caso de um
falha oscilador externo mudando automaticamente o
relgio do dispositivo para o bloco oscilador interno. O FSCM
funo ativada, definindo a configurao FCMEN
bit.
Quando FSCM est habilitado, o oscilador INTRC executado em
todas as vezes, para monitorar os relgios para perifricos e
proporcionar um
relgio de backup no caso de falha do relgio. Relgio
controlo (como mostrado na Figura 25-3) realizada pela
a criao de um sinal de relgio de amostra, que representa a
INTRC fora
colocar dividido por 64. Isto permite tempo suficiente entre
Relgios de amostra FSCM para um clock perifrica
ocorrer. O relgio do dispositivo perifrico e a amostra
relgio so apresentados como entradas para o fecho do Monitor
Relgio
(CM). O CM est situado na borda de descida do dispositivo
fonte de relgio, mas limpou na borda de subida do
relgio de amostra.
Para usar uma velocidade de clock superior em wake-up, o INTOSC
ou fontes de relgio postscaler pode ser seleccionado para
proporcionar
uma maior velocidade de clock, definindo os bits IRCF2: IRCF0
imediatamente aps o Reset. Para wake-ups de sono, o
INTOSC ou postscaler fontes de relgio pode ser seleccionada
definindo IRCF2: IRCF0 antes de entrar em modo de suspenso.
O FSCM ir detectar falhas do primrio ou segunda
nicas fontes de clock ary. Se o bloco de oscilador interno
falha, no falha seria detectado, nem faria qualquer ao
ser possvel.
25.4.1 FSCM EO watchdog timer
Tanto o FSCM eo WDT so temporizados pela
Oscilador INTRC. Uma vez que o WDT opera com um
divisor e balco separado, impossibilitando o WDT tem
nenhum efeito sobre o funcionamento do oscilador, quando INTRC
o FSCM est habilitado.
Como j foi referido, a fonte do relgio ligada
INTOSC relgio quando uma falha do relgio detectada.
Dependendo da frequncia seleccionada pela
IRCF2: IRCF0 pedaos, isso pode significar uma mudana
substancial
na velocidade de execuo de cdigo. Se o WDT est habilitado
, com um pequeno valor de pr-escala, uma diminuio na
velocidade de relgio
permite que um time-out WDT a ocorrer e uma posterior
Reiniciar dispositivo. Por esta razo, prova de falhas do Monitor
Relgio
eventos tambm reiniciar o WDT e postscaler, permitindo-lhe
iniciar a contagem a partir de quando a velocidade de execuo foi
alterado
e diminuindo a probabilidade de um time-out errnea.
FIGURA 25-3: FSCM DIAGRAMA DE BLOCO
Relgio monitor
Trava (CM)
(Edge-triggered)
Perifrico
Relgio
S Q
INTRC
Fonte
(32 o )
64
488 Hz
(2.048 ms)
C Q
25.4.2 SAINDO operao segura
Relgio
Falha
Detectado
Falha do relgio testado para a borda de descida do
relgio de amostra. Se ocorrer um relgio de amostra de borda de
descida
enquanto CM ainda est definido, uma falha relgio foi detectado
(Figura 25-4). Isso faz com que o seguinte:
o FSCM gera um oscilador de interrupo por falha
definindo bit, OSCFIF (PIR2 <7>);
a fonte de relgio do dispositivo ligado ao interna
bloco oscilador (OSCCON no atualizado para mostrar
a fonte de clock atual - este o fail-safe
condio); e
o WDT zerado.
Durante a transio, a freqncia postscaler do
bloco oscilador interno pode no ser suficientemente estvel para
cronometrando aplicaes sensveis. Nestes casos, pode ser
desejvel para selecionar outra configurao de clock e entrar
um modo alternativo de gesto de energia. Isto pode ser feito para
tentar uma recuperao parcial ou executar um controle shut-
para baixo. Ver Seo 3.1.4 "vrios comandos do sono"
e Seo 25.3.1 "Consideraes especiais para
Usando duas velocidades Start-up " para mais detalhes.
A condio de fail-safe denunciado por qualquer um dispositivo
Redefinir ou inserindo um modo de gerenciamento de energia. Em
Redefinir, o controlador inicia o relgio fonte primria
especificada na configurao Register 1H (com qualquer
atrasos no arranque, que so necessrios para o modo de oscilador,
tal como ECT ou PLL temporizador). O INTOSC multiplexer
fornece o relgio do dispositivo at que a fonte de relgio principal
torna-se pronto (similar a uma Duas Velocidades Start-up). O
fonte de relgio ento transferido para o relgio principal
(Indicado pelo bit USTOS no registo OSCCON
tornando set). O Monitor de relgio prova de falhas, em seguida,
reinicia o relgio de controlo perifrico.
O relgio fonte primria pode nunca ficar pronto
durante o start-up. Neste caso, a operao temporizado pela
INTOSC multiplexer. O registo OSCCON permanecer
em seu estado de reset at que um modo de gerenciamento de
energia
entrou.
DS39632E pgina 306 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 25-4:
Amostra do Relgio
Dispositivo
Relgio
Sada
Sada CM
(Q)
OSCFIF
Falha
Detectado
Oscilador
Falha
FSCM Diagrama do timing
Teste CM
Nota:
Teste CM Teste CM
O relgio do dispositivo , normalmente, a uma frequncia muito mais elevada do que o relgio de amostra. As freqncias
relativas a este
exemplo, foram escolhidos para maior clareza.
25.4.3 INTERRUPTS FSCM EM
Modos de energia de gesto
25.4.4 OU POR ACORDAR DE SONO
Ao entrar em um modo de gerenciamento de energia, o relgio
multiplexador seleciona a fonte de clock selecionado pelo
OSCCON registo. Monitoramento relgio prova de falhas do
de gerenciamento de energia fonte de relgio recomea no
modo de potncia de gesto.
Se uma falha ocorre durante o oscilador poder de gesto
operao, os eventos subsequentes dependem sobre se
ou no a interrupo falha oscilador activado. Se
ativado (OSCFIF = 1), execuo de cdigo ser cronometrado
pelo multiplexador INTOSC. Uma transio automtica
de volta para a fonte do relgio no no ir ocorrer.
Se a interrupo for desativado, interrompe subseqentes enquanto
no modo de espera ir fazer com que o processador para iniciar a
execuo
instrues ao ser cronometrado pelo INTOSC
fonte.
O FSCM projetado para detectar a falha do oscilador em qualquer
ponto depois que o dispositivo saiu Power-on reset
Modo Sleep (POR) ou de baixa potncia. Quando o primrio
relgio do dispositivo ou CE ou INTRC, o monitoramento pode
comear imediatamente aps esses eventos.
Para os modos envolvendo um oscilador de cristal ou ressonador
(HS, HSPLL ou XT), a situao um pouco diferente.
Uma vez que o oscilador pode exigir um tempo de start-up con-
velmente maior do que o tempo do relgio de amostra FCSM, um
Falha do relgio falso pode ser detectado. Para evitar isso, o
bloco oscilador interno automaticamente configurado como
o relgio do dispositivo e funes at que o relgio principal
estvel (OST os temporizadores e PLL ter expirado). Este
idntico ao modo Start-up duas velocidades. Uma vez que o
relgio principal estvel, o INTRC retorna ao seu papel
a fonte FSCM.
Nota: A mesma lgica que impede falsa oscilao
interrompe falha tor sobre POR ou esteira de
O sono tambm vai evitar que a deteco do
fracasso de oscilador para iniciar em tudo seguinte
estes eventos. Isto pode ser evitado pela
monitorando o bit USTOS e usando um
temporizao rotina para determinar se o oscilador
est demorando muito para comear. Mesmo assim,
nenhuma
interrupo falha oscilador ser sinalizada.
Como observado na Seo 25.3.1 "Consideraes Especiais
para o uso de duas velocidades Start-up ", tambm possvel
selecione outra configurao de clock e digite um suplente
modo de potncia de gesto enquanto espera para o primrio
relgio para se tornar estvel. Quando o novo poder de gesto
modo selecionado, o relgio principal est desativado.
v 2009 Microchip Technology Inc. DS39632E pgina 307
PIC18F2455/2550/4455/4550
25,5 Verificao e programa
Cdigo de Proteo
Cada um dos cinco blocos tem trs pedaos de proteco de cdigo
a eles associados. Eles so:
cdigo Proteja bit (CPN)
Escreva-Protect bit (WRTn)
External Bloco Quadro Read bit (EBTRn)
A Figura 25-5 mostra a organizao de memria de programa
por 24 e 32 Kbyte dispositivos eo cdigo especfico
bit proteco associado a cada bloco. O real
localizaes dos bits esto resumidos na Tabela 25-3.
A estrutura global da proteco do cdigo na
Dispositivos flash PIC18 difere significativamente de outros
Dispositivos PIC .
A memria do programa do usurio dividido em cinco blocos.
Uma delas um bloco de arranque de 2 kbytes. O restante
da memria dividida em quatro blocos de binrio
limites.
FIGURA 25-5: CODE-PROTEGIDA memria de programa
Tamanho da memria / DEVICE
Proteo bloco de cdigo
Controlado por:
24 Kbytes
Bloco de
Inicializao
Bloco 0
32 Kbytes
Bloco de
Inicializao
Bloco 0
Endereo
Alcance
000000h
0007FFh
000800h
CEC, WRTB, EBTRB
CP0, WRT0, EBTR0
001FFFh
002000h
Bloco 1 Bloco 1
003FFFh
004000h
Bloco 2
Unimplemented
Leia '0 's
Bloco 2
005FFFh
006000h
Bloco 3
007FFFh
008000h
CP3, WRT3, EBTR3
CP2, WRT2, EBTR2
CP1, WRT1, EBTR1
Unimplemented
Leia '0 's
Unimplemented
Leia '0 's
(Espao de Memria Unimplemented)
1FFFFFh
TABELA 25-3:
300008h
300009h
30000Ah
30000Bh
30000Ch
30000Dh
RESUMO DE PROTEO cdigo registra
Bit 7
-
CPD
-
WRTD
-
-
Bit 6
-
CPB
-
WRTB
-
EBTRB
Bit 5
-
-
-
WRTC
-
-
Bit 4
-
-
-
-
-
-
Bit 3
CP3(1)
-
WRT3(1)
-
EBTR3
-
(1)
Nome do arquivo
CONFIG5L
CONFIG5H
CONFIG6L
CONFIG6H
CONFIG7L
CONFIG7H
Bit 2
CP2
-
WRT2
-
EBTR2
-
O bit 1
CP1
-
WRT1
-
EBTR1
-
Bit 0
CP0
-
WRT0
-
EBTR0
-
Legenda: Clulas sombreadas so no implementado.
Nota 1: Unimplemented em PIC18FX455 dispositivos; manter este conjunto de bits.
DS39632E pgina 308 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
25.5.1 Memria de programa
Proteo de cdigo
A memria de programa pode ser lido ou escrito da
qualquer local, utilizando a tabela de leitura e gravao de mesa
instrues. O ID do dispositivo podem ser lidos com a tabela
l. Os registros de configurao podem ser lidos e
escrita com a leitura de mesa e instrues de gravao de mesa.
No modo de execuo normal, os bits CPX no tm direto
efeito. CPX pedaos inibir externo l e escreve. A
bloco de memria do utilizador pode ser protegido de mesa
escreve se o bit de configurao WRTx '0 '. O EBTRx
tabela de controle pedaos l. Para um bloco de memria do
utilizador
com o bit EBTRx definido para '0 ', uma mesa de leitura de instruo
que executado a partir do bloco que est autorizado a ler.
Uma instruo de leitura da tabela que executado a partir de uma
localizao
fora desse bloco no tem permisso para ler e vontade
em resultado da leitura '0 's. Figuras 25-6 por 25-8
ilustrar escrever a tabela e proteo ler a tabela.
Nota: Bits de proteo de cdigo s podem ser gravados
um '0 'a partir de um '1' do Estado. No possvel
escrever um '1 'para um pouco no '0' Estado. Cdigo
bits de proteo s definido para '1 'por uma
completa
Erase Chip ou bloquear a funo Erase. O
Bloquear Apagar funes Erase e Chip full
s pode ser iniciada atravs de operao ou ICSP
um programador externo.
FIGURA 25-6: TABLE WRITE (WRTx) anulado
Memria de Programa
000000h
0007FFh
000800h
WRTB, EBTRB = 11
Configuraes Bit de configurao Registre Valores
TBLPTR = 0008FFh
PC = 001FFEh TBLWT *
001FFFh
002000h
WRT0, EBTR0 = 01
WRT1, EBTR1 = 11
003FFFh
004000h
PC = 005FFEh TBLWT *
005FFFh
006000h
WRT3, EBTR3 = 11
007FFFh
Resultados: Todos mesa escreve desativado para Blockn sempre WRTx = 0.
WRT2, EBTR2 = 11
v 2009 Microchip Technology Inc. 309 DS39632E pginas
PIC18F2455/2550/4455/4550
FIGURA 25-7: EXTERNO bloco de tabela READ (EBTRx) anulado
Memria de Programa
000000h
0007FFh
000800h
TBLPTR = 0008FFh
001FFFh
002000h
WRT1, EBTR1 = 11
PC = 003FFEh
TBLRD *
003FFFh
004000h
WRT2, EBTR2 = 11
005FFFh
006000h
WRT3, EBTR3 = 11
007FFFh
Resultados: Todos mesa l a partir de blocos externos para Blockn so desativados quando EBTRx = 0.
Tablat registo retorna um valor de '0 '.
WRTB, EBTRB = 11
Configuraes Bit de configurao Registre Valores
WRT0, EBTR0 = 10
FIGURA 25-8: EXTERNO bloco de tabela READ (EBTRx) permitiu
Memria de Programa
000000h
Configuraes Bit de configurao
WRTB, EBTRB = 11
Registre Valores
TBLPTR = 0008FFh
PC = 001FFEh
TBLRD *
0007FFh
000800h
WRT0, EBTR0 = 10
001FFFh
002000h
WRT1, EBTR1 = 11
003FFFh
004000h
WRT2, EBTR2 = 11
005FFFh
006000h
WRT3, EBTR3 = 11
007FFFh
Resultados: Tabela l permitido dentro Blockn, mesmo quando EBTRBx = 0.
Tablat registo devolve o valor dos dados no TBLPTR localizao.
DS39632E pgina 310 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
25.5.2 DATA EEPROM
Proteo de cdigo
Os dados inteira EEPROM protegido contra externa
l e escreve por dois bits: CPD e WRTD. CPD
inibe externo l e grava dados de EEPROM.
WRTD inibe interna e externa grava dados
EEPROM. A CPU pode continuar a ler e escrever
dados EEPROM, independentemente das configuraes de bits de
proteo.
Para utilizar a funo do micro-depurador No circuito
controlador, o projeto deve implementar srie In-Circuit
Programao conexes MCLR/VPP/RE3, VDD,
VSS, RB7 e RB6. Isto vai fazer a interface com o No circuito
Mdulo depurador disponvel a partir de Microchip ou um dos
o terceiro empresas de ferramentas de desenvolvimento de
terceiros.
25,9 Caractersticas especiais ICPORT
(44-Pin nico pacote TQFP)
25.5.3 CONFIGURAO DE REGISTRO
PROTEO
Os registros de configurao podem ser protegido contra gravao.
O bit WRTC controla proteco da Configurao
registra. No modo de execuo normal, o bit WRTC
apenas legvel. WRTC s pode ser gravado via ICSP
operao ou um programador externo.
Em circunstncias especficas, o No Connect (NC)
pinos de dispositivos em pacotes de 44 pinos TQFP pode fornecer
funcionalidade adicional. Estas funcionalidades so controladas
por bits de configurao do dispositivo e esto disponveis apenas
em
este tipo de embalagem e contagem de pinos.
25.9.1 DEDICADO CID / ICSP PORT
25.6 Locais ID
Oito locais de memria (200000h-200007h) so
designados como locais de identidade, onde o usurio pode
armazenar
verificao ou outros nmeros de identificao de cdigo. Estes
locais podem ser lidos e escritos durante o funcionamento normal
execuo atravs da TBLRD e TBLWT instrues
ou durante o programa / verificar. Os locais de ID pode ser lido
quando o dispositivo um cdigo-protegida.
Os dispositivos TQFP 44 pinos podem usar NC pinos para fornecer
uma porta alternativa para depurao In-Circuit (CID) e
In-Circuit Serial Programming (ICSP). Estes pinos so
conhecidos coletivamente como o ICSP / ICD porta dedicada,
uma vez que no so partilhadas com qualquer outra funo do
dispositivo.
Quando implementado, o porta dedicada ativa trs
NC pinos para fornecer uma redefinio do dispositivo alternativo,
dados e
portos de relgio. Nenhum destes portos sobrepem com a norma
I / O pins, fazendo com que os pinos de I / O disponveis para o
usurio do
aplicao.
O ICSP / ICD porta dedicada est habilitado, definindo o
ICPRT bit de configurao. A porta funciona da mesma
maneira como a porta ICSP / ICD legado RB6/RB7.
Tabela 25-5 identifica os pinos funcionalmente equivalentes para
ICSP e fins CID.
25,7 In-Circuit Serial Programming
PIC18F2455/2550/4455/4550 microcontroladores pode ser
serialmente programado enquanto no circuito de aplicao final.
Isto simplesmente feito com duas linhas de relgio e de dados
e trs outras linhas para energia, terra e
tenso de programao. Isso permite aos clientes a manu-
facture placas com dispositivos no programadas e depois
programar o microcontrolador, pouco antes de enviar o
produto. Isso tambm permite que o firmware mais recente ou um
custom firmware a ser programado.
TABELA 25-5: PINS equivalente para
LEGACY e dedicado
CID / ICSP PORTOS
Dedicado
Porto
Pin
Tipo
P
Funo Pino
Nome do pino
25.8 Debugger em circuito
Quando o bit de configurao de depurao est programado para
um '0 ', a funcionalidade In-Circuit Debugger est habilitado.
Esta funo permite que as funes de depurao simples quando
usado com MPLAB IDE. Quando o microcontrolador
esse recurso ativado, alguns recursos no esto disponveis
para uso geral. Tabela 25-4 mostra que os recursos so
necessria pelo depurador de fundo.
Legado
Porto
MCLR / VPP /
RE3
RB6/KBI2 /
PGC
RB7/KBI3 /
PGD
Legenda:
NC / ICRST /
ICVPP
NC / ICCK /
ICPGC
NC / ICDT /
ICPGD
Redefinio do dispositivo e
Programao
Permitir
Relgio Serial
Dados Serial
Eu
I / O
TABELA 25-4:
I / O pins:
Pilha:
DEBUGGER RECURSOS
RB6, RB7
2 nveis
512 bytes
10 bytes
I = Input, O = sada, P = Potncia
Memria do Programa:
Memria de Dados:
v 2009 Microchip Technology Inc. DS39632E pgina 311
PIC18F2455/2550/4455/4550
Mesmo quando a porta dedicada estiver ativado, o ICSP
funes continuam disponveis atravs da porta legado.
Quando VIHH visto no pino MCLR/VPP/RE3, o
estado do pino ICRST / ICVPP ignorado.
Nota 1: O bit Configurao s pode ser ICPRT
programado pelo ICSP padro
port (MCLR/RB6/RB7).
2: O bit de configurao devem ser ICPRT
mantida clara para todos os 28 pinos e 40 pinos
dispositivos, caso contrrio, a operao inesperada
pode ocorrer.
Nota 1: Programao de alta tenso sempre
disponvel, independentemente do estado do
LVP bits, aplicando VIHH para o pino MCLR.
2: Enquanto na programao ICSP Baixa Tenso
modo, o pino RB5 j no pode ser usada
como objetivo I / O pin geral e deve
ser realizada baixa durante a operao normal.
3: Ao usar ICSP Low-Voltage Program-
ming (LVP) e pull-ups em PORTB
esto habilitados, bit 5 do registo TRISB
devem ser apuradas para desativar o pull-up em
RB5 e assegurar o bom funcionamento do
o dispositivo.
4: Se o dispositivo Master Clear desativado,
verificar que uma das seguintes opes feito para
garantir a entrada correta para o modo ICSP:
a) desativar Programao de Baixa Tenso
(CONFIG4L <2> = 0); ou
b) a certeza de que RB5/KBI1/PGM
mantida baixa durante a entrada em ICSP.
Se o modo de programao ICSP Single-alimentao no ser
utilizado, o bit LVP podem ser limpas. RB5/KBI1/PGM ento
torna-se disponvel como o pino de I / O digital, RB5. O LVP
bit pode ser definido ou limpo somente quando usando o padro
programao de alta tenso (VIHH aplicada ao
MCLR/VPP/RE3 pinos). Uma vez LVP foi desativado,
apenas o padro de programao de alta voltagem est
disponvel e deve ser usada para programar o dispositivo.
Memria que no cdigo protegido pode ser apagado usando
ou um Erase Block, ou linha apagada por linha, ento escrito
em qualquer VDD especificado. Se a memria de cdigo a ser
protegida
apagados, necessrio um Erase Block. Se um bloco A para
Erase
ser realizada pelo uso de programao de baixa tenso,
o dispositivo deve ser alimentado com VDD de 4.5V a 5.5V.
25.9.2 EMULAO 28-PIN
Dispositivos em pacotes de 44-pin TQFP tambm tm a capacidade
para mudar sua configurao sob controle externo para
fins de depurao. Isto permite que o dispositivo se comporte
como se fosse um aparelho de 28 pinos.
Este modo de configurao de 28 pinos controlado atravs de um
pin nico, NC / ICPORTS. Conectando este pino para VSS
fora o dispositivo para funcionar como um dispositivo de 28 pinos.
Caractersticas normalmente associadas com a 40/44-pin
dispositivos so desativados juntamente com o seu correspondente
registradores de controle e bits. Isto inclui PORTD e
PORTE, a SPP ea funcionalidade aprimorada PWM
de CCP1. Por outro lado, ligando o pino de VDD
fora o dispositivo a funcionar em sua configurao padro.
A opo de configurao est disponvel apenas quando o back-
depurao cho eo CID / ICSP porta dedicada
ambos esto habilitados (DEBUG bit configurao claro
e ICPRT bit de configurao est definido). Quando desativada,
NC / ICPORTS uma pin No Connect.
25.10 Programao ICSP Single-alimentao
O bit de configurao permite LVP ICSP Single-alimentao
Programao (anteriormente conhecido como ICSP Baixa Tenso
Programao ou LVP). Quando nico-Supply Program-
ming est habilitado, o microcontrolador pode ser
programado sem necessidade de alta tenso sendo
aplicada ao pino MCLR/VPP/RE3, mas o
RB5/KBI1/PGM pino ento dedicada ao controlo
Entrada e modo de programao no est disponvel como um
general
propsito pino I / O.
Durante a programao usando Single-alimentao Program-
ming, VDD aplicada ao pino como em MCLR/VPP/RE3
modo de execuo normal. Para entrar no modo de programao,
VDD aplicada ao pino de PGM.
DS39632E pgina 312 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
26,0 Instruction Set RESUMO
PIC18F2455/2550/4455/4550 dispositivos incorporam a
conjunto padro de 75 PIC18 instrues do ncleo, bem como
um vasto conjunto de oito novas instrues para o
optimizao do cdigo que recursivo ou que utiliza um
pilha de software. O conjunto estendida discutido mais adiante
nesta seo.
O literal instrues pode usar alguns dos seguintes
operandos:
Um valor literal para ser carregado em um arquivo de registro
(Especificado pelo 'k')
O FSR desejado registrar para carregar o valor literal
em (especificado pelo 'f')
No operando necessrio
(Especificado pelo '-')
O controlar instrues pode usar alguns dos seguintes
operandos:
Um endereo de memria de programa (especificado por 'n')
O modo de o CHAMADA ou RETORNO instrues
(Especificado pelo 's')
O modo de leitura de mesa e mesa de escrita
instrues (especificado por 'm')
No operando necessrio
(Especificado pelo '-')
Todas as instrues so uma nica palavra, exceto para quatro
instrues double-word. Estas instrues foram
fez double-palavra para conter as informaes necessrias
em 32 bits. Na segunda palavra, os quatro MSBS so '1 's. Se
Nesta segunda palavra executada como uma instruo (por
si), ele ir executar como um NOP.
Todas as instrues de uma nica palavra so executados em um
nico
ciclo de instruo, a menos que um teste de condio verdadeira
ou o
contador de programa for alterado como resultado da ins-
o. Nestes casos, a execuo de instrues necessrios dois
ciclos, com o ciclo de instruo adicional (s) executado
como NOP.
As instrues de palavra dupla de executar em dois instruo
ciclos.
Um ciclo de instrues consiste em quatro perodos de oscilador.
Assim, para uma frequncia do oscilador de 4 MHz, a normalidade
tempo de execuo da instruo um o . Se um teste condicional

verdadeira, ou o contador de programa alterado, como resultado
de
uma instruo, o tempo de execuo de instrues 2 o .
Instrues de desvio de duas palavras (se for verdade) levaria 3 o .
A Figura 26-1 mostra os formatos gerais que a ins-
es pode ter. Todos os exemplos usam 'NNL' a conveno
para representar um nmero hexadecimal.
O resumo do conjunto de instrues, mostrado na Tabela 26-2,
relaciona
as instrues padro reconhecidos pela Microchip
MPASMTM Assembler.
Seo 26.1.1 "Set Instruo Normativa" fornece
Uma descrio de cada instruo.
26.1 Set Instruo Normativa
O conjunto de instrues padro PIC18 acrescenta muitos
melhorias para a instruo anterior PIC MCU
conjuntos, mantendo ao mesmo tempo fcil migrao destas
Instruo PIC MCU define. A maioria das instrues so uma
nica palavra de memria de programa (16 bits), mas h
quatro instrues que exigem duas memria de programa
localizaes.
Cada instruo nica palavra uma palavra de 16 bits dividido
em um cdigo de operao, que especifica o tipo de instruo e
um ou mais operandos, que especificam ainda mais o
operao da instruo.
O conjunto de instrues altamente ortogonal e agrupado
em quatro categorias bsicas:




Byte-oriented operaes
Bit orientada operaes
Literal operaes
Controle operaes
O PIC18 resumo de instruo set na Tabela 26-2 listas
byte-oriented, bit-oriented, literal e controlar
operaes. Tabela 26-1 mostra o campo opcode
descries.
A maioria byte-oriented instrues tm trs operandos:
1.
2.
3.
O registro de arquivo (especificado pelo 'f')
O destino do resultado (especificado por 'd')
A memria acessada (especificado pelo 'a')
O arquivo de registro designador 'f' especifica qual arquivo
registo para ser usado pela instruo. O destino
designador 'd' especifica onde o resultado da opera-
o est a ser colocado. Se 'd' zero, o resultado colocado em
o WREG registar. Se 'd' um, o resultado colocado em
o arquivo de registro especificado na instruo.
Tudo pouco orientada instrues tm trs operandos:
1.
2.
3.
O registro de arquivo (especificado pelo 'f')
O bit no registo de arquivo (especificado pelo 'b')
A memria acessada (especificado pelo 'a')
O bit campo designador 'b' selecciona o nmero do bit
afetada pela operao, enquanto o arquivo de registro
designador 'f' representa o nmero de arquivo no qual
a broca est situado.
v 2009 Microchip Technology Inc. DS39632E pgina 313
PIC18F2455/2550/4455/4550
TABELA 26-1:
Campo
um
OPCODE Descries de Campos
Descrio
RAM pouco acesso
a = 0: Localizao RAM no Access RAM (BSR registo ignorado)
a = 1: Banco RAM especificado pela BSR registo
Endereo de bit dentro de um ficheiro de registo de 8 bits (0 a
7).
Bank Select Register. Usado para selecionar o banco de memria RAM
atual.
ALU bits de status: Carry, Digit Carry, Zero, Overflow, Negativo.
Destino select bit
d = 0: armazena o resultado em WREG
d = 1: armazena o resultado no arquivo de
registo f
Destino: ou o registo WREG ou a localizao do arquivo de registro especificado.
8-bit registrar o endereo do arquivo (00h a FFh) ou designador FSR 2 bits (0h s 3h).
12-bit endereo do arquivo de registro (000h para FFFh). Este o endereo de origem.
12-bit endereo do arquivo de registro (000h para FFFh). Este o endereo de destino.
Interrupo global Habilitar bit.
Literal campo, os dados constantes ou etiqueta (pode ser qualquer um de 8 bits, 12 bits ou um valor
de 20 bits).
Nome Label.
O modo de registo TBLPTR para a leitura de mesa e instrues de gravao de mesa.
Apenas utilizado com leitura de mesa e instrues escrever a tabela:
Nenhuma mudana para registar (como TBLPTR com mesa l e escreve)
Registo ps-incremento (como TBLPTR com mesa l e escreve)
Registo de Ps-decremento (como TBLPTR com mesa l e escreve)
Registo pr-incremento (como TBLPTR com mesa l e escreve)
O endereo relativo (nmero 2 do complemento) para instrues de desvio relativo ou o endereo direto para
Chamar / Filial e instrues de devoluo.
Contador de programa.
Programa Contra Byte Low.
Programa Contador de Alta Byte.
Programa Contador de Alta Trava Byte.
Programa Contra superior Trava Byte.
Bit Power-Down.
Produto do Multiply alta Byte.
Produto do Multiply Low Byte.
Rpido Call / Retornar o modo de seleo bit
s = 0: no atualizar para / a partir de registros de sombra
s = 1: certos registros carregados em / de registros de sombra (modo rpido)
Pointer Tabela 21-bit (aponta para um local de memria de programa).
Trinco Tabela 8 bits.
Bocado de tempo.
Top-of-Stack.
No utilizados ou inalterado.
Temporizador Watchdog.
Registo de trabalho (acumulador).
No me importo ('0 'ou '1'). A montadora ir gerar cdigo com x = 0. a forma recomendada de uso para
compatibilidade com todas as ferramentas de software Microchip.
Valor de deslocamento de 7 bits para endereamento indireto de arquivos de
registro (fonte).
Valor de deslocamento de 7 bits para endereamento indireto de arquivos de registro
(destino).
bbb
BSR
C, CC, Z, OV, N
d
dest
f
fs
fd
GIE
k
etiqueta
mm
*
* +
* -
+ *
n
PC
PCL
PCH
PCLATH
PCLATU
PD
PRODH
Prdl
s
TBLPTR
Tablat
TO
TOS
u
WDT
WREG
x
zs
zd
{ }
[Texto]
(Texto)
[Expr] <n>

<>

itlico
Argumento opcional.
Indica um endereo indexado.
Os contedos texto.
Especifica bit ndo registo indicado pelo ponteiro expr.
Atribudo.
Registre campo de bits.
No conjunto de.
User-defined prazo (fonte Courier New).
DS39632E pgina 314 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 26-1: FORMATO GERAL DE INSTRUES
Byte-oriented arquivar registar operaes
15 10
OPCODE
9
d
8 7
um f (FILE #)
0
ADDWF MYREG, W, B
Exemplo Instruo
d = 0para o destino resultado a WREG registo
d = 1para o destino resultado seja arquivo de registro (f)
a = 0Banco para forar Acesso
a = 1para BSR para selecionar banco
f = arquivo de 8 bits endereo de registro
Byte para Byte operaes de movimentao (2
palavras)
15
15
1111
12 11
f (Source File #)
0
f (destino do arquivo #)
12 11
0
MOVFF MYREG1, MYREG2 OPCODE
f = arquivo de 12 bits endereo de registro
Bit orientada arquivar registar operaes
15 12 11 9 8 7
f (FILE #)
0
BSF MYREG, bit, B OPCODE b (BIT #) um
b = posio 3 bits do bit em um arquivo de registro (f)
a = 0Banco para forar Acesso
a = 1para BSR para selecionar banco
f = arquivo de 8 bits endereo de registro
Literal operaes
15
OPCODE
k = valor imediato de 8 bits
Controle operaes
Chamada, GOTO e Filial operaes
15
OPCODE
15
1111
12 11
n <19:08> (literal)
8 7
n <7:00> (literal)
0
0
GOTO Rtulo
8 7
k (literal)
0
MOVLW 7Fh
n = 20-bit valor imediato
15
OPCODE
15
1111
S = pouco rpida
15
OPCODE
15
OPCODE
8 7
n <7:00> (literal)
11 10
n <10:00> (literal)
0
BC MYFUNC
0
BRA MYFUNC
12 11
n <19:08> (literal)
8 7
S n <7:00> (literal)
0
0
CHAMADA MYFUNC
v 2009 Microchip Technology Inc. DS39632E pgina 315
PIC18F2455/2550/4455/4550
TABELA 26-2:
Mnemonic,
Operandos
PIC18FXXXX conjunto de instrues
Descrio Ciclos
16-Bit Instruction Word
MSb LSB
Estado
Afetado
Notas
OPERAES byte-oriented
ADDWF
ADDWFC
ANDWF
CLRF
COMF
CPFSEQ
CPFSGT
CPFSLT
DECF
DECFSZ
DCFSNZ
INCF
INCFSZ
INFSNZ
IORWF
MOVF
MOVFF
MOVWF
MULWF
NEGF
RLCF
RLNCF
RRCF
RRNCF
SETF
SUBFWB
SUBWF
SUBWFB
Swapf
TSTFSZ
XORWF
Nota 1:
f, d, numa
f, d, numa
f, d, numa
f, uma
f, d, numa
f, uma
f, uma
f, uma
f, d, numa
f, d, numa
f, d, numa
f, d, numa
f, d, numa
f, d, numa
f, d, numa
f, d, numa
fs, fd
f, uma
f, uma
f, uma
f, d, numa
f, d, numa
f, d, numa
f, d, numa
f, uma
f, d, numa
f, d, numa
f, d, numa
f, d, numa
f, uma
f, d, numa
Adicionar WREG ef
Adicionar WREG e Siga pouco para f
E WREG com f
Limpar f
Complemente f
Compare f com WREG, Ir =
Compare f com WREG, Ir>
Compare f com WREG, Skip <
Decremento f
Decrementa f, Skip se 0
Decrementa f, Skip se no for 0
Incremento f
Incremento f, Skip se 0
Incremento f, Skip se no for 0
Inclusive OR WREG com f
Mova f
Mova fs (fonte) para primeira palavra
fd (destino) 2 palavra
Mova WREG para f
Multiplique WREG com f
Negue f
Rodar f para a esquerda atravs Carry
Rodar f Esquerda (Sem Carry)
Rodar f Direito atravs Carry
Rodar f Direito (Sem Carry)
Defina f
Subtrair f de WREG com
Pedir emprestado
Subtrair WREG de f
Subtrair WREG de f com
Pedir emprestado
Troque Nibbles em f
Teste F, Skip se 0
Exclusive OR WREG com f
1
1
1
1
1
1 (2 ou 3)
1 (2 ou 3)
1 (2 ou 3)
1
1 (2 ou 3)
1 (2 ou 3)
1
1 (2 ou 3)
1 (2 ou 3)
1
1
2
1
1
1
1
1
1
1
1
1
1
1
0010
0010
0001
0110
0001
0110
0110
0110
0000
0010
0100
0010
0011
0100
0001
0101
1100
1111
0110
0000
0110
0011
0100
0011
0100
0110
0101
0101
0101
01DA
00da
01DA
101a
11da
001a
010a
000a
01DA
11da
11da
10DA
11da
10DA
00da
00da
ffff
ffff
111a
001a
110a
01DA
01DA
00da
00da
100a
01DA
11da
10DA
10DA
011a
10DA
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
ffff
C, CC, Z, OV, N
C, CC, Z, OV, N
Z, N
Z
Z, N
Nenhum
Nenhum
Nenhum
C, CC, Z, OV, N
Nenhum
Nenhum
C, CC, Z, OV, N
Nenhum
Nenhum
Z, N
Z, N
Nenhum
Nenhum
Nenhum
C, CC, Z, OV, N
C, Z, N
Z, N
C, Z, N
Z, N
Nenhum
C, CC, Z, OV, 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
ffff C, CC, Z, OV, N
ffff C, CC, Z, OV, N
ffff Nenhum
ffff Nenhum
ffff Z, N
1, 2
00111
1 (2 ou 3) 0110
10001
4
1, 2
2:
3:
4:
Quando um registo PORT modificado como uma funo do prprio (por exemplo, MOVF PORTB, 1, 0), o valor utilizado ser
aquele
valor presente sobre os prprios pinos. Por exemplo, se o engate de dados '1 'para um pino configurado como uma entrada e
impulsionado baixo por um dispositivo externo, os dados sero escritos de volta com um '0 '.
Se esta instruo for executada no registo TMR0 (e, se for o caso, 'd' = 1), o divisor ser apagada se
atribudo.
Se o contador de programa (PC) modificado ou um teste de condio verdadeira, a instruo requer dois ciclos. O
segundo ciclo executado como um NOP.
Algumas instrues so instrues de duas palavras. A segunda palavra destas instrues ser executado como um NOP
a menos que a primeira palavra da instruo recupera a informao incorporada nestes 16 bits. Isto assegura que todos
locais de memria de programa tm uma instruo vlida.
DS39632E pgina 316 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 26-2:
Mnemonic,
Operandos
PIC18FXXXX conjunto de instrues (continuao)
Descrio Ciclos
16-Bit Instruction Word
MSb LSB
Estado
Afetado
Notas
OPERAES bit-oriented
BCF
BSF
BTFSC
BTFSS
BTG
BC
BN
BNC
BNN
BNOV
BNZ
BOV
BRA
BZ
CHAMADA
CLRWDT
DAW
GOTO
NOP
NOP
POP
IMPULSO
RCALL
REAJUSTE
RETFIE
RETLW
RETORNO
DORMIR
Nota 1:
f, b, a
f, b, a
f, b, a
f, b, a
f, d, numa
n
n
n
n
n
n
n
n
n
n, s
-
-
n
-
-
-
-
n
s
k
s
-
Bit Limpar f
Bit Set f
Bit teste F, Skip se Limpar
Bit teste F, Skip se Set
Bit f Alternar
Filial se Carry
Filial se negativa
Ramo, se no levar
Ramo, se no negativo
Ramo se no Overflow
Ramo se no for zero
Filial se Overflow
Ramificar Incondicionalmente
Filial se Zero
Chame Subroutine 1 palavra
2 palavra
Limpar Watchdog Timer
Decimal Ajuste WREG
Ir para endereo primeira palavra
2 palavra
Sem Operao
Sem Operao
Pop Top de Retorno Stack (TOS)
Empurre Top de Retorno Stack (TOS)
Chamada Relativa
Software Redefinio do dispositivo
Retorno de interrupo Ativar
Retorne com Literal em WREG
Retorno de Subrotina
Entrar em modo de espera
1
1
1 (2 ou 3)
1 (2 ou 3)
1
1 (2)
1 (2)
1 (2)
1 (2)
1 (2)
1 (2)
1 (2)
2
1 (2)
2
1
1
2
1
1
1
1
2
1
2
2
2
1
1001
1000
1011
1010
0111
1110
1110
1110
1110
1110
1110
1110
1101
1110
1110
1111
0000
0000
1110
1111
0000
1111
0000
0000
1101
0000
0000
0000
0000
0000
bbba
bbba
bbba
bbba
bbba
0010
0110
0011
0111
0101
0001
0100
0nnn
0000
110s
kkkk
0000
0000
1111
kkkk
0000
xxxx
0000
0000
1nnn
0000
0000
1100
0000
0000
ffff
ffff
ffff
ffff
ffff
nnnn
nnnn
nnnn
nnnn
nnnn
nnnn
nnnn
nnnn
nnnn
kkkk
kkkk
0000
0000
kkkk
kkkk
0000
xxxx
0000
0000
nnnn
1111
0001
kkkk
0001
0000
ffff
ffff
ffff
ffff
ffff
nnnn
nnnn
nnnn
nnnn
nnnn
nnnn
nnnn
nnnn
nnnn
kkkk
kkkk
0100
0111
kkkk
kkkk
0000
xxxx
0110
0101
nnnn
1111
000s
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
TO, PD
C
Nenhum
1, 2
1, 2
3, 4
3, 4
1, 2
Operaes de controle
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Tudo
GIE / GIEH,
PEIE / giel
kkkk Nenhum
001S Nenhum
0011 TO, PD
4
2:
3:
4:
Quando um registo PORT modificado como uma funo do prprio (por exemplo, MOVF PORTB, 1, 0), o valor utilizado ser
aquele
valor presente sobre os prprios pinos. Por exemplo, se o engate de dados '1 'para um pino configurado como uma entrada e
impulsionado baixo por um dispositivo externo, os dados sero escritos de volta com um '0 '.
Se esta instruo for executada no registo TMR0 (e, se for o caso, 'd' = 1), o divisor ser apagada se
atribudo.
Se o contador de programa (PC) modificado ou um teste de condio verdadeira, a instruo requer dois ciclos. O
segundo ciclo executado como um NOP.
Algumas instrues so instrues de duas palavras. A segunda palavra destas instrues ser executado como um NOP
a menos que a primeira palavra da instruo recupera a informao incorporada nestes 16 bits. Isto assegura que todos
locais de memria de programa tm uma instruo vlida.
v 2009 Microchip Technology Inc. DS39632E pgina 317
PIC18F2455/2550/4455/4550
TABELA 26-2:
Mnemonic,
Operandos
OPERAES LITERAIS
ADDLW
ANDLW
IORLW
LFSR
MOVLB
MOVLW
MULLW
RETLW
SUBLW
XORLW
TBLRD *
TBLRD * +
TBLRD * -
TBLRD + *
TBLWT *
TBLWT * +
TBLWT * -
TBLWT + *
Nota 1:
k
k
k
F, K
k
k
k
k
k
k
Adicionar Literal e WREG
E Literal com WREG
Inclusive OR Literal com WREG
Mova Literal (12-bit) 2 palavra
a FSR (f) 1 palavra
Mova Literal a BSR <3:00>
Mova Literal para WREG
Multiplique Literal com WREG
Retorne com Literal em WREG
Subtrair WREG de Literal
Exclusive OR Literal com WREG
1
1
1
2
1
1
1
2
1
1
0000
0000
0000
1110
1111
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
0000
1111
1011
1001
1110
0000
0001
1110
1101
1100
1000
1010
0000
0000
0000
0000
0000
0000
0000
0000
kkkk
kkkk
kkkk
00ff
kkkk
0000
kkkk
kkkk
kkkk
kkkk
kkkk
0000
0000
0000
0000
0000
0000
0000
0000
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
kkkk
1000
1001
1010
1011
1100
1101
1110
1111
C, CC, Z, OV, N
Z, N
Z, N
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
C, CC, Z, OV, N
Z, N
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
PIC18FXXXX conjunto de instrues (continuao)
Descrio Ciclos
16-Bit Instruction Word
MSb LSB
Estado
Afetado
Notas
Os dados da memria PROGRAMA DE OPERAES DE MEMRIA
Tabela Read2
Tabela Leia com Ps-Incremento
Tabela Leia com Ps-decremento
Tabela Leia com Pr-Incremento
Tabela Write2
Escrever mesa com Ps-Incremento
Escrever mesa com Ps-decremento
Escrever mesa com pr-incremento
2:
3:
4:
Quando um registo PORT modificado como uma funo do prprio (por exemplo, MOVF PORTB, 1, 0), o valor utilizado ser
aquele
valor presente sobre os prprios pinos. Por exemplo, se o engate de dados '1 'para um pino configurado como uma entrada e
impulsionado baixo por um dispositivo externo, os dados sero escritos de volta com um '0 '.
Se esta instruo for executada no registo TMR0 (e, se for o caso, 'd' = 1), o divisor ser apagada se
atribudo.
Se o contador de programa (PC) modificado ou um teste de condio verdadeira, a instruo requer dois ciclos. O
segundo ciclo executado como um NOP.
Algumas instrues so instrues de duas palavras. A segunda palavra destas instrues ser executado como um NOP
a menos que a primeira palavra da instruo recupera a informao incorporada nestes 16 bits. Isto assegura que todos
locais de memria de programa tm uma instruo vlida.
DS39632E pgina 318 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
26.1.1
ADDLW
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
PADRO DE INSTRUO SET
ADD Literal para W
ADDLW
0o ko 255
(W) + k W
N, OV, C, CC, Z
0000 1111 kkkk kkkk
Os contedos de W so adicionados
8 bits literal "k" e o resultado colocado
W.
1
1
Q1 Q2
Ler
literal 'k'
Q3
Processo
Dados
Q4
Escreva-W
Operao:
Estado afetados:
Encoding:
Descrio:
k
ADDWF
Sintaxe:
Operandos:
ADD W para f
ADDWF
0o fo 255
d [0,1]
um [0,1]
(W) + (f) dest
N, OV, C, CC, Z
0010 01DA ffff ffff
Adicionar W para registrar 'f'. Se 'd' '0 ', o
resultado armazenado em W. Se 'd' '1 ', o
resultado armazenado de volta em registo 'f'
(Padro).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1
Decodificar
Q2
Ler
registo 'f'
ADDWF
17h
0C2h
0D9h
0C2h
Q3
Processo
Dados
REG, 0, 0
Q4
Escreva para
destino
f {, {d, um}}
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
Exemplo: ADDLW 15h
Antes de Instruo
W = 10h
Depois de Instruo
W = 25h Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
W =
REG =
Depois de Instruo
W
REG
=
=
Antes de Instruo
Nota: Todas as instrues PIC18 pode levar um argumento opcional de etiquetas, que antecede a instruo mnemnica, para uso
em
simblico endereamento. Se uma etiqueta utilizado, o formato de instruo torna-se ento: {} argumento rtulo de
instrues (s).
v 2009 Microchip Technology Inc. DS39632E pgina 319
PIC18F2455/2550/4455/4550
ADDWFC
Sintaxe:
Operandos:
ADD W e Siga pouco para f
ADDWFC
0o fo 255
d [0,1]
um [0,1]
(W) + (F) + (C) dest
N, OV, C, CC, Z
0010 00da ffff ffff
Adicionar W, a bandeira Carry e memria de dados
location 'f'. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
colocado na posio de memria de dados 'f'.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1
Decodificar
Q2
Ler
registo 'f'
ADDWFC
1
02h
4Dh
0
02h
50h
Q3
Processo
Dados
REG, 0, 1
Q4
Escreva para
destino
f {, {d, um}}
ANDLW
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Leia literal
'K'
ANDLW
A3H
03h
Q3
Processo
Dados
05Fh
Q4
Escreva-W
E Literal com W
ANDLW
0o ko 255
(W). AND. k W
N, Z
0000 1011 kkkk kkkk
Os contedos de W so ANDed com o
8-bit literal 'k'. O resultado colocado em W.
1
1
k
Operao:
Estado afetados:
Encoding:
Descrio:
Exemplo:
Antes de Instruo
W =
Depois de Instruo
W =
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
Antes de Instruo
Carry = bit
REG =
W =
Depois de Instruo
Carry = bit
REG =
W =
DS39632E pgina 320 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
ANDWF
Sintaxe:
Operandos:
E W com f
ANDWF
0o fo 255
d [0,1]
um [0,1]
(W). AND. (F) dest
N, Z
0001 01DA ffff ffff
Os contedos de W so ANDed com
registo 'f'. Se 'd' '0 ', o resultado armazenado
em W. Se 'd' '1 ', o resultado armazenado de volta
em registo 'f' (default).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1
Decodificar
Q2
Ler
registo 'f'
ANDWF
17h
C2h
02h
C2h
Q3
Processo
Dados
REG, 0, 0
Q4
Escreva para
destino
f {, {d, um}}
BC
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Filial se Carry
BC n
-128 o no 127
se o bit Carry '1 ',
(PC) + 2 + 2n PC
Nenhum
1110 0010 nnnn nnnn
Se o bit Carry '1 ', ento o programa
se ramificar.
Do 2 complemento nmero '2 n '
adicionado ao PC. Desde que o computador ter
incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo , ento, um
de dois ciclos de instruo.
1
1 (2)
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Se Jump:
Q1
Decodificar
No
operao
Se nenhum salto:
Q1
Decodificar
Q2
Leia literal
'N'
No
operao
Q2
Leia literal
'N'
AQUI
=
=
=
=
=
Q3
Processo
Dados
No
operao
Q3
Processo
Dados
BC 5
Q4
Escreva para PC
No
operao
Q4
No
operao
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
Antes de Instruo
W =
REG =
Depois de Instruo
W =
REG =
Exemplo:
Antes de Instruo
PC
Depois de Instruo
Se Carry
PC
Se Carry
PC
endereo (AQUI)
1;
endereo (AQUI + 12)
0;
endereo (AQUI + 2)
v 2009 Microchip Technology Inc. DS39632E pgina 321
PIC18F2455/2550/4455/4550
BCF
Sintaxe:
Operandos:
Bit Limpar f
BCF f, {b, a}
BN
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
bbba ffff ffff
Descrio:
Filial se negativa
BN n
0o fo 255
0obo7
um [0,1]
0 f <b>
Nenhum
1001
Bit 'b' em registo 'f' est desmarcada.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1 Q2
Ler
registo 'f'
BCF
Q3
Processo
Dados
FLAG_REG,
C7h
47h
Q4
Escrever
registo 'f'
7, 0
-128 o no 127
se pouco negativo '1 ',
(PC) + 2 + 2n PC
Nenhum
1110 0110 nnnn nnnn
Se o bit Negativo '1 ', o
programa do ramo.
Do 2 complemento nmero '2 n '
adicionado ao PC. Desde que o computador ter
incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo , ento, um
de dois ciclos de instruo.
1
1 (2)
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Se Jump:
Q1
Decodificar
No
operao
Se nenhum salto:
Q1
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
Q2
Leia literal
'N'
No
operao
Q2
Leia literal
'N'
AQUI
=
=
=
=
=
Q3
Processo
Dados
No
operao
Q3
Processo
Dados
BN Saltar
Q4
Escreva para PC
No
operao
Q4
No
operao
Exemplo:
Decodificar
Antes de Instruo
FLAG_REG =
Depois de Instruo
FLAG_REG = Exemplo:
Antes de Instruo
PC
Depois de Instruo
Se negativo
PC
Se negativo
PC
endereo (AQUI)
1;
endereo (Ir)
0;
endereo (AQUI + 2)
DS39632E pgina 322 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
BNC
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Ramo, se no levar
BNC n
BNN
Sintaxe:
Operandos:
Operao:
Estado afetados:
0011 nnnn nnnn Encoding:
Descrio:
Ramo, se no negativo
BNN n
-128 o no 127
se o bit Carry '0 ',
(PC) + 2 + 2n PC
Nenhum
1110
Se o bit Carry '0 ', ento o programa
se ramificar.
Do 2 complemento nmero '2 n '
adicionado ao PC. Desde que o computador ter
incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo , ento, um
de dois ciclos de instruo.
1
1 (2)
-128 o no 127
se pouco negativo '0 ',
(PC) + 2 + 2n PC
Nenhum
1110 0111 nnnn nnnn
Se o bit negativo '0 ', o
programa do ramo.
Do 2 complemento nmero '2 n '
adicionado ao PC. Desde que o computador ter
incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo , ento, um
de dois ciclos de instruo.
1
1 (2)
Palavras:
Ciclos:
Q Activity Cycle:
Se Jump:
Q1
Decodificar
No
operao
Se nenhum salto:
Q1
Decodificar
Palavras:
Ciclos:
Q Activity Cycle:
Se Jump:
Q2 Q3
Processo
Dados
No
operao
Q3
Processo
Dados
BNC Saltar
Q4
Escreva para PC
No
operao
Q4
No
operao
Q1
Decodificar
No
operao
Se nenhum salto:
Q2 Q1
Decodificar
Q2
Leia literal
'N'
No
operao
Q2
Leia literal
'N'
AQUI
=
=
=
=
=
Q3
Processo
Dados
No
operao
Q3
Processo
Dados
BNN Saltar
Q4
Escreva para PC
No
operao
Q4
No
operao
Leia literal
'N'
No
operao
Leia literal
'N'
AQUI
=
=
=
=
=
Exemplo: Exemplo:
Antes de Instruo
PC
Depois de Instruo
Se Carry
PC
Se Carry
PC
endereo (AQUI)
0;
endereo (Ir)
1;
endereo (AQUI + 2)
Antes de Instruo
PC
Depois de Instruo
Se negativo
PC
Se negativo
PC
endereo (AQUI)
0;
endereo (Ir)
1;
endereo (AQUI + 2)
v 2009 Microchip Technology Inc. DS39632E pgina 323
PIC18F2455/2550/4455/4550
BNOV
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Ramo se no Overflow
BNOV n
BNZ
Sintaxe:
Operandos:
Operao:
Estado afetados:
0101 nnnn nnnn Encoding:
Descrio:
Ramo se no for zero
BNZ n
-128 o no 127
se pouco Overflow '0 ',
(PC) + 2 + 2n PC
Nenhum
1110
Se o bit de estouro '0 ', o
programa do ramo.
Do 2 complemento nmero '2 n '
adicionado ao PC. Desde que o computador ter
incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo , ento, um
de dois ciclos de instruo.
1
1 (2)
-128 o no 127
Se for zero bit '0 ',
(PC) + 2 + 2n PC
Nenhum
1110 0001 nnnn nnnn
Se o bit Zero '0 ', o programa
se ramificar.
Do 2 complemento nmero '2 n '
adicionado ao PC. Desde que o computador ter
incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo , ento, um
de dois ciclos de instruo.
1
1 (2)
Palavras:
Ciclos:
Q Activity Cycle:
Se Jump:
Q1
Decodificar
No
operao
Se nenhum salto:
Q1
Decodificar
Palavras:
Ciclos:
Q Activity Cycle:
Se Jump:
Q2 Q3
Processo
Dados
No
operao
Q3
Processo
Dados
BNOV Ir
endereo (AQUI)
0;
endereo (Ir)
1;
endereo (AQUI + 2)
Q4
Escreva para PC
No
operao
Q4
No
operao
Q1
Decodificar
No
operao
Se nenhum salto:
Q2 Q1
Decodificar
Q2
Leia literal
'N'
No
operao
Q2
Leia literal
'N'
AQUI
=
=
=
=
=
Q3
Processo
Dados
No
operao
Q3
Processo
Dados
BNZ Saltar
Q4
Escreva para PC
No
operao
Q4
No
operao
Leia literal
'N'
No
operao
Leia literal
'N'
AQUI
=
=
=
=
=
Exemplo: Exemplo:
Antes de Instruo
PC
Depois de Instruo
Se Overflow
PC
Se Overflow
PC
Antes de Instruo
PC
Depois de Instruo
Se Zero
PC
Se Zero
PC
endereo (AQUI)
0;
endereo (Ir)
1;
endereo (AQUI + 2)
DS39632E pgina 324 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
BRA
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Filial incondicional
BRA n
BSF
Sintaxe:
Operandos:
Bit Set f
BSF f, {b, a}
-1024 o no 1023
(PC) + 2 + 2n PC
Nenhum
1101 0nnn nnnn nnnn
Adicione o complemento de 2 nmero '2 n 'para
o PC. Desde que o computador ter
incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo uma
de dois ciclos de instruo.
1
2
Q1 Q2
Leia literal
'N'
No
operao
Q3
Processo
Dados
No
operao
Q4
Escreva para PC
No
operao
0o fo 255
0obo7
um [0,1]
1 f <b>
Nenhum
1000 bbba ffff ffff
Bit 'b' em registo 'f' est definida.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1 Q2
Ler
registo 'f'
BSF
=
=
Q3
Processo
Dados
Q4
Escrever
registo 'f'
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
No
operao
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo: AQUI
=
=
BRA Saltar
Antes de Instruo
PC
Depois de Instruo
PC
Decodificar
endereo (AQUI)
endereo (Ir)
Exemplo: FLAG_REG, 7, 1
0Ah
8Ah
Antes de Instruo
FLAG_REG
Depois de Instruo
FLAG_REG
v 2009 Microchip Technology Inc. DS39632E pgina 325
PIC18F2455/2550/4455/4550
BTFSC
Sintaxe:
Operandos:
Bit arquivo de teste, Skip se Limpar
BTFSC f, {b, a}
0o fo 255
0obo7
um [0,1]
pular if (f <b>) = 0
Nenhum
1011 bbba ffff ffff
Se o bit 'b' em registo 'f' '0 ', ento a prxima
instruo ignorada. Se o bit b '0 ', ento
a prxima instruo buscada durante o
execuo da instruo atual descartado
e um NOP executada em vez disso, fazer
isto um de dois ciclos de instruo.
Se 'a' '0 ', o Banco de acesso est selecionado. Se
'A' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera em
Indexados Literal offset Dirigindo
modo, sempre que f o 95 (5Fh).
Ver Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1 (2)
Nota: 3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q1
Decodificar
Se pular:
Q1
No
operao
Q1
No
operao
No
operao
Exemplo:
Q2
No
operao
Q2
No
operao
No
operao
AQUI
FALSE
VERDADEIRO
=
=
=
=
=
Q3
No
operao
Q3
No
operao
No
operao
BTFSC
:
:
Q4
No
operao
Q4
No
operao
No
operao
Q2
Ler
registo 'f'
Q3
Processo
Dados
Q4
No
operao
Se pular:
Q1
No
operao
Q1
No
operao
No
operao
Exemplo:
Q2
No
operao
Q2
No
operao
No
operao
AQUI
FALSE
VERDADEIRO
=
=
=
=
=
Q3
No
operao
Q3
No
operao
No
operao
BTFSS
:
:
Q4
No
operao
Q4
No
operao
No
operao
BTFSS
Sintaxe:
Operandos:
Bit arquivo de teste, Skip se Set
BTFSS f, {b, a}
0o fo 255
0ob <7
um [0,1]
pular if (f <b>) = 1
Nenhum
1010 bbba ffff ffff
Se o bit 'b' em registo 'f' '1 ', ento a prxima
instruo ignorada. Se o bit 'b' '1 ', ento
a prxima instruo buscada durante o
execuo da instruo atual descartado
e um NOP executada em vez disso, fazer
isto um de dois ciclos de instruo.
Se 'a' '0 ', o Banco de acesso est selecionado. Se
'A' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh).
Ver Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1 (2)
Nota:
3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q3
Processo
Dados
Q4
No
operao
Operao:
Estado afetados:
Encoding:
Descrio:
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Palavras:
Ciclos:
Q Activity Cycle: Q Activity Cycle:
Q1
Decodificar
Q2
Ler
registo 'f'
Se pular e seguido por instruo 2 palavras: Se pular e seguido por instruo 2 palavras:
BANDEIRA, 1, 0
BANDEIRA, 1, 0
Antes de Instruo
PC
Depois de Instruo
Se FLAG <1>
PC
Se FLAG <1>
PC
endereo (AQUI)
0;
endereo (VERDADEIRO)
1;
endereo (FALSO)
Antes de Instruo
PC
Depois de Instruo
Se FLAG <1>
PC
Se FLAG <1>
PC
endereo (AQUI)
0;
endereo (FALSO)
1;
endereo (VERDADEIRO)
DS39632E pgina 326 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
BTG
Sintaxe:
Operandos:
Bit f Alternar
BTG f, {b, a}
0o fo 255
0ob <7
um [0,1]
(F <b>) f <b>
Nenhum
0111 bbba ffff ffff
Bit 'b' na posio de memria de dados 'f'
invertido.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1
Decodificar
Q2
Ler
registo 'f'
BTG
Q3
Processo
Dados
PORTC, 4, 0
Q4
Escrever
registo 'f'
BOV
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Filial se Overflow
BOV n
-128 o no 127
se pouco Overflow '1 ',
(PC) + 2 + 2n PC
Nenhum
1110 0100 nnnn nnnn
Se o bit de estouro '1 ', ento o
programa do ramo.
Do 2 complemento nmero '2 n '
adicionado ao PC. Desde que o computador ter
incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo , ento, um
de dois ciclos de instruo.
1
1 (2)
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Se Jump:
Q1
Decodificar
No
operao
Se nenhum salto:
Q1
Decodificar
Palavras:
Ciclos:
Q Activity Cycle:
Q2
Leia literal
'N'
No
operao
Q2
Leia literal
'N'
AQUI
=
=
=
=
=
Q3
Processo
Dados
No
operao
Q3
Processo
Dados
BOV Saltar
Q4
Escreva para PC
No
operao
Q4
No
operao
Exemplo:
Antes de Instruo:
PORTC =0111 0101 [75h]
Depois de Instruo:
PORTC =0110 0101 [65h]
Exemplo:
Antes de Instruo
PC
Depois de Instruo
Se Overflow
PC
Se Overflow
PC
endereo (AQUI)
1;
endereo (Ir)
0;
endereo (AQUI + 2)
v 2009 Microchip Technology Inc. DS39632E pgina 327
PIC18F2455/2550/4455/4550
BZ
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Filial se Zero
BZ n
CHAMADA
Sintaxe:
Operandos:
Operao:
nnnn nnnn
Sub-rotina chamada
CHAMADA k {, s}
0o ko 1048575
s [0,1]
(PC) + 4 TOS,
k PC <20:01>;
se s = 1,
(W) WS,
(STATUS) STATUSS,
(BSR) BSRS
Nenhum
1110
1111
110s
k19kkk
k7kkk
kkkk
kkkk0
kkkk8
-128 o no 127
Se zero bit '1 ',
(PC) + 2 + 2n PC
Nenhum
1110 0000
Se o bit Zero '1 ', o programa
se ramificar.
Do 2 complemento nmero '2 n '
adicionado ao PC. Desde que o computador ter
incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo , ento, um
de dois ciclos de instruo.
1
1 (2)
Estado afetados:
Encoding:
1 palavra (k <07:00>)
2 palavra (k <19:08>)
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Se Jump:
Q1
Decodificar
No
operao
Se nenhum salto:
Q1
Decodificar
Q2
Leia literal
'N'
No
operao
Q2
Leia literal
'N'
AQUI
=
=
=
=
=
Q3
Processo
Dados
No
operao
Q3
Processo
Dados
BZ Saltar
Q4
Escreva para PC
No
operao
Q4
No
operao
Chamada sub-rotina de toda 2 Mbyte
intervalo de memria. Primeiro, endereo do
remetente
(PC + 4) empurrado para o retorno
empilhar. Se o 's' = 1, o W, STATUS e
BSR
registos tambm so empurrados para a sua
respectivos registros sombra, WS,
STATUSS e BSRS. Se o 's' = 0, no
atualizao ocorre (padro). Em seguida, o
Valor 20-bit 'k' carregado no PC <20:01>.
CHAMADA uma instruo de dois ciclos.
2
2
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Leia literal
'K' <07:00>,
No
operao
AQUI
Q3
Empurrar PC
pilha
No
operao
CHAMADA
Q4
Leia literal
'K' <19:08>,
Escreva para PC
No
operao
Exemplo:
Antes de Instruo
PC
Depois de Instruo
Se Zero
PC
Se Zero
PC
endereo (AQUI)
1;
endereo (Ir)
0;
endereo (AQUI + 2)
No
operao
Exemplo: THERE, 1
Antes de Instruo
PC =
Depois de Instruo
PC =
TOS =
WS =
BSRS =
STATUSS =
endereo (AQUI)
endereo (No)
endereo (AQUI + 4)
W
BSR
STATUS
DS39632E pgina 328 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CLRF
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Limpar f
CLRF f {, um}
CLRWDT
Sintaxe:
Operandos:
Operao:
Limpar Watchdog Timer
CLRWDT
Nenhum
000h WDT,
000h WDT postscaler,
1 TO,
1 PD
TO, PD
0000 0000 0000 0100
CLRWDT instruo zera o
Temporizador Watchdog. tambm repe o
postscaler do WDT. Bits de status, TO
e PD, esto definidos.
1
1
Q1
Decodificar
Q2
No
operao
CLRWDT
=
=
=
=
=
?
00h
0
1
1
Q3
Processo
Dados
Q4
No
operao
0o fo 255
um [0,1]
000h f,
1Z
Z
0110 101a ffff ffff
Estado afetados:
Encoding:
Descrio:
Limpa o contedo do especificado
registrar.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Palavras:
Ciclos:
Q Activity Cycle:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Exemplo:
Q2 Q3
Processo
Dados
FLAG_REG, 1
5Ah
00h
Q4
Escrever
registo 'f'
Ler
registo 'f'
CLRF
=
=
Exemplo:
Antes de Instruo
WDT Contador
Depois de Instruo
WDT Contador
WDT postscaler
TO
PD
Antes de Instruo
FLAG_REG
Depois de Instruo
FLAG_REG
v 2009 Microchip Technology Inc. DS39632E pgina 329
PIC18F2455/2550/4455/4550
COMF
Sintaxe:
Operandos:
Complemente f
COMF f {, {d, um}}
CPFSEQ
Sintaxe:
Operandos:
Operao:
Compare f com W, Ir, se f = W
CPFSEQ
0o fo 255
um [0,1]
(F) - (W)
saltar se (f) = (W)
(Comparao sem sinal)
Nenhum
0110 001a ffff ffff
Compara o contedo da memria de dados
Local de 'f' para o contedo de W por
executar uma subtrao sem sinal.
Se 'f' = W, ento a instruo buscada
descartada e uma NOP executado
em vez disso, tornando este um ciclo de dois
instrues.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1 (2)
Nota: 3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q2
Ler
registo 'f'
Q3
Processo
Dados
Q4
No
operao
Q4
No
operao
Q4
No
operao
No
operao
f {, um}
0o fo 255
d [0,1]
um [0,1]
(F) dest
N, Z
0001 11da ffff ffff
O contedo do registo 'f' so
complementadas. Se 'd' '0 ', o resultado
armazenado em W. Se d '1 ', o resultado
armazenado de volta em registo 'f' (default).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1 Q2
Ler
registo 'f'
COMF
13h
Q3
Processo
Dados
REG, 0, 0
Q4
Escreva para
destino
Operao:
Estado afetados:
Encoding:
Descrio:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
Palavras:
Ciclos:
Exemplo:
Antes de Instruo
REG =
Depois de Instruo
REG =
W =
Q Activity Cycle:
Q1
Decodificar
Se pular:
13h
ECh
Q1Q2Q3
NONONO
operationoperationoperation
Se pular e seguido por instruo 2 palavras:
Q1Q2Q3
NONONO
operationoperationoperation
NONONO
operationoperationoperation
Exemplo: AQUI
NEQUAL
EQUAL
=
=
=
=
=

=
CPFSEQ REG, 0
:
:
AQUI
?
?
W;
Endereo (EQUAL)
W;
Endereo (NEQUAL)
Antes de Instruo
PC Endereo
W
REG
Depois de Instruo
Se REG
PC
Se REG
PC
DS39632E pgina 330 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CPFSGT
Sintaxe:
Operandos:
Operao:
Compare f com W, Skip se f> W
CPFSGT
0o fo 255
um [0,1]
(F) - ( O ) ,
pular if (f)> (W)
(Comparao sem sinal)
Nenhum
0110 010a ffff ffff
Compara o contedo da memria de dados
Local de 'f' para o contedo da W atravs
executar uma subtrao sem sinal.
Se o contedo de 'f' so maiores do que o
contedo de WREG, ento o buscados
instruo descartada e uma NOP
executado em vez, tornando este um
de dois ciclos de instruo.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1 (2)
Nota: 3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q2
Ler
registo 'f'
Q3
Processo
Dados
Q4
No
operao
Q4
No
operao
Q4
No
operao
No
operao
f {, um}
CPFSLT
Sintaxe:
Operandos:
Operao:
Compare f com W, Skip se f <W
CPFSLT
0o fo 255
um [0,1]
(F) - ( O ) ,
pular if (f) <(W)
(Comparao sem sinal)
Nenhum
0110 000a ffff ffff
Compara o contedo da memria de dados
Local de 'f' para o contedo de W por
executar uma subtrao sem sinal.
Se o contedo de 'f' so menos do que o
contedo de W, ento o buscados
instruo descartada e uma NOP
executado em vez, tornando este um
de dois ciclos de instruo.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
1
1 (2)
Nota:
3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q3
Processo
Dados
Q3
No
operao
Q3
No
operao
No
operao
Q4
No
operao
Q4
No
operao
Q4
No
operao
No
operao
f {, um}
Estado afetados:
Encoding:
Descrio:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Se pular:
Q1
No
operao
Q1
No
operao
No
operao
Exemplo:
Q2
No
operao
Q2
No
operao
No
operao
AQUI
NLES
MENOS
=
=
<
=
c
=
Q2
Ler
registo 'f'
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Se pular:
Se pular e seguido por instruo 2 palavras:
Q1Q2Q3
NONONO
operationoperationoperation
Se pular e seguido por instruo 2 palavras:
Q1Q2Q3
NONONO
operationoperationoperation
NONONO
operationoperationoperation
Exemplo: AQUI
NGREATER
MAIOR
=
=
>
=
o
=
CPFSLT REG, 1
:
:
Endereo (AQUI)
?
W;
Endereo (LESS)
W;
Endereo (NLES)
CPFSGT REG, 0
:
:
Antes de Instruo
PC
W
Depois de Instruo
Se REG
PC
Se REG
PC
Endereo (AQUI)
?
W;
Endereo (Maior)
W;
Endereo (NGREATER)
Antes de Instruo
PC
W
Depois de Instruo
Se REG
PC
Se REG
PC
v 2009 Microchip Technology Inc. DS39632E pgina 331
PIC18F2455/2550/4455/4550
DAW
Sintaxe:
Operandos:
Operao:
Decimal Adjust W Registrar
DAW
Nenhum
Se [W <03:00 >> 9] ou [DC = 1] em seguida,
(W <3:00>) + 6 W <03:00>;
outra coisa,
(W <03:00>) W <03:00>;
Se [W <07:04> + DC> 9] ou [C = 1] em seguida,
(W <7:04>) + 6 + DC W <07:04>;
outra coisa,
(W <7:04>) + DC W <7:04>
Estado afetados:
Encoding:
Descrio:
C
0000 0000 0000 0111
DAW ajusta o valor de oito bits em W,
, resultante da adio anterior de dois
variveis (cada um em formato BCD embalado)
e produz um BCD embalado correto
resultar.
1
1
Palavras:
Q2
Ler
registo W
DAW
A5H
0
0
05h
1
0
Q3
Processo
Dados
Q4
Escrever
W
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
registo 'f'
DECF
01h
0
00h
1
Q3
Processo
Dados
CNT 1, 0
Q4
Escreva para
destino
Q1
Decodificar
DECF
Sintaxe:
Operandos:
Decremento f
DECF f {, {d, um}}
0o fo 255
d [0,1]
um [0,1]
(F) - 1 dest
C, CC, N, OV, Z
0000 01DA ffff ffff
Diminuir registo 'f'. Se 'd' '0 ', o
resultado armazenado em W. Se 'd' '1 ', o
resultado armazenado de volta em registo 'f'
(Padro).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo 1:
Antes de Instruo
W =
C =
DC =
Depois de Instruo
W =
C =
DC =
Exemplo 2:
Antes de Instruo
W =
C =
DC =
Depois de Instruo
W =
C =
DC =
Exemplo:
Antes de Instruo
CNT =
Z =
Depois de Instruo
CNT =
Z =
CEH
0
0
34h
1
0
DS39632E pgina 332 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
DECFSZ
Sintaxe:
Operandos:
Decrementa f, Skip se 0
DECFSZ f {, {d, um}}
0o fo 255
d [0,1]
um [0,1]
(F) - 1 dest,
pular se resultar = 0
Nenhum
0010 11da ffff ffff
O contedo do registo 'f' so
decrementado. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
colocado de volta no registrador 'f' (default).
Se o resultado for '0 ', a instruo seguinte,
que j buscada, descartada
e um NOP executada em vez disso, fazer
uma instruo de dois ciclos.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1 (2)
Nota: 3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q1
Decodificar
Se pular:
Q1
No
operao
Q1
No
operao
No
operao
Exemplo:
Q2
No
operao
Q2
No
operao
No
operao
AQUI
CONTINUAR
Antes de Instruo
PC =
Depois de Instruo
CNT =
Se CNT =
PC =
Se CNT
PC =
Endereo (AQUI)
CNT - 1
0;
Endereo (Continua)
0;
Endereo (AQUI + 2)
Q3
No
operao
Q3
No
operao
No
operao
DECFSZ
GOTO
Q4
No
operao
Q4
No
operao
No
operao
CNT, 1, 1
LOOP
Se pular:
Q1
No
operao
Q1
No
operao
No
operao
Exemplo:
Q2
No
operao
Q2
No
operao
No
operao
AQUI
ZERO
NZERO
=
=
=
=

=
Q3
No
operao
Q3
No
operao
No
operao
DCFSNZ
:
:
?
TEMP - 1,
0;
Endereo (ZERO)
0;
Endereo (NZERO)
Q4
No
operao
Q4
No
operao
No
operao
Q2
Ler
registo 'f'
Q3
Processo
Dados
Q4
Escreva para
destino
Palavras:
Ciclos:
DCFSNZ
Sintaxe:
Operandos:
Decrementa f, Skip se no for 0
DCFSNZ
0o fo 255
d [0,1]
um [0,1]
(F) - 1 dest,
pular se o resultado 0
Nenhum
0100 11da ffff ffff
O contedo do registo 'f' so
decrementado. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
colocado de volta no registrador 'f' (default).
Se o resultado no '0 ', o prximo
instruo, que j obtida,
descartada e uma NOP executado
em vez disso, tornando-se um ciclo de dois
instrues.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1 (2)
Nota:
3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q3
Processo
Dados
Q4
Escreva para
destino
f {, {d, um}}
Operao:
Estado afetados:
Encoding:
Descrio:
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
registo 'f'
Se pular e seguido por instruo 2 palavras:
Se pular e seguido por instruo 2 palavras:
TEMP, 1, 0
Antes de Instruo
TEMP
Depois de Instruo
TEMP
Se TEMP
PC
Se TEMP
PC
v 2009 Microchip Technology Inc. DS39632E pgina 333
PIC18F2455/2550/4455/4550
GOTO
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
1 palavra (k <07:00>)
2 palavra (k <19:08>)
Descrio:
Filial incondicional
GOTO k
0o ko 1048575
k PC <20:01>
Nenhum
1110
1111
1111
k19kkk
k7kkk
kkkk
kkkk0
kkkk8
Operao:
Estado afetados:
Encoding:
Descrio:
INCF
Sintaxe:
Operandos:
Incremento f
INCF f {, {d, um}}
0o fo 255
d [0,1]
um [0,1]
(F) + 1 dest
C, CC, N, OV, Z
0010 10DA ffff ffff
O contedo do registo 'f' so
incrementado. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
colocado de volta no registrador 'f' (default).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1 Q2
Ler
registo 'f'
INCF
FFh
0
?
?
00h
1
1
1
Q3
Processo
Dados
CNT, 1, 0
Q4
Escreva para
destino
GOTO permite um desvio incondicional
em qualquer lugar dentro da totalidade
2 Mbyte intervalo de memria. O 20-bit
valor de 'k' carregado em PC <20:01>. GOTO
sempre uma instruo de dois ciclos.
2
2
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Leia literal
'K' <07:00>,
No
operao
Q3
No
operao
No
operao
Q4
Leia literal
'K' <19:08>,
Escreva para PC
No
operao
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
No
operao
Exemplo: IR PARA L
Depois de Instruo
PC = Address (No)
Exemplo:
Antes de Instruo
CNT =
Z =
C =
DC =
Depois de Instruo
CNT =
Z =
C =
DC =
DS39632E pgina 334 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
INCFSZ
Sintaxe:
Operandos:
Incremento f, Skip se 0
INCFSZ
0o fo 255
d [0,1]
um [0,1]
(F) + 1 dest,
pular se resultar = 0
Nenhum
0011 11da ffff ffff
O contedo do registo 'f' so
incrementado. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
colocado de volta no registrador 'f'. (Default)
Se o resultado for '0 ', a instruo seguinte,
que j buscada, descartada
e um NOP executada em vez disso, fazer
uma instruo de dois ciclos.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1 (2)
Nota: 3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q1
Decodificar
Se pular:
Q1
No
operao
Q1
No
operao
No
operao
Exemplo:
Q2
No
operao
Q2
No
operao
No
operao
AQUI
NZERO
ZERO
Q3
No
operao
Q3
No
operao
No
operao
INCFSZ
:
:
Q4
No
operao
Q4
No
operao
No
operao
CNT, 1, 0
Q2
Ler
registo 'f'
Q3
Processo
Dados
Q4
Escreva para
destino
Se pular:
Q1
No
operao
Q1
No
operao
No
operao
Exemplo:
Q2
No
operao
Q2
No
operao
No
operao
AQUI
ZERO
NZERO
Q3
No
operao
Q3
No
operao
No
operao
INFSNZ
Q4
No
operao
Q4
No
operao
No
operao
f {, {d, um}}
INFSNZ
Sintaxe:
Operandos:
Incremento f, Skip se no for 0
INFSNZ
0o fo 255
d [0,1]
um [0,1]
(F) + 1 dest,
pular se o resultado 0
Nenhum
0100 10DA ffff ffff
O contedo do registo 'f' so
incrementado. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
colocado de volta no registrador 'f' (default).
Se o resultado no '0 ', o prximo
instruo, que j obtida,
descartada e uma NOP executado
em vez disso, tornando-se um ciclo de dois
instrues.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1 (2)
Nota:
3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q3
Processo
Dados
Q4
Escreva para
destino
f {, {d, um}}
Operao:
Estado afetados:
Encoding:
Descrio:
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Palavras:
Ciclos:
Q Activity Cycle: Q Activity Cycle:
Q1
Decodificar
Q2
Ler
registo 'f'
Se pular e seguido por instruo 2 palavras: Se pular e seguido por instruo 2 palavras:
REG, 1, 0
Antes de Instruo
PC =
Depois de Instruo
CNT =
Se CNT =
PC =
Se CNT
PC =
Endereo (AQUI)
CNT + 1
0;
Endereo (ZERO)
0;
Endereo (NZERO)
Antes de Instruo
PC =
Depois de Instruo
REG =
Se REG
PC =
Se REG =
PC =
Endereo (AQUI)
REG + 1
0;
Endereo (NZERO)
0;
Endereo (ZERO)
v 2009 Microchip Technology Inc. DS39632E pgina 335
PIC18F2455/2550/4455/4550
IORLW
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Inclusive OR Literal com W
IORLW k
0o ko 255
(W). OU. k W
N, Z
0000 1001 kkkk kkkk
Os contedos de W so ORed com o
oito bits literal 'k'. O resultado colocado
W.
1
1
Q1
Decodificar
Q2
Ler
literal 'k'
IORLW
9Ah
BFh
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
registo 'f'
IORWF
13h
91h
13h
93h
Q3
Processo
Dados
RESULTADO, 0, 1
Q4
Escreva para
destino
Q3
Processo
Dados
35h
Q4
Escreva-W
Operao:
Estado afetados:
Encoding:
Descrio:
IORWF
Sintaxe:
Operandos:
Inclusive OR W com f
IORWF f {, {d, um}}
0o fo 255
d [0,1]
um [0,1]
(W). OU. (F) dest
N, Z
0001 00da ffff ffff
Inclusive OR W com o registo 'f'. Se 'd'
'0 ', O resultado colocado em W. Se' d ' '1',
o resultado colocado de volta no registrador 'f'
(Padro).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
Antes de Instruo
W =
Depois de Instruo
W =
Exemplo:
Antes de Instruo
Resultado =
W =
Depois de Instruo
Resultado =
W =
DS39632E pgina 336 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
LFSR
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Leia literal
'K' MSB
Leia literal
LSB 'k'
Q3
Processo
Dados
Processo
Dados
Q4
Escrever
literal 'k' MSB
para FSRfH
Escrever literal 'k'
para FSRfL
Carregar FSR
LFSR F, K
0ofo2
0o ko 4095
k FSRf
Nenhum
1110
1111
1110
0000
00ff
k7kkk
k11kkk
kkkk
Operao:
Estado afetados:
Encoding:
Descrio:
MOVF
Sintaxe:
Operandos:
Mova f
MOVF f {, {d, um}}
0o fo 255
d [0,1]
um [0,1]
f dest
N, Z
0101 00da ffff ffff
O contedo do registo 'f' so movidos para
um destino dependem do
estatuto de d. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
colocado de volta no registrador 'f' (default).
Location 'f' pode ser em qualquer lugar do
Banco de 256 bytes.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1 Q2
Ler
registo 'f'
MOVF
=
=
=
=
Q3
Processo
Dados
REG, 0, 0
22h
FFh
22h
22h
Q4
Escrever W
Os 12 bits literal "k" carregado no
Arquivo, selecione Registrar apontado por 'f'.
2
2
Decodificar
Exemplo:
Depois de Instruo
FSR2H
FSR2L
LFSR 2, 3ABh
=
=
03h
ABh
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
Exemplo:
Antes de Instruo
REG
W
Depois de Instruo
REG
W
v 2009 Microchip Technology Inc. DS39632E pgina 337
PIC18F2455/2550/4455/4550
MOVFF
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
1 palavra (fonte)
2 palavra (destin.)
Descrio:
Mova f para f
MOVFF fs, fd
0o fs o 4095
0o fd o 4095
(Fs) fd
Nenhum
1100
1111
ffff
ffff
ffff
ffff
ffffs
ffffd
MOVLB
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Mova Literal para Baixo mordidela na BSR
MOVLW k
0o ko 255
k BSR
Nenhum
0000 0001 kkkk kkkk
Os oito bits literal de "k" carregado no
Bank Select Register (BSR). O valor de
de BSR <07:04> permanece sempre '0 '
independentemente do valor de k7: k4.
1
1
Q1
Decodificar
Q2
Ler
literal 'k'
MOVLB
02h
05h
Q3
Processo
Dados
5
Q4
Escrever literal
'K' para BSR
O contedo da fonte registo 'fs' so
mudou-se para destino registo 'fd'.
Localizao do source 'fs' pode estar em qualquer
lugar
no espao de dados de 4096 bytes (000h a
FFFh) e localizao do destino 'fd'
pode tambm ser em qualquer lugar a partir de 000h
FFFh.
De origem ou de destino pode ser W
(A situao especial til).
MOVFF particularmente til para
transferncia de uma posio de memria de dados
para uma
registo perifrica (tal como a transmisso
tampo ou uma porta de I / O).
O MOVFF instruo no possvel utilizar o
PCL, TOSU, TOSH ou TOSL como o
registrador destino.
2
2
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
Antes de Instruo
BSR Register =
Depois de Instruo
BSR Register =
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
registo 'f'
(Src)
No
operao
No manequim
ler
Q3
Processo
Dados
No
operao
Q4
No
operao
Escrever
registo 'f'
(Dest)
Decodificar
Exemplo: MOVFF
=
=
=
=
REG1, REG2
33h
11h
33h
33h
Antes de Instruo
REG1
REG2
Depois de Instruo
REG1
REG2
DS39632E pgina 338 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
MOVLW
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
literal 'k'
MOVLW
5Ah
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
registo 'f'
MOVWF
4Fh
FFh
4Fh
4Fh
Q3
Processo
Dados
REG, 0
Q4
Escrever
registo 'f'
Q3
Processo
Dados
5Ah
Q4
Escreva-W
1
1
Mova Literal para W
MOVLW k
0o ko 255
kW
Nenhum
0000 1110 kkkk kkkk
Os oito bits literal 'k' carregado em W.
Operao:
Estado afetados:
Encoding:
Descrio:
MOVWF
Sintaxe:
Operandos:
Move W af
MOVWF
0o fo 255
um [0,1]
(W) f
Nenhum
0110 111a ffff ffff
Mover dados de W para registrar 'f'.
Location 'f' pode ser em qualquer lugar do
Banco de 256 bytes.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
f {, um}
Exemplo:
Depois de Instruo
W =
Exemplo:
Antes de Instruo
W =
REG =
Depois de Instruo
W =
REG =
v 2009 Microchip Technology Inc. DS39632E pgina 339
PIC18F2455/2550/4455/4550
MULLW
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Multiplique Literal com W
MULLW k
MULWF
Sintaxe:
Operandos:
Operao:
1101 kkkk kkkk
Estado afetados:
Encoding:
Descrio:
Multiplique W com f
MULWF
0o fo 255
um [0,1]
(W) x (f) PRODH: Prdl
Nenhum
0000 001a ffff ffff
Uma multiplicao realizada sem sinal
para fora entre os contedos de W e as
registrar arquivo local 'f'. O 16-bit
resultado armazenado na PRODH: Prdl
registar par. PRODH contm o
byte alto. Ambos W e 'f' so
inalterada.
Nenhum dos sinalizadores de status so afetados.
Note-se que nem estouro nem Carry
possvel nesta operao. A Zero
resultado possvel, mas no foi detectado.
Se 'a' '0 ', o Banco de Acesso
seleccionada. Se 'a' '1 ', o BSR usado
para selecionar o banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo
opera em cadastradas Literal offset
Modo de endereamento sempre
fo 95 (5Fh). Ver Seo 26.2.3
"Byte-oriented e Bit-Oriented
Instrues em Indexado Literal offset
Mode " para mais detalhes.
1
1
Q1
Decodificar
Q2
Ler
registo 'f'
Q3
Processo
Dados
Q4
Escrever
registra
PRODH:
Prdl
f {, um}
0o ko 255
(W) x k PRODH: Prdl
Nenhum
0000
Uma multiplicao realizada sem sinal
para fora entre os contedos de W e as
8-bit literal 'k'. O resultado 16 bits
colocado em PRODH: Prdl par registo.
PRODH contm o byte alto.
W inalterado.
Nenhum dos sinalizadores de status so afetados.
Note-se que nem estouro nem Carry
possvel nesta operao. Um resultado nulo
possvel, mas no foi detectado.
1
1
Q1 Q2
Ler
literal 'k'
Q3
Processo
Dados
Q4
Escrever
registra
PRODH:
Prdl
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
Exemplo:
Antes de Instruo
W
PRODH
Prdl
Depois de Instruo
W
PRODH
Prdl
MULLW
=
=
=
=
=
=
0C4h
E2H
?
?
E2H
ADh
08h
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
Antes de Instruo
W
REG
PRODH
Prdl
Depois de Instruo
W
REG
PRODH
Prdl
MULWF
=
=
=
=
=
=
=
=
REG, 1
C4h
B5h
?
?
C4h
B5h
8Ah
94h
DS39632E pgina 340 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
NEGF
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Negue f
NEGF f {, um}
NOP
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
ffff ffff
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
No
operao
Q3
No
operao
Q4
No
operao
1
1
110a
Sem Operao
NOP
Nenhum
Nenhuma operao
Nenhum
0000
1111
0000
xxxx
0000
xxxx
0000
xxxx
0o fo 255
um [0,1]
(F) + 1 f
N, OV, C, CC, Z
0110
Location 'f' negada usando dois de
complementar. O resultado colocado na
posio de memria de dados 'f'.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1 Q2
Ler
registo 'f'
NEGF
Q3
Processo
Dados
REG, 1
Q4
Escrever
registo 'f'
Nenhuma operao.
Exemplo:
Nenhum.
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
Exemplo:
Antes de Instruo
REG =
Depois de Instruo
REG =
0011 1010 [3Ah]
1100 0110 [C6h]
v 2009 Microchip Technology Inc. DS39632E pgina 341
PIC18F2455/2550/4455/4550
POP
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Pop Top de Retorno Stack
POP
Nenhum
(TOS) bit bucket
Nenhum
0000 0000 0000 0110
O valor TOS puxado para fora o retorno
empilhar e descartado. O valor TOS
em seguida, transforma-se o valor anterior de que
foi empurrado para a pilha de retorno.
Esta instruo proporcionada para permitir
o usurio a gerenciar adequadamente o retorno
empilhar a incorporar uma pilha de software.
1
1
Q1
Decodificar
Q2
No
operao
POP
GOTO
Q3
Pop TOS
valor
Q4
No
operao
Exemplo:
NOVO
=
=
=
=
0031A2h
014332h
014332h
NOVO
IMPULSO
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Empurre Top de Retorno Stack
IMPULSO
Nenhum
(PC + 2) TOS
Nenhum
0000 0000 0000 0101
O PC + 2 empurrado para o topo
a pilha de retorno. Os TOS anteriores
valor empurrado para baixo na pilha.
Esta instruo permite a implementao de um
pilha de software pela modificao TOS e
em seguida, empurrando-o para a pilha de retorno.
1
1
Q1
Decodificar
Q2
Empurre PC + 2
para retorno
pilha
IMPULSO
=
=
=
=
=
345Ah
0124h
0126h
0126h
345Ah
Q3
No
operao
Q4
No
operao
Palavras:
Ciclos:
Q Activity Cycle:
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
Antes de Instruo
TOS
Stack (um nvel abaixo)
Depois de Instruo
TOS
PC
Antes de Instruo
TOS
PC
Depois de Instruo
PC
TOS
Stack (um nvel abaixo)
DS39632E pgina 342 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
RCALL
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Chamada Relativa
RCALL n
REAJUSTE
Sintaxe:
Operandos:
Operao:
Estado afetados:
1nnn nnnn nnnn Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Comear
Restabelecer
REAJUSTE
Valor de reset
Valor de reset
Q3
No
operao
Q4
No
operao
Restabelecer
REAJUSTE
Nenhum
Repor todos os registos e bandeiras que so
afectados por um Reset MCLR.
Tudo
0000 0000 1111 1111
Esta instruo fornece uma maneira de
executar um Reset MCLR em software.
1
1
-1024 o no 1023
(PC) + 2 TOS,
(PC) + 2 + 2n PC
Nenhum
1101
Chamada de subrotina com um salto at 1K
a partir da localizao actual. Em primeiro lugar, o
retorno
endereo (PC + 2) colocado na
empilhar. Em seguida, adicione o complemento de 2
nmero n '2 'para o PC. Desde que o PC vai
tm incrementado para buscar o prximo
instruo, o novo endereo ser
PC + 2 + 2n. Esta instruo uma
de dois ciclos de instruo.
1
2
Q1 Q2
Leia literal
'N'
Empurrar PC
pilha
Q3
Processo
Dados
Q4
Escreva para PC
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
Exemplo:
Depois de Instruo
Registra =
Bandeiras * =
No
operao
Exemplo:
No
operao
AQUI
No
operao
RCALL Ir
No
operao
Antes de Instruo
PC = Address (AQUI)
Depois de Instruo
PC = Address (Ir)
TOS = Address (AQUI + 2)
v 2009 Microchip Technology Inc. DS39632E pgina 343
PIC18F2455/2550/4455/4550
RETFIE
Sintaxe:
Operandos:
Operao:
Retorno da Interrupo
RETFIE {s}
s [0,1]
(TOS) PC,
1 GIE / GIEH ou PEIE / giel;
se s = 1,
(WS) W,
(STATUSS) STATUS,
(BSRS) BSR,
PCLATU, PCLATH mantm-se inalterados
GIE / GIEH, PEIE / giel.
0000 0000 0001 000s
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
literal 'k'
No
operao
Q3
Processo
Dados
No
operao
Q4
Pop PC a partir de
empilhar, Escrever
para W
No
operao
Retorno de interrupo. Stack est estalado
e Top-of-Stack (TOS) carregado em
o PC. As interrupes so ativadas por
criao ou a alta ou baixa prioridade
interrupo global de permitir bit. Se o 's' = 1, o
contedo da sombra registra WS,
STATUSS BSRS e so carregados para
seu registro correspondente, W,
STATUS e BSR. Se o 's' = 0, sem atualizao
desses registros ocorre (padro).
1
2
Exemplo:
Q2
No
operao
Q3
No
operao
Q4
Pop PC a partir de
pilha
Definir GIEH ou
Giel
No
operao
Exemplo:
No
operao
RETFIE 1
=
=
=
=
=
TOS
WS
BSRS
STATUSS
1
No
operao
No
operao
CHAMADA TABLE;
;
;
;
:
TABELA
ADDWF PCL;
RETLW k0;
RETLW k1;
:
:
RETLW kn;
Antes de Instruo
W =
Depois de Instruo
W =
Wcontm a tabela
compensar o valor
Wtem agora
valor da tabela
Q1
Decodificar
RETLW
Sintaxe:
Operandos:
Operao:
Retorno Literal para W
RETLW k
0o ko 255
k W,
(TOS) PC,
PCLATU, PCLATH mantm-se inalterados
Nenhum
0000 1100 kkkk kkkk
W carregado com os oito bits literal 'k'.
O contador de programa carregado a partir do
parte superior da pilha (o endereo de retorno).
A trava endereo elevada (PCLATH)
permanece inalterado.
1
2
Estado afetados:
Encoding:
Descrio:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
No
operao
W= Compensar
Comece mesa
Aps interrupo
PC
W
BSR
STATUS
GIE / GIEH, PEIE / giel
Fim da mesa
07h
valor de kn
DS39632E pgina 344 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
RETORNO
Sintaxe:
Operandos:
Operao:
Retorno de Subrotina
RETURN {s}
s [0,1]
(TOS) PC;
se s = 1,
(WS) W,
(STATUSS) STATUS,
(BSRS) BSR,
PCLATU, PCLATH mantm-se inalterados
Nenhum
0000 0000 0001 001S
Retorno de sub-rotina. A pilha
estalou e o topo da pilha (TOS)
carregado para o contador do programa. Se
S = 1, o contedo da sombra
registra WS, STATUSS e BSRS so
carregados nos seus correspondentes
registradores, W, STATUS e BSR. Se
S = 0, no atualizao destes registos
ocorre (padro).
1
2
Q1
Decodificar
No
operao
Q2
No
operao
No
operao
Q3
Processo
Dados
No
operao
Q4
Pop PC
de pilha
No
operao
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo: RETORNO
Q1
Decodificar
Q2
Ler
registo 'f'
RLCF
Q3
Processo
Dados
Q4
Escreva para
destino
Depois de Instruo:
PC = TOS
RLCF
Sintaxe:
Operandos:
Rodar f para a esquerda atravs Carry
RLCF f {, {d, um}}
0o fo 255
d [0,1]
um [0,1]
(F <n>) dest <n + 1>,
(F <7>) C,
(C) dest <0>
C, N, Z
0011 01DA ffff ffff
O contedo do registo 'f' so rodados
um pouco para a esquerda atravs do Carry
bandeira. Se 'd' '0 ', o resultado colocado em
W. Se 'd' '1 ', o resultado armazenado de volta
em registo 'f' (default).
Se 'a' '0 ', o Banco de Acesso
seleccionada. Se 'a' '1 ', o BSR usado para
selecionar o banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo
opera em cadastradas Literal offset
Modo de endereamento sempre
fo 95 (5Fh). Ver Seo 26.2.3
"Byte-oriented e Bit-Oriented
Instrues em Indexado Literal offset
Mode " para mais detalhes.
C
1
1
registo f
Operao:
Estado afetados:
Encoding:
Descrio:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
Antes de Instruo
REG =
C =
Depois de Instruo
REG =
W=
C =
REG, 0, 0
1110 0110
0
1110 0110
1100 1100
1
v 2009 Microchip Technology Inc. DS39632E pgina 345
PIC18F2455/2550/4455/4550
RLNCF
Sintaxe:
Operandos:
Rodar f Esquerda (Sem Carry)
RLNCF
0o fo 255
d [0,1]
um [0,1]
(F <n>) dest <n + 1>,
(F <7>) dest <0>
N, Z
0100 01DA ffff ffff
Estado afetados:
Encoding:
Descrio:
O contedo do registo 'f' so rodados
um bit para a esquerda. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
armazenado de volta em registo 'f' (default).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
registo f
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
registo 'f'
RLNCF
Q3
Processo
Dados
Q4
Escreva para
destino
1
1
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Exemplo:
Antes de Instruo
REG =
Depois de Instruo
REG =
REG, 1, 0
Exemplo:
Q2
Ler
registo 'f'
RRCF
Q3
Processo
Dados
REG, 0, 0
Q4
Escreva para
destino
1
1
f {, {d, um}}
RRCF
Sintaxe:
Operandos:
Rodar f Direito atravs Carry
RRCF f {, {d, um}}
0o fo 255
d [0,1]
um [0,1]
(F <n>) dest <n-1>,
(F <0>) C,
(C) dest <7>
C, N, Z
0011 00da ffff ffff
O contedo do registo 'f' so rodados
um pouco para a direita atravs do Carry
bandeira. Se 'd' '0 ', o resultado colocado em W.
Se 'd' '1 ', o resultado colocado de volta no
registo 'f' (default).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
C registo f
Operao:
Estado afetados:
Encoding:
Descrio:
Operao:
1010 1011
0101 0111
Antes de Instruo
REG =
C =
Depois de Instruo
REG =
W=
C =
1110 0110
0
1110 0110
0111 0011
0
DS39632E pgina 346 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
RRNCF
Sintaxe:
Operandos:
Rodar f Direito (Sem Carry)
RRNCF f {, {d, um}}
SETF
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
ffff ffff
Descrio:
Defina f
SETF f {, um}
0o fo 255
d [0,1]
um [0,1]
(F <n>) dest <n-1>,
(F <0>) dest <7>
N, Z
0100 00da
O contedo do registo 'f' so rodados
um pouco para a direita. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
colocado de volta no registrador 'f' (default).
Se 'a' '0 ', o Banco de acesso ser
selecionado, substituindo o valor BSR. Se 'a'
'1 ', o banco ser selecionado como
por o valor BSR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
registo f
0o fo 255
um [0,1]
FFh f
Nenhum
0110 100a ffff ffff
O contedo do registo especificado
so definidas para FFh.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1 Q2
Ler
registo 'f'
SETF
=
=
5Ah
FFh
Q3
Processo
Dados
REG, 1
Q4
Escrever
registo 'f'
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Decodificar
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
1
1
Q2
Ler
registo 'f'
RRNCF
Q3
Processo
Dados
REG, 1, 0
Q4
Escreva para
destino
Exemplo:
Antes de Instruo
REG
Depois de Instruo
REG
Exemplo 1:
Antes de Instruo
REG =
Depois de Instruo
REG =
Exemplo 2:
1101 0111
1110 1011
REG, 0, 0 RRNCF
Antes de Instruo
W =
REG =
Depois de Instruo
W=
REG =
?
1101 0111
1110 1011
1101 0111
v 2009 Microchip Technology Inc. DS39632E pgina 347
PIC18F2455/2550/4455/4550
DORMIR
Sintaxe:
Operandos:
Operao:
Digite o modo de suspenso
DORMIR
Nenhum
00h WDT,
0 WDT postscaler,
1 TO,
0 PD
TO, PD
0000 0000 0000 0011
SUBFWB
Sintaxe:
Operandos:
Subtrair f de W com Borrow
SUBFWB
0o fo 255
d [0,1]
um [0,1]
(W) - (f) - (C) dest
N, OV, C, CC, Z
0101 01DA ffff ffff
Subtrair registrar 'f' e Siga bandeira
(Emprestado) de W (complemento de 2
mtodo). Se 'd' '0 ', o resultado armazenado
em W. Se 'd' '1 ', o resultado armazenado em
registo 'f' (default).
Se 'a' '0 ', o Banco de Acesso
seleccionada. Se 'a' '1 ', o BSR usado
para selecionar o banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo
opera em cadastradas Literal offset
Modo de endereamento sempre
fo 95 (5Fh). Ver Seo 26.2.3
"Byte-oriented e Bit-Oriented
Instrues em Indexado Literal offset
Mode " para mais detalhes.
1
1
Q1
Decodificar
Q2
Ler
registo 'f'
Q3
Processo
Dados
Q4
Escreva para
destino
f {, {d, um}}
Operao:
Estado afetados:
Encoding:
Descrio:
Estado afetados:
Encoding:
Descrio: O bit de estado Power-Down (PD)
apagadas. O bit de estado do Time-out (TO)
est definido. Temporizador Watchdog e sua
postscaler so apagadas.
O processador colocado em modo de suspenso
com o oscilador parado.
1
1
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
No
operao
DORMIR
Q3
Processo
Dados
Q4
Ir a
Dormir
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
Antes de Instruo
TO =?
? PD =
Depois de Instruo
A = 1
PD = 0
Se WDT causas de despertar, este bit est desmarcada.
SUBFWBREG, 1, 0Exemplo 1:
Antes de Instruo
REG = 3
W = 2
C = 1
Depois de Instruo
REG = FF
W = 2
C = 0
Z = 0
N = 1; resultado for negativo
SUBFWBREG, 0, 0Exemplo 2:
Antes de Instruo
REG = 2
W = 5
C = 1
Depois de Instruo
REG = 2
W = 3
C = 1
Z = 0
N = 0; resultado positivo
SUBFWBREG, 1, 0Exemplo 3:
Antes de Instruo
REG = 1
W = 2
C = 0
Depois de Instruo
REG = 0
W = 2
C = 1
Z = 1; resultado zero
N = 0
DS39632E pgina 348 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
SUBLW
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Exemplo 1:
Antes de Instruo
W =
C =
Depois de Instruo
W =
C =
Z =
N =
Exemplo 2:
Antes de Instruo
W =
C =
Depois de Instruo
W =
C =
Z =
N =
Exemplo 3:
Antes de Instruo
W =
C =
Depois de Instruo
W =
C =
Z =
N =
Q2
Ler
literal 'k'
SUBLW
01h
?
01h
1
0
0
SUBLW
02h
?
00h
1; resultado zero
1
0
SUBLW
03h
?
FFh
0
0
1
, (2 de complemento)
, Resultado for negativo
02h
; Resultado positivo
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Exemplo 1:
Antes de Instruo
REG =
W =
C =
Depois de Instruo
REG =
W =
C =
Z =
N =
Exemplo 2:
Antes de Instruo
REG =
W =
C =
Depois de Instruo
REG =
W =
C =
Z =
N =
Exemplo 3:
Antes de Instruo
REG =
W =
C =
Depois de Instruo
REG =
W =
C =
Z =
N =
Q2
Ler
registo 'f'
SUBWF
3
2
?
1
2
1
0
0
SUBWF
2
2
?
2
0
1
1
0
SUBWF
1
2
?
FFh; (complemento de 2)
2
0; resultado for negativo
0
1
Q3
Processo
Dados
REG, 1, 0
Q4
Escreva para
destino
Q3
Processo
Dados
02h
Q4
Escreva-W
Subtrair W a partir Literal
SUBLW k
0o ko 255
k - (W) W
N, OV, C, CC, Z
0000 1000 kkkk kkkk
W subtrado do oito bits
literal 'k'. O resultado colocado em W.
1
1
Operao:
Estado afetados:
Encoding:
Descrio:
SUBWF
Sintaxe:
Operandos:
Subtrai W de f
SUBWF
0o fo 255
d [0,1]
um [0,1]
(F) - (W) dest
N, OV, C, CC, Z
0101 11da ffff ffff
Subtrair W de registo 'f' (2 de
complementar o mtodo). Se 'd' '0 ', o
resultado armazenado em W. Se 'd' '1 ', o
resultado armazenado de volta em registo 'f'
(Padro).
Se 'a' '0 ', o Banco de Acesso
seleccionada. Se 'a' '1 ', o BSR usado
para selecionar o banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo
opera em cadastradas Literal offset
Modo de endereamento sempre
fo 95 (5Fh). Ver Seo 26.2.3
"Byte-oriented e Bit-Oriented
Instrues em Indexado Literal offset
Mode " para mais detalhes.
1
1
f {, {d, um}}
02h
; Resultado positivo
REG, 0, 0
; Resultado zero
REG, 1, 0
v 2009 Microchip Technology Inc. DS39632E pgina 349
PIC18F2455/2550/4455/4550
SUBWFB
Sintaxe:
Operandos:
Subtrai W de f com Borrow
SUBWFB
0o fo 255
d [0,1]
um [0,1]
(F) - (W) - (C) dest
N, OV, C, CC, Z
0101 10DA ffff ffff
Estado afetados:
Encoding:
Descrio:
Subtrair W ea bandeira Carry (emprestado)
de registo 'f' (complemento de 2
mtodo). Se 'd' '0 ', o resultado armazenado
em W. Se 'd' '1 ', o resultado armazenado de volta
em registo 'f' (default).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q2
Ler
registo 'f'
SUBWFB
19h
0Dh
1
0Ch
0Dh
1
0
0
Q3
Processo
Dados
REG, 1, 0
(0001 1001)
(0000 1101)
(0000 1011)
(0000 1101)
; Resultado positivo
Exemplo:
Q4
Escreva para
destino
f {, {d, um}}
Swapf
Sintaxe:
Operandos:
Troque f
Swapf f {, {d, um}}
0o fo 255
d [0,1]
um [0,1]
(F <3:00>) dest <07:04>,
(F <7:04>) dest <3:00>
Nenhum
0011 10DA ffff ffff
As mordidelas superior e inferior do registo
'F' so trocados. Se 'd' '0 ', o resultado
colocado em W. Se d '1 ', o resultado
colocado no registo 'f' (default).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1
Decodificar
Q2
Ler
registo 'f'
Swapf
53h
35h
Q3
Processo
Dados
REG, 1, 0
Q4
Escreva para
destino
Operao:
Estado afetados:
Encoding:
Descrio:
Operao:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Exemplo 1:
Palavras:
Ciclos:
Q Activity Cycle:
Antes de Instruo
REG =
W=
C =
Depois de Instruo
REG =
W=
C =
Z =
N =
Exemplo 2:
Antes de Instruo
REG =
W=
C =
Depois de Instruo
REG =
W =
C =
Z =
N =
Exemplo 3:
Antes de Instruo
REG =
W=
C =
Depois de Instruo
REG =
W
C
Z
N
=
=
=
=
Antes de Instruo
REG =
Depois de Instruo
REG =
SUBWFB REG, 0, 0
1Bh
1Ah
0
1Bh
00h
1
1
0
SUBWFB
03h
0Eh
1
F5H
0Eh
0
0
1
(0001 1011)
(0001 1010)
(0001 1011)
; Resultado zero
REG, 1, 0
(0000 0011)
(0000 1101)
(1111 0100)
, [2 de comp]
(0000 1101)
, Resultado for negativo
DS39632E pgina 350 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TBLRD
Sintaxe:
Operandos:
Operao:
Tabela Leia
TBLRD (*, * +, * -, + *)
Nenhum
se TBLRD *,
(Prog Mem (TBLPTR)) Tablat,
TBLPTR - Sem Mudana;
se TBLRD * +,
(Prog Mem (TBLPTR)) Tablat,
(TBLPTR) + 1 TBLPTR;
se TBLRD * -,
(Prog Mem (TBLPTR)) Tablat,
(TBLPTR) - 1 TBLPTR;
se TBLRD + *,
(TBLPTR) + 1 TBLPTR,
(Prog Mem (TBLPTR)) Tablat
0000 0000 0000 10nn
nn = 0 *
= 1 * +
= 2 * -
= 3 + *
TBLRD
Exemplo 1:
Tabela Read (Continuao)
TBLRD * +;
=
=
=
=
=
55h
00A356h
34h
34h
00A357h
Antes de Instruo
Tablat
TBLPTR
MEMORY (00A356h)
Depois de Instruo
Tablat
TBLPTR
Exemplo 2: TBLRD
Antes de Instruo
Tablat
TBLPTR
MEMORY (01A357h)
MEMORY (01A358h)
Depois de Instruo
Tablat
TBLPTR
+ *;
=
=
=
=
=
=
AAh
01A357h
12h
34h
34h
01A358h
Afetados Status: Nenhum
Encoding:
Descrio: Esta instruo usada para ler o contedo
de memria de programa (P.M.). Para abordar o
memria de programa, um ponteiro chamado Tabela
Pointer (TBLPTR) usado.
O TBLPTR (um ponteiro 21-bit) aponta para
cada byte na memria do programa. TBLPTR
tem uma faixa de endereos de 2 Mbyte.
TBLPTR [0] = 0: Byte menos significativo
Memria de Programa
Palavra
TBLPTR [0] = 1: Byte mais significativo
Memria de Programa
Palavra
O TBLRD instruo pode modificar o valor
de TBLPTR como se segue:
nenhuma mudana
ps-incremento
ps-decremento
pr-incremento
1
2
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
No
operao
Q2
No
operao
Nenhuma operao
(Leia o Programa
Memria)
Q3
No
operao
No
operao
Q4
No
operao
Nenhuma operao
(Escrever
Tablat)
v 2009 Microchip Technology Inc. DS39632E pgina 351
PIC18F2455/2550/4455/4550
TBLWT
Sintaxe:
Operandos:
Operao:
Escrever a tabela
TBLWT (*, * +, * -, + *)
Nenhum
se TBLWT *,
(Tablat) Holding Register,
TBLPTR - Sem Mudana;
se TBLWT * +,
(Tablat) Holding Register,
(TBLPTR) + 1 TBLPTR;
se TBLWT * -,
(Tablat) Holding Register,
(TBLPTR) - 1 TBLPTR;
se TBLWT + *,
(TBLPTR) + 1 TBLPTR;
(Tablat) Holding Register
0000 0000 0000 11nn
nn = 0 *
= 1 * +
= 2 * -
= 3 + *
TBLWT
Exemplo 1:
Escrever a tabela (Continuao)
TBLWT * +;
Antes de Instruo
Tablat = 55h
TBLPTR = 00A356h
Holding Register
(00A356h) = FFh
Depois de Instrues (concluso write tabela)
Tablat = 55h
TBLPTR = 00A357h
Holding Register
(00A356h) = 55h
Exemplo 2: TBLWT + *;
Antes de Instruo
Tablat = 34h
TBLPTR = 01389Ah
Holding Register
(01389Ah) = FFh
Holding Register
(01389Bh) = FFh
Depois de Instruo (concluso write tabela)
Tablat = 34h
TBLPTR = 01389Bh
Holding Register
(01389Ah) = FFh
Holding Register
(01389Bh) = 34h
Afetados Status: Nenhum
Encoding:
Descrio: Esta instruo utiliza os trs LSBs de TBLPTR
para determinar qual dos
8 realizao registra o Tablat est escrito.
Os registos guardados so usados para
programar os contedos do programa
Memria (P.M.). (Consulte a Seo 6.0
"Memria Flash Programa" Para obter
detalhes sobre a memria flash de programao.)
O TBLPTR (um ponteiro 21-bit) aponta para
cada byte na memria do programa. TBLPTR
tem uma faixa de endereos de 2 Mbyte. A LSB
o TBLPTR selecciona qual byte do
localizao de memria de programa para acessar.
TBLPTR [0] = 0: Least Significant
Byte do Programa
Memria Palavra
TBLPTR [0] = 1: Most Significant
Byte do Programa
Memria Palavra
O TBLWT instruo pode modificar o
valor de TBLPTR como se segue:
nenhuma mudana
ps-incremento
ps-decremento
pr-incremento
1
2
Q1
Decodificar
Q2 Q3 Q4
Palavras:
Ciclos:
Q Activity Cycle:
NONONO
operao operao operao
NONONONO
operao operao operao operao
(Leia (Escreva para
Tablat) Segurar
Registre-se)
DS39632E pgina 352 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TSTFSZ
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Teste F, Skip se 0
TSTFSZ f {, um}
0o fo 255
um [0,1]
pular se f = 0
Nenhum
0110 011a ffff ffff
Se 'f' = 0, a prxima instruo buscada
durante a execuo da instruo actual
descartado e um NOP executado,
tornando este um de dois ciclos de instruo.
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1 (2)
Nota: 3 ciclos se pular e seguido
por uma instruo de 2-palavra.
Q1
Decodificar
Se pular:
Q1
No
operao
Q1
No
operao
No
operao
Exemplo:
Q2
No
operao
Q2
No
operao
No
operao
AQUI
NZERO
ZERO
=
=
=

=
Q3
No
operao
Q3
No
operao
No
operao
TSTFSZ
:
:
Q4
No
operao
Q4
No
operao
No
operao
Q2
Ler
registo 'f'
Q3
Processo
Dados
Q4
No
operao
XORLW
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Exclusive OR Literal com W
XORLW k
0o ko 255
(W). XOR. k W
N, Z
0000 1010 kkkk kkkk
Os contedos de W so XORed com
a 8 bits literal 'k'. O resultado colocado
em W.
1
1
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
literal 'k'
XORLW
B5h
1Ah
Q3
Processo
Dados
0AFh
Q4
Escreva-W
Exemplo:
Antes de Instruo
W =
Depois de Instruo
W =
Palavras:
Ciclos:
Q Activity Cycle:
Se pular e seguido por instruo 2 palavras:
CNT, 1
Antes de Instruo
PC
Depois de Instruo
Se CNT
PC
Se CNT
PC
Endereo (AQUI)
00h,
Endereo (ZERO)
00h,
Endereo (NZERO)
v 2009 Microchip Technology Inc. DS39632E pgina 353
PIC18F2455/2550/4455/4550
XORWF
Sintaxe:
Operandos:
Exclusive OU W com f
XORWF
0o fo 255
d [0,1]
um [0,1]
(W). XOR. (F) dest
N, Z
0001 10DA ffff ffff
Exclusive ou o contedo de W com
registo 'f'. Se 'd' '0 ', o resultado armazenado
em W. Se 'd' '1 ', o resultado armazenado de volta
no registo 'f' (default).
Se 'a' '0 ', o Banco de acesso est selecionado.
Se 'a' '1 ', o BSR usado para selecionar o
Banco GPR (padro).
Se 'a' '0 'ea instruo estendida
conjunto est habilitado, esta instruo opera
em Literal cadastradas offset Dirigindo
modo, sempre que f o 95 (5Fh). Ver
Seo 26.2.3 "byte-oriented e
Instrues de Bit-Oriented em cadastradas
Literal Modo de deslocamento " para mais detalhes.
1
1
Q1
Decodificar
Q2
Ler
registo 'f'
XORWF
AFh
B5h
1Ah
B5h
Q3
Processo
Dados
REG, 1, 0
Q4
Escreva para
destino
f {, {d, um}}
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo:
Antes de Instruo
REG =
W =
Depois de Instruo
REG =
W =
DS39632E pgina 354 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
26,2 Alargado conjunto de instrues
Alm dos 75 instrues padro da PIC18
conjunto de instrues, PIC18F2455/2550/4455/4550 dispositivos
tambm fornecem uma extenso opcional para o core
funcionalidade. As caractersticas adicionais incluem oito adi-
instrues adicionais que aumentam indireto e indexado
Operaes de endereamento ea implementao de
Modo de endereamento indexado offset Literal para muitos dos
instrues padro PIC18.
Os recursos adicionais do conjunto de instrues estendida
so desabilitados por padro. Para habilit-los, os usurios devem
definir
o bit de configurao XINST.
As instrues do conjunto estendido podem ser todos
classificadas como operaes literais, que quer manipular
Selecione o arquivo de registros, ou utiliz-los para cadastradas
Dirigindo-se. Duas das instrues, ADDFSR e
SUBFSR, cada um tem uma instncia adicional especial
para a utilizao de FSR2. Estas verses (ADDULNK e
SUBULNK) permitir o retorno automtico aps a execuo.
As instrues esto especificamente estendidos implementado
para optimizar o cdigo de programa reentrantes (isto , um cdigo
que
recursivo ou que utiliza uma pilha de software), escrito em
linguagens de alto nvel, particularmente C. Entre outros
coisas, eles permitem que os usurios que trabalham em alto nvel
linguagens para executar determinadas operaes sobre dados
Estruturas com mais eficincia. Estes incluem:
A alocao dinmica e desalocao de software
empilhe espao quando entram e saem
sub-rotinas
invocao Pointer Funo
Software Stack manipulao Pointer
A manipulao de variveis situadas em um software
pilha
Um resumo das instrues do estendida ins-
Conjunto o fornecida na Tabela 26-3. Descries detalhadas
so fornecidas em Seo 26.2.2 "Instruo estendida
Ajuste ". As descries de campo opcode na Tabela 26-1
(Pgina 314) aplicam-se tanto o padro e estendido
PIC18 instruo define.
Nota: A extenso do conjunto de instrues e
Modo de endereamento offset Literal cadastradas
foram projetadas para aplicaes de otimizao
escrito em C, o usurio pode provavelmente nunca
usar
estas instrues diretamente em assembler.
A sintaxe desses comandos pr-
vided como uma referncia para usurios que possam
estar
reviso de cdigo que tenha sido gerado
por um compilador.
26.2.1 EXTENDED sintaxe da instruo
A maioria das instrues extensas usar indexado
argumentos, usando um dos Selecione Arquivo e Registros
alguma compensao para especificar a origem ou o registo de
destino.
Quando um argumento para uma instruo serve como parte de
Endereamento indexado, est entre colchetes
("[]"). Isto feito para indicar que o argumento usado
como um ndice ou offset. O Assembler MPASM vontade
sinalizar um erro se ele determina que um ndice ou valor de
deslocamento
no est entre colchetes.
Quando o conjunto de instrues estendida estiver ativada, suportes
tambm so utilizados para indicar os argumentos de ndice no byte
instrues orientadas e bit-oriented. Isto , alm
para outras mudanas em sua sintaxe. Para mais detalhes, consulte
Seo 26.2.3.1 "Sintaxe da Instruo estendida com
Padro PIC18 Comandos ".
Nota: No passado, os colchetes tm sido
utilizado para denotar argumentos opcionais no
PIC18 e conjuntos de instrues anteriores. Neste
texto e ir para a frente, opcional
argumentos so indicados por chaves ("{}").
TABELA 26-3:
Mnemonic,
Operandos
ADDFSR
ADDULNK
CALLW
MOVSF
MOVSS
Pushl
SUBFSR
SUBULNK
F, K
k
Extenses para o PIC18 conjunto de instrues
Descrio
Adicionar Literal de FSR
Adicionar Literal para FSR2 e voltar
Chamada de subrotina usando WREG
Mova zs (fonte) para primeira palavra
fd (destino) 2 palavra
Mova zs (fonte) para primeira palavra
zd (destino) 2 palavra
Guarde a Literal FSR2,
Decremento FSR2
Subtrair Literal de FSR
Subtrair Literal de FSR2 e
Voltar
Ciclos
1
2
2
2
2
1
1
2
16-Bit Instruction Word
MSb
1110
1110
0000
1110
1111
1110
1111
1110
1110
1110
1000
1000
0000
1011
ffff
1011
xxxx
1010
1001
1001
ffkk
11kk
0001
0zzz
ffff
1zzz
xzzz
kkkk
ffkk
11kk
LSB
kkkk
kkkk
0100
zzzz
ffff
zzzz
zzzz
kkkk
kkkk
kkkk
Estado
Afetado
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
Nenhum
zs, fd
ZS, ZD
k
F, K
k
v 2009 Microchip Technology Inc. DS39632E pgina 355
PIC18F2455/2550/4455/4550
26.2.2
ADDFSR
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
literal 'k'
Q3
Processo
Dados
Q4
Escreva para
FSR
EXTENDED conjunto de instrues
Adicionar Literal de FSR
ADDFSR F, K
0o ko 63
f [0, 1, 2]
FSR (f) + k FSR (f)
Nenhum
1110 1000 ffkk kkkk
Os 6 bits literal "k" adicionado
contedo do FSR especificado pelo 'f'.
1
1
Estado afetados:
Encoding:
Descrio:
ADDULNK
Sintaxe:
Operandos:
Operao:
Adicionar Literal para FSR2 e voltar
ADDULNK k
0o ko 63
FSR2 + k FSR2,
(TOS) PC
Nenhum
1110 1000 11kk kkkk
Os 6 bits literal "k" adicionado
contedo de FSR2. A RETORNO ento
executado atravs do carregamento do PC com a
TOS.
A instruo tem dois ciclos de
executar, uma NOP realizada durante
o segundo ciclo.
Isto pode ser pensado como um especial
caso do ADDFSR instruo
onde f = 3 (binrio '11 '), que opera
apenas em FSR2.
1
2
Q1
Decodificar
No
Operao
Q2
Ler
literal 'k'
No
Operao
Q3
Processo
Dados
No
Operao
Q4
Escreva para
FSR
No
Operao
Exemplo: ADDFSR
03FFh
0422h
2, 23h
Palavras:
Ciclos:
Q Activity Cycle:
Antes de Instruo
FSR2 =
Depois de Instruo
FSR2 =
Exemplo: ADDULNK 23h
03FFh
0100h
0422h
(TOS)
Antes de Instruo
FSR2 =
PC =
Depois de Instruo
FSR2 =
PC =
Nota: Todas as instrues PIC18 pode levar um argumento rtulo opcional que antecede a instruo mnemnica para uso em
simblico endereamento. Se uma etiqueta utilizado, a sintaxe da instruo torna-se ento: {} argumento rtulo de
instrues (s).
DS39632E pgina 356 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
CALLW
Sintaxe:
Operandos:
Operao:
Sub-rotina chamada Usando WREG
CALLW
Nenhum
(PC + 2) TOS,
(W) PCL,
(PCLATH) PCH,
(PCLATU) PCU
Nenhum
0000 0000 0001 0100
Em primeiro lugar, o endereo de retorno (PC + 2),
empurrado para a pilha de retorno. Em seguida, o
contedo de W so escritos para PCL, o
valor existente descartado. Em seguida, o
contedo de PCLATH e so PCLATU
trancado em PCH e PCU,
respectivamente. O segundo ciclo
executado como um NOP enquanto que a instruo
nova instruo seguinte buscada.
Ao contrrio Chamada, no h opo para
atualizao W, STATUS ou BSR.
1
2
Q1
Decodificar
No
operao
Q2
Ler
WREG
No
operao
Q3
Empurrar PC
pilha
No
operao
Q4
No
operao
No
operao
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Exemplo: AQUI CALLW
Decodificar
endereo (AQUI)
10h
00h
06h
001006h
endereo (AQUI + 2)
10h
00h
06h
Exemplo:
Antes de Instruo
PC =
PCLATH =
PCLATU =
W =
Depois de Instruo
PC =
TOS =
PCLATH =
PCLATU =
W =
Q2 Q3 Q4
Ler
reg fonte
Escrever
registo 'f'
(Dest)
DetermineDetermine
fonte addr addr fonte
No
operao
No manequim
ler
No
operao
MOVSF
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
1 palavra (fonte)
2 palavra (destin.)
Descrio:
Mova cadastradas para f
MOVSF [ZS], fd
0o zs o 127
0o fd o 4095
((FSR2) + ZS) fd
Nenhum
1110
1111
1011
ffff
0zzz
ffff
zzzzs
ffffd
Estado afetados:
Encoding:
Descrio
Palavras:
Ciclos:
Q Activity Cycle:
O contedo do registo fonte so
mudou-se para destino registo 'fd'. O
endereo real do registo fonte
determinada pela adio de 7 bits literal
ZS compensar na primeira palavra com o valor de
FSR2. O endereo do destino
registo especificado pelo 12-bit literal
'Fd' na segunda palavra. Ambos os endereos
pode ser em qualquer parte dos dados de byte 4096
espao (000h para FFFh).
O MOVSF instruo no possvel utilizar o
PCL, TOSU, TOSH ou TOSL como o
registrador destino.
Se os pontos resultantes endereo de origem para
um registo de endereamento indireto, o
valor retornado ser 00h.
2
2
MOVSF
=
=
=
=
=
=
[05h], REG2
80h
33h
11h
80h
33h
33h
Antes de Instruo
FSR2
Contedo
de 85h
REG2
Depois de Instruo
FSR2
Contedo
de 85h
REG2
v 2009 Microchip Technology Inc. DS39632E pgina 357
PIC18F2455/2550/4455/4550
MOVSS
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
1 palavra (fonte)
2 palavra (destino)
Descrio
Mova cadastradas para indexado
MOVSS [ZS], [ZD]
0o zs o 127
0o zd o 127
((FSR2) + ZS) ((FSR2) + zd)
Nenhum
1110
1111
1011
xxxx
1zzz
xzzz
zzzzs
zzzzd
Pushl
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Guarde a Literal FSR2, decremento FSR2
Pushl k
0o ko 255
k (FSR2)
FSR2 - 1 FSR2
Nenhum
1110 1010 kkkk kkkk
A 8-bit literal 'k' escrito com os dados
endereo de memria especificado pelo FSR2. FSR2
decrementado por '1 'aps a operao.
Esta instruo permite que os usurios para empurrar
valores
para uma pilha de software.
1
1
Q1
Decodificar
Q2
Leia 'k'
Q3
Processo
dados
Q4
Escreva para
destino
O contedo do registo fonte so
mudou-se para o registo de destino. O
endereos de origem e de destino
registros so determinados pela adio do
"Zs" 7-bit deslocamentos literais ou 'zd',
respectivamente, para o valor de FSR2. Tanto
registos podem ser localizados em qualquer lugar
o espao de memria de dados de 4096 bytes
(000h para FFFh).
O MOVSS instruo no possvel utilizar o
PCL, TOSU, TOSH ou TOSL como o
registrador destino.
Se os pontos resultantes endereo de origem para
um registo de endereamento indireto, o
valor retornado ser 00h. Se o
resultantes endereo de destino aponta para
um registo de endereamento indireto, o
instruo ser executada como um NOP.
2
2
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo: Pushl 08h
=
=
=
=
01ECh
00h
01EBh
08h
Antes de Instruo
FSR2H: FSR2L
Memria (01ECh)
Depois de Instruo
FSR2H: FSR2L
Memria (01ECh)
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Decodificar
Q2 Q3 Q4
Ler
reg fonte
Escrever
para dest reg
DetermineDetermine
fonte addr addr fonte
Determinar
dest addr
Determinar
dest addr
Exemplo: MOVSS
=
=
=
=
=
=
[05h], [06h]
80h
33h
11h
80h
33h
33h
Antes de Instruo
FSR2
Contedo
de 85h
Contedo
de 86h
Depois de Instruo
FSR2
Contedo
de 85h
Contedo
de 86h
DS39632E pgina 358 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
SUBFSR
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Subtrair Literal de FSR
SUBFSR F, K
0o ko 63
f [0, 1, 2]
FSRf - k FSRf
Nenhum
1110 1001 ffkk kkkk
Os 6 bits literal "k" subtrado
o contedo da FSR especificado pelo
'F'.
1
1
Q1
Decodificar
Q2
Ler
registo 'f'
Q3
Processo
Dados
Q4
Escreva para
destino
Palavras:
Ciclos:
Exemplo:
Antes de Instruo
FSR2 =
Depois de Instruo
FSR2 =
SUBFSR 2, 23h
03FFh
03DCh
Q1
Decodificar
No
Operao
Encoding:
Descrio:
SUBULNK
Sintaxe:
Operandos:
Operao:
Subtrair Literal de FSR2 e voltar
SUBULNK k
0o ko 63
FSR2 - k FSR2,
(TOS) PC
Afetados Status: Nenhum
1110 1001 11kk kkkk
Os 6 bits literal "k" subtrado do
contedo da FSR2. A RETORNO ento
executado por carregar o PC com os TOS.
A instruo tem dois ciclos de
executar, uma NOP realizada durante a
segundo ciclo.
Isto pode ser considerado como um caso especial de
o SUBFSR instruo, onde f = 3 (binrio
'11 '), Que opera apenas em FSR2.
1
2
Q2
Ler
registo 'f'
No
Operao
Q3
Processo
Dados
No
Operao
Q4
Escreva para
destino
No
Operao
Palavras:
Ciclos:
Q Activity Cycle:
Q Activity Cycle:
Exemplo:
Antes de Instruo
FSR2 =
PC =
Depois de Instruo
FSR2 =
PC =
SUBULNK 23h
03FFh
0100h
03DCh
(TOS)
v 2009 Microchip Technology Inc. DS39632E pgina 359
PIC18F2455/2550/4455/4550
26.2.3 BYTE-orientado e
INSTRUES BIT orientada para
LITERAL modo offset INDEXADA
Ativando o conjunto de instrues PIC18
extenso pode causar aplicaes legadas
a se comportar de forma irregular ou no inteiramente.
26.2.3.1 Sintaxe da Instruo estendida com
Padro PIC18 Comandos
Nota:
Alm oito novos comandos no conjunto estendido,
permitindo que o conjunto de instrues estendida permite tambm
Modo de endereamento offset Literal cadastradas (Seo 5.6.1
"Endereamento indexado com Literal Offset"). Isto tem
um impacto significativo sobre a maneira que vrios comandos de
o conjunto de instrues padro PIC18 so interpretados.
Quando o conjunto estendido est desativado, aborda incorporar-
ded em opcodes so tratados como posies de memria literais:
, quer como um local de acesso ao Banco ('a' = 0) ou numa
Banco GPR designado pelo BSR ('a' = 1). Quando o
conjunto de instrues estendida estiver ativada e 'a' = 0,
no entanto, um argumento registo arquivo de 5Fh ou menos
interpretado como um deslocamento do valor do ponteiro em FSR2
e no como um endereo literal. Para fins prticos, isto
significa que todas as instrues que usam o bit de memria RAM
de acesso
como um argumento - ou seja, todos os byte-oriented e-bit
instrues orientadas, ou quase a metade do ncleo PIC18
instrues - podem se comportar de forma diferente quando o
conjunto de instrues estendida estiver ativada.
Quando o contedo FSR2 00h, os limites da
RAM de acesso so essencialmente remapeado ao seu original
valores. Isto pode ser til na criao de trs
cdigo compatvel. Se se utiliza esta tcnica, pode ser
necessrio para salvar o valor de FSR2 e restaur-lo
quando se move para trs e para frente entre C e montagem
rotinas, a fim de preservar o ponteiro da pilha. Usurios
tambm deve ter em mente os requisitos de sintaxe do
alargado conjunto de instrues (ver Seo 26.2.3.1
"Sintaxe da Instruo estendida com a Norma PIC18
Comandos ").
Embora o Literal Indexado offset Modo de endereamento
pode ser muito til para a pilha e o apontador dinmico
manipulao, mas tambm pode ser muito chato se um simples
operao aritmtica realizada na errado
registrar. Os usurios que esto acostumados com o PIC18
programao deve ter em mente que, quando a
conjunto de instrues estendida estiver ativada, cadastre-se
endereos
de 5Fh ou menos so usados para Indexado Literal offset
Dirigindo-se.
Exemplos representativos de tpico byte-oriented e
instrues de bit-oriented na Literal Indexado offset
Modo de endereamento so fornecidos na pgina seguinte para
mostrar como a execuo afetado. O operando
condies indicadas nos exemplos so aplicveis a todos
esses tipos de instrues.
Quando o conjunto de instrues estendida estiver ativada, o
arquivo
registrar argumento, 'f', no padro byte-oriented e
comandos bit-oriented substitudo por compensar o literal
valor, 'k'. Como j mencionado, esta ocorre apenas quando 'f'
inferior ou igual a 5Fh. Quando um valor de deslocamento
utilizado,
deve ser indicado por colchetes ("[]"). Como
as instrues extensas, o uso de suportes indica
para o compilador que o valor deve ser interpretado como um
ndice ou uma compensao. Omitindo os suportes, ou usando um
valor maior que 5Fh entre colchetes, ir gerar um
erro no Assembler MPASM.
Se o argumento ndice est devidamente enquadrada por Indexado
Literal offset Modo de endereamento, a RAM de acesso
argumento no for especificado, ele ser automaticamente
assumido ser '0 '. Isto est em contraste com a norma
operao (instruo estendida definir desativado) quando 'a'
definida com base no endereo de destino. Declarando o
Bit RAM de acesso nesta modalidade tambm ir gerar um erro
no Assembler MPASM.
O argumento destino, 'd', funciona como antes.
Nas verses mais recentes da montadora MPASM,
suporte de idioma para o conjunto de instrues estendida deve
ser expressamente invocada. Isto feito quer com o
opo de linha de comando, / Y ou a directiva PE no
listagem de origem.
26.2.4 Consideraes ao
Ativando o EXTENDED
Conjunto de instrues
importante notar que as extenses do instru-
set o pode no ser benfico para todos os usurios. Em particular,
os usurios que no esto escrevendo cdigo que usa um software
pilha no pode se beneficiar do uso das extenses para o
conjunto de instrues.
Alm disso, o Literal Indexado offset Dirigindo
modo pode criar problemas com aplicaes legadas
escrito montadora PIC18. Isto porque
instrues no cdigo legado pode tentar resolver
registros no Banco de Acesso abaixo 5Fh. Uma vez que estes
endereos so interpretados como offsets literais para FSR2
quando a extenso do conjunto de instrues ativado, o
aplicao pode ler ou gravar os dados errados
endereos.
Ao portar um aplicativo para o PIC18F2455/2550 /
4455/4550, muito importante ter em conta o tipo de
cdigo. A, aplicao em larga reentrncia que est escrito na 'C'
e se beneficiariam de compilao eficiente vai fazer bem
quando usando o conjunto de extenses de instruo. Legado
aplicaes que utilizam fortemente o Banco Access mais
provavelmente no se beneficiar do uso da instruo estendida
definido.
DS39632E pgina 360 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
ADDWF
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
ADD W para indexado
(Modo de deslocamento Literal cadastradas)
ADDWF
0o ko 95
d [0,1]
(W) + ((FSR2) + k) dest
N, OV, C, CC, Z
0010 01d0 kkkk kkkk
Os contedos de W so adicionados
contedo do registrador indicado pela
FSR2, compensado pelo valor de 'k'.
Se 'd' '0 ', o resultado armazenado em W. Se' d '
'1 ', o resultado armazenado em volta
registo 'f' (default).
1
1
Q1
Decodificar
Q2
Leia 'k'
Q3
Processo
Dados
[OFST], 0
=
=
=
=
=
=
17h
2Cr
0A00h
20h
37h
20h
SETF
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Leia 'k'
Q3
Processo
Dados
[OFST]
2Cr
0A00h
00h
FFh
Q4
Escrever
registrar
Definir cadastradas
(Modo de deslocamento Literal cadastradas)
SETF [k]
0o ko 95
FFh ((FSR2) + k)
Nenhum
0110 1000 kkkk kkkk
O contedo do registo indicado pela
FSR2, compensado por 'k', so definidos a FFh.
1
1
Q4
Escreva para
destino
[K] {, d}
BSF
Sintaxe:
Operandos:
Operao:
Estado afetados:
Encoding:
Descrio:
Palavras:
Ciclos:
Q Activity Cycle:
Q1
Decodificar
Q2
Ler
registo 'f'
BSF
=
=
=
=
Q3
Processo
Dados
Q4
Escreva para
destino
Bit Set cadastradas
(Modo de deslocamento Literal cadastradas)
BSF [k], b
0o fo 95
0obo7
1 ((FSR2) + k) <b>
Nenhum
1000 bbb0 kkkk kkkk
Bit 'b' do registro indicado por FSR2,
compensada pelo valor de 'k', est definido.
1
1
Palavras:
Ciclos:
Q Activity Cycle:
Exemplo: [FLAG_OFST], 7
0Ah
0A00h
55h
D5H
Exemplo: ADDWF
Antes de Instruo
W
OFST
FSR2
Contedo
de 0A2Ch
Depois de Instruo
W
Contedo
de 0A2Ch
Antes de Instruo
FLAG_OFST
FSR2
Contedo
de 0A0Ah
Depois de Instruo
Contedo
de 0A0Ah
Exemplo: SETF
=
=
=
=
Antes de Instruo
OFST
FSR2
Contedo
de 0A2Ch
Depois de Instruo
Contedo
de 0A2Ch
v 2009 Microchip Technology Inc. DS39632E pgina 361
PIC18F2455/2550/4455/4550
26.2.5 CONSIDERAES ESPECIAIS COM
MICROCHIP MPLAB IDE TOOLS
As ltimas verses dos softwares da Microchip tem
foi projetado para suportar completamente a instruo estendida
conjunto da famlia de PIC18F2455/2550/4455/4550
dispositivos. Isto inclui o compilador MPLAB C18 C,
MPASM linguagem Assembly e MPLAB Integrated
Ambiente de desenvolvimento (IDE).
Ao selecionar um dispositivo de destino para o software
desenvolvimento MPLAB IDE automaticamente vai definir padro
Bits de configurao para esse dispositivo. A configurao padro
para
o bit de configurao XINST '0 ', impossibilitando o
instruo estendida definir e cadastradas Literal offset
Modo de endereamento. Para a boa execuo de aplicaes
desenvolvido para tirar vantagem do prolongado
conjunto de instrues, XINST deve ser definido durante
programao.
Para desenvolver software para o conjunto de instrues estendida,
o usurio deve ativar o suporte para as instrues e
o modo de endereamento indexado em sua ferramenta de
linguagem (s).
Dependendo do ambiente a ser utilizado, esta pode ser
feito de vrias maneiras:
A opo de menu ou caixa de dilogo dentro do
meio ambiente, que permite que o utilizador configure o
ferramenta de linguagem e suas configuraes para o projeto
A opo de linha de comando
A directiva no cdigo fonte
Estas opes variam entre diferentes compiladores,
montadoras e ambientes de desenvolvimento. Os usurios so
encorajados a rever a documentao acompanh-
o dos seus sistemas de desenvolvimento para a adequada
informao.
DS39632E pgina 362 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
27,0 APOIO AO DESENVOLVIMENTO 27,1
Os microcontroladores PIC so compatveis com um completo
gama de ferramentas de desenvolvimento de hardware e software:
Ambiente de Desenvolvimento Integrado
- MPLAB IDE Software
Montadores / Compiladores / Linkers
- MPASMTM Assembler
- MPLAB C18 e C30 MPLAB C Compiladores
- MPLINKTM objeto Linker /
MPLIBTM Bibliotecrio de Objetos
- MPLAB ASM30 Assembler / Linker / Library
Simuladores
- MPLAB SIM Software Simulator
Emuladores
- MPLAB ICE 2000 Emulator In-Circuit
- MPLAB REAL ICE In-Circuit Emulator
In-Circuit Debugger
- MPLAB ICD 2
Os programadores de dispositivos
- PICSTART Plus Development Programmer
- MPLAB PM3 Programador de Dispositivo
- PICkit 2 Desenvolvimento Programmer
Demonstrao e Desenvolvimento de Baixo Custo
Placas e kits de avaliao
MPLAB Integrated Development
Ambiente de software
O software MPLAB IDE traz uma facilidade de software
desenvolvimento indito na 8/16-bit micro-
mercado controlador. O MPLAB IDE um Windows
aplicao baseada em sistema operacional que contm:
Uma nica interface grfica para todas as ferramentas de
depurao
- Simulador
- Programador (vendido separadamente)
- Emulador (vendido separadamente)
- In-Circuit Debugger (vendido separadamente)
Um editor full-featured com o contexto de um cdigo de cores
Um gerente de projeto mltipla
janelas de dados personalizvel com edio diretas de
contedo
depurao de cdigo fonte de alto nvel
dispositivo inicializador Visual para registo fcil
inicializao
Passe o mouse sobre inspeo varivel
Arraste e solte as variveis de fonte para assistir
Windows
Ampla ajuda on-line
Integrao de ferramentas de terceiros selecionados, como
HI-TECH Software C Compiladores e IAR
Compiladores C
O MPLAB IDE permite que voc:
Edite seus arquivos de origem (ou montagem ou C)
Um toque montar (ou compilar) e descarregue
para PIC MCU emulador e ferramentas do simulador
(Atualiza automaticamente todas as informaes do projeto)
Debug usando:
- Os arquivos de origem (montagem ou C)
- Mixed montagem e C
- Cdigo de Mquina
MPLAB IDE suporta vrias ferramentas de depurao em uma
paradigma de desenvolvimento nico, a partir da relao custo-
benefcio
simuladores, por meio de baixo custo depuradores no circuito, a
emuladores completo. Isto elimina a aprendizagem
curva quando a atualizao para ferramentas com maior flexibilidade
e poder.
v 2009 Microchip Technology Inc. DS39632E pgina 363
PIC18F2455/2550/4455/4550
27,2 MPASM Assembler 27.5
O Assembler MPASM uma full-featured, universal
macro assembler para todos os PIC MCUs.
O Assembler MPASM gera objeto relocvel
arquivos para o objeto Linker MPLINK, HEX padro Intel
, arquivos de mapa para o uso de memria detalhes e smbolo
de referncia, arquivos LST absolutos que contm linhas de cdigo
e cdigo de mquina gerado e arquivos COFF para
depurao.
Os recursos Assembler MPASM incluem:
Integrao com projetos de IDE MPLAB
macros definidas pelo usurio para agilizar
cdigo assembly
montagem condicional para multi-purpose
arquivos de origem
directivas que permitem o controle total sobre a
processo de montagem
MPLAB ASM30 Assembler, Linker
e Bibliotecrio
MPLAB ASM30 Assembler produz relocatable
cdigo de mquina de linguagem assembly simblico para
dispositivos dsPIC30F. MPLAB C30 C Compiler usa o
assembler para produzir seu arquivo objeto. A montadora
gera arquivos objeto relocvel que pode ser
arquivada ou ligado com outros arquivos objeto relocvel e
arquivos para criar um arquivo executvel. Caractersticas notveis
da montadora incluem:






Suporte para todo o conjunto de instrues dsPIC30F
O suporte para dados de ponto fixo e ponto flutuante
Interface de linha de comando
Conjunto directiva rico
Linguagem flexvel macro
Compatibilidade IDE MPLAB
27,6 MPLAB SIM Software Simulator
27.3 MPLAB C18 e C30 MPLAB
Compiladores C
O MPLAB C18 e C30 Desenvolvimento Cdigo MPLAB
Sistemas esto completas ANSI C compiladores para
PIC18 da Microchip PIC24 e famlias de microcon-
trollers e da famlia do digital dsPIC30 e dsPIC33
controladores de sinal. Esses compiladores fornecer poderosa
capacidades de integrao, otimizao de cdigo superior e
facilidade de uso no foi encontrado com outros compiladores.
Para facilitar a depurao de cdigo fonte, os compiladores fornecer
informao smbolo que otimizado para o MPLAB IDE
depurador.
O MPLAB SIM Software Simulator permite que o cdigo
desenvolvimento em um ambiente de PC hospedado por simula-
ing o PIC MCUs e DSCs dsPIC em uma instruo
nvel. Em qualquer instruo dada, as reas de dados pode ser
examinado ou alterado e os estmulos podem ser aplicadas a partir
de
um controlador de estmulo incompleta. Registos pode ser
logado para arquivos, para posterior anlise em tempo de execuo.
O trao
buffer e visor do analisador lgico estender o poder de
o simulador para registrar e acompanhar a execuo do programa,
aes de I / O, a maioria dos perifricos e registros internos.
O MPLAB SIM Software Simulator apoia plenamente
depurao simblica usando o MPLAB C18 e
MPLAB C30 C Compiladores, eo MPASM e
MPLAB ASM30 montadoras. O simulador de software
oferece a flexibilidade para desenvolver e depurar cdigo fora
do ambiente do laboratrio de hardware, tornando-o um
excelente ferramenta de desenvolvimento de software econmico.
27,4 MPLINK objeto Linker /
MPLIB Bibliotecrio de Objetos
O objeto Linker MPLINK combina relocatable
objetos criados pelo Assembler MPASM ea
MPLAB C18 C Compiler. Ele pode ligar objetos relocalizveis
de bibliotecas pr-compilados, usando as diretivas de um
script de vinculador.
O bibliotecrio objeto MPLIB gerencia a criao e
modificao de arquivos de biblioteca de cdigo pr-compilado.
Quando
a rotina de uma biblioteca chamada a partir de um arquivo de
origem, s
os mdulos que contm essa rotina sero ligadas em
com a aplicao. Isto permite que grandes bibliotecas de ser
utilizados de forma eficiente em muitas aplicaes diferentes.
O objeto vinculador / biblioteca recursos incluem:
Eficiente ligao de bibliotecas individuais em vez de muitos
arquivos menores
manuteno do cdigo aprimorado pelo agrupamento
mdulos relacionados juntos
criao flexvel de bibliotecas com mdulo fcil
perfil, substituio, eliminao e extrao
DS39632E pgina 364 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
27,7 MPLAB ICE 2000
Alta Performance
Emulador In-Circuit
27,9 MPLAB ICD 2 In-Circuit Debugger
Da Microchip In-Circuit Debugger, MPLAB ICD 2, um
poderosa e de baixo custo, ferramenta de desenvolvimento em
tempo de execuo,
conectando ao PC host via RS-232 ou de alta velocidade
Interface USB. Esta ferramenta baseada no flash PIC
Microcontroladores e pode ser utilizado para desenvolver para estes
e outros
PIC MCUs e DSCs dsPIC. O MPLAB ICD 2 utiliza
a capacidade de depurao no circuito construdo no Flash
dispositivos. Esse recurso, juntamente com o Microchip da In-Circuit
Serial ProgrammingTM (ICSPTM) protocolo, oferece boa relao
custo-
eficaz, no circuito de depurao do Flash a partir do grfico
interface do usurio do MPLAB Integrated Development
Meio Ambiente. Isso permite que um designer para desenvolver e
depurar o cdigo fonte definindo pontos de interrupo, nica etapa-
ping e variveis assistindo e status da CPU e
registradores perifricos. Correndo a toda velocidade permite
testar hardware e aplicaes em tempo real. MPLAB
CID 2 tambm serve como um programador para desenvolvimento
dispositivos PIC selecionados.
O ICE MPLAB 2000 In-Circuit Emulator destinado
para fornecer o engenheiro de desenvolvimento de produtos com um
completa ferramenta de design para definir microcontrolador PIC
microcontroladores. Software de controle do ICE MPLAB
2000 In-Circuit Emulator avanada pelo MPLAB
Ambiente de Desenvolvimento Integrado, que permite
edio, construo, transferncia e depurao fonte
a partir de um nico meio.
O ICE MPLAB 2000 um emulador completo
sistema com trao avanado, trigger e os dados de monitor
caractersticas ING. Mdulos de processador intercambiveis
permitem
que o sistema seja facilmente reconfigurado para a emulao de
diferentes processadores. A arquitetura do MPLAB
ICE-2000 No circuito emulador permite a expanso
apoiar novos microcontroladores PIC.
O ICE MPLAB 2000 In-Circuit Emulator sistema tem
foi concebido como um sistema de emulao em tempo real com
recursos avanados que so normalmente encontrados em mais
ferramentas de desenvolvimento caras. A plataforma PC e
sistema operacional de 32 bits Microsoft Windows foram
escolhido para melhor fazer esses recursos disponveis em uma
aplicao simples e unificada.
27,10 MPLAB PM3 Programador de Dispositivo
O MPLAB PM3 Programador de Dispositivo um universal,
CE programador dispositivo compatvel com programvel
verificao de tenso na VDDMIN e VDDMAX para
a mxima confiabilidade. Possui um grande display LCD
(128 x 64) para menus e mensagens de erro e um modu-
lar, montagem de encaixe destacvel para suportar vrios
tipos de pacotes. O conjunto de cabo ICSP est includo
como um produto padro. No modo autnomo, o MPLAB
PM3 Programmer dispositivo pode ler, verificar e programa
PIC dispositivos sem uma conexo de PC. Ele tambm pode definir
proteo de cdigo neste modo. O MPLAB PM3
conecta-se ao PC host via RS-232 ou o cabo USB.
O MPLAB PM3 tem comunicaes de alta velocidade e
algoritmos otimizados para a programao rpida de grande
dispositivos de memria e incorpora um carto SD / MMC para
apresentar pedidos de dados seguras e armazenamento.
27,8 MPLAB REAL ICE In-Circuit
Sistema Emulator
MPLAB REAL ICE In-Circuit Emulator sistema
Prximo emulador de alta velocidade gerao da Microchip para
Microchip flash DSC e dispositivos MCU. Ele depura e
programas PIC Flash MCUs e dsPIC DSCs flash
com a easy-to-use, poderoso interface grfica de
o MPLAB Integrated Development Environment (IDE),
includos em cada kit.
A sonda REAL ICE MPLAB est ligado ao carto
PC do engenheiro usando uma interface USB 2.0 de alta velocidade
e
est ligado ao alvo ou com um conector
compatvel com o sistema popular MPLAB ICD 2
(RJ11) ou com a nova alta velocidade, o rudo tolerante, Low-
Sinal de interconexo Diferencial tenso (LVDS)
(CAT5).
MPLAB REAL ICE atualizvel campo atravs futuro
downloads de firmware em MPLAB IDE. Nas prximas
lanamentos de MPLAB IDE, novos dispositivos sero apoiados,
e novos recursos sero adicionados, como software break-
pontos e rastreamento de cdigo de montagem. MPLAB REAL ICE
oferece vantagens significativas sobre os emuladores competitivos
incluindo o baixo custo, a emulao de velocidade total e em tempo
real
relgios variveis, anlise de traos, pontos de interrupo
complexos, uma
interface de sonda robusto e longo (at trs metros)
cabos de interconexo.
v 2009 Microchip Technology Inc. DS39632E pgina 365
PIC18F2455/2550/4455/4550
27.11 PICSTART Alm disso Desenvolvimento
Programador
O PICSTART Alm disso Desenvolvimento Programmer um
fcil de usar e de baixo custo, programador prottipo. Ele
se conecta ao PC atravs de uma porta COM (RS-232). MPLAB
Software de ambiente de desenvolvimento integrado faz
usando o programador simples e eficiente. O
PICSTART Alm disso Programmer Desenvolvimento apoia
a maioria dos dispositivos PIC em DIP pacotes de at 40 pinos.
Maiores dispositivos de contagem de pinos, tais como o e
PIC16C92X
PIC17C76X, podero ser apoiadas com um adaptador de tomada.
O programador PICSTART Alm disso, o desenvolvimento CE
compliant.
27.13 demonstrao, Desenvolvimento e
Quadros de Avaliao
Uma grande variedade de demonstrao, desenvolvimento e
placas de avaliao para vrios PIC MCUs e dsPIC
DSCs permite o desenvolvimento rpido de aplicaes em plena
funo de
sistemas tradicionais. A maioria das placas incluem reas de
prototipagem para
adio de circuitos personalizados e fornecer firmware aplicao
e um cdigo para exame e modificao fonte.
As placas de suporte a uma variedade de recursos, incluindo LEDs,
sensores de temperatura, interruptores, alto-falantes, RS-232
interfaces, monitores LCD, potencimetros e adicionais
Memria EEPROM.
As placas de demonstrao e desenvolvimento podem ser
utilizado em ambientes de ensino, para prototipagem personalizado
circuitos e para aprender sobre vrios microcontrolador
aplicaes.
Alm do PICDE e dsPICDEM demons-
stration / desenvolvimento srie placa de circuitos, Microchip
tem uma linha de kits de avaliao e demonstrao de software
para o projeto do filtro analgico, KEELOQ segurana ICs, CAN,
IrDA , PowerSmart gerenciamento de bateria, SEEVAL
sistema de avaliao, Sigma-Delta ADC, a vazo
deteco, alm de muitos mais.
Consulte a pgina web Microchip (www.microchip.com)
para a lista completa de demonstrao, o desenvolvimento
e kits de avaliao.
27,12 PICkit 2 Programmer Desenvolvimento
O 2 Programmer Desenvolvimento PICkit um baixo custo
programador e depurador selecionado dispositivo flash com
uma ferramenta easy-to-use interface para programao de muitos
dos
Linha de base da Microchip, mid-range e PIC18F famlias de
Microcontroladores memria flash. O PICkit 2 Starter Kit
inclui uma placa de desenvolvimento de prottipos, doze
lies sequenciais, software e PICC da HI-TECH
Lite compilador C, e projetado para ajudar a chegar at a
velocidade
rapidamente usando microcontroladores PIC . O kit proporciona
tudo que necessrio para programar, avaliar e desenvolver
aplicaes utilizando poderoso, mid-range da Microchip
Famlia memria flash de microcontroladores.
DS39632E pgina 366 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
28,0 CARACTERSTICAS ELTRICAS
Pontuaes mximas absolutas ()
Temperatura ambiente, sob . -40 C a +85 C
A temperatura de armazenamento -65 C a 150 C
Tenso em qualquer pino em relao ao VSS (exceto VDD e MCLR) (Nota 3) ..................................... -0.3V para (VDD + 0.3V)
Tenso em VDD com relao ao VSS -0.3V a 7,5 V
Tenso no MCLR com relao ao VSS (Nota 2) .................................................. ....................................... 0V para 13,25 V
Dissipao de potncia total (Nota 1)
A corrente mxima do pino VSS mA
Corrente mxima em pino VDD mA
Braadeira de entrada atual, IIK (VI <0 ou VI> 2 0 mA
Sada braadeira atual, IOK (VO <0 ou VO> VDD) mA
Corrente mxima de sada afundado por qualquer I / O mA
Corrente mxima de sada originado por qualquer pino I / O mA
Afundado mximas atuais por todas as portas mA
Corrente mxima obtida por todas as portas mA
Nota 1: A dissipao de potncia calculado como se segue:
PDIS = VDD x {IDD - IOH} + {(VDD - VOH) x IOH} + ( OL x LIO)
2: Picos de tenso abaixo VSS no pino MCLR/VPP/RE3, induzindo correntes superiores a 80 mA, pode causar
trava-up. Assim, um resistor srie de 50-100 deve ser usado quando a aplicao de um nvel "baixo" para o MCLR / VPP /
RE3 pinos, ao invs de puxar este pino diretamente ao VSS.
3: Quando o regulador USB interno est habilitado ou VUSB alimentado externamente, RC4 e RC5 so limitados a-0.3V
a (VUSB + 0.3V) em relao ao VSS.
AVISO: Salienta superiores s listadas em "Absolute Maximum Ratings" pode causar danos permanentes ao
dispositivo. Esta uma operao de classificao estresse s e funcional do dispositivo naquelas ou quaisquer outras condies acima
daqueles
indicada nas listagens de operao desta especificao no est implcita. Exposio a condies mximas de classificao para
perodos prolongados pode afetar a confiabilidade do dispositivo.
v 2009 Microchip Technology Inc. DS39632E pgina 367
PIC18F2455/2550/4455/4550
FIGURA 28-1: PIC18F2455/2550/4455/4550 TENSO-freqncia grfico (Industrial)
6.0V
5.5V
5.0V
4.5V
4.0V
3.5V
3.0V
2.5V
2.0V
Tenso
4.2V
48 MHz
Freqncia
FIGURA 28-2: PIC18LF2455/2550/4455/4550 TENSO-freqncia grfico (INDUSTRIAL
Low Voltage)
6.0V
5.5V
5.0V
4.5V
4.0V
4.2V
Tenso
3.5V
3.0V
2.5V
2.0V
4 MHz 40 MHz 48 MHz
Freqncia
Nota 1: VDDAPPMIN a tenso mnima de um dispositivo PIC na aplicao.
2: Para 2,0 <VDD <4,2 V, VMAX = (16.36 MHz / V) (VDDAPPMIN - 2.0V) + 4 MHz
3: Para VDD c 4,2 V, 48 MHz = VMAX.
DS39632E pgina 368 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
28,1 DC Caractersticas: Tenso de alimentao
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Min
2.0(2)
3.0(2)
D002
D003
VDR
VPOR
RAM de Reteno de Dados
Tenso (1)
VDD Iniciar Tenso
para garantir Internal Power-on
Redefinir Signal
VDD subida da taxa de
para garantir Internal Power-on
Redefinir Signal
Brown-out Tenso
BORV1: BORV0 = 11
BORV1: BORV0 = 10
BORV1: BORV0 = 01
BORV1: BORV0 = 00
Legenda:
Nota 1:
2:
2,00
2.65
4.11
4.36
2,05
2.79
4.33
4.59
2.16
2.93
4.55
4.82
V
V
V
V
1.5
-
Typ
-
-
-
-
Unidades de Max.
5.5
5.5
-
0,7
V
V
V
V Ver Seo 4.3 "Power-on Reset (POR)"
para mais detalhes
Condies
CE, HS, XT e modos de oscilador interno
HSPLL, XTPLL, ECPIO e ECPLL
Modos de oscilador
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
No.
D001
Smbolo
VDD
Caracterstica
Tenso de alimentao
D004 SVDD 0,05 - - V / ms Veja Seo 4.3 "Power-on Reset (POR)"
para mais detalhes
D005 VBOR
Sombreamento de linhas auxiliar na leitura da tabela.
Este o limite a que VDD pode ser baixado no modo de suspenso, ou durante uma reinicializao do dispositivo, sem a perda de
dados de memria RAM.
Os mnimos estabelecidos aplicveis aos produtos PIC18LF nesta famlia dispositivo. PIC18F produtos nesta famlia de dispositivos
so classificados para mnimo 4.2V em todos os modos de oscilador.
v 2009 Microchip Technology Inc. DS39632E pgina 369
PIC18F2455/2550/4455/4550
28,2 DC Caractersticas: Poder-Down e fornecer corrente
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Typ Max Unidades Condies
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
Smbolo
No.
Dispositivo
Poder-Down atual (IPD) (1)
PIC18LFX455/X550 0,1
0,1
0,2
PIC18LFX455/X550 0,1
0,1
0.3
Todos os dispositivos 0,1
0,1
0.4
Legenda:
Nota 1:
2:
0.95
1.0
5
1.4
2
8
1.9
2.0
15
A
A
A
A
A
A
A
A
A
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
VDD = 2.0V
(Modo de suspenso)
VDD = 3.0V
(Modo de suspenso)
VDD = 5.0V
(Modo de suspenso)
3:
4:
Sombreamento de linhas auxiliar na leitura da tabela.
O poder-down atual no modo de suspenso no dependem do tipo de oscilador. Poder-down corrente medida
com a parte no modo de suspenso, com todos os pinos de I / O em estado de alta impedncia e amarrado a recursos VDD ou VSS
e tudo o que
adicionar delta atual deficientes (como WDT, Timer1 oscilador, BOR, etc.)
A corrente de alimentao principalmente uma funo da tenso de operao, a frequncia e modo. Outros fatores, tais como
pinos de I / O
carregamento e taxa de comutao, o tipo de oscilador e circuito, padro de execuo de cdigo interno e temperatura, tambm
um impacto no consumo de corrente.
As condies de ensaio para todas as medies IDD no modo de operao ativa so:
OSC1 = onda quadrada externa, de rail-to-rail, todos os pinos de I / O tri-indicada, puxada para VDD ou VSS;
MCLR = VDD; WDT ativado / desativado, conforme especificado.
32 cristais kHz padro de baixo custo tm uma faixa de temperatura de operao de -10 C a +70 C. Alargado
cristais temperatura esto disponveis a um custo muito mais elevado.
BOR e HLVD permitir referncia gap interno. Com ambos os mdulos ativados, o consumo de corrente ser
menos do que a soma de ambas as especificaes.
DS39632E pgina 370 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
28,2 DC Caractersticas: Poder-Down e fornecer corrente
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial) (Continuao)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Typ Max Unidades Condies
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
Smbolo
No.
Dispositivo
Corrente de suprimento (IDD) (2)
PIC18LFX455/X550 15
15
15
32
30
29
63
60
57
168
160
152
1
1
1
1.3
1.2
1.1
2.3
2.2
2.1
2.1
2.0
1.9
3.0
3.0
3.0
5.3
5
4.8
A
A
A
A
A
A
A
A
A
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
VDD = 5.0V
VDD = 3.0V
FOSC = 4 MHz
(Modo RC_RUN,
Fonte INTOSC)
VDD = 2.0V
VDD = 5.0V
VDD = 3.0V
FOSC = 1 MHz
(Modo RC_RUN,
Fonte INTOSC)
VDD = 2.0V
VDD = 5.0V
VDD = 3.0V
FOSC = 31 kHz
(Modo RC_RUN,
Fonte INTRC)
VDD = 2.0V
PIC18LFX455/X550 40
35
30
Todos os dispositivos 105
90
80
PIC18LFX455/X550 0,33
0,33
0,33
PIC18LFX455/X550 0,6
0,6
0,6
Todos os dispositivos 1.1
1.1
1.0
PIC18LFX455/X550 0.8
0.8
0.8
PIC18LFX455/X550 1.3
1.3
1.3
Todos os dispositivos 2,5
2,5
2,5
Legenda:
Nota 1:
2:
3:
4:
Sombreamento de linhas auxiliar na leitura da tabela.
O poder-down atual no modo de suspenso no dependem do tipo de oscilador. Poder-down corrente medida
com a parte no modo de suspenso, com todos os pinos de I / O em estado de alta impedncia e amarrado a recursos VDD ou VSS
e tudo o que
adicionar delta atual deficientes (como WDT, Timer1 oscilador, BOR, etc.)
A corrente de alimentao principalmente uma funo da tenso de operao, a frequncia e modo. Outros fatores, tais como
pinos de I / O
carregamento e taxa de comutao, o tipo de oscilador e circuito, padro de execuo de cdigo interno e temperatura, tambm
um impacto no consumo de corrente.
As condies de ensaio para todas as medies IDD no modo de operao ativa so:
OSC1 = onda quadrada externa, de rail-to-rail, todos os pinos de I / O tri-indicada, puxada para VDD ou VSS;
MCLR = VDD; WDT ativado / desativado, conforme especificado.
32 cristais kHz padro de baixo custo tm uma faixa de temperatura de operao de -10 C a +70 C. Alargado
cristais temperatura esto disponveis a um custo muito mais elevado.
BOR e HLVD permitir referncia gap interno. Com ambos os mdulos ativados, o consumo de corrente ser
menos do que a soma de ambas as especificaes.
v 2009 Microchip Technology Inc. DS39632E pgina 371
PIC18F2455/2550/4455/4550
28,2 DC Caractersticas: Poder-Down e fornecer corrente
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial) (Continuao)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Typ Max Unidades Condies
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
Smbolo
No.
Dispositivo
Corrente de suprimento (IDD) (2)
PIC18LFX455/X550 2.9
3.1
3.6
8
8
11
11
11
15
16
16
36
350
350
350
500
500
500
1
1
1
500
500
500
900
900
900
1.6
1.5
1.4
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
mA
mA
mA
A
A
A
A
A
A
mA
mA
mA
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
VDD = 5.0V
VDD = 3.0V
FOSC = 4 MHz
(Modo RC_IDLE,
Fonte INTOSC)
VDD = 2.0V
VDD = 5.0V
VDD = 3.0V
FOSC = 1 MHz
(Modo RC_IDLE,
Fonte INTOSC)
VDD = 2.0V
VDD = 5.0V
VDD = 3.0V
FOSC = 31 kHz
(Modo RC_IDLE,
Fonte INTRC)
VDD = 2.0V
PIC18LFX455/X550 4,5
4.8
5.8
Todos os dispositivos 9.2
9,8
11,4
PIC18LFX455/X550 165
175
190
PIC18LFX455/X550 250
270
290
Todos os dispositivos de
0,50
0,52
0.55
PIC18LFX455/X550 340
350
360
PIC18LFX455/X550 520
540
580
Todos os dispositivos 1.0
1.1
1.1
Legenda:
Nota 1:
2:
3:
4:
Sombreamento de linhas auxiliar na leitura da tabela.
O poder-down atual no modo de suspenso no dependem do tipo de oscilador. Poder-down corrente medida
com a parte no modo de suspenso, com todos os pinos de I / O em estado de alta impedncia e amarrado a recursos VDD ou VSS
e tudo o que
adicionar delta atual deficientes (como WDT, Timer1 oscilador, BOR, etc.)
A corrente de alimentao principalmente uma funo da tenso de operao, a frequncia e modo. Outros fatores, tais como
pinos de I / O
carregamento e taxa de comutao, o tipo de oscilador e circuito, padro de execuo de cdigo interno e temperatura, tambm
um impacto no consumo de corrente.
As condies de ensaio para todas as medies IDD no modo de operao ativa so:
OSC1 = onda quadrada externa, de rail-to-rail, todos os pinos de I / O tri-indicada, puxada para VDD ou VSS;
MCLR = VDD; WDT ativado / desativado, conforme especificado.
32 cristais kHz padro de baixo custo tm uma faixa de temperatura de operao de -10 C a +70 C. Alargado
cristais temperatura esto disponveis a um custo muito mais elevado.
BOR e HLVD permitir referncia gap interno. Com ambos os mdulos ativados, o consumo de corrente ser
menos do que a soma de ambas as especificaes.
DS39632E pgina 372 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
28,2 DC Caractersticas: Poder-Down e fornecer corrente
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial) (Continuao)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Typ Max Unidades Condies
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
Smbolo
No.
Dispositivo
Corrente de suprimento (IDD) (2)
PIC18LFX455/X550 250
250
250
500
500
500
650
650
650
1.6
1.5
1.4
2.0
2.0
2.0
3.0
3.0
3.0
6
6
6
35
35
35
40
40
40
40
40
40
50
50
50
A
A
A
A
A
A
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
VDD = 5.0V
VDD = 4.2V
FOSC = 48 MHZ
(PRI_RUN,
Oscilador CE)
VDD = 5.0V
VDD = 4.2V
FOSC = 40 MHZ
(PRI_RUN,
Oscilador CE)
VDD = 5.0V
VDD = 3.0V
FOSC = 4 MHz
(PRI_RUN,
Oscilador CE)
VDD = 2.0V
VDD = 5.0V
VDD = 3.0V
FOSC = 1 MHZ
(PRI_RUN,
Oscilador CE)
VDD = 2.0V
PIC18LFX455/X550 550
480
460
Todos os dispositivos 1.2
1.1
1.0
PIC18LFX455/X550 0,74
0,74
0,74
PIC18LFX455/X550 1.3
1.3
1.3
Todos os dispositivos 2.7
2.6
2,5
Todos os dispositivos 15
16
16
Todos os dispositivos 21
21
21
Todos os dispositivos 20
20
20
Todos os dispositivos 25
25
25
Legenda:
Nota 1:
2:
3:
4:
Sombreamento de linhas auxiliar na leitura da tabela.
O poder-down atual no modo de suspenso no dependem do tipo de oscilador. Poder-down corrente medida
com a parte no modo de suspenso, com todos os pinos de I / O em estado de alta impedncia e amarrado a recursos VDD ou VSS
e tudo o que
adicionar delta atual deficientes (como WDT, Timer1 oscilador, BOR, etc.)
A corrente de alimentao principalmente uma funo da tenso de operao, a frequncia e modo. Outros fatores, tais como
pinos de I / O
carregamento e taxa de comutao, o tipo de oscilador e circuito, padro de execuo de cdigo interno e temperatura, tambm
um impacto no consumo de corrente.
As condies de ensaio para todas as medies IDD no modo de operao ativa so:
OSC1 = onda quadrada externa, de rail-to-rail, todos os pinos de I / O tri-indicada, puxada para VDD ou VSS;
MCLR = VDD; WDT ativado / desativado, conforme especificado.
32 cristais kHz padro de baixo custo tm uma faixa de temperatura de operao de -10 C a +70 C. Alargado
cristais temperatura esto disponveis a um custo muito mais elevado.
BOR e HLVD permitir referncia gap interno. Com ambos os mdulos ativados, o consumo de corrente ser
menos do que a soma de ambas as especificaes.
v 2009 Microchip Technology Inc. DS39632E pgina 373
PIC18F2455/2550/4455/4550
28,2 DC Caractersticas: Poder-Down e fornecer corrente
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial) (Continuao)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Typ Max Unidades Condies
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
Smbolo
No.
Dispositivo
Corrente de suprimento (IDD) (2)
PIC18LFX455/X550 65
65
70
130
120
115
270
250
240
480
450
430
475
450
430
900
850
810
1.5
1.4
1.3
16
16
16
18
18
18
18
18
18
21
21
21
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
mA
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
VDD = 5.0V
VDD = 4.2V
FOSC = 48 MHz
(Modo PRI_IDLE,
Oscilador CE)
VDD = 5.0V
VDD = 4.2V
FOSC = 40 MHz
(Modo PRI_IDLE,
Oscilador CE)
VDD = 5.0V
VDD = 3.0V
FOSC = 4 MHz
(Modo PRI_IDLE,
Oscilador CE)
VDD = 2.0V
VDD = 5.0V
VDD = 3.0V
FOSC = 1 MHz
(Modo PRI_IDLE,
Oscilador CE)
VDD = 2.0V
PIC18LFX455/X550 120
120
130
Todos os dispositivos 230
240
250
PIC18LFX455/X550 255
260
270
PIC18LFX455/X550 420
430
450
Todos os dispositivos 0.9
0.9
0.9
Todos os dispositivos 6
6.2
6.6
Todos os dispositivos 8.1
8.3
9
Todos os dispositivos 8
8.1
8.2
Todos os dispositivos 9,8
10.0
10.5
Legenda:
Nota 1:
2:
3:
4:
Sombreamento de linhas auxiliar na leitura da tabela.
O poder-down atual no modo de suspenso no dependem do tipo de oscilador. Poder-down corrente medida
com a parte no modo de suspenso, com todos os pinos de I / O em estado de alta impedncia e amarrado a recursos VDD ou VSS
e tudo o que
adicionar delta atual deficientes (como WDT, Timer1 oscilador, BOR, etc.)
A corrente de alimentao principalmente uma funo da tenso de operao, a frequncia e modo. Outros fatores, tais como
pinos de I / O
carregamento e taxa de comutao, o tipo de oscilador e circuito, padro de execuo de cdigo interno e temperatura, tambm
um impacto no consumo de corrente.
As condies de ensaio para todas as medies IDD no modo de operao ativa so:
OSC1 = onda quadrada externa, de rail-to-rail, todos os pinos de I / O tri-indicada, puxada para VDD ou VSS;
MCLR = VDD; WDT ativado / desativado, conforme especificado.
32 cristais kHz padro de baixo custo tm uma faixa de temperatura de operao de -10 C a +70 C. Alargado
cristais temperatura esto disponveis a um custo muito mais elevado.
BOR e HLVD permitir referncia gap interno. Com ambos os mdulos ativados, o consumo de corrente ser
menos do que a soma de ambas as especificaes.
v 2009 Microchip Technology Inc. 374 DS39632E pginas
PIC18F2455/2550/4455/4550
28,2 DC Caractersticas: Poder-Down e fornecer corrente
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial) (Continuao)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Typ Max Unidades Condies
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
Smbolo
No.
Dispositivo
Corrente de suprimento (IDD) (2)
PIC18LFX455/X550 14
15
16
40
40
40
74
70
67
150
150
150
12
12
12
15
15
15
25
25
36
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
VDD = 5.0V
VDD = 3.0V
FOSC = 32 kHz(3)
(Modo SEC_IDLE,
Timer1 como relgio)
VDD = 2.0V
VDD = 5.0V
VDD = 3.0V
FOSC = 32 kHz(3)
(Modo SEC_RUN,
Timer1 como relgio)
VDD = 2.0V
PIC18LFX455/X550 40
35
31
Todos os dispositivos 99
81
75
PIC18LFX455/X550 2,5
3,7
4,5
PIC18LFX455/X550 5
5.4
6.3
Todos os dispositivos 8.5
9
10.5
Legenda:
Nota 1:
2:
3:
4:
Sombreamento de linhas auxiliar na leitura da tabela.
O poder-down atual no modo de suspenso no dependem do tipo de oscilador. Poder-down corrente medida
com a parte no modo de suspenso, com todos os pinos de I / O em estado de alta impedncia e amarrado a recursos VDD ou VSS
e tudo o que
adicionar delta atual deficientes (como WDT, Timer1 oscilador, BOR, etc.)
A corrente de alimentao principalmente uma funo da tenso de operao, a frequncia e modo. Outros fatores, tais como
pinos de I / O
carregamento e taxa de comutao, o tipo de oscilador e circuito, padro de execuo de cdigo interno e temperatura, tambm
um impacto no consumo de corrente.
As condies de ensaio para todas as medies IDD no modo de operao ativa so:
OSC1 = onda quadrada externa, de rail-to-rail, todos os pinos de I / O tri-indicada, puxada para VDD ou VSS;
MCLR = VDD; WDT ativado / desativado, conforme especificado.
32 cristais kHz padro de baixo custo tm uma faixa de temperatura de operao de -10 C a +70 C. Alargado
cristais temperatura esto disponveis a um custo muito mais elevado.
BOR e HLVD permitir referncia gap interno. Com ambos os mdulos ativados, o consumo de corrente ser
menos do que a soma de ambas as especificaes.
v 2009 Microchip Technology Inc. DS39632E pgina 375
PIC18F2455/2550/4455/4550
28,2 DC Caractersticas: Poder-Down e fornecer corrente
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial) (Continuao)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Typ Max Unidades Condies
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
Smbolo
No.
IWDT
Dispositivo
Mdulo Diferencial Currents (IWDT, IBOR, ILVD, IOSCB, IAD)
D022
Watchdog Timer 1.3
1.4
2.0
1.9
2.0
2.8
4.0
5.5
5.6
D022A IBOR
Brown-out Reset (4)
35
40
0,1
D022B ILVD High / Low-Voltage
Detectar (4)
22
25
29
D025 IOSCB Timer1 oscilador 2.1
1.8
2.1
2.2
2.6
2.9
3.0
3.2
3.4
D026 IAD Conversor A / D 1.0
1.0
1.0
Legenda:
Nota 1:
2:
3.8
3.8
3.8
4.6
4.6
4.6
10
10
10
40
45
2
38
40
45
4,5
4,5
4,5
6
6
6
8
8
8
2.0
2.0
2.0
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C a +85 C
-40 C a +85 C
-40 C a +85 C
-40 C a +85 C
-40 C a +85 C
-40 C a +85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C
25 C
85 C
-40 C a +85 C
-40 C a +85 C
-40 C a +85 C
VDD = 2.0V
VDD = 3.0V
VDD = 5.0V
A / D de sobre, no convertendo
VDD = 5.0V
32 kHz em Timer1(3)
VDD = 3.0V
32 kHz em Timer1(3)
VDD = 2.0V
32 kHz em Timer1(3)
VDD = 5.0V
VDD = 2.0V
VDD = 3.0V
VDD = 5.0V
O modo de suspenso,
BOREN1: BOREN0 = 10
VDD = 3.0V
VDD = 5.0V
VDD = 3.0V
VDD = 2.0V
3:
4:
Sombreamento de linhas auxiliar na leitura da tabela.
O poder-down atual no modo de suspenso no dependem do tipo de oscilador. Poder-down corrente medida
com a parte no modo de suspenso, com todos os pinos de I / O em estado de alta impedncia e amarrado a recursos VDD ou VSS
e tudo o que
adicionar delta atual deficientes (como WDT, Timer1 oscilador, BOR, etc.)
A corrente de alimentao principalmente uma funo da tenso de operao, a frequncia e modo. Outros fatores, tais como
pinos de I / O
carregamento e taxa de comutao, o tipo de oscilador e circuito, padro de execuo de cdigo interno e temperatura, tambm
um impacto no consumo de corrente.
As condies de ensaio para todas as medies IDD no modo de operao ativa so:
OSC1 = onda quadrada externa, de rail-to-rail, todos os pinos de I / O tri-indicada, puxada para VDD ou VSS;
MCLR = VDD; WDT ativado / desativado, conforme especificado.
32 cristais kHz padro de baixo custo tm uma faixa de temperatura de operao de -10 C a +70 C. Alargado
cristais temperatura esto disponveis a um custo muito mais elevado.
BOR e HLVD permitir referncia gap interno. Com ambos os mdulos ativados, o consumo de corrente ser
menos do que a soma de ambas as especificaes.
DS39632E pgina 376 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
28,2 DC Caractersticas: Poder-Down e fornecer corrente
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial) (Continuao)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Typ Max Unidades Condies
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
Smbolo
No.
IUSBX
IPLL
IUreG
Legenda:
Nota 1:
2:
Dispositivo
USB e mdulo relacionado correntes diferenciais (IUSBx, IPLL IUreG)
Mdulo USB8
com Transceiver On-Chip 12,4
96 MHz PLL
(Mdulo oscilador)
USB Interno Voltagem
Regulador
1.2
1.2
80
14,5
20
3.0
4.8
125
mA
mA
mA
mA
A
25 C
25 C
25 C
25 C
25 C
VDD = 3.0V
VDD = 5.0V
VDD = 3.0V
VDD = 5.0V
VDD = 5.0V USB de Espera, SUSPND
(UCON <1> = 1)
3:
4:
Sombreamento de linhas auxiliar na leitura da tabela.
O poder-down atual no modo de suspenso no dependem do tipo de oscilador. Poder-down corrente medida
com a parte no modo de suspenso, com todos os pinos de I / O em estado de alta impedncia e amarrado a recursos VDD ou VSS
e tudo o que
adicionar delta atual deficientes (como WDT, Timer1 oscilador, BOR, etc.)
A corrente de alimentao principalmente uma funo da tenso de operao, a frequncia e modo. Outros fatores, tais como
pinos de I / O
carregamento e taxa de comutao, o tipo de oscilador e circuito, padro de execuo de cdigo interno e temperatura, tambm
um impacto no consumo de corrente.
As condies de ensaio para todas as medies IDD no modo de operao ativa so:
OSC1 = onda quadrada externa, de rail-to-rail, todos os pinos de I / O tri-indicada, puxada para VDD ou VSS;
MCLR = VDD; WDT ativado / desativado, conforme especificado.
32 cristais kHz padro de baixo custo tm uma faixa de temperatura de operao de -10 C a +70 C. Alargado
cristais temperatura esto disponveis a um custo muito mais elevado.
BOR e HLVD permitir referncia gap interno. Com ambos os mdulos ativados, o consumo de corrente ser
menos do que a soma de ambas as especificaes.
v 2009 Microchip Technology Inc. DS39632E pgina 377
PIC18F2455/2550/4455/4550
28,2 DC Caractersticas: Poder-Down e fornecer corrente
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial) (Continuao)
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Typ Max Unidades Condies
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
Smbolo
No.
ITUSB
Dispositivo
Total de USB Run Currents (ITUSB) (2)
Run primria com USB
Mdulo, PLL e USB
Regulador de tenso
29
29
29
75
65
65
mA
mA
mA
-40 C
25 C
85 C
VDD = 5.0V
VDD = 5.0V
VDD = 5.0V
+ PLL entrada MHz CE 4,
48 MHz PRI_RUN,
Mdulo USB habilitado
Modo Full-Speed,
USB REG habilitado,
sem trfego de nibus
Legenda:
Nota 1:
2:
3:
4:
Sombreamento de linhas auxiliar na leitura da tabela.
O poder-down atual no modo de suspenso no dependem do tipo de oscilador. Poder-down corrente medida
com a parte no modo de suspenso, com todos os pinos de I / O em estado de alta impedncia e amarrado a recursos VDD ou VSS
e tudo o que
adicionar delta atual deficientes (como WDT, Timer1 oscilador, BOR, etc.)
A corrente de alimentao principalmente uma funo da tenso de operao, a frequncia e modo. Outros fatores, tais como
pinos de I / O
carregamento e taxa de comutao, o tipo de oscilador e circuito, padro de execuo de cdigo interno e temperatura, tambm
um impacto no consumo de corrente.
As condies de ensaio para todas as medies IDD no modo de operao ativa so:
OSC1 = onda quadrada externa, de rail-to-rail, todos os pinos de I / O tri-indicada, puxada para VDD ou VSS;
MCLR = VDD; WDT ativado / desativado, conforme especificado.
32 cristais kHz padro de baixo custo tm uma faixa de temperatura de operao de -10 C a +70 C. Alargado
cristais temperatura esto disponveis a um custo muito mais elevado.
BOR e HLVD permitir referncia gap interno. Com ambos os mdulos ativados, o consumo de corrente ser
menos do que a soma de ambas as especificaes.
DS39632E pgina 378 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
28,3 DC Caractersticas: PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial)
Condies Operacionais Padro (exceto quando indicado)
Temperatura de operao -40 C o TA o 85 C durante industrial
Caracterstica
Entrada de Baixa Tenso
Portas I / O (exceto RC4/RC5 em
Modo USB):
D030
D030A
D031
D032
D032A
D033
VIH
com Schmitt tampo
RB0 e RB1
MCLR
OSC1 e T1OSI
OSC1
Entrada de alta tenso
Portas I / O (exceto RC4/RC5 em
Modo USB):
D040
D040A
D041
D042
D042A
D043
IIL
D060
D061
D063
IPU
D070
D071
Nota 1:
IPURB
IPURD
com Schmitt tampo
RB0 e RB1
MCLR
OSC1 e T1OSI
OSC1
A corrente de fuga de entrada (2)
Portas I / O, exceto D + e D-
MCLR
OSC1
Fraco Pull-up atual
PORTB Fraco Pull-up atual
PORTD Fraco Pull-up atual
50
50
400
400
A
A
VDD = 5V, VPIN = VSS
VDD = 5V, VPIN = VSS
-
-
-
2 0 0
1
1
nA
A
A
VSS o VPIN o VDD,
Pin em alta impedncia
Vss o VPIN o VDD
Vss o VPIN o VDD
com TTL tampo 0,25 VDD + 0.8V
2.0
0,8 VDD
0,7 VDD
0,8 VDD
0,7 VDD
0,8 VDD
VDD
VDD
VDD
VDD
VDD
VDD
VDD
V
V
V
V
V
V
V
XT, HS,
Modos HSPLL(1)
Modo CE(1)
VDD <4.5V
4.5V o VDD o 5.5V
Quando estiver no modo I2C
com TTL tampo VSS
-
VSS
VSS
VSS
VSS
VSS
0,15 VDD
0.8
0,2 VDD
0,3 VDD
0,2 VDD
0,3 VDD
0,2 VDD
V
V
V
V
V
V
V
XT, HS,
Modos HSPLL(1)
Modo CE(1)
VDD <4.5V
4.5V o VDD o 5.5V
Quando estiver no modo I2C
Min Max Unidades Condies
CARACTERSTICAS DC
Param
Smbolo
No.
VIL
2:
3:
A corrente no pino MCLR de fuga fortemente dependente do nvel de tenso aplicado. O especificada
nveis representam condies normais de operao. Maior corrente de fuga pode ser medida na entrada diferente
tenses.
Corrente negativa definida como a corrente obtida pelo pino.
O parmetro caracterizado, mas no ensaiados.
v 2009 Microchip Technology Inc. DS39632E pgina 379
PIC18F2455/2550/4455/4550
28,3 DC Caractersticas: PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial) (Continuao)
Condies Operacionais Padro (exceto quando indicado)
Temperatura de operao -40 C o TA o 85 C durante industrial
Caracterstica
Sada de Baixa Tenso
Portas I / O (exceto RC4/RC5 em
Modo USB)
OSC2/CLKO
(CE, modos ECIO)
VOH
D090
D092
Sada de alta tenso (3)
Portas I / O (exceto RC4/RC5 em
Modo USB)
OSC2/CLKO
(CE, ECIO, modos ECPIO)
Carregando Specs capacitivos
Na sada Pinos
D100
COSC2 OSC2 Pin - 15 pF Na XT e modos SH
quando o relgio externo
usado para conduzir OSC1
Para atender o sincronismo AC
Especificaes
Especificao I2C
VDD - 0,7
VDD - 0,7
-
-
V
V
IOH = -3,0 mA, VDD = 4.5V,
-40 C a +85 C
IOH = -1,3 mA, VDD = 4.5V,
-40 C a +85 C
-
-
0,6
0,6
V
V
LIO = 8,5 mA, VDD = 4,5 V,
-40 C a +85 C
IOL = 1,6 mA, VDD = 4.5V,
-40 C a +85 C
Min Max Unidades Condies
CARACTERSTICAS DC
Param
Smbolo
No.
VOL
D080
D083
D101
D102
Nota 1:
CIO
CB
All I / O Pins e OSC2
(Em modo de RC)
SCL, SDA
-
-
50
400
pF
pF
2:
3:
A corrente no pino MCLR de fuga fortemente dependente do nvel de tenso aplicado. O especificada
nveis representam condies normais de operao. Maior corrente de fuga pode ser medida na entrada diferente
tenses.
Corrente negativa definida como a corrente obtida pelo pino.
O parmetro caracterizado, mas no ensaiados.
DS39632E pgina 380 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 28-1: MEMRIA requisitos de programao
Condies Operacionais Padro (exceto quando indicado)
Temperatura de operao -40 C o TA o 85 C durante industrial
Caracterstica
Memria Interna Programa
Especificaes de programao (1)
D110
D113
VIHH
IDDP
Tenso em MCLR/VPP/RE3 pin
Corrente de suprimento durante
Programao
Os dados da memria EEPROM
D120
D121
ED
VDRW
Endurance Byte
VDD para Leitura / Gravao
100K
VMIN
1M
-
-
5.5
E / W -40 C a +85 C
V Usando EECON para ler / escrever
VMIN = funcionamento mnimo
tenso
9,00
-
-
-
13.25
10
V
mA
(Nota 3)
Min Typ Max Unidades Condies
DC Caractersticas
Param
No.
Sym
D122
D123
D124
Tdew Apagar / gravao Tempo de Ciclo -
40
1M
4
-
10M
-
-
-
ms
Ano, desde que nenhum outro
especificaes so violados
E / W -40 C a +85 C
Reteno Caracterstica TRETD
TREF Nmero de Erase Total / Escrever
Ciclos antes de atualizao(2)
Programa Memria Flash
Endurance celular
VDD para Leitura
VDD para Erase massa
VDD para Todos Erase / Write
Operaes (exceto apagar a granel)
Auto-cronometrado Escrever Tempo de
Ciclo
D130
D131
D132
EP
VPR
VIE
10K
VMIN
3.2(4)
VMIN
-
40
100K
-
-
-
2
100
-
5.5
5.5
5.5
-
-
E / W -40 C a +85 C
V
V
V
ms
Ano, desde que nenhum outro
especificaes so violados
VMIN = funcionamento mnimo
tenso
Usando ICSP porta s
Usando ICSP porto ou
self-erase/write
D132A VIW
D133A TIW
D134 Reteno Caracterstica TRETD
dados em coluna "Typ" a 5.0V, 25 C, salvo indicao em contrrio. Estes so os parmetros para orientao de design
somente e no so testados.
Nota 1: Estas especificaes so para a programao da memria do programa no chip atravs da utilizao da tabela de gravao
instrues.
2: Consulte Seo 7.7 "Utilizando a EEPROM de dados" para uma discusso mais detalhada sobre os dados EEPROM
resistncia.
3: Necessrio apenas se a programao de fornecimento nico est desativado.
4: Tenso mnima de 3.2V para dispositivos PIC18LF na famlia. Tenso mnima de 4.2V para dispositivos PIC18F em
a famlia.
v 2009 Microchip Technology Inc. DS39632E pgina 381
PIC18F2455/2550/4455/4550
TABELA 28-2:
Param
No.
D300
D301
D302
300
300A
301
Nota 1:
TMC2OV Modo comparador Alterar para
Sada Valid
ESPECIFICAES COMPARATOR
Condies de funcionamento: 3.0V <VDD <5.5V, -40 C <Ta <85 C (exceto quando indicado)
Sym
VIOFF
VICM
CMRR
TRESP
Caractersticas
Tenso de entrada offset
Tenso de entrada de modo comum
Rejeio do modo comum
Tempo de Resposta(1)
Min
-
0
55
-
-
-
Typ
5.0
-
-
150
150
-
Max
10
VDD - 1,5
-
400
600
10
Unidades
mV
V
dB
ns
ns
o
PIC18FXXXX
PIC18LFXXXX,
VDD = 2.0V
Comentrios
O tempo de resposta medido com um comparador na entrada (VDD - 1.5) / 2, enquanto que as outras transies de
entrada
de VSS para VDD.
TABELA 28-3:
Param
No.
D310
D311
D312
310
Nota 1:
ESPECIFICAES referncia de tenso
Condies de funcionamento: 3.0V <VDD <5.5V, -40 C <Ta <85 C (exceto quando indicado)
Sym
Vres
Vraa
VRUR
TSET
Caractersticas
Resoluo
Preciso absoluta
Unidade Valor do resistor (R)
Tempo de deposio(1)
Min
VDD/24
-
-
-
-
Typ
-
1/4
-
2k
-
Max
VDD/32
1
1/2
-
10
Unidades
LSB
LSB
LSB
.
o
Low Range (CVRR = 1)
Gama Alta (CVRR = 0)
Comentrios
Tempo de estabilizao medido enquanto CVRR = 1e CVR3: CVR0 transies de '0000 'at '1111'.
DS39632E pgina 382 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 28-4:
Param
No.
D313
ESPECIFICAES mdulo USB
Condies de funcionamento: -40 C <Ta <85 C (exceto quando indicado).
Sym
VUSB
Caracterstica
Tenso USB
Min
3.0
Typ
-
Max
3.6
Unidades
V
Comentrios
Tenso no pino deve ser neste
alcance para o bom USB
operao
VSS o VPIN o VDD;
pino em alta impedncia
Para a faixa VUSB
Para a faixa VUSB
Faixa de tenso para D + e D-
cruzado para ocorrer
A diferena entre D +
e D-deve exceder esse valor
enquanto VCM cumprida
D314
D315
D316
D317
D318
IIL
VILUSB
VIHUSB
Videocassetes
VDIFS
Vazamento de entrada em D + e D-
pins
Tenso de entrada baixa para USB
Tampo
Entrada de alta tenso por USB
Tampo
Tenso Crossover
Sensibilidade de entrada diferencial
-
-
2.0
1.3
-
-
-
-
1
0.8
-
2.0
A
V
V
V
V - 0,2
D319
D320
D321
D322
VCM
ZOUT
VOL
VOH
Modo Comum diferencial
Alcance
Motorista impedncia de sada
Sada de Baixa Tenso
Alta tenso de sada
0.8
28
0.0
2.8
-
-
-
-
2,5
44
0.3
3.6
V
.
V
V
1,5 kW de carga ligado a 3.6V
15 kW carga conectada ao
terreno
TABELA 28-5:
Param
No.
D323
D324
Nota 1:
2:
USB de tenso interna ESPECIFICAES REGULADOR
Condies de funcionamento: -40 C <Ta <85 C (exceto quando indicado).
Sym Caractersticas Min
3.0
0.22
Typ
-
0.47
Max
3.6
12(2)
Unidades
V
u
Comentrios
VDD> 4.0V(1)
Cermica ou outra baixa ESR
capacitor recomendado
VUSBANA Regulador de Tenso da sada
CUSB Capacitor de filtro externo
Valor (VUSB para VSS)
Se VDD dispositivo inferior a 4.0V, o regulador de tenso USB interno deve ser desativado e um externo
3.0-3.6V alimentao deve ser fornecida VUSB se o mdulo USB usado.
Esta uma mxima recomendada para o tempo de inicializao e consideraes in-rush. Quando o regulador USB
desactivado, no h mximo.
v 2009 Microchip Technology Inc. DS39632E pgina 383
PIC18F2455/2550/4455/4550
FIGURA 28-3: Alto / Baixo TENSO CARACTERSTICAS detectar
VDD
VHLVD
Para VDIRMAG = 1:
(HLVDIF definido pelo hardware)
(Pode ser HLVDIF
apuradas em software)
VHLVD
Para VDIRMAG = 0:
VDD
HLVDIF
TABELA 28-6: Alto / Baixo TENSO CARACTERSTICAS detectar
Condies Operacionais Padro (exceto quando indicado)
Temperatura de operao -40 C o TA o 85 C durante industrial
Param
Smbolo
No.
D420
Caracterstica
Tenso HLVD em VDD HLVDL <3:00> = 0000
Transio alta para menor HLVDL <3:00> = 0001
HLVDL <3:00> = 0010
HLVDL <3:00> = 0011
HLVDL <3:00> = 0100
HLVDL <3:00> = 0101
HLVDL <3:00> = 0110
HLVDL <3:00> = 0111
HLVDL <3:00> = 1000
HLVDL <3:00> = 1001
HLVDL <3:00> = 1010
HLVDL <3:00> = 1011
HLVDL <3:00> = 1100
HLVDL <3:00> = 1101
HLVDL <3:00> = 1110
HLVDL <3:00> = 1111
Min
2.06
2.12
2.24
2.32
2,47
2.65
2.74
2.96
3.22
3.37
3.52
3,70
3,90
4.11
4.36
1.14
Typ
2.17
2.23
2.36
2.44
2.60
2.79
2,89
3.12
3.39
3.55
3.71
3,90
4.11
4.33
4.59
1.20
Max
2.28
2.34
2,48
2,56
2,73
2.93
3.04
3.28
3.56
3.73
3,90
4.10
4.32
4.55
4.82
1.26
Unidades
V
V
V
V
V
V
V
V
V
V
V
V
V
V
V
V Tenso no HLVDIN
pino de entrada em comparao
com
Tenso interna
Referncia
Condies
DS39632E pgina 384 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
28,4
28.4.1
AC (Timing) Caractersticas
Parmetro de tempo SIMBOLOGIA
Os smbolos dos parmetros de temporizao tenha sido criado
usando um dos seguintes formatos:
1. TppS2ppS
2. UTEs
T
FFrequency
Letras minsculas (PP) e seus significados:
pp
endereo adSPP escrever
ccCCP1
ckCLKO
CSCS
dados daSPP escrever
diSDI
doSDO
dtData em
IOI / O port
Letras maisculas e seus significados:
S
MCAIR
HHigh
IInvalid (alta impedncia)
Llow
S I2C
Acesso AAoutput
BUFBus livre
Apenas especificaes 2C) TCC: ST (I
CC
HDHold
ST
Hold entrada DATDATA
Condio STAStart
3. TCC: ST
4. Ts
T
(Apenas especificaes I2C)
(Apenas especificaes I2C)
Tempo
mc
osc
rd
rw
sc
ss
t0
t1
wr
MCLR
OSC1
RD
RD ou WR
SCK
SS
T0CKI
T13CKI
WR
P
R
V
Z
Alto
Baixo
Perodo
Subir
Vlido
Alta impedncia
Alto
Baixo
SU
STO
Instalao
Condio de parada
v 2009 Microchip Technology Inc. DS39632E pgina 385
PIC18F2455/2550/4455/4550
28.4.2 Condies de temporizao
Nota:
A temperatura e as tenses especificados na Tabela 28-7
se aplicam a todas as especificaes de tempo, a menos que de
outra forma
observou. Figura 28-4 especifica as condies de carga para o
especificaes de tempo.
Devido s limitaes de espao, o genrico
termos "PIC18FXXXX" e "PIC18LFXXXX"
so utilizados ao longo desta seco para referir
o PIC18F2455/2550/4455/4550 e
PIC18LF2455/2550/4455/4550 famlias de
dispositivos especificamente e apenas esses
dispositivos.
TABELA 28-7: Temperatura e de tenso ESPECIFICAES - AC
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Tenso de gama VDD conforme descrito na especificao DC Seo 28.1 e
Seo 28.3.
Peas de LF para operar apenas temperaturas industriais.
CARACTERSTICAS AC
FIGURA 28-4: CARGA CONDIES PARA ESPECIFICAES cronometragem
Carregar Estado 1
VDD / 2
RL
Pin
VSS
Pin
VSS
CL
RL = 464
CL = 50 pF para todos os pinos excepto OSC2/CLKO
e incluindo D e sadas E como portas
CL
Carregar Condio 2
DS39632E pgina 386 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
28.4.3 ESQUEMAS E ESPECIFICAES DE TEMPO
CALENDRIO relgio externo (todos os modos excepto PLL)
Q4 Q1 Q2 Q3 Q4 Q1
FIGURA 28-5:
OSC1
1
2
3 3 4 4
CLKO
TABELA 28-8:
Param.
No.
1A
Relgio externo requisitos de tempo
Caracterstica
External CLKI Frequency(1)
Oscilador de freqncia(1)
Min
DC
0,2
4
4
Max
48
1
25(2)
24(2)
DC
5000
250
250
DC
-
-
20
7,5
Unidades
MHz
MHz
MHz
MHz
ns
ns
ns
ns
ns
ns
ns
ns
ns
Condies
CE, o modo de oscilador ECIO
XT, o modo de oscilador XTPLL
Modo de oscilador HS
Modo de oscilador HSPLL
CE, o modo de oscilador ECIO
Modo de oscilador XT
Modo de oscilador HS
Modo de oscilador HSPLL
TCY = 4/FOSC
Modo de oscilador XT
Modo de oscilador HS
Modo de oscilador XT
Modo de oscilador HS
Smbolo
FOSC
1 Tosc
External Perodo CLKI(1)
Perodo oscilador(1)
20,8
1000
40
40
2
3
4
Nota 1:
TCY
TosL,
Disparates
TosR,
TOSF
Tempo de Ciclo Instruo(1)
Relgio externo (OSC1)
Alta ou Baixa Tempo
Relgio externo (OSC1)
Subida ou descida Tempo
83.3
30
10
-
-
2:
Perodo de ciclo de instruo (TCY) igual a quatro vezes o oscilador perodo base de tempo de entrada para todas as
configuraes
exceto PLL. Todos os valores indicados so baseados em dados de caracterizao para o tipo especfico sob oscilador
condies de funcionamento standard, com o cdigo de execuo do dispositivo. Exceder esses limites especificados pode
resultar
em uma operao estvel do oscilador e / ou superior do que o consumo de corrente prevista. Todos os dispositivos so
testados
para operar em valores "min." com um relgio externo aplicado ao pino OSC1/CLKI. Quando um relgio externo
entrada utilizada, o limite de tempo do ciclo de "max." "CC" (sem relgio) para todos os dispositivos.
Quando VDD> = 3,3, o cristal mximo ou frequncia do ressonador de 25 MHz (ou 24 MHz com PLL prescaler).
Quando 2.0V <VDD <3,3, a freqncia de cristal mximo = (16,36 MHz / V) (VDD - 2.0V) + 4 MHz.
v 2009 Microchip Technology Inc. DS39632E pgina 387
PIC18F2455/2550/4455/4550
TABELA 28-9:
Param
No.
F10
F11
F12
F13
Sym
PLL ESPECIFICAES sincronismo de relgio (VDD = 3.0V a 5.5V)
Caracterstica Min
4
-
-
-0.25
Typ
-
96
-
-
Max
48
-
2
0,25
Unidades Condies
FOSC Faixa de frequncia do oscilador
FSYS
trc
CLK
On-Chip VCO frequncia do sistema
PLL Tempo Start-up (Time Lock)
CLKO Estabilidade (Jitter)
MHz com PLL
prescaler
MHz
ms
%
dados em coluna "Typ" a 5V, 25 C, salvo indicao em contrrio. Estes so os parmetros para orientao de design
somente e no so testados.
TABELA 28-10: CARACTERSTICAS AC: INTERNO PRECISO RC
PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550
(Industrial)
PIC18F2455/2550/4455/4550
(Industrial)
Param
No.
F14
F15
F16
F17
F18
F19
F20
F21
Legenda:
Nota 1:
2:
3:
PIC18F2455/2550/4455/4550
Dispositivo
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Condies Operacionais Padro (exceto quando indicado)
Operando com temperatura de 40 C o TA o 85 C durante industrial
Min Typ Max Unidades Condies
INTOSC Preciso @ Freq = 8 MHz, 4 MHz, 2 MHz, 1 MHz, 500 kHz, 250 kHz, 125 kHz (1)
PIC18LF2455/2550/4455/4550 -2
-5
-10
-2
-5
-10
INTRC Preciso @ Freq = 31 kHz (2)
PIC18LF2455/2550/4455/4550 26,562
PIC18F2455/2550/4455/4550 26,562
-
-
35,938
35,938
kHz
kHz
-40 C a +85 C
-40 C a +85 C
VDD = 2.7-3.3V
VDD = 4.5-5.5V
+ / -1
-
+ / -1
+ / -1
-
+ / -1
2
5
10
2
5
10
%
%
%
%
%
%
25 C
-10 C a +85 C
-40 C a +85 C
25 C
-10 C a +85 C
-40 C a +85 C
VDD = 2.7-3.3V
VDD = 2.7-3.3V
VDD = 2.7-3.3V
VDD = 4.5-5.5V
VDD = 4.5-5.5V
VDD = 4.5-5.5V
Sombreamento de linhas auxiliar na leitura da tabela.
Frequncia calibrado a 25 C. OSCTUNE registo pode ser utilizado para compensar o desvio de temperatura.
Freqncia INTRC aps a calibrao.
Mudana de freqncia INTRC como mudanas VDD.
DS39632E pgina 388 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 28-6: CLKO E CALENDRIO I / O
Q4
OSC1
10
CLKO
13
14
Pino de I / O
(Input)
17
Pino de I / O
(Sada)
Valor Antigo
20, 21
Nota: Consulte a Figura 28-4 para as condies de carga.
15
Novo valor
19
18
12
16
11
Q1 Q2 Q3
TABELA 28-11: CLKO E / S requisitos de tempo
Param
No.
10
11
12
13
14
15
16
17
18
18A
19
20
20A
21
21A
22
23
TINP
TRBP
TioF Porto Tempo de queda de sada
Smbolo Caracterstica Min
-
-
-
-
-
0,25 TCY + 25
0
-
100
200
0
-
-
-
-
TCY
TCY
PIC18FXXXX
PIC18LFXXXX
Typ
75
75
35
35
-
-
-
50
-
-
-
10
-
10
-
-
-
Max
200
200
100
100
0.5 TCY + 20
-
-
150
-
-
-
25
60
25
60
-
-
Unidades de Condies
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
VDD = 2.0V
VDD = 2.0V
VDD = 2.0V
(Nota 1)
(Nota 1)
(Nota 1)
(Nota 1)
(Nota 1)
(Nota 1)
(Nota 1)
TosH2ckL OSC1 para CLKO
TosH2ckH OSC1 para CLKO
TckR
TckF
TckL2ioV
TckH2ioI
TosH2ioI
CLKO Tempo de ascenso
CLKO Tempo de queda
CLKO a porta de sada Valid
Porta Em espera aps CLKO
OSC1 (Ciclo Q2) para
Porta de entrada invlido
(I / O em tempo de espera)
TioV2ckH Porta Em Valid antes CLKO
TosH2ioV OSC1 (Ciclo Q1) a porta de sada Valid
TioV2osH porta de entrada vlida para OSC1 (I / O na
configurao
tempo)
TioR Porto Tempo de ascenso de
sada
PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
INTx pin Alta ou Baixa Tempo
RB7: RB4 Mudana INTx Alta ou Baixa Tempo
Estes parmetros so eventos assncronos no relacionadas com bordas relgio interno.
Nota 1: Medidas so tomadas de modo RC, onde a produo CLKO 4 x tosc.
v 2009 Microchip Technology Inc. DS39632E pgina 389
PIC18F2455/2550/4455/4550
FIGURA 28-7: REAJUSTE, watchdog timer, OSCILADOR TIMER START-UP E
POWER-UP TIMER CALENDRIO
VDD
MCLR
Interno
POR
PWRT
Intervalo
Oscilador
Intervalo
Interno
Restabelecer
Co de guarda
Cronmetro
Restabelecer
33
32
30
34
31
34
I / O pins
Nota: Consulte a Figura 28-4 para as condies de carga.
FIGURA 28-8:
VDD
BROWN-OUT TEMPO REAJUSTE
BVDD
35
VBGAP = 1.2V
VIRVST
Ativar Interno
Tenso de referncia
Referncia Interna
Estvel tenso
36
TABELA 28-12: RESET, watchdog timer, OSCILADOR START-UP TIMER TIMER POWER-UP
E BROWN-os requisitos de RESET
Param.
Smbolo
No.
30
31
32
33
34
35
36
37
38
39
TMCL
TWDT
TOST
TPWRT
Tioz
TBOR
TIRVST
TLVD
TCSD
TIOBST
Caracterstica
MCLR Largura de Pulso (baixo)
Watchdog Timer Time-out Period
(Sem postscaler)
Oscillator Start-up timer Perodo
Power-up timer Perodo
I / O de alta impedncia de MCLR
Baixa ou Watchdog Temporizador reposio
Brown-out Largura de Pulso Reiniciar
Hora de Referncia Interna
Tenso para se tornar estvel
Low-Voltage Largura de Pulso Detect
Tempo de CPU Start-up
Tempo para INTOSC para estabilizar
Min
2
3.5
1024 tosc
57,0
-
200
-
200
5
-
Typ
-
4.1
-
65.5
2
-
20
-
-
1
Max
-
4.8
1024 tosc
77,1
-
-
50
-
10
-
Unidades
o
ms
-
ms
o
o
o
o
o
ms
VDD o VLVD
VDD o BVDD (ver D005)
Tosc = perodo OSC1
Condies
DS39632E pgina 390 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 28-9: Timer0 E TIMER1 TIMINGS relgio externo
T0CKI
40
42
T1OSO/T13CKI
41
45
47
TMR0 ou
TMR1
Nota: Consulte a Figura 28-4 para as condies de carga.
46
48
TABELA 28-13: timer0 E TIMER1 REQUISITOS relgio externo
Param
Smbolo
No.
40
41
42
Tt0H
Tt0L
Tt0P
Caracterstica
T0CKI largura de pulso de alta
T0CKI Largura de Pulso Baixo
T0CKI Perodo
No prescaler
Com prescaler
No prescaler
Com prescaler
No prescaler
Com prescaler
Min
0.5 TCY + 20
10
0.5 TCY + 20
10
TCY + 10
Maior valor entre:
20 ns ou
(TCY + 40) / N
0.5 TCY + 20
10
25
30
50
0.5 TCY + 5
10
25
30
50
Maior valor entre:
20 ns ou
(TCY + 40) / N
60
DC
2 tosc
Max
-
-
-
-
-
-
Unidades
ns
ns
ns
ns
ns
ns N = pr-escala
valor
(1, 2, 4, ..., 256)
Condies
45 Tt1H T13CKI alta
Tempo
Sncrono, sem prescaler
Sncrona,
com prescaler
Assncrono
PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
-
-
-
-
-
-
-
-
-
-
-
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
VDD = 2.0V
N = pr-escala
valor (1, 2, 4, 8)
VDD = 2.0V
VDD = 2.0V
VDD = 2.0V
46 Tt1L T13CKI Baixo
Tempo
Sncrono, sem prescaler
Sncrona,
com prescaler
Assncrono
PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
47 Tt1P T13CKI Input
Perodo
Sncrono
Assncrono
Ft1
48
T13CKI oscilador Faixa de freqncia de entrada
Tcke2tmrI Atraso de T13CKI externo Relgio Edge Temporizador
Incremento
-
50
7 tosc
ns
kHz
-
v 2009 Microchip Technology Inc. DS39632E pgina 391
PIC18F2455/2550/4455/4550
FIGURA 28-10: Capture / Comparar / TIMINGS PWM (todos os mdulos CCP)
CCPx
(Modo Captura)
50
52
51
CCPx
(Compare ou PWM Mode)
53
Nota: Consulte a Figura 28-4 para as condies de carga.
54
TABELA 28-14: Capture / compare / REQUISITOS PWM (todos os mdulos CCP)
Param
Smbolo
No.
50 CTCE
Caracterstica
CCPx Input Low No prescaler
Tempo
WithPIC18FXXXX
prescaler PIC18LFXXXX
CCPx Input
High Time
No prescaler
Com
prescaler
PIC18FXXXX
PIC18LFXXXX
Min
0.5 TCY + 20
10
20
0.5 TCY + 20
10
20
3 TCY + 40
N
PIC18FXXXX
PIC18LFXXXX
54 TccF CCPx Tempo de queda de sada PIC18FXXXX
PIC18LFXXXX
-
-
-
-
Max
-
-
-
-
-
-
-
25
45
25
45
Unidades
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns VDD = 2.0V
VDD = 2.0V
VDD = 2.0V
N = pr-escala
valor (1, 4 ou 16)
VDD = 2.0V
Condies
51 TccH
52
53
TccP
TccR
CCPx Perodo de entrada
CCPx Tempo de queda de sada
DS39632E pgina 392 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 28-11:
SS
70
SCK
(CKP = 0)
71 72
78 79
EXEMPLO SPI MESTRE modo de temporizao (Cke = 0)
SCK
(CKP = 1)
79
MSb
75, 76
SDI
73
Nota: Consulte a Figura 28-4 para as condies de carga.
Em MSb
74
bit 6 ---- 1
LSB In
bit 6 ------ 1
78
LSB
80
SDO
TABELA 28-15: EXEMPLO SPI REQUISITOS Mode (modo Master, CKE = 0)
Param
No.
70
71
71A
72
72A
73
73A
74
75
76
78
79
80
Nota 1:
2:
TdiV2scH,
TdiV2scL
Tb2b
TscH2diL,
TscL2diL
TdoR
TdoF
TSCR
TSCF
TscH2doV,
TscL2doV
TsCl
Smbolo
TssL2scH,
TssL2scL
Tsch
Caracterstica
SS a SCK ou SCK Entrada
SCK Input High Time
(Modo Slave)
SCK Input Low Tempo
(Modo Slave)
Contnuo
Byte nico
Contnuo
Byte nico
Min
3 TCY
1,25 TCY + 30
40
1,25 TCY + 30
40
20
1.5 TCY + 40
35
-
-
-
PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
-
-
-
-
-
Unidades de Max.
-
-
-
-
-
-
-
-
25
45
25
25
45
25
50
100
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns VDD = 2.0V
VDD = 2.0V
VDD = 2.0V
(Nota 2)
(Nota 1)
(Nota 1)
Condies
Tempo de configurao do SDI Entrada de Dados para
SCK Borda
ltima Relgio Edge of Byte 1 a 1 Relgio de Borda
de Byte 2
Hold Time de SDI Entrada de Dados para SCK Borda
SDO Dados Tempo de ascenso de
sada
SDO Dados Tempo de queda de sada
SCK Tempo de ascenso de
sada
(Modo Master)
SDO sada de dados vlido aps
SCK Borda
PIC18FXXXX
PIC18LFXXXX
SCK Tempo de queda de sada (modo Master)
Requer o uso de 73A Parmetro.
Apenas se o Parmetro 71A e 72A so utilizados.
v 2009 Microchip Technology Inc. DS39632E pgina 393
PIC18F2455/2550/4455/4550
FIGURA 28-12:
SS
81
SCK
(CKP = 0)
71
73
SCK
(CKP = 1)
72
79
EXEMPLO SPI MESTRE modo de temporizao (Cke = 1)
80
78
MSb
75, 76
bit 6 ------ 1 LSB SDO
SDI
Em MSb
74
bit 6 ---- 1
LSB In
Nota: Consulte a Figura 28-4 para as condies de carga.
TABELA 28-16 Exemplo: SPI REQUISITOS Mode (modo Master, CKE = 1)
Param.
No.
71
71A
72
72A
73
73A
74
75
76
78
79
80
81
Nota 1:
2:
TdiV2scH,
TdiV2scL
Tb2b
TscH2diL,
TscL2diL
TdoR
TdoF
TSCR
TSCF
TscH2doV,
TscL2doV
TdoV2scH,
TdoV2scL
TsCl
Smbolo
Tsch
Caracterstica
SCK Input High Time
(Modo Slave)
SCK Input Low Tempo
(Modo Slave)
Contnuo
Byte nico
Contnuo
Byte nico
Min
1,25 TCY + 30
40
1,25 TCY + 30
40
20
1.5 TCY + 40
35
-
-
-
PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
-
-
-
-
-
TCY
Unidades de Max.
-
-
-
-
-
-
-
25
45
25
25
45
25
50
100
-
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
VDD = 2.0V
VDD = 2.0V
VDD = 2.0V
(Nota 2)
(Nota 1)
(Nota 1)
Condies
Tempo de configurao do SDI Entrada de Dados para
SCK Borda
ltima Relgio Edge of Byte 1 a 1 Relgio de Borda
de Byte 2
Hold Time de SDI Entrada de Dados para SCK Borda
SDO Dados Tempo de ascenso de
sada
SDO Dados Tempo de queda de sada
SCK Tempo de ascenso de
sada
(Modo Master)
SDO sada de dados vlido aps
SCK Borda
PIC18FXXXX
PIC18LFXXXX
SCK Tempo de queda de sada (modo Master)
SDO configurao de sada de dados para SCK
Borda
Requer o uso de 73A Parmetro.
Apenas se o Parmetro 71A e 72A so utilizados.
DS39632E pgina 394 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 28-13:
SS
70
SCK
(CKP = 0)
71 72
78 79
83
EXEMPLO SPI SLAVE modo de temporizao (Cke = 0)
SCK
(CKP = 1)
79
MSb
75, 76
SDI
Em MSb
73
Nota:
74
bit 6 ---- 1 LSB In
bit 6 ------ 1
78
LSB
77
80
SDO
Consulte a Figura 28-4 para as condies de carga.
TABELA 28-17: Exemplo de requisitos de modo SPI (SLAVE TIMING MODE CKE = 0)
Param
No.
70
71
71A
72
72A
73
73A
74
75
76
77
78
79
80
83
Nota 1:
2:
TsCl
Smbolo Caracterstica Min
3 TCY
Contnuo
Byte nico
Contnuo
Byte nico
1,25 TCY + 30
40
1,25 TCY + 30
40
20
Max Unidades de Condies
-
-
-
-
-
-
-
-
25
45
25
50
25
45
25
50
100
-
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
VDD = 2.0V
VDD = 2.0V
VDD = 2.0V
(Nota 2)
(Nota 1)
(Nota 1)
TssL2scH, SS a SCK ou SCK Entrada
TssL2scL
Tsch SCK Input High Time
(Modo Slave)
SCK Input Low Tempo
(Modo Slave)
TdiV2scH, Tempo de Setup SDI Entrada de Dados para SCK Borda
TdiV2scL
Tb2b
TscH2diL, Hold Time da SDI Entrada de Dados para SCK Borda
TscL2diL
TdoR
TdoF
TSCR
TSCF
SDO Dados Tempo de ascenso de
sada
SDO Dados Tempo de queda de sada
SCK Tempo de ascenso de sada (modo Master)
SCK Tempo de queda de sada (modo Master)
PIC18FXXXX
PIC18LFXXXX
TscH2doV, SDO Sada de dados vlidos aps SCK Borda PIC18FXXXX
TscL2doV
PIC18LFXXXX
TscH2ssH, SS depois de borda SCK
TscL2ssH
Requer o uso de 73A Parmetro.
Apenas se o Parmetro 71A e 72A so utilizados.
PIC18FXXXX
PIC18LFXXXX
TssH2doZ SS a SDO Sada de alta impedncia
ltima Relgio Edge of Byte 1 para o primeiro relgio Edge of Byte 2 1.5 TCY + 40
35
-
-
-
10
-
-
-
-
-
1.5 TCY + 40
v 2009 Microchip Technology Inc. DS39632E pgina 395
PIC18F2455/2550/4455/4550
FIGURA 28-14:
SS
70
83
71 72
EXEMPLO SPI SLAVE modo de temporizao (Cke = 1)
82
SCK
(CKP = 0)
SCK
(CKP = 1)
80
SDO MSb
75, 76
bit 6 ------ 1 LSB
77
SDI
Em MSb bit 6 ---- 1 LSB In
Nota:
74
Consulte a Figura 28-4 para as condies de carga.
TABELA 28-18: EXEMPLO SPI ESCRAVO REQUISITOS modo (CKE = 1)
Param
No.
70
71
71A
72
72A
73A
74
75
76
77
78
79
80
82
83
Tb2b
TsCl
Smbolo Caracterstica Min
3 TCY
Contnuo
Byte nico
Contnuo
Byte nico
1,25 TCY + 30
40
1,25 TCY + 30
40
35
-
-
-
10
-
-
-
-
-
-
-
1.5 TCY + 40
PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
Max Unidades de Condies
-
-
-
-
-
-
-
25
45
25
50
25
45
25
50
100
50
100
-
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
ns
VDD = 2.0V
VDD = 2.0V
VDD = 2.0V
VDD = 2.0V
(Nota 1)
(Nota 2)
(Nota 1)
TssL2scH, SS a SCK ou SCK Entrada
TssL2scL
Tsch SCK Input High Time
(Modo Slave)
SCK Input Low Tempo
(Modo Slave)
ltima Relgio Edge of Byte 1 para o primeiro relgio Edge of Byte 2 1.5 TCY + 40
TscH2diL, Hold Time da SDI Entrada de Dados para SCK Borda
TscL2diL
TdoR
TdoF
TSCR
TSCF
SDO Dados Tempo de ascenso de
sada
SDO Dados Tempo de queda de sada
SCK Tempo de ascenso de
sada
(Modo Master)
PIC18FXXXX
PIC18LFXXXX
TssH2doZ SS a SDO Sada de alta impedncia
SCK Tempo de queda de sada (modo Master)
TscH2doV, SDO Sada de dados vlidos aps SCK
TscL2doV Borda
TssL2doV SDO Sada de dados vlidos aps SS
Borda
TscH2ssH, SS depois SCK Borda
TscL2ssH
Requer o uso de 73A Parmetro.
Apenas se o Parmetro 71A e 72A so utilizados.
Nota 1:
2:
DS39632E pgina 396 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 28-15:
I2C BUS START / STOP, BITS CALENDRIO
SCL
90
SDA
91
92
93
Comear
Condio
Nota: Consulte a Figura 28-4 para as condies de carga.
Pare
Condio
TABELA 28-19: I2C NIBUS START / STOP BITS Requisitos (SLAVE MODE)
Param.
Smbolo
No.
90
91
92
93
TSU: STA
THD: STA
TSU: STO
Tempo Setup
Comece Condio
Hold Time
Condio de Parada
Tempo Setup
THD: STO condio de parada
Hold Time
Caracterstica
Comece Condio Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Min
4700
600
4000
600
4700
600
4000
600
Max
-
-
-
-
-
-
-
-
ns
ns
ns
Unidades
ns
Condies
S relevante para repetida
Comece condio
Aps este perodo, o primeiro
pulso de clock gerado
FIGURA 28-16:
I2C BUS dados de tempo
103 100
101
102
SCL
90
91
106 107
92
SDA
Em
110
109 109
SDA
Fora
Nota: Consulte a Figura 28-4 para as condies de carga.
v 2009 Microchip Technology Inc. DS39632E pgina 397
PIC18F2455/2550/4455/4550
TABELA 28-20: I2C barramento de dados de requisitos (SLAVE MODE)
Param.
Smbolo
No.
100 COXA
Caracterstica
Relgio High Time Modo de 100 kHz
Modo de 400 kHz
MSSP Module
101 TLow Relgio Time Low Modo de 100 kHz
Modo de 400 kHz
MSSP Module
102 TR SDA e SCL modo kHz ascenso 100
Tempo
Modo de 400 kHz
SDA e SCL queda
Tempo
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
D102
Nota 1:
2:
CB Bus Capacitive Loading
Min
4.0
0,6
1.5 TCY
4.7
1.3
1.5 TCY
-
20 + 0,1 OC
-
20 + 0,1 OC
4.7
0,6
4.0
0,6
0
0
250
100
4.7
0,6
-
-
4.7
1.3
-
Max
-
-
-
-
-
-
1000
300
300
300
-
-
-
-
-
0.9
-
-
-
-
3500
-
-
-
400
ns
ns
ns
ns
o
o
o
o
ns
o
ns
ns
o
o
ns
ns
o
o
pF
Vez que o nibus deve ser livre
antes de uma nova transmisso
pode comear
(Nota 1)
(Nota 2)
CB especificado para ser desde
10 a 400 pF
S relevante para repetida
Comece condio
Aps este perodo, o primeiro
pulso de clock gerado
CB especificado para ser desde
10 a 400 pF
o
o
PIC18FXXXX deve operar
com um mnimo de 1,5 MHz
PIC18FXXXX deve operar
com um mnimo de 10 MHz
Unidades
o
o
Condies
PIC18FXXXX deve operar
com um mnimo de 1,5 MHz
PIC18FXXXX deve operar
com um mnimo de 10 MHz
103 TF
90
91
106
107
92
109
110
TSU: STA Iniciar Condio
Tempo Setup
THD: STA Iniciar Condio
Hold Time
THD: DAT espera de Entrada de
Dados
Tempo
TSU: DAT Configurao de Entrada
de Dados
Tempo
TSU: STO condio de parada
Tempo Setup
TAA
TBuf
Vlido de sada
Relgio
Bus Free Time
Como um transmissor, o dispositivo deve fornecer esse tempo de atraso mnimo interna para colmatar a regio indefinida
(Mnimo de 300 ns) da borda de descida do SCL para evitar a gerao no intencional de iniciar ou parar condies.
Um dispositivo de barramento I2C modo rpido pode ser utilizado num sistema de barramento I2C modo Standard, mas
a exigncia,
TSU: DAT c 250 ns, ento deve ser satisfeita. Este ser o caso se automaticamente o dispositivo no esticar a
Perodo de baixa do sinal SCL. Se um tal dispositivo no esticar o perodo de baixa do sinal SCL, deve
sada o prximo bit de dados para a linha SDA, TR max. + TSU: DAT = 1000 + 1250 = 250 ns (de acordo com o
Modo de especificao do barramento I2C padro), antes da linha SCL liberada.
DS39632E pgina 398 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 28-17:
MESTRE SSP I2C BUS START / STOP BITS CALENDRIO formas de onda
SCL
90
SDA
91
92
93
Comear
Condio
Nota: Consulte a Figura 28-4 para as condies de carga.
Pare
Condio
TABELA 28-21: MESTRE SSP I2C BUS START / stop bits REQUISITOS
Param.
Smbolo
No.
90 TSU: STA
Caracterstica
Comece Condio
Tempo Setup
91 THD: STA Iniciar Condio
Hold Time
92 TSU: STO condio de parada
Tempo Setup
93 THD: STO condio de parada
Hold Time
Nota 1:
Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz(1)
Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz(1)
Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz
(1)
Min
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
Max
-
-
-
-
-
-
-
-
-
-
-
-
Unidades
ns
Condies
S relevante para
Iniciar repetido
condio
Aps esse perodo, o
primeiro relgio de pulso
gerado
ns
ns
Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz(1)
ns
Capacitncia mxima pin = 10 pF para todos os pinos I2C .
FIGURA 28-18:
MESTRE SSP I2C CALENDRIO DATA BUS
103 100
101
102
SCL
SDA
Em
90
91
106
107 92
109 109 110
SDA
Fora
Nota: Consulte a Figura 28-4 para as condies de carga.
v 2009 Microchip Technology Inc. DS39632E pgina 399
PIC18F2455/2550/4455/4550
TABELA 28-22: Master SSP I2C barramento de dados REQUISITOS
Param.
Smbolo
No.
100 COXA
Caracterstica
Modo kHz relgio High Time 100
Modo de 400 kHz
Modo de 1 MHz(1)
101 TLow Modo kHz relgio Low Time 100
Modo de 400 kHz
Modo de 1 MHz
102 TR SDA e SCL
Tempo de ascenso
SDA e SCL
Tempo de queda
Comece Condio
Tempo Setup
(1)
Min
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
-
20 + 0,1 OC
-
-
20 + 0,1 OC
-
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
0
0
250
100
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
2 (tosc) (RPP + 1)
-
-
-
4.7
1.3
-
2C
Max
-
-
-
-
-
-
1000
300
300
300
300
100
-
-
-
-
-
-
-
0.9
-
-
-
-
-
3500
1000
-
-
-
400
Unidades
ms
ms
ms
ms
ms
ms
ns
ns
ns
ns
ns
ns
ms
ms
ms
ms
ms
ms
ns
ms
ns
ns
ms
ms
ms
ns
ns
ns
ms
ms
pF
Condies
Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz(1)
Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz
(1)
CB especificado para ser desde
10 a 400 pF
CB especificado para ser desde
10 a 400 pF
S relevante para
Iniciar repetido
condio
Aps este perodo, o primeiro
pulso de clock gerado
103 TF
90 TSU: STA Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz(1)
Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz(1)
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz(1)
Modo de 100 kHz
Modo de 400 kHz
Modo de 1 MHz
(1)
91 THD: STA Iniciar Condio
Hold Time
THD: DAT Entrada de Dados
Hold Time
TSU: DAT Entrada de Dados
Tempo Setup
106
107
92
(Nota 2)
TSU: STO condio de parada
Tempo Setup
TAA Sada Valid
do Relgio
Bus Free Time
109
110 TBuf Modo de 100 kHz
Modo de 400 kHz
Vez que o nibus deve ser livre
antes de uma nova transmisso
pode comear
D102
Nota 1:
2:
CB Bus Capacitive Loading
pins.Maximum pin capacitncia = 10 pF para tudo o que eu
2A dispositivo nibus rpido modo de IC pode ser usado em um sistema de barramento I2C Modo padro, mas
parmetro n 107 c 250 ns
deve, ento, ser atendidas. Este ser o caso se automaticamente o dispositivo no esticar o perodo de baixa do
Sinal SCL. Se um tal dispositivo no esticar o perodo de baixa do sinal SCL, deve produzir o prximo bit de dados
para a linha SDA, parmetro n 102 + parmetro # 107 = 1000 + 250 = 1250 ns (para o modo 100 kHz), antes da
Linha SCL liberada.
DS39632E pgina 400 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 28-19:
RC6/TX/CK
pin
RC7/RX/DT/SDO
pin
120
Nota: Consulte a Figura 28-4 para as condies de carga.
122
EUSART SNCRONO TRANSMISSO (master / slave) CALENDRIO
121
121
TABELA 28-23: EUSART REQUISITOS transmisso sncrona
Param
No.
120
Smbolo Caracterstica Min Max Unidades Condies
TckH2dtV SYNC XMIT (MASTER e SLAVE)
Relgio de alta para Data Out Valid
Tckrf
Tdtrf
Relgio Out Time Rise and Fall Tempo
(Modo Master)
Dados Tempo de sada da Rise and Fall
Tempo
PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
-
-
-
-
-
-
40
100
20
50
20
50
ns
ns
ns
ns
ns
ns VDD = 2.0V
VDD = 2.0V
VDD = 2.0V
121
122
FIGURA 28-20: EUSART SNCRONO recepo (master / slave) CALENDRIO
RC6/TX/CK
pin
RC7/RX/DT/SDO
pin
125
126
Nota: Consulte a Figura 28-4 para as condies de carga.
TABELA 28-24: EUSART SNCRONO RECEBER REQUISITOS
Param.
No.
125
126
Smbolo Caracterstica Min Max Unidades Condies
TDTV2CKL SYNC VN (MASTER e SLAVE)
Reteno de dados antes de CK (DT tempo de espera)
TCKL2DTL Reteno de dados aps CK (DT tempo de
espera)
10
15
-
-
ns
ns
v 2009 Microchip Technology Inc. 401 DS39632E pginas
PIC18F2455/2550/4455/4550
FIGURA 28-21: Tempo do sinal USB
USB Lines diferenciais de dados
90%
Videocassetes
10%
TLR, TFR TLF, TFF
TABELA 28-25: USB requisitos de tempo de baixa velocidade
Param
No.
T01
T02
T03
Smbolo
TLR
TLF
TLRFM
Caracterstica
Transio Tempo de ascenso
Transio Tempo de queda
Subida / descida Tempo Matching
Min
75
75
80
Typ
-
-
-
Max
300
300
125
Unidades
ns
ns
%
Condies
CL = 200 a 600 pF
CL = 200 a 600 pF
TABELA 28-26: USB REQUISITOS Full-Speed
Param
No.
T04
T05
T06
Smbolo
TFR
TFF
TFRFM
Caracterstica
Transio Tempo de ascenso
Transio Tempo de queda
Subida / descida Tempo Matching
Min
4
4
90
Typ
-
-
-
Max
20
20
111,1
Unidades
ns
ns
%
Condies
CL = 50 pF
CL = 50 pF
DS39632E pgina 402 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
FIGURA 28-22: STREAMING tempo de porta paralela (PIC18F4455/4550)
OESPP
CSSPP
ToeF2adR
ToeF2daR
SPP <7:00> Escrever Endereo Gravar dados
ToeF2adV
Nota: Consulte a Figura 28-4 para as condies de carga.
ToeR2adI ToeF2daV ToeR2adI
TABELA 28-27: Streaming requisitos de porta paralela (PIC18F4455/4550)
Param.
No.
T07
T08
T09
T10
T11
T12
Smbolo
ToeF2adR
ToeF2adV
ToeR2adI
ToeF2daR
ToeF2daV
ToeR2daI
Caracterstica
OESPP Caindo Edge CSSPP Nascente Edge,
Endereo Fora
OESPP Caindo Edge Endereo Out Valid
OESPP Nascente Edge Endereo Out invlido
OESPP Caindo Edge CSSPP Nascente Edge,
Dados Fora
OESPP Caindo Edge Endereo Out Valid
OESPP Nascente Edge Dados Fora invlido
Min
0
0
0
0
0
0
Max
5
5
5
5
5
5
Unidades
ns
ns
ns
ns
ns
ns
Condies
v 2009 Microchip Technology Inc. DS39632E pgina 403
PIC18F2455/2550/4455/4550
TABELA 28-28: A / D CARACTERSTICAS Converter: PIC18F2455/2550/4455/4550 (Industrial)
PIC18LF2455/2550/4455/4550 (Industrial)
Param
Smbolo
No.
A01
A03
A04
A06
A07
A10
A20
A21
A22
A25
A30
A50
NR
EIL
EDL
Eoff
EGN
-
REF
VREFH
VREFL
VO
ZAIN
IREF
Caracterstica
Resoluo
Erro de linearidade Integral
Diferencial Erro de linearidade
Compensao de erro
Ganho de erro
Monotonicidade
Intervalo de tenso de referncia
(VREFH - VREFL)
Tenso de referncia de alta
Low Voltage Reference
Tenso de entrada analgica
Impedncia recomendada de
Analog Voltage Source
VREF Corrente de entrada(2)
1.8
3.0
Vss +
REF
VSS
VREFL
-
-
-
Min
-
-
-
-
-
Typ
-
-
-
-
-
Garantido
-
-
-
-
-
-
-
-
(1)
Max
10
< 1
< 1
< 2.0
< 1
VDD - VSS
VDD - VSS
VDD
VDD - REF
VREFH
2,5
5
150
Unidades
bocado
Condies
REF c 3.0V
LSB REF c 3.0V
LSB REF c 3.0V
LSB REF c 3.0V
LSB REF c 3.0V
-
V
V
V
V
V
kW
A
A
Durante a aquisio VO.
Durante a converso A / D
ciclo.
VSS o VO o VREF
VDD <3.0V
VDD c 3.0V
Nota 1:
2:
O resultado da converso A / D nunca diminui com um aumento na tenso de entrada e no tem cdigos ausentes.
VREFH atual de RA3/AN3/VREF + pino ou VDD, o que for selecionado como fonte VREFH.
VREFL atual de pin RA2/AN2/VREF-/CVREF ou VSS, o que for selecionado como fonte VREFL.
FIGURA 28-23: A sincronismo da converso A / D
BSF ADCON0, GO
(Nota 2)
Q4
A / D CLK 132
131
130
A DATA / D
9 8 7
... ...
3 2 1 0
ADRES
ADIF
GO
OLD_DATA NEW_DATA
TCY(1)
FEITO
AMOSTRAGEM PARADO
TDIS
AMOSTRA
Nota 1:
2:
Se a fonte de relgio A / D selecionada como RC, um tempo de TCY adicionado antes do A / D relgio comea.
Isto permite que o DORMIR de instrues a serem executadas.
Este um atraso RC mnima (tipicamente de 100 ns), que tambm desconecta o condensador a partir da explorao de entrada analgica.
DS39632E-pgina 404 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TABELA 28-29: A / D converso REQUISITOS
Param
Smbolo
No.
130 TAD
Caracterstica
Um perodo de relgio / D PIC18FXXXX
PIC18LFXXXX
PIC18FXXXX
PIC18LFXXXX
131
132
135
137
Nota 1:
2:
3:
4:
TCNV
TACQ
TSWC
TDIS
Tempo de Converso
(No incluindo o tempo de aquisio)(2)
Tempo de Aquisio(3)
Tempo de comutao de Converter Amostra
Descarga Tempo
Min
0.8
1.4
-
-
11
1.4
-
0,2
Max
25,0(1)
25,0(1)
1
3
12
-
(Nota 4)
- o
Unidades
o
o
o
o
TAD
o -40 C a +85 C
Condies
Tosc base, VREF c 3.0V
VDD = 2,0 V,
Tosc based, VREF gama completa
Modo A / D RC
VDD = 2,0 V,
Modo A / D RC
O tempo do perodo de relgio de A / D dependente da frequncia de relgio do dispositivo e o divisor de TAD.
Adres registos podem ser lidos no seguinte ciclo TCY.
O tempo para o condensador de explorao para adquirir a tenso de entrada "Novo" quando a tenso muda escala
aps a converso (a VDD VSS). A impedncia de fonte (RS) Sobre os canais de entrada 50.
No ciclo seguinte do relgio do dispositivo.
v 2009 Microchip Technology Inc. DS39632E pgina 405
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 406 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
29,0 DC E AC
CARACTERSTICAS GRFICOS
E TABELAS
Grficos e tabelas no esto disponveis neste momento.
v 2009 Microchip Technology Inc. DS39632E pgina 407
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 408 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
30,0
30.1
EMBALAGEM
Pacote de Informao Marcao
28-Lead PDIP (DIP Skinny)
XXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXX
YYWWNNN
Exemplo
PIC18F2455-I/SP e3
0810017
28-Lead SOIC
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXX
YYWWNNN
Exemplo
PIC18F2550-E/SO e3
0810017
PDIP 40-Lead
XXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXX
YYWWNNN
Exemplo
PIC18F4455-I / P e3
0810017
Legenda: XX ... X
Y
YY
WW
NNN
e3
*
Nota:
Informaes especficas do cliente
Cdigo ano (ltimo dgito do ano de calendrio)
Cdigo ano (ltimos 2 dgitos do ano civil)
Cdigo (semana de 01 de janeiro semana '01 ')
Cdigo de rastreabilidade alfanumrico
Pb-livre JEDEC designador para Matte estanho (Sn)
Este pacote Pb-free. O JEDEC designador Pb-free ( e3 )
pode ser encontrada na embalagem exterior para este pacote.
No caso de o nmero de pea integral Microchip no pode ser marcado em uma nica linha,
ele vai
transitar para a prxima linha, limitando assim o nmero de disponveis
caracteres para informaes especficas do cliente.
v 2009 Microchip Technology Inc. DS39632E pgina 409
PIC18F2455/2550/4455/4550
Informaes Marcao de Pacotes (Continuao)
44-Lead TQFP Exemplo
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
YYWWNNN
PIC18F4550
-I/PT e3
0810017
44-Lead QFN Exemplo
XXXXXXXXXX
XXXXXXXXXX
XXXXXXXXXX
YYWWNNN
PIC18F4550
-I/ML e3
0810017
DS39632E pgina 410 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
30.2 Detalhes do pacote
As sees a seguir dar os detalhes tcnicos do
pacotes.
/ HDG 6NLQQ \ 3ODVWLF 'XDO, Q / LQKD 63
1RWD
PLO% RG \> 63 ', 3 @
) RU WKH PRVW FXUUHQW SDFNDJH GUDZLQJV SOHDVH VHH WKH 0LFURFKLS 3DFNDJLQJ 6SHFLILFDWLRQ
ORFDWHG DW
KWWS ZZZ PLFURFKLS FRP SDFNDJLQJ
N
NOTA 1:
E1
1 2 3
D
E
A
A2
L
c
eB
A1
b1
b e
8QLWV
'LPHQVLRQ / LPLWV
1XPEHU RI 3LQV
3LWFK
7RS WR 6HDWLQJ 3ODQH
0ROGHG 3DFNDJH 7KLFNQHVV
% DVH WR 6HDWLQJ 3ODQH
6KRXOGHU WR 6KRXOGHU: LGWK
0ROGHG 3DFNDJH: LGWK
2EMHFWLYR /
RPSULPHQWR
7LS WR 6HDWLQJ 3ODQH
/ HDG 7KLFNQHVV
8SSHU / HDG: LGWK
/ RZHU / HDG: LGWK
1
H
$
$
$
(
(
'
/
F
E
E

0,1
, 1 & + (6
120
% 6 &


$ 0;
2EMHFWLYR 5RZ 6SDFLQJ? H%
1RWHV
3LQ YLVXDO LQGH [IHDWXUH PD \ YDU \ EXW PXVW EH ORFDWHG ZLWKLQ WKH KDWFKHG DUHD
? 6LJQLILFDQW & KDUDFWHULVWLF
'LPHQVLRQV' DQG (GR QRW LQFOXGH PROG IODVK RU SURWUXVLRQV 0ROG IODVK RU SURWUXVLRQV VKDOO
QmR H [FHHG
'LPHQVLRQLQJ DQG WROHUDQFLQJ SHU $ 60 (<0
6% &% DVLF 'LPHQVLRQ 7KHRUHWLFDOO \ H [DFW YDORU VKRZQ ZLWKRXW WROHUDQFHV
SHU VLGH
0LFURFKLS 7HFKQRORJ \ '& UDZLQJ %
v 2009 Microchip Technology Inc. DS39632E pgina 411
PIC18F2455/2550/4455/4550
/ HDG 3ODVWLF 6PDOO 2XWOLQH 62 : LGH
1RWD
PP% RG \> 62, & @
) RU WKH PRVW FXUUHQW SDFNDJH GUDZLQJV SOHDVH VHH WKH 0LFURFKLS 3DFNDJLQJ 6SHFLILFDWLRQ
ORFDWHG DW
KWWS ZZZ PLFURFKLS FRP SDFNDJLQJ
D
N
E
E1
NOTA 1:
1 2 3
b
e
(
|
h
h
c
A
A2
L
A1
L1
8QLWV
'LPHQVLRQ / LPLWV
1XPEHU RI 3LQV
3LWFK
2EMHFWLYR + HLJKW
0ROGHG 3DFNDJH 7KLFNQHVV
6WDQGRII?
2EMHFWLYR: LGWK
0ROGHG 3DFNDJH: LGWK
2EMHFWLYR /
RPSULPHQWR
& KDPIHU RSWLRQDO
) RRW /
RPSULPHQWR
) RRWSULQW
) RRW $ QJOH 7RS
/ HDG 7KLFNQHVV
/ HDG: LGWK
0ROG 'UDIW $ QJOH 7RS
1
H
$
$
$
(
(
'
K
/
/
I
F
E
A ?
?

0,1
0, / /, 0 (7 (56
120
% 6 &



% 6 &
% 6 &
% 6 &


5 ()



?
?

$ 0;
0ROG 'UDIW $ QJOH% RWWRPE? ?
1RWHV
3LQ YLVXDO LQGH [IHDWXUH PD \ YDU \ EXW PXVW EH ORFDWHG ZLWKLQ WKH KDWFKHG DUHD
? 6LJQLILFDQW & KDUDFWHULVWLF
'LPHQVLRQV' DQG (GR QRW LQFOXGH PROG IODVK RU SURWUXVLRQV 0ROG IODVK RU SURWUXVLRQV VKDOO
QmR H [FHHG
'LPHQVLRQLQJ DQG WROHUDQFLQJ SHU $ 60 (<0
6% &% DVLF 'LPHQVLRQ 7KHRUHWLFDOO \ H [DFW YDORU VKRZQ ZLWKRXW WROHUDQFHV
5 () 5HIHUHQFH 'LPHQVLRQ XVXDOO \ ZLWKRXW WROHUDQFH IRU LQIRUPDomR SXUSRVHV RQo \
0LFURFKLS 7HFKQRORJ \ '& UDZLQJ
PP SHU VLGH
%
412 DS39632E pginas v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
/ HDG 3ODVWLF 'XDO, Q / LQKD 3
1RWD
PLO% RG \> 3 ', 3 @
) RU WKH PRVW FXUUHQW SDFNDJH GUDZLQJV SOHDVH VHH WKH 0LFURFKLS 3DFNDJLQJ 6SHFLILFDWLRQ
ORFDWHG DW
KWWS ZZZ PLFURFKLS FRP SDFNDJLQJ
N
NOTA 1:
E1
1 2 3
D
E
A
A2
L
A1
b1
b e
8QLWV
'LPHQVLRQ / LPLWV
1XPEHU RI 3LQV
3LWFK
7RS WR 6HDWLQJ 3ODQH
0ROGHG 3DFNDJH 7KLFNQHVV
% DVH WR 6HDWLQJ 3ODQH
6KRXOGHU WR 6KRXOGHU: LGWK
0ROGHG 3DFNDJH: LGWK
2EMHFWLYR /
RPSULPHQWR
7LS WR 6HDWLQJ 3ODQH
/ HDG 7KLFNQHVV
8SSHU / HDG: LGWK
/ RZHU / HDG: LGWK
1
H
$
$
$
(
(
'
/
F
E
E

% 6 &











0,1
, 1 & + (6
120 $ 0;
c
eB
2EMHFWLYR 5RZ 6SDFLQJ? H%
1RWHV
3LQ YLVXDO LQGH [IHDWXUH PD \ YDU \ EXW PXVW EH ORFDWHG ZLWKLQ WKH KDWFKHG DUHD
? 6LJQLILFDQW & KDUDFWHULVWLF
'LPHQVLRQV' DQG (GR QRW LQFOXGH PROG IODVK RU SURWUXVLRQV 0ROG IODVK RU SURWUXVLRQV VKDOO
QmR H [FHHG
'LPHQVLRQLQJ DQG WROHUDQFLQJ SHU $ 60 (<0
6% &% DVLF 'LPHQVLRQ 7KHRUHWLFDOO \ H [DFW YDORU VKRZQ ZLWKRXW WROHUDQFHV
SHU VLGH
0LFURFKLS 7HFKQRORJ \ '& UDZLQJ %
v 2009 Microchip Technology Inc. DS39632E pgina 413
PIC18F2455/2550/4455/4550
/ HDG 3ODVWLF 7KLQ 4XDG) ODWSDFN 37
1RWD
[ [PP% RG \ PP> 74) 3 @
) RU WKH PRVW FXUUHQW SDFNDJH GUDZLQJV SOHDVH VHH WKH 0LFURFKLS 3DFNDJLQJ 6SHFLILFDWLRQ
ORFDWHG DW
KWWS ZZZ PLFURFKLS FRP SDFNDJLQJ
D
D1
E
e
E1
b
N
1 2 3
|
NOTA 1:
c
NOTA 2
A
(

L
A1
L1
A2
8QLWV
'LPHQVLRQ / LPLWV
1XPEHU RI / HDGV
/ HDG 3LWFK
2EMHFWLYR + HLJKW
0ROGHG 3DFNDJH 7KLFNQHVV
6WDQGRII
) RRW /
RPSULPHQWR
) RRWSULQW
) RRW $ QJOH
2EMHFWLYR: LGWK
2EMHFWLYR /
RPSULPHQWR
0ROGHG 3DFNDJH: LGWK
0ROGHG 3DFNDJH /
RPSULPHQWR
/ HDG 7KLFNQHVV
/ HDG: LGWK
0ROG 'UDIW $ QJOH 7RS
1
H
$
$
$
/
/
I
(
'
(
'
F
E
A ?
?

0,1
0, / /, 0 (7 (56
120
% 6 &


5 ()
?
% 6 &
% 6 &
% 6 &
% 6 &

? ?
?
$ 0;
0ROG 'UDIW $ QJOH% RWWRPE???
1RWHV
3LQ YLVXDO LQGH [IHDWXUH PD \ YDU \ EXW PXVW EH ORFDWHG ZLWKLQ WKH KDWFKHG DUHD
& KDPIHUV DW FRUQHUV DUH RSWLRQDO VL] H PD \ YDU \
'LPHQVLRQV' DQG (GR QRW LQFOXGH PROG IODVK RU SURWUXVLRQV 0ROG IODVK RU SURWUXVLRQV VKDOO
QmR H [FHHG
'LPHQVLRQLQJ DQG WROHUDQFLQJ SHU $ 60 (<0
6% &% DVLF 'LPHQVLRQ 7KHRUHWLFDOO \ H [DFW YDORU VKRZQ ZLWKRXW WROHUDQFHV
5 () 5HIHUHQFH 'LPHQVLRQ XVXDOO \ ZLWKRXW WROHUDQFH IRU LQIRUPDomR SXUSRVHV RQo \
PP SHU VLGH
0LFURFKLS 7HFKQRORJ \ '& UDZLQJ %
DS39632E pgina 414 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
/ HDG 3ODVWLF 7KLQ 4XDG) ODWSDFN 37
1RWD
[ [PP% RG \ PP> 74) 3 @
) RU WKH PRVW FXUUHQW SDFNDJH GUDZLQJV SOHDVH VHH WKH 0LFURFKLS 3DFNDJLQJ 6SHFLILFDWLRQ
ORFDWHG DW
KWWS ZZZ PLFURFKLS FRP SDFNDJLQJ
v 2009 Microchip Technology Inc. DS39632E pgina 415
PIC18F2455/2550/4455/4550
/ HDG 3ODVWLF 4XDG) ODW 1R / HDG 3DFNDJH 0 / [PP% RG \> 4) 1 @
1RWD ) RU WKH PRVW FXUUHQW SDFNDJH GUDZLQJV SOHDVH VHH WKH 0LFURFKLS 3DFNDJLQJ 6SHFLILFDWLRQ
ORFDWHG DW
KWWS ZZZ PLFURFKLS FRP SDFNDJLQJ
D D2
EXPOSTO
PAD
e
E
E2
b
2
1
N
VISTA SUPERIOR
NOTA 1:
2
1
N
L
Vista inferior
K
A
A3 A1
8QLWV
'LPHQVLRQ / LPLWV
1XPEHU RI 3LQV
3LWFK
2EMHFWLYR + HLJKW
6WDQGRII
& RQWDFW 7KLFNQHVV
2EMHFWLYR: LGWK
([SRVHG 3DG: LGWK
2EMHFWLYR /
RPSULPHQWR
([SRVHG 3DG / RPSULPHQWR
& RQWDFW: LGWK
& RQWDFW /
RPSULPHQWR
& RQWDFW WR ([SRVHG 3DG
1
H
$
$
$
(
(
'
'
E
/
.
% 6 &
5 ()
% 6 &
% 6 &
0,1
0, / /, 0 (7 (56
120 $ 0;
1RWHV
3LQ YLVXDO LQGH [IHDWXUH PD \ YDU \ EXW PXVW EH ORFDWHG ZLWKLQ WKH KDWFKHG DUHD
3DFNDJH LV VDZ VLQJXODWHG
'LPHQVLRQLQJ DQG WROHUDQFLQJ SHU $ 60 (<0
6% &% DVLF 'LPHQVLRQ 7KHRUHWLFDOO \ H [DFW YDORU VKRZQ ZLWKRXW WROHUDQFHV
5 () 5HIHUHQFH 'LPHQVLRQ XVXDOO \ ZLWKRXW WROHUDQFH IRU LQIRUPDomR SXUSRVHV RQo
\
0LFURFKLS 7HFKQRORJ \ '& UDZLQJ %
DS39632E pgina 416 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
/ HDG 3ODVWLF 4XDG) ODW 1R / HDG 3DFNDJH 0 / [PP% RG \> 4) 1 @
1RWD ) RU WKH PRVW FXUUHQW SDFNDJH GUDZLQJV SOHDVH VHH WKH 0LFURFKLS 3DFNDJLQJ 6SHFLILFDWLRQ
ORFDWHG DW
KWWS ZZZ PLFURFKLS FRP SDFNDJLQJ
v 2009 Microchip Technology Inc. DS39632E pgina 417
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 418 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
ANEXO A: HISTRICO DA REVISO Reviso D (janeiro de 2007)
Esta reviso inclui atualizaes para a embalagem
diagramas.
Reviso A (maio de 2004)
Folha de dados original para PIC18F2455/2550/4455/4550
dispositivos. Reviso E (agosto de 2008)
Esta reviso inclui pequenas correes nos dados
texto folha. Em Seo 30.2 "Detalhes do pacote", adicionado
desenhos padro de terra para ambos os pacotes de 44 pinos.
Reviso B (Outubro de 2004)
Esta reviso inclui atualizaes para o Electrical especificaes
ctions em Seo 28,0 "Caractersticas eltricas"
e inclui pequenas correes ao texto folha de dados.
ANEXO B:
Reviso C (fevereiro de 2006)
Esta reviso inclui atualizaes para Seo 19.0 "Mestre
Synchronous Porto (MSSP) Module "Serial,
Seo 20,0 "Enhanced Universal Synchronous
Asynchronous Receiver Transmitter (EUSART) " e
as especificaes eltricas em Seo 28.0 "Electrical
Caractersticas " e inclui pequenas correces
texto folha de dados.
DISPOSITIVO
DIFERENAS
As diferenas entre os dispositivos listados nestes dados
folha so mostrados na Tabela B-1.
TABELA B-1: DIFERENAS DO DISPOSITIVO
PIC18F2455
24576
12288
19
Portas A, B, C, (E)
2
0
No
10 canais de entrada
28-Pin PDIP
28-Pin SOIC
PIC18F2550
32768
16384
19
Portas A, B, C, (E)
2
0
No
10 canais de entrada
28-Pin PDIP
28-Pin SOIC
PIC18F4455
24576
12288
20
1
1
Sim
13 canais de entrada
40-Pin PDIP
44-Pin TQFP
44-Pin QFN
PIC18F4550
32768
16384
20
1
1
Sim
13 canais de entrada
40-Pin PDIP
44-Pin TQFP
44-Pin QFN
Caractersticas
Memria de programa (Bytes)
Memria de programa (instrues)
Fontes de interrupo
I / O Ports
Capture / Compare / Mdulos PWM
Captura Enhanced / Compare /
Mdulos PWM
Comunicaes paralelas (SPP)
10-Bit Mdulo Analgico-Digital
Pacotes
Portas A, B, C, D, E Portas A, B, C, D, E
v 2009 Microchip Technology Inc. DS39632E pgina 419
PIC18F2455/2550/4455/4550
ANEXO C: CONVERSO
CONSIDERAES
ANEXO D: MIGRAO DE
BASE PARA
DISPOSITIVOS DE REFORO
Este apndice discute as consideraes para
converso de verses anteriores de um dispositivo para o
aqueles listados nesta folha de dados. Normalmente, essas
mudanas
so devidos s diferenas no processo tecnolgico
utilizado. Um exemplo deste tipo de converso de uma
PIC16C74A a um PIC16C74B.
No aplicvel
Esta seo descreve como migrar de uma linha de base
dispositivo (isto , PIC16C5X) para um dispositivo de MCU reforada
(Isto , PIC18FXXX).
A seguir, a lista de modificaes ao longo do
PIC16C5X famlia de microcontroladores:
Actualmente disponvel
DS39632E pgina 420 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
ANEXO E: MIGRAO DE
Mdios TO
DISPOSITIVOS DE REFORO
ANEXO F: MIGRAO DE
HIGH-END TO
DISPOSITIVOS DE REFORO
Uma discusso detalhada das diferenas entre a
dispositivos MCU mid-range (ou seja, PIC16CXXX) e os
dispositivos melhorados (isto , PIC18FXXX) fornecido em
AN716, "Migrando projetos do PIC16C74A/74B para
PIC18C442 ". As modificaes discutidas, enquanto o dispositivo
especfica, so geralmente aplicveis a todos os meio-intervalo para
aprimorados migraes dispositivo.
Esta nota de aplicao est disponvel como nmero Literatura
DS00716.
Uma discusso detalhada da via e migrao
diferenas entre os dispositivos MCU high-end (ou seja,
PIC17CXXX) e os dispositivos de reforo (isto ,
PIC18FXXX) fornecido em AN726, "para PIC17CXXX
PIC18CXXX Migration ". Esta nota de aplicao
A literatura disponvel como DS00726 Nmero.
v 2009 Microchip Technology Inc. DS39632E pgina 421
PIC18F2455/2550/4455/4550
NOTAS:
DS39632E pgina 422 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
INDEX
A
A / D ............................................... .................................... 265
Requisitos aquisio ........................................ 270
ADCON0 Registre ................................................ .... 265
ADCON1 Register ................................................ .... 265
ADCON2 Registre ................................................ .... 265
ADRESH Register ............................................ 265, 268
ADRESL Register ................................................ .... 265
Analgicos Pins, Configurando .................................. 272
Associated Registra ............................................... 274
Configurando o Mdulo ............................................ 269
Relgio de Converso (TAD) ........................................... 271
Requisitos de converso ....................................... 405
Estado de Converso (GO / DONE Bit) .......................... 268
Converses ................................................. ............ 273
Conversor Caractersticas ........................................ 404
Interrupo Converter, Configurao .............................. 269
Descarga ................................................. ................ 273
Operao em Modos de gerenciamento de energia ...................... 272
Selecionando e configurando Tempo de Aquisio ............ 271
Gatilho Evento Especial (CCP2) .................................. 274
Gatilho Evento Especial (PEAC) ................................. 152
O uso do Gatilho CCP2 .......................................... 274
Pontuaes mximas absolutas ............................................. 367
AC (Timing) Caractersticas ............................................. 385
Carregar Condies de cronometragem
Especificaes ................................................. .. 386
Parmetro Simbologia ............................................. 385
Temperatura e especificaes de tenso ................. 386
Condies de tempo ................................................ .... 386
Caractersticas AC
Internal RC Preciso ............................................... 388
Access Bank
Mapeamento com Modo de deslocamento Literal cadastradas .................
79
ACKSTAT ................................................. ....................... 232
ACKSTAT Estado Bandeira ............................................... ...... 232
ADCON0 Registre ................................................ ............ 265
GO / DONE Bit .............................................. ............. 268
ADCON1 Register ................................................ ............ 265
ADCON2 Registre ................................................ ............ 265
ADDFSR ................................................. ......................... 356
ADDLW ................................................. ........................... 319
ADDULNK ................................................. ....................... 356
ADDWF ................................................. ........................... 319
ADDWFC ................................................. ........................ 320
ADRESH Register ................................................ ............ 265
ADRESL Register ................................................ .... 265, 268
Conversor analgico-digital. Ver A / D.
e BSR ................................................ ............................. 79
ANDLW ................................................. ........................... 320
ANDWF ................................................. ........................... 321
Assembler
MPASM Assembler ................................................ .. 364
Diagramas de Blocos
A / D ............................................... ............................ 268
Modelo de entrada analgica ............................................... ... 269
Baud Rate Generator .............................................. 228
Captura Modo de Operao ......................................... 145
Comparador modelo de entrada analgica .............................. 279
Comparador de E / S Modos de Operao ........................... 276
Sada do comparador ................................................ .. 278
Reference Voltage Comparator ............................... 282
Reference Voltage Comparator
Exemplo de buffer de sada .................................... 283
Compare Modo de Operao ....................................... 146
Relgio dispositivo ................................................ .............. 24
Maior PWM ................................................ ....... 153
EUSART Receba ................................................ .... 257
EUSART transmisso ................................................ ... 254
External Power-on reset Circuit
(Lento VDD Power-up) ........................................ 47
Fail-safe Monitor de Relgio ........................................... 306
Genrico I / O Port ............................................. .......... 113
High / Low-Voltage Detect com entrada externa .......... 286
Interromper Logic ................................................ .......... 100
MSSP (Master Mode I2C) ........................................ 226
MSSP (Modo I2C) ............................................. ....... 207
MSSP (SPI Mode) ............................................. ...... 197
Reiniciar Circuito On-Chip ............................................. ... 45
PIC18F2455/2550 ............................................... ...... 10
PIC18F4455/4550 ............................................... ...... 11
PLL (Modo HS) ............................................. ............. 27
PWM de Operao (simplificado) .................................... 148
Leituras da Memria Program Flash ......................... 85
Comparador nico ................................................ ... 277
SPP Caminho de Dados ............................................... ......... 191
Tabela Leia Operao ............................................... 81
Tabela Write Operao ............................................... 82
Tabela grava na memria flash do Programa .................... 87
Timer0 em modo de 16 bits ............................................ . 128
Timer0 no modo de 8-Bit ............................................ ... 128
Timer1 ................................................. .................... 132
Timer1 (16-Bit Read / Write Mode) ............................ 132
Timer2 ................................................. .................... 138
Timer3 ................................................. .................... 140
Timer3 (16-Bit Read / Write Mode) ............................ 140
Lgica de interrupo USB ............................................... .. 180
Perifrica e Opes USB ................................... 165
Watchdog Timer ................................................ ...... 303
BN ................................................. ................................... 322
BNC ................................................. ................................ 323
BNN ................................................. ................................ 323
BNOV ................................................. ............................. 324
BNZ ................................................. ................................ 324
BOR. Ver Brown-out Reset.
BOV ................................................. ................................ 327
BRA ................................................. ................................ 325
Personagem Break (12-Bit) Transmisso e Recepo .............. 259
BRG. Ver Baud Rate Generator.
Brown-out Reset (BOR) ........................................... .......... 48
Detectando ................................................. .................. 48
Incapacitante em Sleep Mode ............................................ 48
Software Ativado ................................................ ...... 48
BSF ................................................. ................................. 325
BTFSC ................................................. ............................ 326
BTFSS ................................................. ............................ 326
BTG ................................................. ................................ 327
BZ ................................................. ................................... 328
B
Baud Rate Generator ............................................... ........ 228
BC ................................................. ................................... 321
BCF ................................................. ................................. 322
BF ................................................. ................................... 232
BF Estado Bandeira ............................................... .................. 232
v 2009 Microchip Technology Inc. DS39632E pgina 423
PIC18F2455/2550/4455/4550
C
Compiladores C
MPLAB C18 ................................................ ............. 364
MPLAB C30 ................................................ ............. 364
CHAMADA ................................................. ............................... 328
CALLW ................................................. ............................ 357
Captura (CCP Module) ............................................. ........ 145
Configurao Pin CCP ............................................. 145
CCPRxH: CCPRxL Registros ................................... 145
Prescaler ................................................. ................. 145
Interrupo de Software ................................................ .... 145
Timer1/Timer3 Seleo de modo ................................ 145
Captura (PEAC Module) ............................................. ..... 152
Capture / Compare (Mdulo CCP)
Associated Registra ............................................... 147
Capture / Compare / PWM (CCP) ........................................ 143
Capture Mode. Ver Capturar.
Modo CCP e Recursos Temporizador ............................ 144
CCP2 Pino ............................................. 144
CCPRxH Register ................................................ .... 144
CCPRxL Registre ................................................ ..... 144
Compare Mode. Ver Compare.
Interao de dois mdulos CCP para
Recursos temporizador .............................................. 144
Configurao do mdulo ............................................... 144
Fontes Relgio ................................................ .................... 32
Efeitos de modos de gerenciamento de energia ............................. 34
Selecionando a 31 kHz Fonte ...................................... 32
Seleo Usando OSCCON Register ........................... 32
CLRF ................................................. ............................... 329
CLRWDT ................................................. ......................... 329
Exemplos de cdigo
16 x 16 Assinado Multiply rotina ................................ 98
16 x 16 Unsigned Rotina Multiply ............................ 98
8 x 8 Assinado Multiply rotina .................................... 97
8 x 8 Unsigned Rotina Multiply ................................ 97
Mudando Entre prescalers Captura ................... 145
Computadorizada GOTO Usando um valor de deslocamento ................... 62
Dados EEPROM Leia ............................................... .. 93
Dados EEPROM atualizao de rotina ................................ 94
Dados EEPROM Escrever ............................................... .. 93
Apagar um programa de linha de memria flash ..................... 86
Execuo de Back to Back DORMIR Instrues ............. 36
Registre rpido Stack ............................................... ..... 62
Como limpar RAM (Banco 1) Usando
Endereamento Indireto ............................................ 74
A implementao de um relgio de tempo real Usando
um servio de interrupo Timer1 ............................... 135
Inicializar PORTA ................................................ .... 113
Inicializar PORTB ................................................ .... 116
Inicializar PORTC ................................................ .... 119
Inicializar PORTD ................................................ .... 122
Inicializar PORTE ................................................ .... 125
Carregando o SSPBUF (SSPSR) Register ................. 200
Leitura de um flash de memria do programa Palavra .................. 85
Salvando STATUS, WREG e BSR
Registros na RAM ............................................. 111
Escrevendo a memria Program Flash ....................... 88-89
Cdigo de proteo ................................................ ............... 291
COMF ................................................. .............................. 330
Comparador ................................................. ..................... 275
Consideraes sobre a conexo analgica de entrada ................. 279
Associated Registra ............................................... 279
Configurao ................................................. ........... 276
Efeitos de um Reset .............................................. ....... 278
Interrupes ................................................. ................ 278
Operao ................................................. ................ 277
Operao durante o sono ........................................... 278
Sadas ................................................. ................... 277
Referncia ................................................. ............... 277
Sinal externo ................................................ 277
Sinal interno ................................................ .. 277
Tempo de Resposta ................................................ ........ 277
Especificaes de comparao ............................................... 382
Reference Voltage Comparator ....................................... 281
Preciso e erro ............................................... ... 282
Associated Registra ............................................... 283
Configurando ................................................. ............. 281
Consideraes conexo ...................................... 282
Efeitos de um Reset .............................................. ...... 282
Operao durante o sono ........................................... 282
Compare (CCP Module) ............................................. ..... 146
Configurao Pin CCP ............................................. 146
CCPRx Register ................................................ ...... 146
Interrupo de Software ................................................ .... 146
Gatilho Evento Especial .............................. 141, 146, 274
Timer1/Timer3 Seleo de modo ................................ 146
Compare (PEAC Module) ............................................. ... 152
Gatilho Evento Especial .............................................. 152
Bits de configurao ................................................ ............ 292
Configurao Register Proteo .................................... 311
Saving contexto Durante Interrupes ..................................... 111
Consideraes converso .............................................. 420
CPFSEQ ................................................. ......................... 330
CPFSGT ................................................. ......................... 331
CPFSLT ................................................. .......................... 331
Cristal oscilador / Ressonador Cermico ................................ 25
Cliente Servio de mudana de Notificao ............................ 433
Servio de Notificao de cliente ......................................... 433
Suporte ao Cliente ................................................ ............ 433
D
Dados Modos de Endereamento ............................................... ..... 74
Comparando-se os modos de endereamento com o
Instruo alargado conjunto ativado ..................... 78
Direto ................................................. ........................ 74
Indexados Literal Deslocamento ............................................... . 77
Indireta ................................................. ...................... 74
Inerente e Literal ............................................... ..... 74
Dados EEPROM
Cdigo de proteo ................................................ ....... 311
Os dados da memria EEPROM ............................................... ...... 91
Associated Registra ................................................ . 95
EECON1 e EECON2 Registradores ............................. 91
Durante a Operao Code-Proteja ................................. 94
Proteo contra gravao esprias ............................. 94
Leitura ................................................. .................... 93
Usando ................................................. ........................ 94
Escrever Verifique ................................................ ................ 93
Escrita ................................................. ...................... 93
Memria de Dados ................................................ ..................... 65
Acesso Banco ................................................ .............. 67
ea Instruo estendida Set .............................. 77
Bank Select Register (BSR) ...................................... 65
Registradores de uso geral ....................................... 67
Mapa para PIC18F2455/2550/4455/4550 Dispositivos ......... 66
Funo Especial Registra ........................................ 68
Mapa ................................................. ................... 68
USB RAM ................................................ .................. 65
DAW ................................................. ............................... 332
DS39632E pgina 424 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
DC e AC Caractersticas
Grficos e Tabelas ............................................... ... 407
DC Caractersticas ................................................ ........... 379
Poder-Down e fornecer corrente ............................ 370
Tenso de alimentao ................................................ ......... 369
DCFSNZ ................................................. ......................... 333
DECF ................................................. .............................. 332
DECFSZ ................................................. .......................... 333
Dedicado CID / ICSP Porto ............................................. .... 311
Apoio ao Desenvolvimento ................................................ ...... 363
Diferenas dispositivo ................................................ ........... 419
Resumo do dispositivo ................................................ .................. 7
Features (tabela) .............................................. .............. 9
Novos recursos principais ............................................... ....... 7
Outras caractersticas especiais ............................................... . 8
Redefinir Timers dispositivo ............................................... ........... 49
Oscillator Start-up timer (OST) ................................. 49
PLL Time Lock-out ............................................. ........ 49
Power-up timer (PWRT) ........................................... 49
Endereamento direto ................................................ ............... 75
Master Mode Synchronous ...................................... 260
Ficheiros associados Receba ........................ 262
Registros associados, Transmisso ....................... 261
Recepo ................................................. ....... 262
Transmisso ................................................. .. 260
Modo Slave Synchronous ........................................ 263
Ficheiros associados Receba ........................ 264
Registros associados, Transmisso ....................... 263
Recepo ................................................. ....... 264
Transmisso ................................................. .. 263
Alargado conjunto de instrues ............................................... .. 355
ADDFSR ................................................. ................. 356
ADDULNK ................................................. .............. 356
e Usando Ferramentas IDE MPLAB .................................. 362
CALLW ................................................. ................... 357
Consideraes sobre a Utilizao ............................................ 360
MOVSF ................................................. ................... 357
MOVSS ................................................. ................... 358
Pushl ................................................. .................... 358
SUBFSR ................................................. ................. 359
SUBULNK ................................................. ............... 359
Sintaxe ................................................. ..................... 355
Entrada de clock externo ............................................... ............ 26
E
Efeito no padro MCU Instrues .................. 77, 360
Caractersticas Eltricas ................................................ .. 367
Avanado Capture / Compare / PWM (PEAC) .................... 151
Associated Registra ............................................... 164
Capture e Compare Modos .................................. 152
Capture Mode. Ver Captura (Mdulo PEAC).
Sadas e Configurao ....................................... 152
Pin configuraes para ECCP1 ................................. 152
Modo PWM. Ver PWM (PEAC Module).
Modo padro PWM ............................................... 152
Recursos temporizador ................................................ ...... 152
Avanado Assncrono Universal Synchronous
Transmissor receptor (EUSART). Ver EUSART.
Equaes
A Time Aquisio / D ............................................. ... 270
A / D tempo mnimo de carga ................................... 270
Calculando o mnimo exigido A / D
Tempo de Aquisio .............................................. 270
Errata ................................................. .................................. 5
EUSART
Modo assncrono ................................................ 253
12-Bit Quebra Transmisso e Recepo ................. 259
Ficheiros associados Receba ........................ 257
Registros associados, Transmisso ....................... 255
Auto-Wake-up on Sincronizao quebra '......... 258
Receiver ................................................. .......... 256
Configurando o Modo 9-Bit com
Endereo Detectar ........................................ 256
Transmissor ................................................. ...... 253
Gerador de Baud Rate
Operao em Modos de gerenciamento de energia .............. 247
Gerador de Baud Rate (BRG) .................................... 247
Associated Registros ....................................... 248
Auto-Baud Rate Detectar .................................... 251
Taxa de erro de transmisso, Clculo de ........................... 248
Taxas de transmisso, modos assncronos ................. 249
Alta taxa de transmisso Select (BRGH Bit) ................. 247
Amostragem ................................................. ......... 247
F
Fail-safe Monitor de Relgio ........................................... 291, 306
Saindo da Operao ............................................... 306
Interrupes em modos de gerenciamento de energia ...................... 307
POR ou despertar de sono ................................... 307
WDT durante a falha do oscilador ................................. 306
Registre rpido Stack ............................................... ............ 62
Firmware Instructions ................................................ ...... 313
Memria Flash Programa ............................................... ...... 81
Associated Registra ................................................ . 89
Controle de Registros ................................................ ....... 82
EECON1 e EECON2 ..................................... 82
Tablat (Trava Tabela) Register ........................ 84
TBLPTR (Pointer Tabela) Registre ...................... 84
Erase Sequence ................................................ ........ 86
Apagar ................................................. ..................... 86
Durante a Operao Code-Proteja ................................. 89
Proteo contra esprias Escreve ........................... 89
Leitura ................................................. .................... 85
Tabela de Ponteiro
Limites com base em Operao ....................... 84
Limites ponteiro da tabela .......................................... 84
Tabela L e Escreve Tabela .................................. 81
Terminao inesperada do Write .............................. 89
Escrever Sequence ................................................ ......... 87
Escrever Verifique ................................................ ................ 89
Escrevendo para ................................................ .................. 87
FSCM. Ver Fail-safe Monitor de Relgio.
G
GOTO ................................................. ............................. 334
H
Multiplicador Hardware ................................................ ............ 97
Introduo ................................................. ............... 97
Operao ................................................. .................. 97
Comparao de desempenho .......................................... 97
v 2009 Microchip Technology Inc. DS39632E pgina 425
PIC18F2455/2550/4455/4550
High / Low-Voltage Detect ............................................ ..... 285
Aplicaes ................................................. ............. 288
Associated Registra ............................................... 289
Caractersticas ................................................. ........ 384
Consumo de corrente ............................................... 287
Efeitos de um Reset .............................................. ....... 289
Operao ................................................. ................ 286
Durante o sono ................................................ .... 289
Instalao ................................................. ....................... 287
Start-up Tempo .............................................. ............. 287
Aplicao tpica ................................................ ... 288
HLVD. Ver High / Low-Voltage Detect. ............................. 285
Ciclo de Instruo ................................................ ................ 63
Overclock Scheme ................................................ ....... 63
Fluxo / Canalizao ............................................... ............ 63
Conjunto de instrues ................................................ .................. 313
ADDLW ................................................. ................... 319
ADDWF ................................................. ................... 319
ADDWF (modo de deslocamento Literal cadastradas) .................... 361
ADDWFC ................................................. ................ 320
ANDLW ................................................. ................... 320
ANDWF ................................................. ................... 321
BC ................................................. ........................... 321
BCF ................................................. ........................ 322
BN ................................................. ........................... 322
BNC ................................................. ........................ 323
BNN ................................................. ........................ 323
BNOV ................................................. ..................... 324
BNZ ................................................. ........................ 324
BOV ................................................. ........................ 327
BRA ................................................. ........................ 325
BSF ................................................. ......................... 325
BSF (modo de deslocamento Literal cadastradas) .......................... 361
BTFSC ................................................. .................... 326
BTFSS ................................................. .................... 326
BTG ................................................. ........................ 327
BZ ................................................. ........................... 328
CHAMADA ................................................. ....................... 328
CLRF ................................................. ...................... 329
CLRWDT ................................................. ................ 329
COMF ................................................. ..................... 330
CPFSEQ ................................................. ................. 330
CPFSGT ................................................. ................. 331
CPFSLT ................................................. .................. 331
DAW ................................................. ....................... 332
DCFSNZ ................................................. ................. 333
DECF ................................................. ...................... 332
DECFSZ ................................................. ................. 333
Formato Geral ................................................ ........ 315
GOTO ................................................. ..................... 334
INCF ................................................. ....................... 334
INCFSZ ................................................. ................... 335
INFSNZ ................................................. ................... 335
IORLW ................................................. .................... 336
IORWF ................................................. .................... 336
LFSR ................................................. ...................... 337
MOVF ................................................. ..................... 337
MOVFF ................................................. ................... 338
MOVLB ................................................. ................... 338
MOVLW ................................................. .................. 339
MOVWF ................................................. .................. 339
MULLW ................................................. ................... 340
MULWF ................................................. ................... 340
NEGF ................................................. ...................... 341
NOP ................................................. ........................ 341
Opcode Descries de Campo ....................................... 314
POP ................................................. ........................ 342
IMPULSO ................................................. ...................... 342
RCALL ................................................. .................... 343
REAJUSTE ................................................. .................... 343
RETFIE ................................................. ................... 344
RETLW ................................................. ................... 344
RETURN ................................................. ................. 345
RLCF ................................................. ...................... 345
RLNCF ................................................. .................... 346
RRCF ................................................. ...................... 346
RRNCF ................................................. ................... 347
Eu
I / O Ports .............................................. ............................. 113
Modo I2C (MSSP)
Reconhea sincronismo Sequence ............................... 235
Associated Registra ............................................... 241
Baud Rate Generator ............................................... 228
Coliso de nibus
Durante uma condio de incio repetida .................. 239
Durante uma condio de parada ................................... 240
Relgio de Arbitragem ................................................ ....... 229
Relgio Alongamento ................................................ ....... 221
10-Bit Slave Modo de recepo (SEN = 1) ............. 221
10-Bit Slave modo de transmisso ............................. 221
7-Bit Slave Mode (SEN = 1) ............... Receba 221
7-Bit Slave modo de transmisso ............................... 221
A sincronizao do relgio ea Bit CKP ................... 222
Efeito de um Reset .............................................. ........ 236
Suporte Endereo Chamada Geral ................................. 225
I2C Clock Rate w / BRG ............................................ . 228
Master Mode ................................................ ............ 226
Operao ................................................. ........ 227
Recepo ................................................. ........ 232
Repetiu Iniciar condio de tempo ..................... 231
Comece condio de tempo ..................................... 230
Transmisso ................................................. ... 232
Transmitir Sequence .......................................... 227
Multi-Master Comunicao, Collision Bus
e Arbitragem ................................................ .. 236
Modo Multi-Master .............................................. ..... 236
Operao ................................................. ................ 212
Read / Write Informaes Bit (R / W Bit) ............... 212, 214
Registros ................................................. ................. 207
Relgio Serial (RB1/AN10/INT1/SCK/SCL) ................ 214
Modo Slave ................................................ .............. 212
Dirigindo ................................................. ...... 212
Dirigindo-Masking ......................................... 213
Recepo ................................................. ........ 214
Transmisso ................................................. ... 214
Operao dormir ................................................ ....... 236
Pare condio de tempo .............................................. 235
Locais de identificao ................................................ ............. 291, 311
Modos ociosas ................................................ .......................... 40
INCF ................................................. ................................ 334
INCFSZ ................................................. ........................... 335
Debugger em circuito .............................................. ............ 311
In-Circuit Serial Programming (ICSP) ...................... 291, 311
Indexados Literal offset Dirigindo
e Instrues Padro PIC18 ............................. 360
Indexados Modo de deslocamento Literal ................................. 77, 79, 360
Endereamento Indireto ................................................ ............ 75
INFSNZ ................................................. ........................... 335
Condies de inicializao para todos os registros ...................... 53-57
DS39632E pgina 426 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
SETF ................................................. ....................... 347
SETF (modo de deslocamento Literal cadastradas) ........................ 361
DORMIR ................................................. .................... 348
Instrues padro ............................................... 313
SUBFWB ................................................. ................. 348
SUBLW ................................................. ................... 349
SUBWF ................................................. ................... 349
SUBWFB ................................................. ................. 350
Swapf ................................................. ................... 350
TBLRD ................................................. .................... 351
TBLWT ................................................. .................... 352
TSTFSZ ................................................. .................. 353
XORLW ................................................. ................... 353
XORWF ................................................. ................... 354
INTCON Registrar
RBIF Bit ................................................ .................... 116
INTCON Registra ................................................ ........... 101
Circuito Inter-integrado. Ver I2C.
Bloco oscilador interno ............................................... ...... 27
Ajuste ................................................. ................ 28
INTHS, INTXT, INTCKO e intio Modos ............... 27
OSCTUNE Register ................................................ ... 28
Oscilador interno RC
Use com WDT ............................................... ........... 303
Endereo Internet ................................................ ............... 433
Interromper Fontes ................................................ ............. 291
Converso A / D completo ....................................... 269
Captura Completa (CCP) ......................................... 145
Compare Completa (CCP) ....................................... 146
Interromper-on-Change (RB7: RB4) .............................. 116
INTx Pin ................................................ ................... 111
PORTB, Interrupo-on-Change .................................. 111
TMR0 ................................................. ...................... 111
TMR0 Overflow ................................................ ........ 129
TMR1 Overflow ................................................ ........ 131
TMR2 para PR2 jogo (PWM) ............................ 148, 153
TMR3 Overflow ................................................ 139, 141
Interrupes ................................................. ........................... 99
USB ................................................. ........................... 99
Interrupes, bandeira bits
Interromper-on-Change (RB7: RB4)
Flag (RBIF Bit) ............................................. .... 116
INTOSC desvio de freqncia ............................................... ..... 28
INTOSC, INTRC. Ver Bloco oscilador interno.
IORLW ................................................. ............................ 336
IORWF ................................................. ............................ 336
IPR Registra ................................................ ................... 108
MOVLB ................................................. ........................... 338
MOVLW ................................................. .......................... 339
MOVSF ................................................. ........................... 357
MOVSS ................................................. ........................... 358
MOVWF ................................................. .......................... 339
MPLAB ASM30 Assembler, Linker, bibliotecrio .................. 364
MPLAB ICD 2 In-Circuit Debugger .................................. 365
MPLAB ICE 2000 High-Performance
Universal In-Circuit Emulator ................................... 365
MPLAB Integrated Development
Software Ambiente ............................................. 363
MPLAB PM3 Programmer dispositivo ................................... 365
MPLAB REAL ICE In-Circuit Emulator Sistema ............... 365
MPLINK objeto Linker / MPLIB Bibliotecrio de Objetos ............... 364
MSSP
Pulso ACK ................................................ ....... 212, 214
Registradores de controle (geral) ..................................... 197
Modo I2C. Ver Modo I2C.
Viso geral do mdulo ................................................ ..... 197
SPI Master / Slave Connection .................................. 201
Modo de SPI. Ver Modo de SPI.
SSPBUF ................................................. ................. 202
SSPSR ................................................. ................... 202
MULLW ................................................. ........................... 340
MULWF ................................................. ........................... 340
N
NEGF ................................................. .............................. 341
NOP ................................................. ................................ 341
O
Configurao do oscilador ................................................ ..... 23
CE ................................................. ............................. 23
ECIO ................................................. ......................... 23
ECPIO ................................................. ...................... 23
ECPLL ................................................. ...................... 23
HS ................................................. ............................. 23
HSPLL ................................................. ...................... 23
INTCKO ................................................. .................... 23
Bloco oscilador interno ............................................. 27
INTHS ................................................. ....................... 23
Intio ................................................. ........................ 23
INTXT ................................................. ....................... 23
Modos de oscilador e Operao USB ........................ 23
Configuraes para USB ............................................... ......... 30
XT ................................................. ............................. 23
XTPLL ................................................. ....................... 23
Seleo oscilador ................................................ .......... 291
Oscillator Start-up timer (OST) ................................... 34, 49
Switching oscilador ................................................ ........... 32
Transitions oscilador ................................................ ......... 33
Oscilador, Timer1 ............................................... ...... 131, 141
Oscilador, Timer3 ............................................... .............. 139
L
LFSR ................................................. ............................... 337
Programao ICSP Baixa Tenso. Ver Single-alimentao
Programao ICSP.
M
Master Clear Reset (MCLR) ............................................ .. 47
Mestre Synchronous Serial Port (MSSP). Ver MSSP.
Organizao da memria ................................................ ......... 59
Memria de Dados ................................................ ............. 65
Memria do Programa ................................................ ....... 59
Requisitos de programao de memria .............................. 381
Microchip Internet Web Site ............................................. 433
Migrao de Base de dispositivos aprimorados ................ 420
A migrao do High-End para dispositivos avanados ............... 421
Migrao de Mid-Range para dispositivos avanados ............ 421
MOVF ................................................. .............................. 337
MOVFF ................................................. ........................... 338
P
Information Packaging ................................................ ..... 409
Detalhes ................................................. ..................... 411
Marcao ................................................. ................... 409
PICSTART Alm disso Desenvolvimento Programmer .................... 366
PIE Registra ................................................ ................... 106
Funes Pin
MCLR/VPP/RE3 ............................................. ...... 12, 16
NC / ICCK / ICPGC ............................................. .......... 21
NC / ICDT / ICPGD ............................................. ........... 21
NC / ICPORTS ............................................... ............. 21
NC / ICRST / ICVPP ............................................. .......... 21
v 2009 Microchip Technology Inc. DS39632E pgina 427
PIC18F2455/2550/4455/4550
OSC1/CLKI ............................................... ........... 12, 16
OSC2/CLKO/RA6 ............................................. ... 12, 16
RA0/AN0 ............................................... ............... 13, 17
RA1/AN1 ............................................... ............... 13, 17
RA2/AN2/VREF-/CVREF ........................................ 13, 17
RA3/AN3/VREF + ............................................. ...... 13, 17
RA4/T0CKI/C1OUT/RCV ..................................... 13, 17
RA5/AN4/SS/HLVDIN/C2OUT ............................. 13, 17
RB0/AN12/INT0/FLT0/SDI/SDA .......................... 14, 18
RB1/AN10/INT1/SCK/SCL ................................... 14, 18
RB2/AN8/INT2/VMO ........................................... . 14, 18
RB3/AN9/CCP2/VPO ........................................... 14, 18
RB4/AN11/KBI0 ............................................. ............ 14
RB4/AN11/KBI0/CSSPP ........................................... . 18
RB5/KBI1/PGM ............................................. ....... 14, 18
RB6/KBI2/PGC ............................................. ....... 14, 18
RB7/KBI3/PGD ............................................. ....... 14, 18
RC0/T1OSO/T13CKI ........................................... 15, 19
RC1/T1OSI/CCP2/UOE ....................................... 15, 19
RC2/CCP1 ............................................... .................. 15
RC2/CCP1/P1A ............................................. ............ 19
RC4/D-/VM ............................................ ............... 15, 19
RC5 / D + / VP ............................................. ............. 15, 19
RC6/TX/CK ............................................. ............. 15, 19
RC7/RX/DT/SDO ........................................... ...... 15, 19
RD0/SPP0 ............................................... ................... 20
RD1/SPP1 ............................................... ................... 20
RD2/SPP2 ............................................... ................... 20
RD3/SPP3 ............................................... ................... 20
RD4/SPP4 ............................................... ................... 20
RD5/SPP5/P1B ............................................. ............. 20
RD6/SPP6/P1C ............................................. ............. 20
RD7/SPP7/P1D ............................................. ............. 20
RE0/AN5/CK1SPP ............................................. ........ 21
RE1/AN6/CK2SPP ............................................. ........ 21
RE2/AN7/OESPP ............................................. .......... 21
VDD ................................................. ...................... 15, 21
VSS ................................................. ...................... 15, 21
VUSB ................................................. .................... 15, 21
Descries pinagem I / O
PIC18F2455/2550 ............................................... ....... 12
PIC18F4455/4550 ............................................... ....... 16
PIR Registra ................................................ ................... 104
PLL Frequency Multiplier ............................................... .... 27
HSPLL, XTPLL, ECPLL e ECPIO
Modos de oscilador ................................................ 27
PLL Time Lock-out ............................................. ................ 49
POP ................................................. ................................. 342
POR. Ver Power-on Reset.
PORTA
Associated Registra ............................................... 115
I / O Resumo .............................................. .............. 114
LATA Register ................................................ .......... 113
PORTA Register ................................................ ...... 113
TRISA Register ................................................ ........ 113
PORTB
Associated Registra ............................................... 118
I / O Resumo .............................................. .............. 117
LATB Register ................................................ .......... 116
PORTB Register ................................................ ...... 116
RB1/AN10/INT1/SCK/SCL Pin ................................. 214
RB7: RB4 Interrupo-on-Change Flag (RBIF Bit) ........ 116
TRISB Register ................................................ ........ 116
PORTC
Associated Registra ............................................... 121
I / O Resumo .............................................. .............. 120
LATC Register ................................................ ......... 119
PORTC Register ................................................ ...... 119
TRISC Register ................................................ ........ 119
PORTD
Associated Registra ............................................... 124
I / O Resumo .............................................. .............. 123
LATD Registre ................................................ ......... 122
PORTD Registre ................................................ ...... 122
TRISD Registre ................................................ ........ 122
PORTE
Associated Registra ............................................... 126
I / O Resumo .............................................. .............. 126
LATE Registre ................................................ ......... 125
PORTE Register ................................................ ...... 125
Trise Registre ................................................ ........ 125
Postscaler, WDT
Assignment (PSA Bit) ............................................. . 129
Taxa Select (T0PS2: T0PS0 Bits) ............................. 129
Poder-Managed Modos .............................................. ....... 35
e vrios comandos do sono .................................. 36
e PWM Operao ............................................... . 163
Fontes Relgio ................................................ ............ 35
Transitions relgio e indicadores de status .................... 36
Entrando ................................................. .................... 35
Saindo Modos ocioso e sono .................................... 42
Interrupo por ................................................ ........ 42
por redefinir ................................................ ............ 42
por WDT Time-out ............................................. . 42
Sem um Delay Start-up oscilador ................. 43
Ocioso ................................................. ............................ 40
Modos ociosas
PRI_IDLE ................................................. .......... 41
RC_IDLE ................................................. .......... 42
SEC_IDLE ................................................. ........ 41
Executar Modos ................................................ ................ 36
PRI_RUN ................................................. .......... 36
RC_RUN ................................................. ........... 38
SEC_RUN ................................................. ........ 36
Selecionando ................................................. ................... 35
Dormir ................................................. ........................ 40
Resumo (tabela) .............................................. .......... 35
Power-on Reset (POR) ........................................... ........... 47
Oscillator Start-up timer (OST) ................................. 49
Power-up timer (PWRT) ........................................... 49
Sequence Time-out .............................................. ..... 49
Power-up Atrasos .............................................. ................. 34
Power-up timer (PWRT) ........................................... .. 34, 49
Prescaler
Timer2 ................................................. .................... 154
Prescaler, Timer0 ............................................... ............. 129
Assignment (PSA Bit) ............................................. . 129
Taxa Select (T0PS2: T0PS0 Bits) ............................. 129
Prescaler, Timer2 ............................................... ............. 149
Modo PRI_IDLE ................................................ ................. 41
Modo PRI_RUN ................................................ ................. 36
Contador do programa ................................................ ............... 60
PCL, PCH e PCU Registra .................................. 60
PCLATH e PCLATU Registra .............................. 60
DS39632E pgina 428 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
Memria de Programa
ea Instruo estendida Definir ............................... 77
Cdigo de proteo ................................................ ....... 309
Instrues ................................................. ................ 64
Two-Word ............................................... ........... 64
Interromper Vector ................................................ .......... 59
Look-up Tables .............................................. ............ 62
Mapa e Stack (diagrama) ........................................... 59
Redefinir Vector ................................................ .............. 59
Verificao programa e Proteo Cdigo ....................... 308
Associated Registra ............................................... 308
Programao, as instrues do dispositivo ................................... 313
Modulao por largura de pulso. Ver PWM (CCP Module)
e PWM (Mdulo PEAC).
IMPULSO ................................................. .............................. 342
Empurre e Instrues POP .............................................. 61
Pushl ................................................. ............................ 358
PWM (CCP Module)
Associated Registra ............................................... 150
Auto-Shutdown (Apenas CCP1) ................................... 149
Ciclo de trabalho ................................................ ................ 148
Exemplo Frequncias / Resolues .......................... 149
Perodo ................................................. ...................... 148
Configurao para PWM Operao ........................................ 149
TMR2 para PR2 jogo .............................................. .. 148
PWM (PEAC Module) ............................................. ......... 153
CCPR1H: CCPR1L Registros ................................... 153
Mudana de direo no modo de sada Full-Ponte ......... 158
Ciclo de trabalho ................................................ ................ 154
Efeitos de um Reset .............................................. ....... 163
Maior PWM Auto-Shutdown ............................. 160
Modo avanado PWM ............................................. 153
Exemplo Frequncias / Resolues .......................... 154
Exemplo de Aplicao Full-Ponte .............................. 158
Modo Full-Ponte .............................................. ........ 157
Modo de Meia Ponte .............................................. ....... 156
Modo de sada de Meia Ponte
Exemplos de aplicao ...................................... 156
Operao em Modos de gerenciamento de energia ...................... 163
Operao com fail-safe Monitor de Relgio ................... 163
Configuraes de sada .............................................. 154
Relacionamentos de sada (Active-High) .......................... 155
Relacionamentos de sada (Active-Baixo) ........................... 155
Perodo ................................................. ...................... 153
Programmable Delay Morto-Band ............................ 160
Configurao para PWM Operao ........................................ 163
Start-up Consideraes ........................................... 162
TMR2 para PR2 jogo .............................................. .. 153
Registra
ADCON0 (A / D Controle 0) ......................................... 265
ADCON1 (A / D de Controlo 1) ......................................... 266
ADCON2 (A / D Controle 2) ......................................... 267
BAUDCON (Baud Rate Control) .............................. 246
BDnSTAT (buffer Descriptor n Status,
CPU Mode) ............................................... ....... 176
BDnSTAT (buffer Descriptor n Status,
SIE Mode) ............................................... ........ 177
CCP1CON (PEAC Control) ..................................... 151
CCPxCON (Standard CCPx Control) ...................... 143
CMCON (Control Comparator) ................................ 275
CONFIG1H (Configurao 1 High) .......................... 294
CONFIG1L (Configurao 1 Low) ........................... 293
CONFIG2H (Configurao 2 High) .......................... 296
CONFIG2L (Configurao 2 Baixo) ........................... 295
CONFIG3H (Configurao 3 High) .......................... 297
CONFIG4L (Configurao 4 Baixo) ........................... 298
CONFIG5H (Configurao 5 High) .......................... 299
CONFIG5L (Configurao 5 Baixo) ........................... 299
CONFIG6H (Configurao 6 High) .......................... 300
CONFIG6L (Configurao 6 Baixo) ........................... 300
CONFIG7H (Configurao 7 High) .......................... 301
CONFIG7L (Configurao 7 Baixo) ........................... 301
CVRCON (Voltage Comparator
Controle de referncia) .......................................... 281
DEVID1 (ID do dispositivo 1) ............................................ .. 302
DEVID2 (ID do dispositivo 2) ............................................ .. 302
ECCP1AS (Enhanced Capture / Compare / PWM
Controle de Auto-Desligamento) .................................. 161
ECCP1DEL (PWM Dead-Banda Delay) .................... 160
EECON1 (Dados de EEPROM de Controlo 1) ................... 83, 92
HLVDCON (High / Low-Voltage Controle Detect) ....... 285
INTCON (Controle de Interrupo) ..................................... 101
INTCON2 (Interrupt Control 2) ................................ 102
INTCON3 (Interrupo de Controle 3) ................................ 103
IPR1 (Peripheral Prioridade Interrupo 1) ....................... 108
IPR2 (Peripheral Prioridade Interrupo 2) ....................... 109
OSCCON (Control Oscillator) .................................... 33
OSCTUNE (oscilador Sintonia) ................................... 28
PIE1 (Interrupo perifrica Activar 1) ....................... 106
PIE2 (Interrupo perifrica Activar 2) ....................... 107
PIR1 (solicitao de interrupo perifrica (Flag) 1) ........... 104
PIR2 (solicitao de interrupo perifrica (Flag) 2) ........... 105
PORTE ................................................. ................... 125
RCON (Reset Control) ....................................... 46, 110
RCSTA (Receba Estado e Controle) ..................... 245
SPPCFG (SPP configurao) ................................. 192
SPPCON (SPP Control) .......................................... 191
SPPEPS (SPP Endpoint Endereo e Estado) ........ 195
SSPCON1 (MSSP de controle 1, Modo I2C) ................. 209
SSPCON1 (MSSP de controle 1, SPI Mode) ................ 199
SSPCON2 (MSSP Control 2,
Master Mode I2C) ............................................ 210
SSPCON2 (MSSP Control 2, Modo Slave I2C) ....... 211
SSPSTAT (MSSP Status, Modo I2C) ...................... 208
SSPSTAT (MSSP Status, SPI Mode) ...................... 198
STATUS ................................................. ................... 73
STKPTR (Stack Pointer) ............................................ 61
T0CON (Timer0 Control) ......................................... 127
T1CON (Timer1 Control) ......................................... 131
T2CON (Timer2 Control) ......................................... 137
T3CON (Timer3 Control) ......................................... 139
Q
Q Relgio ................................................ .................... 149, 154
R
RAM. Ver Os dados de memria.
Modo RC_IDLE ................................................ .................. 42
Modo RC_RUN ................................................ .................. 38
RCALL ................................................. ............................ 343
RCON Registrar
O bit de estado durante a inicializao .................................... 52
Leitor Response ................................................ ............ 434
Registre arquivo ................................................ ....................... 67
Registre-se Resumo do arquivo ............................................... . 69-72
v 2009 Microchip Technology Inc. DS39632E pgina 429
PIC18F2455/2550/4455/4550
TXSTA (Transmisso de Status e Controle) ..................... 244
UCFG (Configurao USB) ...................................... 168
UCON (Control USB) ............................................. .. 166
UEIE (Erro de interrupo USB Habilitar) .......................... 185
UEIR (USB Erro de interrupo Estado) ........................... 184
UEPn (Endpoint USB n Control) .............................. 172
UIE (Interrupo USB Habilitar) ...................................... 183
UIR (USB interrupo Estado) ...................................... 181
USTAT (Estado USB) ............................................. .. 171
WDTCON (Watchdog Timer Control) ....................... 304
REAJUSTE ................................................. ............................ 343
Redefinir Estado de Registros .............................................. ...... 52
Redefine ................................................. ....................... 45, 291
Brown-out Reset (BOR) ........................................... 291
Oscillator Start-up timer (OST) ............................... 291
Power-on Reset (POR) ........................................... . 291
Power-up timer (PWRT) ......................................... 291
RETFIE ................................................. ........................... 344
RETLW ................................................. ............................ 344
RETURN ................................................. ......................... 345
Voltar Stack Endereo ............................................... ......... 60
e ficheiros associados .......................................... 60
Voltar Pointer Stack (STKPTR) ........................................ 61
Histrico da Reviso ................................................ ............... 419
RLCF ................................................. ............................... 345
RLNCF ................................................. ............................ 346
RRCF ................................................. .............................. 346
RRNCF ................................................. ............................ 347
Conexo tpica ................................................ .. 201
Spp. Ver Transmisso da Porta Paralela. .................................. 191
SS ................................................. ................................... 197
SSPOV ................................................. ........................... 232
SSPOV Estado Bandeira ............................................... .......... 232
SSPSTAT Registrar
R / W Bit .............................................. ...................... 214
SSPxSTAT Registrar
R / W Bit .............................................. ...................... 212
Stack Full / Underflow Redefine ............................................. . 62
Registrador de status ................................................ .............. 73
Transmisso Porta Paralela ............................................... ..... 191
Associated Registra ............................................... 196
Overclock Dados ................................................ .......... 192
Configurao ................................................. .......... 191
Interno Pull-ups .............................................. ......... 192
Interrupes ................................................. ................ 194
Configurar Controle microcontrolador .................................. 194
Leitura de (Modo microcontrolador) ...................... 195
Transferncia de dados entre USB SIE
e SPP (diagrama) .......................................... 194
Configurar Controle USB ............................................... ... 194
Espere Unidos ................................................ .............. 192
Escrevendo para (Modo microcontrolador) ............................. 194
SUBFSR ................................................. ......................... 359
SUBFWB ................................................. ........................ 348
SUBLW ................................................. ........................... 349
SUBULNK ................................................. ....................... 359
SUBWF ................................................. ........................... 349
SUBWFB ................................................. ........................ 350
Swapf ................................................. ........................... 350
S
SCK ................................................. ................................. 197
SDI ................................................. .................................. 197
SDO ................................................. ................................ 197
Modo SEC_IDLE ................................................ ................ 41
Modo SEC_RUN ................................................ ................ 36
Relgio Serial, SCK .............................................. ............... 197
Dados de srie no (SDI) ............................................ .............. 197
Serial Data Out (SDO) ............................................ ......... 197
Serial Peripheral Interface. Ver Modo de SPI.
SETF ................................................. ............................... 347
Slave Select (SS) ............................................. ................ 197
DORMIR ................................................. ............................. 348
Dormir
OSC1 e OSC2 Pin Unidos ...................................... 34
Modo de dormir ................................................ ........................ 40
Software Simulator (MPLAB SIM) .................................... 364
Gatilho evento especial. Ver Compare (Mdulo CCP).
Gatilho evento especial. Ver Compare (Mdulo PEAC).
Caractersticas especiais da CPU ............................................ 291
Caractersticas especiais ICPORT ............................................... . 311
SPI Mode (MSSP)
Associated Registra ............................................... 206
Modo de Compatibilidade Bus ........................................... 206
Efeitos de um Reset .............................................. ....... 206
Ativando SPI I / O ............................................. ......... 201
Master Mode ................................................ ............ 202
Master / Slave Connection ......................................... 201
Operao ................................................. ................ 200
Operao em Modos de gerenciamento de energia ...................... 206
Relgio de srie ................................................ .............. 197
Dados de srie no ............................................... ............ 197
Dados Serial Fora ............................................... ......... 197
Modo Slave ................................................ .............. 204
Slave Selecione ................................................ ............. 197
Slave Selecione sincronizao .................................. 204
SPI Relgio ................................................ ................. 202
T
T0CON Registrar
PSA Bit ................................................ .................... 129
T0CS Bit ................................................ .................. 128
T0PS2: T0PS0 Bits .............................................. ..... 129
Bit T0SE ................................................ .................. 128
Operaes ponteiro da tabela (tabela) ........................................ 84
Tabela L / Escreve Tabela ............................................. .... 62
TBLRD ................................................. ............................ 351
TBLWT ................................................. ............................ 352
Time-out em vrias situaes (tabela) ................................ 49
Timer0 ................................................. ............................. 127
16-Bit modo Temporizador L e escreve ...................... 128
Associated Registra ............................................... 129
Clock Source Borda Select (Bit T0SE) ..................... 128
Clock Source Select (T0CS Bit) ............................... 128
Operao ................................................. ................ 128
Interrupo de estouro ................................................ .... 129
Prescaler ................................................. ................ 129
Mudar Atribuio ..................................... 129
Prescaler. Ver Prescaler, Timer0.
Timer1 ................................................. ............................. 131
16-Bit Leitura / Gravao Modo .......................................... 133
Associated Registra ............................................... 136
Interromper ................................................. .................. 134
Operao ................................................. ................ 132
Oscilador ................................................. ......... 131, 133
Consideraes sobre layout ..................................... 134
Opo Low-Power ........................................... 133
Usando Timer1 como fonte de relgio ..................... 133
Interrupo de estouro ................................................ .... 131
Repor, usando um evento especial
Sada de disparo (CCP) ...................................... 134
Gatilho Evento Especial (PEAC) ................................. 152
DS39632E pgina 430 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
TMR1H Register ................................................ ...... 131
TMR1L Registre ................................................ ....... 131
Use como um Real-Time Clock ....................................... 134
Timer2 ................................................. ............................. 137
Associated Registra ............................................... 138
Interromper ................................................. ................... 138
Operao ................................................. ................ 137
Sada ................................................. ..................... 138
PR2 Registre ................................................ .... 148, 153
TMR2 para PR2 jogo interrupo .......................... 148, 153
Timer3 ................................................. ............................. 139
16-Bit Leitura / Gravao Modo ........................................... 141
Associated Registra ............................................... 141
Operao ................................................. ................ 140
Oscilador ................................................. ......... 139, 141
Interrupo de estouro ............................................ 139, 141
Gatilho Evento Especial (CCP) .................................... 141
TMR3H Register ................................................ ...... 139
TMR3L Registre ................................................ ....... 139
Diagramas de tempo
Converso A / D .............................................. .......... 404
Reconhea Sequence .......................................... 235
Recepo assncrona (TXCKP = 0,
TX no invertida) .............................................. 257
Transmisso Assncrono (TXCKP = 0,
TX no invertida) .............................................. 254
Transmisso assncrona, Back to Back
(TXCKP = 0, TX no invertida) ......................... 254
Taxa de Clculo de transmisso automtica ............................ 252
Auto-Wake-up Bit (EUA) durante
Operao Normal ............................................ 258
Bit Auto-Wake-up (EUA) durante o sono ................... 258
Baud Rate Generator com relgio de Arbitragem ............ 229
BRG Sequence Overflow ......................................... 252
BRG Redefinir Devido SDA Arbitragem Durante
Comece Condio ................................................ . 238
Brown-out Reset (BOR) ........................................... 390
Coliso de nibus durante uma partida repetida
Condio (Caso 1) ........................................... 239
Coliso de nibus durante uma partida repetida
Condio (Caso 2) ........................................... 239
Coliso de nibus durante uma partida Condio
(SCL = 0) ............................................. ............ 238
Coliso de nibus durante uma partida Condio
(SDA Only) .............................................. ......... 237
Coliso de nibus durante uma condio de parada
(Caso 1) .............................................. ............. 240
Coliso de nibus durante uma condio de parada
(Caso 2) .............................................. ............. 240
Coliso de nibus para transmisso e reconhecer ........... 236
Capture / Compare / PWM (todos os mdulos CCP) ............ 392
CLKO e I / O ............................................. ............. 389
Relgio Sincronizao ............................................. 222
Relgio / ciclo de instruo .............................................. 63
EUSART Synchronous Receba
(Master / Slave) ............................................. .... 401
EUSART Synchronous Transmisso
(Master / Slave) ............................................. .... 401
Exemplo SPI Mestre Mode (CKE = 0) ..................... 393
Exemplo SPI Mestre Mode (CKE = 1) ..................... 394
Exemplo Modo Slave SPI (CKE = 0) ....................... 395
Exemplo Modo Slave SPI (CKE = 1) ....................... 396
Relgio externo (todos os modos excepto PLL) ................... 387
Fail-safe Monitor de Relgio ............................................ 307
Primeiro Bit iniciar a cronometragem .............................................. .. 230
Full-ponte de sada PWM .......................................... 157
Meia Ponte PWM de sada ......................................... 156
High / Low-Voltage Caractersticas Deteco ................ 384
Deteco de alta tenso (VDIRMAG = 1) ...................... 288
Barramento de dados I2C ............................................... ............. 397
I2C Bus Start / Stop Bits ............................................ 397
Master Mode I2C (7 ou 10-Bit Transmission) ........... 233
Master Mode I2C (Recepo 7-Bit) ......................... 234
Modo Slave I2C (Recepo 10-Bit,
SEN = 0, ADMSK 01001) ................................ 219
Modo Slave I2C (Recepo 10-Bit, SEN = 0) .......... 218
Modo Slave I2C (Recepo 10-Bit, SEN = 1) .......... 224
Modo Slave I2C (Transmission 10-Bit) .................... 220
Modo Slave I2C (Recepo 7-bit,
SEN = 0, ADMSK = 01011) ............................. 216
Modo Slave I2C (Recepo 7-Bit, SEN = 0) ............ 215
Modo Slave I2C (Recepo 7-Bit, SEN = 1) ............ 223
Modo Slave I2C (7-Bit Transmission) ...................... 217
I2C Slave Modo de Chamada Geral Endereo
Sequence (7 ou Modo de Endereo 10-Bit) ............ 225
Deteco de Baixa Tenso (VDIRMAG = 0) ....................... 287
Mestre SSP barramento de dados I2C ....................................... 399
Mestre SSP I2C Bus start / stop Bits ........................ 399
PWM Auto-Shutdown (PRSEN = 0,
Auto-Restart Desativado) .................................... 162
PWM Auto-Shutdown (PRSEN = 1,
Auto-Restart Ativado) ..................................... 162
PWM mudana de direo ........................................... 159
PWM Mudar de direo em Near
100% Ciclo de trabalho ............................................. 159
PWM de sada ................................................ ............ 148
Repetiu Iniciar Condio ........................................ 231
Repor, Watchdog Timer (WDT), Oscillator Start-up
Temporizador (OST) e Power-up timer (PWRT) ..... 390
Enviar Quebrar sequncia de caracteres ............................ 259
Sincronizao Slave ............................................. 204
Tempo de ascenso lenta (MCLR Amarrado a VDD,
VDD ascenso> TPWRT) ............................................ 51
Modo SPI (Master Mode) ........................................ 203
SPI Mode (Modo Slave com CKE = 0) ..................... 205
SPI Mode (Modo Slave com CKE = 1) ..................... 205
SPP escrever o endereo e dados para USB
(4 Espere Unidos) ............................................. .... 193
SPP escrever o endereo e Ler dados para
USB (4 estados de espera) ........................................ 193
SPP escrever o endereo, Escrever e Ler
Dados (No Espere Unidos) ...................................... 193
Condio de Parada receber ou transmitir Modo .............. 235
Transmisso Porta Paralela (PIC18F4455/4550) ........... 403
Recepo Synchronous (Master Mode, SREN) ...... 262
Transmisso Synchronous ..................................... 260
Transmisso sncrona (atravs TXEN) .......... 261
Sequence Time-out em POR w / PLL ativado
(MCLR Amarrado a VDD) .......................................... 51
Sequence Time-out em Power-up
(MCLR no vinculados a VDD), Caso 1 ...................... 50
Sequence Time-out em Power-up
(MCLR no vinculados a VDD), caso 2 ...................... 50
Sequence Time-out em Power-up
(MCLR Amarrado a VDD, VDD TPWRT Rise) .............. 50
Timer0 e Timer1 relgio externo .......................... 391
Transio para a entrada Idle Mode ............................... 41
Transio para a entrada Modo SEC_RUN .................... 37
Transio para a entrada Modo de espera ............................ 40
v 2009 Microchip Technology Inc. 431 DS39632E pginas
PIC18F2455/2550/4455/4550
Transio para Duas Velocidades Start-up
(INTOSC para HSPLL) ......................................... 305
Transio para Wake de marcha lenta at o modo de execuo ..............
41
Transio para despertar de sono (HSPLL) ................... 40
Transio do modo de RC_RUN para
Modo PRI_RUN ................................................ . 39
Transio do modo de SEC_RUN para
PRI_RUN Mode (HSPLL) .................................. 37
Transio para o modo RC_RUN ..................................... 39
USB Signal ................................................ ............... 402
Diagramas de tempo e Especificaes ................................ 387
Capture / Compare / PWM Requisitos
(Todos os mdulos CCP) ........................................... 392
CLKO e requisitos de E / S ................................... 389
EUSART Synchronous Receba
Requisitos ................................................. .. 401
EUSART Synchronous Transmisso
Requisitos ................................................. .. 401
Exemplo SPI requisitos de modo
(Master Mode, CKE = 0) .................................. 393
Exemplo SPI requisitos de modo
(Master Mode, CKE = 1) .................................. 394
Exemplo SPI requisitos de modo
(Modo Slave, CKE = 0) .................................... 395
Exemplo SPI requisitos de modo
(Modo Slave, CKE = 1) .................................... 396
Requisitos do relgio externo .................................. 387
I2C Requisitos do barramento de dados (Modo Slave) .............. 398
I2C Bus Start / Stop Bits Requisitos ..................... 397
Mestre SSP I2C Requisitos do barramento de dados ................ 400
Mestre SSP I2C Bus start / stop Bits
Requisitos ................................................. .. 399
PLL Relgio ................................................ ................. 388
Repor, Watchdog Timer, oscilador Start-up
Timer, Power-up timer e
Brown-out Redefinir Requisitos ....................... 390
Transmisso Requisitos de porta paralela
(PIC18F4455/4550) ......................................... 403
Timer0 e Timer1 relgio externo
Requisitos ................................................. .. 391
Requisitos USB Full-Speed ................................ 402
USB Requisitos de baixa velocidade ............................... 402
Top-of-Stack Acesso ............................................ .............. 60
Pacotes TQFP e Recursos Especiais ............................ 311
TSTFSZ ................................................. ........................... 353
Duas Velocidades Arranque ............................................ ..... 291, 305
Instrues de duas palavras
Exemplo Casos ................................................ .......... 64
TXSTA Registrar
BRGH Bit ................................................ ................. 247
Descritores de buffer ................................................ .... 174
Validao endereo ........................................... 177
Atribuio em diferentes modos de Buffer ........ 179
BDnSTAT Register (Modo CPU) ..................... 175
BDnSTAT Register (Modo SIE) ....................... 177
Contagem de bytes ................................................ ....... 177
Exemplo ................................................. .......... 174
Mapa da memria ................................................ .... 178
Propriedade ................................................. ...... 174
Buffer de Ping-Pong ........................................ 178
Registre-se Resumo ........................................... 179
Estado e Configurao ................................. 174
Especificaes Classe e Drivers ............................. 190
Descritores ................................................. .............. 190
Controle Endpoint ................................................ ...... 172
Enumerao ................................................. ........... 190
Externas resistores pull-up ....................................... 169
Transceiver externo ................................................ 167
Eye Test Pattern Ativar .......................................... 169
Firmware e Drivers .............................................. 187
Nmero quadro Registra ........................................ 173
Frames ................................................. ................... 189
Internos resistores pull-up ......................................... 169
Transceiver Interno ................................................ . 167
Regulador de tenso interno ....................................... 170
Interrupes ................................................. ................ 180
e Transaes USB ..................................... 180
Layered quadro ................................................ . 189
Requisitos oscilador .......................................... 187
Sada Ativar monitor ............................................. 169
Viso geral ................................................. ......... 165, 189
Configurao de buffer Ping-Pong ............................... 169
Poder ................................................. ..................... 189
Modos de potncia ................................................ ........... 186
Poder Bus Apenas ............................................... 186
Dual Power com Dominance Auto-Power ......... 186
Auto-Power Apenas .............................................. . 186
RAM ................................................. ........................ 173
Mapa da memria ................................................ .... 173
Velocidade ................................................. ..................... 190
Estado e Controle ............................................... .... 166
Tipos de transferncia ................................................ ......... 189
UFRMH: UFRML Registros ...................................... 173
USB. Ver Universal Serial Bus.
V
Tenso Referncia Especificaes .................................... 382
W
Watchdog Timer (WDT) ........................................... 291, 303
Associated Registra ............................................... 304
Registro de controle ................................................ ....... 303
Durante a falha de oscilador .......................................... 306
Consideraes sobre programao .................................. 303
WCOL ................................................. ..... 230, 231, 232, 235
Bandeira Estado WCOL ................................... 230, 231, 232, 235
WWW Endereo ................................................ ................ 433
WWW, Suporte On-Line ............................................ .......... 5
U
Universal Serial Bus ............................................... ............ 65
Endereo Register (UADDR) ..................................... 173
e Transmisso Porta Paralela ..................................... 187
Associated Registra ............................................... 187
Tabela descritor reserva ............................................ 174
X
XORLW ................................................. ........................... 353
XORWF ................................................. .......................... 354
DS39632E pgina 432 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
O SITE MICROCHIP
Microchip fornece suporte on-line atravs do nosso site web em
www.microchip.com. Este site usado como um meio
para tornar os arquivos e informaes facilmente disponveis para
clientes. Acessvel por usar o Internet favorito
browser, o site contm a seguinte
informaes:
Suporte ao Produto - Folhas e errata de dados,
notas de aplicao e programas de amostra, design
recursos, manuais de usurio e suporte de hardware
documentos, as ltimas verses de software e arquivados
software
Suporte Tcnico Geral - Frequently Asked
Questions (FAQ), solicitaes de suporte tcnico,
grupos de discusso online, consultor Microchip
membro listagem do programa
Negcios da Microchip - Seletor de Produtos e
ordenao guias, ltimas notas de imprensa Microchip,
listagem de seminrios e eventos, listas de
Escritrios de vendas Microchip, distribuidores e fbrica
representantes
APOIO AO CLIENTE
Usurios do Microchip produtos podem receber assistncia
atravs de vrios canais:





Distribuidor ou representante
Escritrio de vendas local
Engenheiro de Aplicao de Campo (FAE)
Suporte Tcnico
Desenvolvimento de Sistemas de Informao da
Linha
Customersshouldcontacttheirdistributor,
engenheiro de aplicao representante ou campo (FAE) para
apoiar. Escritrios de vendas locais tambm esto disponveis para
ajudar
clientes. Uma lista de escritrios de vendas e locais
includas na parte de trs deste documento.
O suporte tcnico est disponvel atravs do web site
em: http://support.microchip.com
CLIENTE notificao de alterao
SERVIO
Servio de notificao de clientes da Microchip ajuda a manter
clientes atuais em Microchip produtos. Inscritos
receber uma notificao por e-mail sempre que houver
alteraes, atualizaes, revises ou erratas relacionadas a um
ferramenta de famlia de produtos especificados ou desenvolvimento
de interesse.
Para se inscrever, acesse o site da Microchip em
www.microchip.com, clique em Alterar ao Cliente
Notificao e siga as instrues de inscrio.
v 2009 Microchip Technology Inc. DS39632E pgina 433
PIC18F2455/2550/4455/4550
Resposta do leitor
nossa inteno de lhe fornecer a melhor documentao possvel para garantir uma utilizao bem sucedida de seu Microchip pro-
duto. Se voc deseja fornecer seus comentrios sobre a organizao, clareza, o assunto, e de que forma a nossa documentao
pode melhor atend-lo, por favor, FAX seus comentrios para o Gerente de Publicaes Tcnicas (480) 792-4150.
Por favor, liste as seguintes informaes, e usar este esquema para fornecer-nos com seus comentrios sobre este documento.
Para:
RE:
Gerente de Publicaes Tcnicas
Resposta do leitor
Total de pginas enviadas ________
De: Nome
Companhia
Endereo
Cidade / Estado / CEP / Pas
Telefone: (_______) _________ - _________
Aplicao (opcional):
Gostaria de uma resposta? Y N
Nmero da documentao: DS39632E
FAX: (______) _________ - _________
Dispositivo: PIC18F2455/2550/4455/4550
Perguntas:
1. Quais so as melhores caractersticas deste documento?
2. Como que este documento satisfazer suas necessidades de desenvolvimento de hardware e
software?
3. Voc acha que a organizao deste documento fcil de seguir? Se no, por qu?
4. O acrescentos ao documento que voc acha que aumentar a estrutura eo assunto?
5. Que supresses do documento pode ser feita sem afetar a utilidade global?
6. H alguma informao incorreta ou enganosa (o que e onde)?
7. Como voc melhorar este documento?
DS39632E pgina 434 v 2009 Microchip Technology Inc.
PIC18F2455/2550/4455/4550
PIC18F2455/2550/4455/4550 SISTEMA DE IDENTIFICAO DO PRODUTO
Para encomendar ou obter informaes, por exemplo, sobre os preos ou a entrega, consulte a fbrica ou o escritrio de
vendas listados.
NENHUMA PARTE.
Dispositivo
X
Temperatura
Alcance
/ XX
Pacote
XXX
Padro
Exemplos:
um)
b)
Dispositivo
PIC18F2455/2550(1), PIC18F4455/4550(1),
PIC18F2455/2550T(2), PIC18F4455/4550T(2);
Gama VDD 4.2V a 5.5V
PIC18LF2455/2550(1), PIC18LF4455/4550(1),
PIC18LF2455/2550T(2), PIC18LF4455/4550T(2);
Gama VDD 2.0V a 5.5V
Eu
E
PT
SO
SP
P
ML
=
=
=
=
=
=
=
-40 C a +85 C (Industrial)
-40 C a 125 C (Extended)
TQFP (Thin Quad Flatpack)
SOIC
DIP Plastic Skinny
PDIP
QFN
c)
PIC18LF4550-I / P 301 = industrial temporria., PDIP
pacote, limites VDD estendidas, padro QTP
301.
PIC18LF2455-I/SO = temperatura Industrial., SOIC
pacote, limites VDD estendidos.
PIC18F4455-I / P = industrial temporria., PDIP
pacote, VDD limites normais.
Faixa de temperatura
Pacote
Nota 1:
2:
F = Faixa de Tenso padro
LF = vasta gama de tenso
T = em fita e TQFP carretel
apenas pacotes.
Padro QTP, SQTP, cdigo ou requisitos especiais
(Em branco de outra forma)
v 2009 Microchip Technology Inc. DS39632E pgina 435

VENDAS MUNDIAIS E SERVIO
AMERICAS
Escritrio Corporativo
Oeste 2355 Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7200
Fax: 480-792-7277
Suporte tcnico:
http://support.microchip.com
Endereo Web:
www.microchip.com
Atlanta
Duluth, GA
Tel: 678-957-9614
Fax: 678-957-1455
Boston
Westborough, MA
Tel: 774-760-0087
Fax: 774-760-0088
Chicago
Itasca, IL
Tel: 630-285-0071
Fax: 630-285-0075
Cleveland
Independence, OH
Tel: 216-447-0464
Fax: 216-447-0643
Dallas
Addison
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
Los Angeles
Mission Viejo, CA
Tel: 949-462-9523
Fax: 949-462-9608
Santa Clara
Santa Clara, CA
Tel: 408-961-6444
Fax: 408-961-6445
Toronto
Mississauga, Ontrio,
Canad
Tel: 905-673-0699
Fax: 905-673-6509
SIA / PACFICO
sia-Pacfico Escritrio
Suites 3707-14, 37 andar
Torre 6, o gateway
Harbour City, Kowloon
Hong Kong
Tel: 852-2401-1200
Fax: 852-2401-3431
Austrlia - Sydney
Tel: 61-2-9868-6733
Fax: 61-2-9868-6755
China - Pequim
Tel: 86-10-8528-2100
Fax: 86-10-8528-2104
China - Chengdu
Tel: 86-28-8665-5511
Fax: 86-28-8665-7889
China - Hong Kong SAR
Tel: 852-2401-1200
Fax: 852-2401-3431
China - Nanjing
Tel: 86-25-8473-2460
Fax: 86-25-8473-2470
China - Qingdao
Tel: 86-532-8502-7355
Fax: 86-532-8502-7205
China - Xangai
Tel: 86-21-5407-5533
Fax: 86-21-5407-5066
China - Shenyang
Tel: 86-24-2334-2829
Fax: 86-24-2334-2393
China - Shenzhen
Tel: 86-755-8203-2660
Fax: 86-755-8203-1760
China - Wuhan
Tel: 86-27-5980-5300
Fax: 86-27-5980-5118
China - Xiamen
Tel: 86-592-2388138
Fax: 86-592-2388130
China - Xian
Tel: 86-29-8833-7252
Fax: 86-29-8833-7256
China - Zhuhai
Tel: 86-756-3210040
Fax: 86-756-3210049
SIA / PACFICO
ndia - Bangalore
Tel: 91-80-3090-4444
Fax: 91-80-3090-4080
ndia - Nova Deli
Tel: 91-11-4160-8631
Fax: 91-11-4160-8632
India - Pune
Tel: 91-20-2566-1512
Fax: 91-20-2566-1513
Japo - Yokohama
Tel: 81-45-471 - 6166
Fax: 81-45-471-6122
Coria - Daegu
Tel: 82-53-744-4301
Fax: 82-53-744-4302
Coria - Seul
Tel: 82-2-554-7200
Fax: 82-2-558-5932 ou
82-2-558-5934
Malsia - Kuala Lumpur
Tel: 60-3-6201-9857
Fax: 60-3-6201-9859
Malsia - Penang
Tel: 60-4-227-8870
Fax: 60-4-227-4068
Filipinas - Manila
Tel: 63-2-634-9065
Fax: 63-2-634-9069
Cingapura
Tel: 65-6334-8870
Fax: 65-6334-8850
Taiwan - Hsin Chu
Tel: 886-3-6578-300
Fax: 886-3-6578-370
Taiwan - Kaohsiung
Tel: 886-7-536-4818
Fax: 886-7-536-4803
Taiwan - Taipei
Tel: 886-2-2500-6610
Fax: 886-2-2508-0102
Tailndia - Bangkok
Tel: 66-2-694-1351
Fax: 66-2-694-1350
EUROPA
ustria - Wels
Tel: 43-7242-2244-39
Fax: 43-7242-2244-393
Dinamarca - Copenhague
Tel: 45-4450-2828
Fax: 45-4485-2829
Frana - Paris
Tel: 33-1-69-53-63-20
Fax: 33-1-69-30-90-79
Alemanha - Munique
Tel: 49-89-627-144-0
Fax: 49-89-627-144-44
Itlia - Milan
Tel: 39-0331-742611
Fax: 39-0331-466781
Pases Baixos - Drunen
Tel: 31-416-690399
Fax: 31-416-690340
Espanha - Madrid
Tel: 34-91-708-08-90
Fax: 34-91-708-08-91
Reino Unido - Wokingham
Tel: 44-118-921-5869
Fax: 44-118-921-5820
03/26/09
DS39632E pgina 436 v 2009 Microchip Technology Inc.

Potrebbero piacerti anche