8051-Aula1

46
Microprocessador Microprocessador 8051 8051 Aula 01 Aula 01 Prof Afonso Ferreira Prof Afonso Ferreira Miguel Miguel

description

8051-Aula1

Transcript of 8051-Aula1

  • Microprocessador 8051Aula 01Prof Afonso Ferreira Miguel

  • Sistemas ProcessadosFundamentos de computao: (cont.)

    Programa (Software): conjunto de instrues arranjadas de forma organizada que apresenta funo especfica (Ex: Programas Bsicos, Aplicativos, Utilitrios, etc.);Firmware: Programa que est armazenado em memria no voltil (ROM);Hardware: partes eletrnicas de um microcomputador;Microcontrolador: microcomputador integrado num nico chip (microprocessador + perifricos);

  • Sistemas ProcessadosPerifricosCircuitos acessrios ao computador que realizam tarefas especficas;Exemplos:Timers;CCP (Comparao, Captura e PWM);Conversores Analgico-Digital e Digital-Analgico;Portas de comunicao (USART, I2C, SPI, USB, CAN,...).

  • Arquiteturasvon Neumann

    Instrues e dados compartilham a mesma unidade fsica de memriaHamacher Computer Organization

  • Arquiteturas - von NeumannAAXBXCXDXtempAtempBIR=MOVAX,0MA = 0MD=MOVAX,0BUSEntrada BSada ZEntrada AEntrada BSada ZEntrada AMOV AX,0MOV BX,1ADD AX,BXJMP 20123MOV AX,0MOV BX,1ADD AX,BXJMP 20123...4.4MemriaIP = 0uPtempA= 0tempA ...4O5...4L6...4A7Inst.Dados

  • ArquiteturasHarvard

    Instrues e dados so armazenados em memrias diferentesHeuring Computer Systems Disignd and Architecture

    Vantagem: Instrues e dados podem ser acessados simultaneamente, aumentando o desempenho!

  • ArquiteturasHarvardAXBXCXDXtempAtempBIR=MOVAX,0MA = 0MD=MOVAX,0BUSEntrada BSada ZEntrada AEntrada BSada ZEntrada AMOV AX,0MOV BX,1ADD AX,BXJMP 20123MOV AX,0MOV BX,1ADD AX,BXJMP 20123...4.0Memria de ProgramaIP = 0uPtempA= 0tempA ...4O1...4L2...4A3Inst.DadosMemria de Dados

  • Instruction SetDefinio: Conjunto de instrues que um processador compreende;

    Cada processador possui seu prprio conjunto de instrues, inviabilizando, na maioria dos casos, a portabilidade.

  • Instruction SetCiclo de execuo de uma instruo em processadores seqenciaisFetch 0Decod 0Exec 0Fetch 1Decod 1Exec 1...Primeira instruoTempo perdido entre uma instruo e outra

  • Instruction SetPipeline de InstruoCiclo de execuo de uma instruo em processadores seqenciais com Pipeline....Na maioria das vezes, uma instruo executada imediatamente aps a outra.

  • Instruction SetCISC Complex Instruction Set ComputingComputao onde o nmero de instrues muito grande;

    RISCComputao onde um nmero reduzido de instrues esto disponveis.

  • Instruction SetConsideraes sobre RISC e CISCUma nica instruo CISC pode equivaler a vrias instrues RISC;Uma instruo CISC precisa realizar passos semelhantes aos realizados pelas RISC equivalentes (no h ganho de desempenho);CISC minimiza o nmero de acessos a memria de programa;RISC simplifica a decodificao de instrues, deixando esta etapa mais rpida.

  • Instruction SetVantagens CISC:Apesar do conjunto de instrues ser muito grande, oferece um nmero maior de instrues (ferramentas) ao programador Assembly;Menor quantidade de instrues so necessrias para desenvolver um programa (programas ocupam menos memria).

  • Instruction SetVantagens RISC:Etapa de decodificao to simples que pode, em alguns casos, ser eliminada;Com um nmero menor de instrues, os parmetros destas podem ser agregados no opcode (cdigo de mquina de uma instruo), simplificando inclusive o FETCH.Simplificao dos circuitos eletrnicos.

  • Quem melhor?

    RISC x CISC

  • Microcontrolador 8051 (MCS-51)Famlia INTEL MSC-51 CISC/von Neumann Membro original o 8051; CPU de 8 bits otimizada para aplicaes de controle; Poderosa capacidade de processamento booleano, incluindo lgica individual de bits; 64 Kbytes de endereamento de memria de programa; 64 Kbytes de endereamento de memria de dados; 4 Kbytes de memria de programa interna.

  • Microcontrolador 8051 (MCS-51)Famlia INTEL MSC-51128 bytes de memria RAM de dados interna; 32 linhas de I/O bidirecionais endereveis individualmente; 2 Timers/Contadores de 16 bits; 5 entradas de interrupes (3 internas e 2 externas) com 2 nveis de prioridade; 1 oscilador interno de clock.

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)Pinagens

  • Microcontrolador 8051 (MCS-51)Organizao de Memria

  • Microcontrolador 8051 (MCS-51)Memria de programa Externa

  • Microcontrolador 8051 (MCS-51)Memria de dados InternaFFhAcessvel somentepor endereamento indireto(128 bytessuperiores)80hFFhAcessvel por endereamento direto(SFRs: Portes, Bitsde controles dosTimers, Acumulador,etc)80h7FhAcessvel por endereamento direto e indireto (128 bytesinferiores)00hFFhAcessvel somentepor endereamento indireto(128 bytessuperiores)80hFFhAcessvel por endereamento direto(SFRs: Portes, Bitsde controles dosTimers, Acumulador,etc)80h7FhAcessvel por endereamento direto e indireto (128 bytesinferiores)00h

  • Microcontrolador 8051 (MCS-51)128 bytes inferiores da RAM

  • Microcontrolador 8051 (MCS-51)128 bytes inferiores da RAM

  • Microcontrolador 8051 (MCS-51)128 bytes inferiores da RAM

  • Microcontrolador 8051 (MCS-51)128 bytes inferiores da RAM

  • Microcontrolador 8051 (MCS-51)Program Status Word

  • Microcontrolador 8051 (MCS-51)Registradores de Funes Especiais (SFRs)

    Registradores

    Endereo

    Nome dos Registradores

    A ou ACC

    E0h

    Acumulador

    B*

    F0h

    Registrador B

    DPL

    82h

    Byte menos significativo do Ponteiro de Dados

    DPH

    83h

    Byte mais significativo do Ponteiro de Dados

    IE*

    A8h

    Habilitador de Interrupes

    IP

    B8h

    Priorizador de Interrupes

    SCON*

    98h

    Controlador da Comunicao Serial

    SBUF

    99h

    Buffer de Dados Serial

    PSW*

    D0h

    Palavra de Status de Programa

    PCON

    87h

    Controle de Potncia

    TCON*

    88h

    Controle do Timer/Contador

    TMOD

    89h

    Modo de operao de Timer/Contador

    TH0

    8Ch

    Byte mais significativo do Timer/Contador 0

    TL0

    8Ah

    Byte menos significativo do Timer/Contador 0

    TH1

    8Dh

    Byte mais significativo do Timer/Contador 1

    TL1

    8Bh

    Byte menos significativo do Timer/Contador 1

    P0*

    80h

    Porte 0

    P1*

    90h

    Porte 1

    P2*

    A0h

    Porte 2

    P3*

    B0h

    Porte 3

  • Microcontrolador 8051 (MCS-51)Regs de Funes Especiais (SFRs)

  • Microcontrolador 8051 (MCS-51)Modos de endereamentoParticular On-chip Resources: This includes the Accumulator (A), the Stack Pointer (SP), the Data Pointer (DP), the Program Counter (PC), and the Carry (C). Other On-chip Registers are Memory-mapped while these have special Op-codes.

    Immediate operands: The # sign is the designator. These are 8-bits except for DPTR contents (16-bits).

    Register operands: Designated as Rn, where n is 0..7. One of the four Register Banks is used (PSW selected).

  • Microcontrolador 8051 (MCS-51)Modos de endereamentoDirect Operands: From 00 to FF Hex, specifies one of the internal data addresses.

    Indirect Address: Designated as @Ri, where i is 0 or 1, uses the contents of R0 or R1 in the selected Register Bank to specify the address. Other form is @A, using Accumulator contents.

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)

  • Microcontrolador 8051 (MCS-51)Ferramentas de desenvolvimento IAR

  • Microcontrolador 8051 (MCS-51)Portas de IOFour 8-bit I/O ports;Most have alternate functions;Quasi-bidirectional:Soft pull-up when port latch contains a 1. Can be used as inputs (30kohm average pull-up).

  • Microcontrolador 8051 (MCS-51)Porta P0As an I/O port:No strong pull-up, outputs act as open drain.

    As a multiplexed data bus:Tristate bus with strong pull-ups.8-bit instruction bus, strobed by PSEN.Low byte of address bus, strobed by ALE.8-bit data bus, strobed by WR and RD.

    3.2 mA outputs (about 8 LS-TTL loads).

  • Microcontrolador 8051 (MCS-51)Porta P1As an I/O port:Standard quasi-bidirectional.

    Alternate functions:Only on some derivatives.

    1.6 mA outputs (about 4 LS-TTL loads).

  • Microcontrolador 8051 (MCS-51)Porta P2As an I/O port:Standard quasi-bidirectional.

    Alternate functions:High byte of address bus for external program and data memory accesses.

    1.6 mA outputs (about 4 LS-TTL loads).

  • Microcontrolador 8051 (MCS-51)Porta P3As an I/O port:Standard quasi-bidirectional.

    Alternate functions:Serial I/O- TXD, RXDTimer clocks- T0, T1Interrupts- INT0, INT1Data memory- RD, WR

    1.6 mA outputs (about 4 LSTTL loads).

  • Microcontrolador 8051 (MCS-51)Valores aps o RESET

  • Microcontrolador 8051 (MCS-51)Ligando o 8051 Circuito de RESET tpico

  • Microcontrolador 8051 (MCS-51)Ligando o 8051 Clock