of 39/39
PIC 8259 PIC 8259 PIC 8259 PIC 8259

PIC 8259 PIC 8259 Sistema de Interrupção CPU RAM ROM I/O(1) I/O(N) CPU-DRIVEN MULTIPLEXOR I/O(2) Método Polled CPU RAM ROM PIC I/O(N) I/O(1) I/O(2) Método

  • View
    106

  • Download
    0

Embed Size (px)

Text of PIC 8259 PIC 8259 Sistema de Interrupção CPU RAM ROM I/O(1) I/O(N) CPU-DRIVEN MULTIPLEXOR I/O(2)...

  • Slide 1
  • Slide 2
  • PIC 8259 PIC 8259
  • Slide 3
  • Sistema de Interrupo CPU RAM ROM I/O(1) I/O(N) CPU-DRIVEN MULTIPLEXOR I/O(2) Mtodo Polled CPU RAM ROM PIC I/O(N) I/O(1) I/O(2) Mtodo de Interrupo PIC 8259_ ___
  • Slide 4
  • Compatvel com o 8086, 8088, MCS-80/85; Controlador de 08 nveis de prioridade, expansvel para 64 nveis; Modos de Interrupo Programveis; Capacidade de Mascaramento Individual da Interrupo; Suprido por +5V DC; No Necessita de Clock; Disponvel em DIP de 28-Pin e Package PLCC de 28Lead; Completamente compatvel com 8259A/8259A-2 e equivalentes. Generalidades PIC 8259_ ___
  • Slide 5
  • Encapsulamento Configurao da Pinagem PIC 8259_ ___
  • Slide 6
  • Trs Registradores Internos IRR IMR ISR 8259A IRR = Interrupt Request Register IMR = Interrupt Mask Register ISR = In-Service Register Sinais de sada Sinais de entrada
  • Slide 7
  • Diagrama de Blocos PIC 8259_ ___ D 7 - D 0 RD WR A0A0A0A0 CS CAS 0 CAS 1 CAS 2 SP/EN INSERVICEREG(ISR)PRIORITYRESOLVER DATABUSBUFFER READ/WRITELOGIC CASCADEBUFFER/COMPARATOR INTERRUPT MASK REG (IMR) INTERRUPTREQUESTREG(IRR) CONTROL LOGIC INTAINT IR0IR1IR2IR3IR4IR5IR6IR7 DATABUSBUFFER READ/WRITELOGIC CASCADEBUFFER/COMPARATOR
  • Slide 8
  • Diagrama de Blocos PIC 8259_ ___ D 7 - D 0 RD WR A0A0A0A0 CS CAS 0 CAS 1 CAS 2 SP/EN INSERVICEREG(ISR)PRIORITYRESOLVER DATABUSBUFFER READ/WRITELOGIC CASCADEBUFFER/COMPARATOR INTERRUPT MASK REG (IMR) INTERRUPTREQUESTREG(IRR) CONTROL LOGIC INTAINT IR0IR1IR2IR3IR4IR5IR6IR7 INTERRUPTREQUESTREG(IRR) PRIORITYRESOLVER) IN SERVICE REG (ISR)
  • Slide 9
  • Diagrama de Blocos PIC 8259_ ___ D 7 - D 0 RD WR A0A0A0A0 CS CAS 0 CAS 1 CAS 2 SP/EN INSERVICEREG(ISR)PRIORITYRESOLVER DATABUSBUFFER READ/WRITELOGIC CASCADEBUFFER/COMPARATOR INTERRUPT MASK REG (IMR) INTERRUPTREQUESTREG(IRR) CONTROL LOGIC INTAINT IR0IR1IR2IR3IR4IR5IR6IR7
  • Slide 10
  • Descrio dos Pinos PIC 8259_ ___
  • Slide 11
  • Modo Standard de Conexo PIC 8259_ ___
  • Slide 12
  • O Projeto dos PCs 8259A PIC (slave) 8259A PIC (master) CPU INTR Programvel atravs de I/O-ports 0xA0-0xA1 Programvel atravs de I/O-ports 0x20-0x21
  • Slide 13
  • Clula de Prioridade / Diagrama Lgico PIC 8259_ ___
  • Slide 14
  • Solicitao de Tmporizao do Disparo de IR PIC 8259_ ___
  • Slide 15
  • Modo CASCADE no 8259 PIC 8259_ ___
  • Slide 16
  • Tabela de Byte de Vetorizao de Interrupo Para a Famlia 8086 PIC 8259_ ___
  • Slide 17
  • Como programar o 8259A O 8259A tem dois modos: O 8259A tem dois modos: Modo de inicializao Modo de inicializao Modo de operao Modo de operao Programando no Modo de Operao: Programando no Modo de Operao: Escrever um comando (9-bits) no PIC. Escrever um comando (9-bits) no PIC. Pode-se ler um byte de retorno do PIC Pode-se ler um byte de retorno do PIC Programando no Modo de Inicializao : Programando no Modo de Inicializao : Escrever uma seqncia de inicializao completa. Escrever uma seqncia de inicializao completa.
  • Slide 18
  • Programando o PIC 8259 Initialization Command Words(ICWs) Initialization Command Words(ICWs) Operation Command Words(OCWs) Operation Command Words(OCWs) Modo completo aninhado(nested) Modo completo aninhado(nested) Modo de prioridade rotativa; Modo de prioridade rotativa; Modo de mscara especial; Modo de mscara especial; Modo pooled. Modo pooled. PIC 8259_ ___
  • Slide 19
  • Seqncia de Inicializacao PIC 8259_ ___
  • Slide 20
  • Formado da Palavra de Comando de Inicializao PIC 8259_ ___
  • Slide 21
  • Formado da Palavra de Comando de Inicializao PIC 8259_ ___
  • Slide 22
  • ICW1 and ICW2 0 A7A6A5 1 LTIMADISNGLIC4 1 A15 / T7 A14 / T6 A13 / T5 A12 / T4 A11 / T3 A10A9A8 ICW1 ICW2 LTIM (1 = Level-Triggered Interrupt Mode, 0 = Edge-Triggered Interupt Mode) ADI is length of Address-Interval for call-instruction (1 = 4-bytes, 0 = 8-bytes) SNGL (1 = single controller system, 0 = multiple controllers in cascade mode) IC4 means Initialization Command-Word 4 is needed (1 = yes, 0 = no)
  • Slide 23
  • ICW3 1 S7S6S5 1 00000ID2ID1ID0 (master) (slave) S4S3S2S1S0 S Interrupt-Request Input is from a slave controller (1=yes, 0=no) ID number of slave controllers input-pin to master controller (0-7)
  • Slide 24
  • ICW4 1 000SFNMBUFM / SAEOIPM microprocessor mode 1=8086/8088 0=8080 Automatic EOI mode 1 = yes, 0 = no Special Fully-Nested Mode (1 = yes, 0 = no) NON-BUFFERED mode (00 or 01) BUFFERED-MODE (10 = slave, 11 = master)
  • Slide 25
  • Inicializando um PIC Master Escrever a seqncia de comandos. Escrever a seqncia de comandos. (Cada comando tem 9 bits.) (Cada comando tem 9 bits.) 0 00010001 1 1 00000100 1 00000001 A0D7D6D5D4D3D2D1D0 ICW1=0x11 ICW2=baseID ICW3=0x04 ICW4=0x01
  • Slide 26
  • Inicializando um PIC Slave Escrever uma seqncia de quatro comandos Escrever uma seqncia de quatro comandos (Cada comando tem 9 bits) (Cada comando tem 9 bits) 0 00010001 1 1 00000010 1 00000001 A0D7D6D5D4D3D2D1D0 ICW1=0x11 ICW2=baseID ICW3=0x02 ICW4=0x01
  • Slide 27
  • Palavras de Controle de Operao(OCWs) PIC 8259_ ___
  • Slide 28
  • Formado da Palavra de Comando de Operao) PIC 8259_ ___
  • Slide 29
  • Formado da Palavra de Comando de Operao) PIC 8259_ ___
  • Slide 30
  • Rotao Automtica PIC 8259_ ___
  • Slide 31
  • Como ter acesso ao IMR Quando no modo de operao, pode-se ler ou escrever no IMR em qualquer momento (fazendo-se in/out with A0- line=1) Quando no modo de operao, pode-se ler ou escrever no IMR em qualquer momento (fazendo-se in/out with A0- line=1) Read the master IMR:in al, #0x21 Read the master IMR:in al, #0x21 Write the master IMR:out #0x21, al Write the master IMR:out #0x21, al Read the slave IMR: in al, #0xA1 Read the slave IMR: in al, #0xA1 Write the slave IMR: out #0xA1, al Write the slave IMR: out #0xA1, al
  • Slide 32
  • Como ler o master IRR Envie o byte de comando read register com RR=1 and RIS=0; Leia o byte de retorno: Envie o byte de comando read register com RR=1 and RIS=0; Leia o byte de retorno: mov al, #0x0B out #0x20, al in al, #0x20
  • Slide 33
  • Como ler o master ISR Envie o byte de comando read register, com RR=1 and RIS=1; leia o byte de retorno: Envie o byte de comando read register, com RR=1 and RIS=1; leia o byte de retorno: mov al, #0x0A out #0x20, al in al, #0x20
  • Slide 34
  • End-of-Interrupt Em modo de operao (a no ser que o modo AEOI tenha sido programado), ao final do servio de interrupo deve-se enviar um EOI-command para o PIC Em modo de operao (a no ser que o modo AEOI tenha sido programado), ao final do servio de interrupo deve-se enviar um EOI-command para o PIC Isto limpa o bit apropriado do ISR e permite outras unmasked interrupts de igual ou menor prioridade serem atendidas. Isto limpa o bit apropriado do ISR e permite outras unmasked interrupts de igual ou menor prioridade serem atendidas. Non-specific EOI-command limpa o bit de mais alta prioridade do In-Service Register. Non-specific EOI-command limpa o bit de mais alta prioridade do In-Service Register.
  • Slide 35
  • Alguns exemplos de EOI Envie um non-specific EOI para o master PIC: Envie um non-specific EOI para o master PIC: mov al, #0x20 out #0x20, al Envie um non-specific EOI para ambos os PICs: Envie um non-specific EOI para ambos os PICs: mov al, #0x20 out #0xA0, al out #0x20, al
  • Slide 36
  • Caractersticas PIC 8259_ ___
  • Slide 37
  • Caractersticas
  • Slide 38
  • Formas de Onda PIC 8259_ ___
  • Slide 39
  • Formas de Onda PIC 8259_ ___
  • Slide 40
  • Formas de Onda PIC 8259_ ___