comenzando con los pic18: arquitectura, set de ... (sph).pdf© 2006 microchip technology...
TRANSCRIPT
Comenzando con los PIC18:Arquitectura, Set de Instrucciones,
Interrupciones, Periféricos y Caracterícas Especiales
http://www.ibars.com
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 2
Objetivos de la clase:– Cuando finalice esta clase Usted podrá:– Entender el funcionamiento basico de los
PIC18– Entender mas instrucciones– Entender la organización de la memoria– Entender la Estructura de las interrupciones– Entender como trabajan los perifericos
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 3
Agenda Bases de la arquitectura:
– Pipelining de instrucciones– Palabras de Instrucción largas
Revisión del Set de Instrucciones Organización de la memoria y modos de
direccionamiento Manejo y latencia de interrupciones Características especiales
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 4
Agenda (Continuación..) Discución sobre los periféricos básicos
– I/O Ports– Analog Comparator– A/D Converters– Timers– CCP (Capture, Compare & PWM)– MSSP (I2C & SPI / Microwire)– USART
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 5
Arquitectura
El alto rendimiento de los microcontroladores PICmicro® puede ser atribuido a las siguientes características de la arquitectura:– Arquitectura Harvard – Pipelining de Instrucciones– Gran archivo de registros– Instrucciones de Ciclo Simple– Palabras de Instrucción Simple– Palabras de Instrucción Largas– Set de Instrucciones Reducido– Set de Instrucciones Ortogonal
(Simétricas)
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 6
Arquitectura Harvard Arquitectura Von Neumann :
– Busqueda de Instrucciones y Datossobre una memoria de espaciosimple
– Limitado ancho de banda de operación
Arquitectura Harvard:– Uso de dos espacios de memoria
separados para instrucciones de programa y datos
– Mejora el ancho de banda de operación
– Permite diferentes anchos de buses
CPU
Harvard Architecture
Data Memory
Program Memory
8-bit Bus
16-bit Bus
Von Neumann Architecture
8-bit Bus
CPU
Program & Data Memory
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 7
Pipelining de Instrucciones
rcall SUB1addwf REG2
movf PORTB,wreturnmovf PORTC,wreturn
SUB1
SUB2
movlw 0x05MAINmovwf REG1
1234
51525354
Example ProgramFetch
T0
Instruction Cycles
movlw 0x05 -Pre-Fetched Instruction Executing Instruction
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 8
Pipelining de Instrucciones
rcall SUB1addwf REG2
movf PORTB,wreturnmovf PORTC,wreturn
SUB1
SUB2
movlw 0x05MAINmovwf REG1
1234
51525354
Example ProgramFetch Execute
T0 T1
Instruction Cycles
Fetch
movwf REG1 movlw 0x05Pre-Fetched Instruction Executing Instruction
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 9
Pipelining de Instrucciones
rcall SUB1addwf REG2
movf PORTB,wreturnmovf PORTC,wreturn
SUB1
SUB2
movlw 0x05MAINmovwf REG1
1234
51525354
Example ProgramFetch Execute
T0 T1 T2
Instruction Cycles
Fetch Execute
Fetch
rcall SUB1 movwf REG1Pre-Fetched Instruction Executing Instruction
Time to execute normal instruction
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 10
Pipelining de Instrucciones
rcall SUB1addwf REG2
movf PORTB,wreturnmovf PORTC,wreturn
SUB1
SUB2
movlw 0x05MAINmovwf REG1
1234
51525354
Example ProgramFetch Execute
T0 T1 T2 T3
Instruction Cycles
Fetch Execute
Fetch Execute
Fetch
addwf REG2 rcall SUB1Pre-Fetched Instruction Executing Instruction
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 11
Pipelining de Instrucciones
rcall SUB1addwf REG2
movf PORTB,wreturnmovf PORTC,wreturn
SUB1
SUB2
movlw 0x05MAINmovwf REG1
1234
51525354
Example ProgramFetch Execute
T0
Flush
T1 T2 T3 T4
Instruction Cycles
Fetch Execute
Fetch Execute
Fetch
Fetch
movf PORTB,w rcall SUB1Pre-Fetched Instruction Executing Instruction
Time to execute call instruction includes pipeline flush
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 12
Pipelining de Instrucciones
rcall SUB1addwf REG2
movf PORTB,wreturnmovf PORTC,wreturn
SUB1
SUB2
movlw 0x05MAINmovwf REG1
1234
51525354
Example ProgramFetch Execute
T0
Flush
T1 T2 T3 T4 T5
Instruction Cycles
Fetch Execute
Fetch Execute
Fetch
Fetch Execute
Fetch
return movf PORTB,wPre-Fetched Instruction Executing Instruction
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 13
Pipelining de Instrucciones
rcall SUB1addwf REG2
movf PORTB,wreturnmovf PORTC,wreturn
SUB1
SUB2
movlw 0x05MAINmovwf REG1
1234
51525354
Example ProgramFetch Execute
T0
Flush
T1 T2 T3 T4 T5
Instruction Cycles
T6
Fetch Execute
Fetch Execute
Fetch
Fetch Execute
Fetch Execute
Fetch
movf PORTC,w returnPre-Fetched Instruction Executing Instruction
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 14
Pipelining de Instrucciones
rcall SUB1addwf REG2
movf PORTB,wreturnmovf PORTC,wreturn
SUB1
SUB2
movlw 0x05MAINmovwf REG1
1234
51525354
Example ProgramFetch Execute
T0
Flush
T1 T2 T3 T4 T5
Instruction Cycles
T6
Fetch Execute
Fetch Execute
Fetch
Fetch Execute
Fetch Execute
Fetch Flush
Fetch
T7
addwf REG2 returnPre-Fetched Instruction Executing Instruction
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 15
00 00 00 00
Instruccion de Palabra Larga8-bit Program Memory
16-bit Program Memory
11 00 00 00 00 11 11 00
kk kk kk kk kk kk kk kk
11 11 11 00 kk kk kk kk kk kk kk kk
8-bit Instruction on typical 8-bit MCUExample: Freescale ‘Load Accumulator A’:• 2 Program Memory Locations• 2 Instruction Cycles to Execute
16-bit Instruction on PIC18 8-bit MCUExample: ‘Move Literal to Working Register’• 1 Program Memory Location• 1 Instruction Cycle to Execute
Ancho de banda Limitado Incrementa los
requerimientos de memoria
Separate busses allow different widths 2k x 16 is roughly equivalent to 4k x 8
ldaa #k
movlw k
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 16
Concepto del Archivo de Registros
Dat
a B
usD
ata
Bus
d
Decoded Instruction from Program
Memory:Arithmetic/Logic
Function to be Performed Result Destination
Address of Second Source Operand
Register File Concept: All of data memory is part of the register file, so any location in data memory may be operated on directly
All peripherals are mapped into data memory as a series of registers
Orthogonal Instruction Set: ALL instructions can operate on ANY data memory location
The Long Word Instruction format allows a directly addressable register file
w f
w fALU
WREGWREG
Data Memory(Register File)
07h
08h
09h
0Ah
0Bh
0Ch
0Dh
0Eh
0Fh
10h
OpcodeOpcode dd aa AddressAddress
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 17
Revisión del Set de Instrucciones
f f f f f f fdOpcode
07815
f f f f f f fOpcode
File Register Address
Byte Oriented Operations
ADDWF 0x25, W, A
DestinationFile Register Address
a f
fa
9
Destination (W or F) Access Bank
Use Access Bank(Optional)
OR
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 18
Revisión del Set de Instrucciones
f f f f f f fbb bOpcode078915
File Register Address
Bit Position (0-7)
Bit Oriented Operations
BSF 0x25, 3, A
Access Bank(Optional)
File Register Address
11
fa
Bit Position
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 19
Revisión del Set de Instrucciones
07815
k k k k k k kOpcodeLiteral Value
Literal and Control Operations
MOVLW 0x25
Literal Value
k
OpcodeOR
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 20
Revisión del Set de Instrucciones
0111215
fs fs fs fs fs fs fsfs fsOpcode fs
Source Register Address
Byte to Byte Move Operations (2 Words)
MOVFF 0x125, 0x140
Source Address
fs fs
fd fd fd fd fd fd fdfdfd fd fdfdOpcodeDestination Register Address
Destination Address
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 21
Revisión del Set de Instrucciones
07815
n7 n6 n5 n4 n3 n2 n1Opcode
Call and Goto Operations (2 Words)
CALL 0x1125
Subroutine Address
n8
n9Opcode
11
n10n11n12n13n14n15n16n17n18n19n20
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 22
PIC18 Modos de Direccionamiento
Acceso a Memoria de Datos:
DirectIndirectAuto Pre-Increment Indirect
Auto Post-Increment Indirect
Auto Post-Decrement IndirectIndex IndirectImmediate (Literal)
clrf <reg>, <dst>clrf INDFn, <dst>
movff PLUSWn, <dst>movlw <const>
movff PREINCn, <dst>
movff POSTINCn, <dst>
movff POSTDECn, <dst>
Mode Example Syntax
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 23
Access RAMAccess RAM
Organización de la Memoria de DatosPIC16F8F2520/4520Register File Map
000h07Fh
256 Bytes
Bank 0 GPRBank 0 GPR
Bank 1GPR
Bank 1GPR
Bank 2GPR
Bank 2GPR
Bank 13GPR
Bank 13GPR
Bank 14GPR
Bank 14GPR
Bank 15 GPRBank 15 GPR
Access SFRAccess SFR
Access RAMAccess RAM
Access SFRAccess SFR
080h0FFh100h
1FFh
200h
2FFh
D00h
DFFh
E00h
EFFh
F00h
FFFh
F7FhF80h
00h7Fh80hFFh
Access Bank
Memoria de datos de hasta4k bytes
Dividida internamente en Bancos de 256K
Mitad del Banco 0 y Mitaddel Banco 15 forman un Banco Virtual que esaccesible no importandocual banco esseleccionado
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 24
000 000 000
Registro de Direccionamiento Directo
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
000h001h002h002h003h004h005h
FFAhFFBhFFChFFDhFFEhFFFh
0xFFD0xFFD0xFFD8-bits from FSR0L 12-bit Effective Address
Data Memory
FSR0L
FFFF
FFFF
FFFF
FFFF
FFFF
FFFF
Register File Address Bus
4-bits from FSR0H
000 000 000 000 000 000 000 000 000FSR0H
No banqueado–La RAM escompletamente lineal cuando se usa el direccionamiento Indirecto
FSRH:FSRL pueden ser cargados con una instrucción simple: lfsr
Completo de 12-bit incremento / decremento de puntero con posibilidadde modificación pre- o post-
Tres Pares de registros FSR: FSR0, 1 & 2
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 25
Registero de Direccionamiento Indirecto
Varios Modes de direccionamiento Indirectoadicionales para finalizar con el PIC18:– Indirect - no cambia en el FSRn– Auto Post-decremento FSRn (FSRn--)– Auto Post-incremento FSRn (FSRn++)– Auto Pre-increment oFSRn (++FSRn)– Indirecto Indexado (Address = FSRn + W)
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 26
Registro de Direccionamiento Indirecto
Estos modos de direccionamiento son invocados por el uso de registros no físicos:– Indirecto - no cambia: INDFn– Auto Post-decremento: POSTDECn– Auto Post-incremento: POSTINCn– Auto Pre-incremento: PREINCn– Index ado Indirecto / Desplazamiento: PLUSWn
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 27
PIC18 Modos de Direccionamiento
Acceso a Memoria de Programa:
AbsoluteRelative
Table Read / WritePost Increment
Table Read / WritePost Decrement
Table Read / WritePre Increment
Table Read / Write
goto <addr>
bra <addr>
tblrd* tblwt*
tblrd*+ tblwt*+
tblrd*- tblwt*-
tblrd+* tblwt+*
Mode Example Syntax
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 28
Organización de la Memoriade Programa
On-chip Program MemoryOn-chip Program Memory
Reset Vector
High Priority Interrupt Vector
Low Priority Interrupt Vector
000000h
000008h
000018h
1FFFFEh
UnimplementedProgram Memory
(Read as ‘0’)
UnimplementedProgram Memory
(Read as ‘0’)
008000h
007FFEh
21-bit Program Counter
31 Level Stack
Stack Level 1Stack Level 1
Stack Level 2Stack Level 2
Stack Level 30Stack Level 30
Stack Level 31Stack Level 31
Un espacio de memoria de programacontinuo lineal hasta 2MB (1MWord)
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 29
Memoria de Programa esByte Direccionable
Byte bajo contiene la dirección par, Byte alto contiene la direcciónimpar
Direccionamiento de instrucciones siempre iguales
16-bit Program Memory
0x000000
0x000002
0x000004
0x000006
0x000008
0x00000A
0x00000C
0x00000E
0x000001
0x000003
0x000005
0x000007
0x000009
0x00000B
0x00000D
0x00000F
High Byte Address Low Byte AddressWord Address
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 30
Contador de Programa
0123456789101112PCLPCH
Program Counter
21-bit PC permite acceder hasta to 221 = 2MB (1MWord) 22nd bit usado para acceder a la configuración de memoria para programar
tiempo o via tabla de lectura y escritura Contiene la dirección de la siguiente instrucción (pipelining) El byte bajo es accesible en la memoria de datos como PCL Los baytes altos son accesibles indirectamente via PCLATH/PCLATU Bit 0 del PC es siempre ‘0’ excepto cuando se lee o escribe en la memoria
de programa via el mecanismo de tablas de lecturaescritura
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00131415161718192021
PCU
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 31
PC DireccionamientoAbsoluto
CALL and GOTO Instructions:
PC Direccionamiento Absoluto (Program Memory)– Salta a otra localización de la memoria de programa fuera de la secuencia del PC– Llamado a subrutina
Usado por las instrucciones CALL and GOTO– Direccionameinto completo es especificado como parte de las 2 palabras de
instrucción– utilizado al realizarse la operació de Salto Computado– La dirección a saltar es calculada por el programa– La dirección calculada es directamente escrita enel Contador de Programa
n8nn88 nnn nnn nnn nnn nnn nnn n1nn11
111 111 111 111 n20nn2020 nnn nnn nnn nnn nnn nnn nnn nnn nnn nnn n9nn99
n0
00112233445566778899101011111212131314141515
Bit 0 of the address is implied since it is always zero due to the byte addressability of program memory
n = Program Memory Address
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 32
PC Direccionamiento Relativo: Instrucciones de salto
Usado por instrucciones de salto de palabra simple:– BC / BNC: -128 n 127– BN / BNN: -128 n 127– BOV / BNOV: -128 n 127– BZ / BNZ: -128 n 127– BRA: -1024 n 1023– RCALL: -1024 n 1023
n es el desplazamiento relativo desde el PC
Example: BC CarryBitSet
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 33
Arquitectura del PIC18Stack de Memoria
5-bit Stack pointer address 31 levels– Stack pointer does not roll over to 0 at end of stack
Top-of-Stack = TOSU:TOSH:TOSL– Readable and Writeable
Stack Level 1
...
Stack Level 31
Stack Level 0 RESET State; No RAM at this location
Stack Grows “Upward”*(++STKPTR)
20 0 STKPTR<4:0>
Stack de Hardware de - 31 niveles de profundidad– Memoria separada, por puntero STKPTR– Usado por CALL, RCALL, INT, RETURN, RETFIE
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 34
Tabla de Lecturas / Escrituras
Permite acceder a 2 bytes de datos por localización de memoria de programa
Modos de direccionamiento de Tabla de Lectura / Escritura:– No cambia tblrd * tblwt *
– Post Incremento tblrd *+ tblwt *+
– Post Decremento tblrd *- tblwt *-
– Pre Incremento tblrd +* tblwt +*
El acceso a memoria de programa esconceptualmente comodireccionar indirectamente un registro (memoria de datos)
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 35
Tabla de Lecturas/EscriturasRegister Indirect Addressing(Retrieves data from RAM)
Table Indirect Addressing(Retrieves data from Flash)
Pointer RegistersFSR0H : FSR0L (12-bits)FSR1H : FSR1L (12-bits)
FSR2H : FSR2L (12-bits)
TBLPTRU : TBLPTRH : TBLPTRL(22-bits)
ExampleRead Data to WREGNo Pointer Modification
tblrd*movf TABLAT, w
movf INDF0, w
movf INDF1, w
movf INDF2, w
ExampleRead Data to WREGPost-Increment Pointer
tblrd*+movf TABLAT, w
movf POSTINC0, w
movf POSTINC1, w
movf POSTINC2, w
ExampleRead Data to WREGPost-Decrement Pointer
tblrd*-movf TABLAT, w
movf POSTDEC0, w
movf POSTDEC1, w
movf POSTDEC2, w
ExamplePre-Increment PointerRead Data to WREG
tblrd+*movf TABLAT, w
movf PREINC0, w
movf PREINC1, w
movf PREINC2, w
Table 1-1: Comparison between Register Indirect Addressing and Table Read Operations
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 36
Tabla de Lectura
PIC18F Memoria de Programa es divididainternamente en:
– Memoria de Usuario Hasta 128kB Internos Hasta 2MB Externosl
– Identificadores de Usuarios 8 Bytes Modificables
– Configuración de Memoria Seteo de dispositivos, Códigos de Protección, etc.
– Identificadores de dispositivos Firma de Parte y Revisión
Contador de Programa solo puede acceder a la memoria de usuario (PC is 21-bits wide)
Tabla de Punteros puede acceder a toda la memoria(TBLPTR is 22-bits wide)
User FlashUser Flash
User IDsUser IDs
ConfigurationConfiguration
Device IDsDevice IDs
0x000000
0x01FFFF
0x200000
0x200007
0x300000
0x30000D
0x3FFFFE
0x3FFFFF
Program Memory Space
Unimplemented Memory
Unimplemented Memory
Unimplemented Memory
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 37
2C2C
Operación de la Tabla de Lectura
2C2CTABLAT
Data Memory (RAM) Program Memory (Flash)
0x000000
0x000002
0x000004
0x00000A
0x000008
0x000006
0x1FFFF4
0x1FFFF6
0x1FFFF8
0x1FFFFA
0x1FFFFC
0x1FFFFE
0x000001
0x000003
0x000005
0x00000B
0x000009
0x000007
0x1FFFF5
0x1FFFF7
0x1FFFF9
0x1FFFFB
0x1FFFFD
0x1FFFFF
0x000
0x001
0x002
0x005
0x004
0x003
0xFFA
0xFFB
0xFFC
0xFFD
0xFFE
0xFFF
8-bit Data
0000 0000 0909TBLPTRU TBLPTRH TBLPTRL
High Byte(Odd Addr)
Low Byte(Even Addr)
22-bit Address
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 38
Ejemplo de Tabla de Lectura
Enviando caracteres al LCDHow ASCII string tables are stored in program memory:
Address ContentsProgram Memory
6FFC FF FF6FFE FF FF70007002 72 63700470067008700A700C
63 6F69 68
70
69 4D
FF FFFF FF
00
‘M’ @ 0x7000‘i’ @ 0x7001
‘\0’ (NUL) @ 0x7009
org 0x7000MyStringTable
DW “Microchip\0”
Program Source Code:
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 39
PIC18FRevisión de Interrupciones
Múltiples fuentes de interrupción internas y externas Cada interrupción tiene un bit de máscara y bandera independientes Todas las interrupciones pueden ser enmascaradas por el Bit GIE Tienen dos modos
– Modo Herencia (por borrado del bit IPEN en el registro RCON)– Modo Prioridad (por seteo del bit IPEN en el registro RCON)
Cada periférico interruptor pude configurar prioridad de hardware Alta/Baja enmodo prioridad– Vector de Prioridad Alto en 000008h (Default)– Vector de Prioridad Alto en 000018h
Rápido salvado del Contexto sobre la interrupción La mayoría de las interrupciones despiertan al procesador del modo
SLEEP Latencia de interrupciones de 3/4 ciclos de Instrucción
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 40
PIC18FConfiguración de interrupción (Modo Prioridad)
……
…
INT0IF
INT0IE
GIEH GIEL
High Priority Interrupt to the CPU
Vector = 0x0008h
Low Priority Interrupt to the CPU
Vector = 0x0018h
Wakeup to the CPU
IF
IPIE
IF
IPIE
PIC18FInterrupt
Logic
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 41
Interrupciones– Multiples niveles de prioridad para interrpciones
Alta y Baja Prioridad– Vectores corresponden al nivel de prioridad
– Cuatro terminales de interrupción externos
INT0, INT1, INT2, INT3– Cada interruptor tiene un bit de habilitación, un bit bandera
indicadora and un bit de prioridad Excepto INT0, el cual es siempre de alta prioridad
PIC18FRevisión de Interrupciones
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 42
Shadow Registers
Registros Shadow ( registros sombra): Call rapido / Return– Calls o Returns pueden elegir para push / pop registros claves
a los registeros shadows (sombras)
– 1 nivel de profundidad para los registros W, STATUS, BSR– Seleccionado por el bit “s” en Call / Return instrucciones:
CALL FAST ; FAST -> s=1 Registros Shadow : Interrupciones
– Cualquier interrupcione permite push el shadow registers– Si se usa RETFIE el pop sobre el registro shadow , el ISR
puede no ser interrumpido (low priority)– Los registros Shadow solo son completamente usados para
alta prioridad
Característicasespeciales
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 44
PIC18 Opciones del Oscilador
– Opciones de reloj seleccionable proveen mayor flexibilidad para el diseñador: – Oscilador LP deseñado para absorver menor cantidad de corriente– RC o INTRC provee una solución de ultra bajo costo para el oscilador– XT optimizado para osciladores de las frecuencias mas usadas– HS optimizado para manejar resonadores y cristales de alta frecuencia
Speed ranges are guidelines only
XTXTHSHS
Standard frequency crystal oscillatorStandard frequency crystal oscillatorHigh frequency crystal oscillatorHigh frequency crystal oscillator
100kHz - 4MHz100kHz - 4MHzDC - 40MHzDC - 40MHz
HS+PLLHS+PLL High frequency crystal with 4x PLLHigh frequency crystal with 4x PLL 4MHz - 10MHz4MHz - 10MHzLPLPRCRC
Low frequency crystal oscillatorLow frequency crystal oscillatorExternal RC oscillatorExternal RC oscillator
5kHz - 200kHz5kHz - 200kHzDC - 4MHzDC - 4MHz
RCIORCIO External RC oscillator, OSC2=RA6External RC oscillator, OSC2=RA6 DC - 4MHzDC - 4MHzINTRCINTRC Internal RC oscillatorInternal RC oscillator VariousVariousECEC External Clock, OSC2=fosc/4External Clock, OSC2=fosc/4 DC - 40MHzDC - 40MHzECIOECIO External Clock, OSC2=RA6External Clock, OSC2=RA6 DC - 40MHzDC - 40MHz
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 45
POR, OST, PWRT
POR: Power On Reset– Con MCLR conectado a VDD, un pulso de
reset es generado cuandoes detectada la subida de VDD
– PWRT: Power Up Timer (Temporizador de encendido)
– El dispositivo es detenido el el reset por72ms (nominales) para permitir subir un nivel aceptable de VDD (solo despues del POR )
OST: Oscillator Start-up Timer (Temporizador de arranque del oscilador)
– Mantiene al dispositivo en reset por 1024 cycles para permitir estabilizar en frecuecia y amplitud al ascilador a cristaloresonador; no esta activo en el modoRC; usado solo despues del POR or al despertar desde el SLEEP
TPWRT
TOST
Reset Execution
VDD
MCLR
PWRT
OST
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 46
Events that wake processor from sleepEvents that wake processor from sleepEvents that wake processor from sleepMCLRMCLRWDTWDTINTINT
TMR1TMR1ADCADCCMPCMPCCPCCP
PORTBPORTBSSPSSPPSPPSP
Modo Sleep El procesador puede ser puesto en modo baja potencia por la
ejecución de una instrucción SLEEP – Oscilador del sistema es detenido– El estado del procesador es mantenido (Diseño estático– El funcionamiento del WDT continua, isi esta habilitado– Mínima absorción de corriente - sobre todo debido a las salidas (0.1 - 2.0A
típicos)
Master Clear Pin Asserted (pulled low)Master Clear Pin Asserted (pulled low)Watchdog Timer TimeoutWatchdog Timer TimeoutINT Pin InterruptINT Pin InterruptTimer 1 Interrupt (or also TMR3 on PIC18)Timer 1 Interrupt (or also TMR3 on PIC18)A/D Conversion Complete InterruptA/D Conversion Complete InterruptComparator Output Change InterruptComparator Output Change InterruptInput Capture EventInput Capture EventPORTB Interrupt on ChangePORTB Interrupt on ChangeSynchronous Serial Port (I2C Mode) Start / Stop Bit Detect InterruptSynchronous Serial Port (I2C Mode) Start / Stop Bit Detect InterruptParallel Slave Port Read or WriteParallel Slave Port Read or Write
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 47
Watchdog Timer
Permite recuperarse de un mal funcionamiento del software Este usa su propio oscilador RC de funcionamiento libre sobre el chip WDT es borrado por una instrucción CLRWDT Habilitado el WDT (WDTEN),no puede ser deshabilitado por software el overflow del WDT, resetea el chip El período del timeout es programable de : 18ms a 3.0s típico Operando en modo SLEEP; sobre time out, despierta a la CPU
WDT Ripple Counter Postscaler
8:1 Mux
WDT Timeout
WDTENSWDTEN
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 48
Programación Serie In-Circuit™
Solo requiere dos terminales paraprogramación
Conveniente para programación en sistemasde
– Datos de calibración– Datos de Serialización
Soportado por MPLAB® PM3 & ICD2
PinPinPinVPPVPP
VDDVDD
VSSVSS
RB6RB6RB7RB7
FunctionFunctionFunctionProgramming Voltage = 13VProgramming Voltage = 13VSupply VoltageSupply VoltageGroundGroundClock InputClock InputData I/O & Command InputData I/O & Command Input
ICSP™ ConnectorMCLR/VPP
VDD
VSS
RB6
RB7
PIC1
8Fxx
xx
To application circuit
VDD VDDApplication PCB
ICSP Connector
Isolation circuits
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 49
BOR –Brown Out Reset
When voltage drops below a particular threshold, the device is held in reset
Prevents erratic or unexpected operation
Eliminates need for external BOR circuitry
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 50
PBOR – Brown Out Reset Programable
Opciones de Configuración (seteable durante la programación)– No puede ser habilitado / disabilitado en software
Cuatro seleccionables BVDD puntos seleccionables:– 2.5V – Mínimo VDD for OTP PICmicro® MCUs– 2.7V– 4.2V– 4.5V
Para otros thresholds, use un supervisor externo (MCP1xx, MCP8xx/TCM8xx, or TC12xx)
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 51
PBOR – Brown Out Reset Programable
Mantiene el PICmicro® MCU en reset durante ~72ms despues de subido VDD valido threshold
72ms
BVDDVDD
VDDBVDD
72ms
72ms
BVDD
VDD
<72ms
InternalReset
InternalReset
InternalReset
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 52
PLVD – Detector de Modo de Programación en baja Tensión
Detección temprana antes del brown out
16 puntos de excursiónseleccionables:– 1.8V up to 4.5V in 0.1 to
0.2V steps– Entrada analógica
externa VREF Interna
VDD LVDIN
LVDIN
LVDCON
VREF
LVDIF
16-bitMultipl ex er
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 53
3 Categories
PIC18F: Modes de manejo de alimentación
RUN - 3 clock sourcesRUN - 3 clock sources
IDLE - 3 clock sourcesIDLE - 3 clock sourcesSLEEP - no clocksSLEEP - no clocks
Total = 7 ModesTotal = 7 Modes
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 54
PIC18F: Modos de manejo de alimentación
Modo PRI_RUN– Palabra de configuración define la fuente primaria de
clock FOSC3:FOSC0 (_CONFIG1H<3:0>) 10 modos
– Oscilador a Cristal - LP, XT, HS, HSPLL– Clock Externo- EC, ECIO– Oscilador RC Externo - RC, RCIO– Oscilador RC Interno - INTIO1, INTIO2
SEC_RUN Mode– Clock switching mechanism in other PIC18 controllers– Timer1 source, Primary oscillator is disabled
RC_RUN Mode– IRCF<2:0> selects clock speed – IOFS set after 1us (typ.) delay if Freq 31 kHz
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 55
PIC18F CaracterísticasEspeciales :RESETS
PIC18 RESETS– Power-on Reset (POR)– MCLR Reset durante la operación normal– Reset por Programmable Brown-out (BOR)– Reset por Watchdog Timer (WDT) – Instrucción de RESET – Reset por Stack Completo– Reset por desborde de la capacidad del Stack
Para todos los Resets la dirección del vector del PC es 0
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 56
After RESET PC will have the address 0x000000After RESET PC will have the address 0x000000 Following bits will be affected after each RESETSFollowing bits will be affected after each RESETS
–– PORPOR = ‘0’: Power On RESET– BOR = ‘0’ & PORPOR = ‘1’: BOR RESET– TO = ‘0’: WDT RESET– RI = ‘0’: RESET Instruction– STKFUL = ‘1’: Stack over flow RESET– STKUNF = ‘1’: Stack under flow RESET– POR, BOR, TO & RI = ‘1’ and STKFUL & STKUNF = ‘0’: MCLR RESET
PIC18F características EspecialesRegistros de RESET
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 57
Periféricos
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 58
PIC18F Periféricos
Puertos digitales I/O Comparador analógico Conversor A/D Timer0, 1, 2, 3 Compare/Capture/PWM (CCP) USART Direccionable (AUSART) Master Synchronous Serial Port (MSSP) Parallel Slave Port (PSP)
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 59
I/O Ports Alta capacidad de excitación Puede escitar directamente LEDs Manejo directo bit por bit Cada pin tiene un control de dirección individual por software Todos los pines tienen diodos de protección contra ESD Pin RA4 es usualmente open drain Todos los pines I/O son entradas por defaultI (alta impedancia) sobre el
startup Todos los pines multiplexados con funciones analógicas por default son
entradas analógicas sobre el arranque
D Q
Q
D Q
Q
RESET
Read PORTx
Write PORTx
Write TRISx
Data Bus
I/O Pin
VDD
VSS
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 60
Puertos Digitales I/O – PIC18
Internal Data Bus
Write PORTxWrite LATx Read LATx Read PORTx
LATx Register(PORTx Output
Latches)
PORTx I/O Pins
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 61
Razón para registros LATx
VIL
V on PORTx,PINy Q1 Q2 Q3Q4
At Low Frequency or Low Capacitive LoadingBSF PORTx,PINy BSF PORTx,PINz
VIL
V on PORTx,PINy Q1 Q2 Q3Q4
At High Frequency or High Capacitive Loading
Q4BSF PORTx,PINy BSF PORTx,PINz
Port Sampled in RMW Operation
Port Sampled in RMW Operation
t
t
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 62
Puertos I/O
Bit n in TRISx controlan la dirección del Bit n en el PORTx
1 = Input, 0 = Output
In In In InOut Out Out Out
1 1 1 10 0 0 0TRISB
PORTB
I/O Pin Direction Control
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 63
I/O A/D o Digital? Los pines I/O estan multiplexados con las
entradas analógicas (analógica por default) ADCON1 usado para determinar cual pin es
entrada analog o I/O digital
Set lower 4 bits to ‘1’ to make all multiplexed pins digital
- - X X 1 1 1 1
Bit 0Bit 7
VCFG1 VCFG0 PCFG3 PCFG2 PCFG1 PCFG0
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 64
PIC18F PeriféricosPORTB : Cambia sobre la
Interrupción Interno Pull-Ups y Despertar/Interrumpir
cambio de características
I/O PinInternalPull-up
Port Read
Port Read
Data Bus
Interrupt/Wake-up
DD QQ
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 65
PIC18F Perifericos
Dos comparadores analógicos Operación en modo SLEEP Generates interrupción / despertar sobre
cambios de salida Pin valido para salida del comparador Ocho modos de operación programables
VVREFREF
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 66
PIC18F PeripheralsInternal VREF: Block Diagram
Provides On Chip voltage reference 16-tap resistor ladder network; provides
programmable reference voltage 24 or 32 step sizes Internal or External Voltage source for
reference voltage generation Can be used as a D/A converter VREF can be directed to an output pin
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 67
PIC18F PeripheralsInternal VREF: Configuration
VVREFREF--
RR
RR
RR
8R8R
8R8R
VVREFREF--
VVDDDD
VVREFREF--
To PIN RA0To PIN RA0
1: VREF = (VR<3:0> / 24) * CVRSRC0: VREF = 1/4 * CVRSRC + (VR3:VR0 / 32) * CVRSRC
Note: 1. Note: 1. CVROE overrides the TRISA<0> bit setting.
CVRENCVREN
CVRR: CVRR:
CVRSS:1CVRSS:1
CVROECVROE(1)(1)
CVR3 : CVR0CVR3 : CVR0
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 68
PIC18F Periféricos Hasta 16 Canales 10-bit ± 1 LSb Conversión
durante el modoSLEEP
Conversión sobrela Captura de entrada
Referencia Internao Externa
Hasta 100ksps* Facil para
Configurar
(Input voltage)VAIN
VREF(Reference
voltage)
AVDD
PCFG2:PCFG0PCFG2:PCFG0
CHS3:CHS0
AN7AN6AN5AN4
AN3/VREF+AN2/VREF-
AN1AN0
0111
0110
0101
0100
0011
0010
0001
0000
1010--bitbitSAR SAR ADCADC
. . .AN15
ADRESHADRESH ADRESLADRESL
Note: See the device data sheet for the conversion speedNote: See the device data sheet for the conversion speed
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 69
PIC18F PeriféricosConfiguración del módulo
ADC
— — CHS3 CHS3 CHS3 CHS3 GO/DONE ADONU-0 U-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0 R/W-0
Bit7 6 5 4 3 2 1 0
ADCON0 : A/D CONTROL REGISTER 0
Enable ADC
This Configuration register will help to select the required channel and controls the conversion
CH – 151111;;;;CH – 40010CH – 31100CH – 20100CH – 11000CH – 00000Selected Channel
0123
Start Conversion
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 70
PIC18F PeriféricosConfiguración del modulo ADC
— — VCFG1 VCFG0 PCFG3 PCFG2 PCFG1 PCFG0U-0 U-0 R/W-1 R/W-1 R/W-1 R/W-1 R/W-0 R/W-0
Bit7 6 5 4 3 2 1 0
ADCON1 : A/D CONTROL REGISTER 1
Selects the reference voltage for VREF + Input of ADC0: VREF+ is AVDD1: VREF+ is AN3
Selects the reference voltage for VREF– Input of ADC0: VREF- is AVSS1: VREF- is AN2
V reference selection helps to get the Full range of ADC values when input Sensors use voltage sources of different level.
Defines number of Analog capable Port pins as analog inputs0000 – No Analog Channels0001 – 1 Analog Channel (AN0)
“““
0111 – 7 Analog inputs (AN0 to AN6)“
1111 – 16 Analog inputs (AN0 to AN15)
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 71
PIC18F PeriféricosConfiguración de Módulo
ADCADCON2 : A/D CONTROL REGISTER 2
ADFM — ADCS0R/W-0 U-0 R/W-1 R/W-1 R/W-1 R/W-1 R/W-0 R/W-0
Bit7 6 5 4 3 2 1 0ADCS1ADCS2ACQT0ACQT1ACQT2
The Sample and hold CAPACITOR must be charged to the analog input voltage level in order to get the good accuracy in conversionFollowing are the delays involved in Charging the capacitor• Amplifier Settling Time (TAMP = 5µS approx) • Holding Capacitor Charging Time (TC = 9.61µS approx approx.)• Temperature Coefficient (TCOFF = 1.25µS approx)So the total Acquisition tine required is TACQ = 12.86µS
ACQT2:ACQT0 will provide this delay before starting the conversion (After setting GO bit)Acquisition delay = (2n * TAD)**Where n = ACQT2:ACQT0
** Refer the device data sheet for accurate delay cycles** Refer the device data sheet for accurate delay cycles
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 72
PIC18F PeriféricosConfiguración de Módulo
ADCADCON2 : A/D CONTROL REGISTER 2
ADFM — ADCS0R/W-0 U-0 R/W-1 R/W-1 R/W-1 R/W-1 R/W-0 R/W-0
Bit7 6 5 4 3 2 1 0ADCS1ADCS2ACQT0ACQT1ACQT2
If ADFM = 0: Result is Left Justified; this will help to get the Low resolution data by reading only ADRESH registerIf ADFM = 1: Result is Right Justified; this will help to get the High resolution data by reading only ADRESL register
MSBMSB LSBLSBADRESHADRESH MSBMSB LSBLSBADRESLADRESL
10 Bits ADC data RJ10 Bits ADC data RJ10 Bits ADC data LJ10 Bits ADC data LJ
This bit will allows the ADC result to be stored in Left/Right aligned in ADRES register
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 73
PIC18F PeriféricosTimer0
8-bit/16-bit Timer/Contador– 16-bit Lectura y Escritura
8-bit Prescaler Programable por Software Clock Interno o Extreno Seleccionable Interrupción sobre overflow desde FFh/FFFFh a 00h
Fosc/4ExternalClockInput
Set TMR0IF interruptflag on Overflow
T0SE8-bit
ProgrammablePrescaler
T0PS2:T0PS033 PSA
T0CS(2 cycle delay)
Sync withinternalclocks
TMR0
8-bit Data Bus
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 74
PIC18F PeriféricosTimer1 y Timer3
16-bit Timer / Contador Timer, Contador Sicrónico o Contador
asincrónico Oscilador enbutido permite operación desde
cristal externo Consistente de 2 registros de 8-bit escribibles /
leibles 1, 2, 4, or 8 Prescaler Interrupción sobre overflow desde FFFFh to 0000h
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 75
PIC18F PeriféricosTimer2
Timer de 8-bit con prescaler y postscaler Usado como base de tiempo para módulo
PWM modo de CCP TMR2 es leible =y escribible TMR2 incrementa hasta que empareja el
período PR2, entonces resets a 00h TMR2 emparejado con el PR2 genera una
interrupción a través del postscaler Usado como baud clock para el MSSP (SPI)
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 76
Two bits are from prescaler to form 10 bit
PIC18F PeriféricosMódulo CCP: Modo PWM
Hasta 10-bit resolución– 20 kHz @ 10-bit– 80 kHz @ 8-bit– 160 kHz @ 7-bit
PR2
R
S
Q
PeriodPeriod
DCDC
TMR2=PR2 TMR2=DC
TMR2=PR2
Comparator
Timer2
Comparator
Slave
CCPR1L CCP1CON<5:4> Two bits are
from CCP1CON to form 10 bit
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 77
PIC18F PeriféricosModuloCCP: Modo Captura de entrada
Capturas valores de 16-bit TMR1/3 cuandoocurre un evento sobre el pin CCPx :– Cada flanco de subida– Cada Flanco de bajada– Cada cuarto flanco de subida– Cada decimosexto flanco de subida
La Captura genera una interrupción
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 78
PIC18F Periféricos MóduloCCP: Mode captura de entrada
TMR1H TMR1L
CCPR1H CCPR1L
TMR3H TMR3L
Edge detectPrescaler
CCP1M: 3-0 T3ECCP1
Set CCP1IFSet CCP1IF
TMR 1 TMR 1 EnableEnable
TMR 3 TMR 3 EnableEnable
CCP PinCCP Pin
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 79
PIC18F PeriféricosMódulo CCP : Modo Captura de salida
Valor del registro CCPRn de 16 Bits es comparado al TMR1/3, y sobre el emparejamiento con CCPn pin es– Excitado High/Low– Accionado– Sin cambiar
Comparación emparejada genera interrupción Comparación emparajada puede deiparar un evento especial Puede comenzar una conversión A/D
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 80
PIC18F PeriféricosPuerto Serie Sincrónico Maestro
Opera en cualquier Modo SPI™ o I2C™ Modo SPI
– baud rate Programable– baud rates Máximo (@ 40MHz)
Master: 10 Mbps Slave: 2.5 Mbps Simple Byte Tx
Modo I2C– Suporta standar (100kHz), Rápido (400kHz), y Microchip’s
Satandar 1MHz I2C– Implementación Master/Slave por Hardware– Filtro de Glitch y control del Slew rate sobre pines SCL y SDA
SPI is a trademark of Motorola SemiconductorSPI is a trademark of Motorola SemiconductorII22C is a trademark of Philips SemiconductorsC is a trademark of Philips Semiconductors
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 81
PIC18F Periféricos Parallel Slave Port
Bus de 8-bit Multi-MCU – Un Maestro - muchos esclavos– Maestro puede ser Leido/Escrito desde esclavo(s)
Comunicación Asincrónica Alta velocidad de operación
MasterMaster Slave #1Slave #1D<7:0>
*CS*CS*RD*RD*WR*WR
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 82
PIC18F PeriféricosInterface de Comunicación Serie
(SCI/USART) Full-duplex asincrónica -o- half-duplex sincrónica Datos de 8- o 9-bit Doble-buffereado para Buffer de transmisión y recepción Interrupciones separadas para transmición y recepción Transmisión y recepción primero del LSB Generador de Baud Rate dedicado de 16 bit Max baud rates @ 40 MHz
– Syncrónico: 10 Mbaud– Asincrónico: 625 Kbaud/2.5 Mbaud
Modo direccionable de 9-bit Auto-Despertar sobre recepción de caracter Auto-Baud calibración 12-bit Corte transmisión de caracter
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 83
PIC18F Periféricos Interface de Comunicación serie
USART Diagrama en Bloques
Interrupt
Tcy
TXIE TX8/9
TXD8
TXDATA
TXCLK
RCD8RC8/9
RCIE
RCCLK
RXDATA
TXEN SYNCSREN CSRCCREN
RC6/TX/CK
SPEN
RC7/RX/DT
TO RC6, RC7 I/O Port Logic
Baud RateClock
SPBRGSPBRG
FERRFERROERROERR
RSRRSR
RCREGRCREG
TSRTSR
TXREGTXREG
RCIFRCIF
TXIFTXIF
ADDEN
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 84
PIC18F PeriféricosInterface de Comunicación Serie
TXIF and TRMT Operation
TXREG vacio, con Seteo del TXIF Cargando TXREG se resetea TXIF
TSR vacío con seteo del TRMT Caragendo TSR se resetea TRMT
Sí el TXREG es cargado y el TRMT esseteado, entonces el dato esinmediatamente cargado al TSR. Comenzando el desplazamiento del dato serie permite setear el TXIF
TSRTSR
TXREGTXREG
RC6/TX/CK
TXIFTXIF
TRMTTRMT
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 85
2 deep FIFO
RSRRSR
RCREGRCREG
ADDEN
RC7/RX/DT
PIC18F PeriféricosInterface de Comunicación serie
Operación del RCIF RSR recive dattos con
start/stop válido Dato cargado dentro del
RCREG FIFO y RCIF = 1 Si un segundo byte es recibido
antes que el primer byte sea atendido, entonces el nuevodato puede ser almacenadoelnlasegunda localización sobre la FIFO
Cuando el servicio de recepción es interrumpido, despues de leer el 1er byte, sihay otro byte aún dentro de la FIFO, entonces un 2do interrución RCIF es generada
RCIFRCIF
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 86
Resumen Hemos discutido sobre la revisión de la
Arquitectura– PIC18F Arquitectura– Programmers’ Model – Revisión del Set de Instrucciones– Manejo de las Interrupciones y latencia
Discución acerca de los Periféricos Básicos– Puertos I/O – Sistemas de desarrollo– Comparadores y referencias de voltajes– ADC
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 87
Resumen– Timers– CCP (Capture, Compare & PWM)– MSSP (I2C & SPI / Microwire)– USART
Discución acerca de– Oscilador y Modo bajo consumo– Características Especiales de los Microcontroladores
PIC18F
Muchas GraciasTraducido: por Andrés Raúl Bruno Saravia
Instituto Técnico OHM
© 2006 Microchip Technology Incorporated. All Rights Reserved. Slide 89
TrademarksThe Microchip name and logo, the Microchip logo, Accuron, dsPIC, KeeLoq, microID, MPLAB, PIC,
PICmicro, PICSTART, PRO MATE, PowerSmart, rfPIC and SmartShunt are registered trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.
AmpLab, FilterLab, Migratable Memory, MXDEV, MXLAB, SEEVAL, SmartSensor and The Embedded Control Solutions Company are registered trademarks of Microchip Technology Incorporated in the U.S.A.
Analog-for-the-Digital Age, Application Maestro, dsPICDEM, dsPICDEM.net, dsPICworks, ECAN, ECONOMONITOR, FanSense, FlexROM, fuzzyLAB, In-Circuit Serial Programming, ICSP, ICEPIC, Linear Active Thermistor, Mindi, MiWi, MPASM, MPLIB, MPLINK, MPSIM, PICkit, PICDEM, PICDEM.net,PICLAB, PICtail, PowerCal, PowerInfo, PowerMate, PowerTool, REAL ICE, rfLAB, rfPICDEM, Select Mode, Smart Serial, SmartTel, Total Endurance, UNI/O, WiperLock and ZENA are trademarks of Microchip Technology Incorporated in the U.S.A. and other countries.
SQTP is a service mark of Microchip Technology Incorporated in the U.S.A.All other trademarks mentioned herein are property of their respective companies.