microprocessador 8051 aula 01 prof afonso ferreira miguel
TRANSCRIPT
![Page 1: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/1.jpg)
Microprocessador 8051Microprocessador 8051Aula 01Aula 01
Prof Afonso Ferreira MiguelProf Afonso Ferreira Miguel
![Page 2: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/2.jpg)
Sistemas ProcessadosSistemas Processados
Fundamentos de computação: (cont.)Fundamentos de computação: (cont.)
ProgramaPrograma (Software): conjunto de instruções arranjadas (Software): conjunto de instruções arranjadas de forma organizada que apresenta função específica de forma organizada que apresenta função específica (Ex: Programas Básicos, Aplicativos, Utilitários, etc.);(Ex: Programas Básicos, Aplicativos, Utilitários, etc.);
FirmwareFirmware: Programa que está armazenado em memória : Programa que está armazenado em memória não volátil (ROM);não volátil (ROM);
HardwareHardware: partes eletrônicas de um microcomputador;: partes eletrônicas de um microcomputador; MicrocontroladorMicrocontrolador: microcomputador integrado num único : microcomputador integrado num único
chip (microprocessador + periféricos);chip (microprocessador + periféricos);
![Page 3: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/3.jpg)
Sistemas ProcessadosSistemas Processados
PeriféricosPeriféricos Circuitos acessórios ao computador que Circuitos acessórios ao computador que
realizam tarefas específicas;realizam tarefas específicas; Exemplos:Exemplos:
• Timers;Timers;• CCP (Comparação, Captura e PWM);CCP (Comparação, Captura e PWM);• Conversores Analógico-Digital e Digital-Analógico;Conversores Analógico-Digital e Digital-Analógico;• Portas de comunicação (USART, I2C, SPI, USB, Portas de comunicação (USART, I2C, SPI, USB,
CAN,...).CAN,...).
![Page 4: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/4.jpg)
ArquiteturasArquiteturas
von Neumannvon Neumann
““Instruções e dados compartilham a mesma Instruções e dados compartilham a mesma unidade física de memória”unidade física de memória”
Hamacher – Computer OrganizationHamacher – Computer Organization
![Page 5: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/5.jpg)
Arquiteturas - von NeumannArquiteturas - von Neumann
A
AX
BX
CX
DXtempA tempB
IR=MOVAX,0
MA = 0
MD=MOVAX,0
BU
S
Entrada B
Saída Z
Entrada A Entrada B
Saída Z
Entrada A MOV AX,0
MOV BX,1
ADD AX,BX
JMP 2
0
1
2
3
MOV AX,0
MOV BX,1
ADD AX,BX
JMP 2
0
1
2
3
...4 .4
Memória
IP = 0
uP
tempA= 0tempA
...4 O5
...4 L6
...4 A7
Inst.
Dados
![Page 6: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/6.jpg)
ArquiteturasArquiteturas
HarvardHarvard
““Instruções e dados são armazenados em Instruções e dados são armazenados em memórias diferentes”memórias diferentes”
Heuring – Computer Systems Disignd and ArchitectureHeuring – Computer Systems Disignd and Architecture
Vantagem: Instruções e dados podem ser acessados simultaneamente, aumentando o desempenho!
![Page 7: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/7.jpg)
ArquiteturasArquiteturas HarvardHarvard
AX
BX
CX
DX
tempA tempB
IR=MOVAX,0
MA = 0
MD=MOVAX,0
BU
S
Entrada B
Saída Z
Entrada A Entrada B
Saída Z
Entrada A
MOV AX,0
MOV BX,1
ADD AX,BX
JMP 2
0
1
2
3
MOV AX,0
MOV BX,1
ADD AX,BX
JMP 2
0
1
2
3
...4 .0
Memória de
Programa
IP = 0
uP
tempA= 0tempA
...4 O1
...4 L2
...4 A3
Inst.
Dados
Memória de Dados
IP CTRL
![Page 8: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/8.jpg)
InstructionInstruction Set Set
DefiniçãoDefinição: Conjunto de instruções que um : Conjunto de instruções que um processador compreende;processador compreende;
Cada processador possui seu próprio Cada processador possui seu próprio conjunto de instruções, inviabilizando, na conjunto de instruções, inviabilizando, na maioria dos casos, a portabilidade.maioria dos casos, a portabilidade.
![Page 9: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/9.jpg)
InstructionInstruction Set Set
Ciclo de execução de uma instrução em Ciclo de execução de uma instrução em processadores seqüenciaisprocessadores seqüenciais
Fetch 0
Decod 0
Exec 0
Fetch 1
Decod 1
Exec 1
...
Primeira instrução
Tempo perdido entre uma
instrução e outra
![Page 10: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/10.jpg)
InstructionInstruction Set Set
PipelinePipeline de Instrução de Instrução Ciclo de execução de uma instrução em Ciclo de execução de uma instrução em
processadores seqüenciais com Pipeline.processadores seqüenciais com Pipeline.
...Fetch 0
Dec 0
Exec 0
Fetch 1
Dec 1
Exec 1
Fetch 2
Dec 2
Exec 2
Fetch 3
Dec 3
Exec 3
Na maioria das vezes, uma instrução é executada imediatamente após a outra.
![Page 11: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/11.jpg)
InstructionInstruction Set Set
CISC – CISC – Complex Instruction Set ComputingComplex Instruction Set Computing
Computação onde o número de instruções é Computação onde o número de instruções é muito grande;muito grande;
RISCRISC Computação onde um número reduzido de Computação onde um número reduzido de
instruções estão disponíveis.instruções estão disponíveis.
![Page 12: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/12.jpg)
InstructionInstruction Set Set
Considerações sobre RISC e CISCConsiderações sobre RISC e CISC Uma única instrução CISC pode equivaler a Uma única instrução CISC pode equivaler a
várias instruções RISC;várias instruções RISC; Uma instrução CISC precisa realizar passos Uma instrução CISC precisa realizar passos
semelhantes aos realizados pelas RISC semelhantes aos realizados pelas RISC equivalentes (não há ganho de desempenho);equivalentes (não há ganho de desempenho);
CISC minimiza o número de acessos a CISC minimiza o número de acessos a memória de programa;memória de programa;
RISC simplifica a decodificação de instruções, RISC simplifica a decodificação de instruções, deixando esta etapa mais rápida.deixando esta etapa mais rápida.
![Page 13: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/13.jpg)
InstructionInstruction Set Set
Vantagens CISC:Vantagens CISC: Apesar do conjunto de instruções ser muito Apesar do conjunto de instruções ser muito
grande, oferece um número maior de grande, oferece um número maior de instruções (“ferramentas”) ao programador instruções (“ferramentas”) ao programador AssemblyAssembly;;
Menor quantidade de instruções são Menor quantidade de instruções são necessárias para desenvolver um programa necessárias para desenvolver um programa (programas ocupam menos memória).(programas ocupam menos memória).
![Page 14: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/14.jpg)
InstructionInstruction Set Set
Vantagens RISC:Vantagens RISC: Etapa de decodificação tão simples que pode, Etapa de decodificação tão simples que pode,
em alguns casos, ser eliminada;em alguns casos, ser eliminada; Com um número menor de instruções, os Com um número menor de instruções, os
parâmetros destas podem ser agregados no parâmetros destas podem ser agregados no opcodeopcode (código de máquina de uma (código de máquina de uma instrução), simplificando inclusive o FETCH.instrução), simplificando inclusive o FETCH.
Simplificação dos circuitos eletrônicos.Simplificação dos circuitos eletrônicos.
![Page 15: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/15.jpg)
Quem é melhor?Quem é melhor?
RISC x CISCRISC x CISC
![Page 16: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/16.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Família INTEL MSC-51 – CISC/von NeumannFamília INTEL MSC-51 – CISC/von Neumann Membro original é o 8051;Membro original é o 8051; CPU de 8 bits otimizada para aplicações de controle;CPU de 8 bits otimizada para aplicações de controle; Poderosa capacidade de processamento booleano, Poderosa capacidade de processamento booleano,
incluindo lógica individual de bits;incluindo lógica individual de bits; 64 Kbytes de endereçamento de memória de 64 Kbytes de endereçamento de memória de
programa;programa; 64 Kbytes de endereçamento de memória de dados;64 Kbytes de endereçamento de memória de dados; 4 Kbytes de memória de programa interna.4 Kbytes de memória de programa interna.
![Page 17: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/17.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Família INTEL MSC-51Família INTEL MSC-51 128 bytes de memória RAM de dados interna;128 bytes de memória RAM de dados interna; 32 linhas de I/O bidirecionais endereçáveis 32 linhas de I/O bidirecionais endereçáveis
individualmente;individualmente; 2 Timers/Contadores de 16 bits;2 Timers/Contadores de 16 bits; 5 entradas de interrupções (3 internas e 2 5 entradas de interrupções (3 internas e 2
externas) com 2 níveis de prioridade;externas) com 2 níveis de prioridade; 1 oscilador interno de clock.1 oscilador interno de clock.
![Page 18: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/18.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
![Page 19: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/19.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)Philips/Signetics 8051 Family
Product Name Process ROM RAM Pins 8-bit Ports Serial I/O Timers Special
8031/51 NMOS 4K 128 40 4 UART 2 Industry Standard
8032/52 NMOS 8K 256 40 4 UART 3 Industry Standard
8XC751 CEPROM 2K 64 24 2+3/8 I2C 1 24 Pin Skinny DIP
8XC752 CEPROM 2K 64 28 2+5/8 I2C 1 8-bit A/D,PWM
8XC31/51 CEPROM 4K 128 40 4 UART 2 20,24, 30MHz
8XCL410 SACMOS 4K 128 40 4 I2C 2 LowVolt/Power (1.8 volts)
80/3C851 EEPROM 4K 128 40 4 UART 2 256 EEPROM
8XC550 CEPROM 4K 128 40 4 UART 2 8-bit A/D, WD
8XC451 CEPROM 4K 128 68 7 UART 2 7 I/O Ports
8XC652 CEPROM 8K 256 40 4 UART,I2C 2 8K ROM, I2C Serial Bus
8XC52 CEPROM 8K 256 40 4 UART 3 Industry Standard
8XC053/054 CEPROM 8K/16k 192 42 4 -- 2 TV Display (OSD), D/A
8XC562 CEPROM 8K 256 68 6 UART 4 8-bit A/D, PWM, WD, T2
8XC552 CEPROM 8K 256 68 6 UART,I2C 4 10-bit A/D, PWM, WD, T2
8XC654 CEPROM 16K 256 40 4 UART,I2C 2 16K ROM, I2C Serial Bus
8XC524 CEPROM 16K 512 40 4 UART, I2C 3 16K, 512 bytes, WD
8XC528 CEPROM 32K 512 40 4 UART,I2C 3 32K ROM, 512 RAM, WD
![Page 20: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/20.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
PinagensPinagens
![Page 21: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/21.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Organização Organização de Memóriade Memória
![Page 22: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/22.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Memória de programa ExternaMemória de programa Externa
![Page 23: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/23.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Memória de dados InternaMemória de dados Interna
FFh
Acessível somentepor endereçamento indireto (128 bytes
superiores)80h
FFh
Acessível por endereçamento direto (SFRs: Portes, Bits de
controles dosTimers, Acumulador,etc)
80h7Fh
Acessível por endereçamento direto e indireto (128 bytes
inferiores)00h
FFh
Acessível somentepor endereçamento indireto (128 bytes
superiores)80h
FFh
Acessível por endereçamento direto (SFRs: Portes, Bits de
controles dosTimers, Acumulador,etc)
80h
7Fh
Acessível por endereçamento direto e indireto (128 bytes
inferiores)00h
![Page 24: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/24.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
128 bytes 128 bytes inferiores inferiores da RAMda RAM
7Fh Endereçamento por byte30h
07h R7Banco 0
00Hh R0
0Fh R7Banco 1
08h R0
17h R7Banco 2
10h R0
1Fh R7Banco 3
18h R0
2Fh Endereçável por bit e/ou byte
20h
Valor inicial do SP (Stack Pointer: ponteiro de pilha) após um sinal de Reset.
![Page 25: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/25.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Program Status WordProgram Status Word
bits 7 6 5 4 3 2 1 0
(PSW) = C AC F0 RS1 RS0 OV - P
RS1 RS0 Banco Selecionado Registradores Selecionados Endereços de Memória Selecionados0 0 0 R0 a R7 00h a 07h0 1 1 R0 a R7 08h a 0Fh1 0 2 R0 a R7 10h a 17h1 1 3 R0 a R7 18h a 1Fh
![Page 26: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/26.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Registradores Registradores de Funções de Funções Especiais Especiais ((SFRsSFRs))
Registradores Endereço Nome dos RegistradoresA ou ACC E0h AcumuladorB* F0h Registrador BDPL 82h Byte menos significativo do Ponteiro de DadosDPH 83h Byte mais significativo do Ponteiro de DadosIE* A8h Habilitador de InterrupçõesIP B8h Priorizador de InterrupçõesSCON* 98h Controlador da Comunicação SerialSBUF 99h Buffer de Dados SerialPSW* D0h Palavra de Status de ProgramaPCON 87h Controle de PotênciaTCON* 88h Controle do Timer/ContadorTMOD 89h Modo de operação de Timer/ContadorTH0 8Ch Byte mais significativo do Timer/Contador 0TL0 8Ah Byte menos significativo do Timer/Contador 0TH1 8Dh Byte mais significativo do Timer/Contador 1TL1 8Bh Byte menos significativo do Timer/Contador 1P0* 80h Porte 0P1* 90h Porte 1P2* A0h Porte 2P3* B0h Porte 3
![Page 27: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/27.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Regs de Regs de Funções Funções Especiais Especiais ((SFRsSFRs))
![Page 28: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/28.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Modos de endereçamentoModos de endereçamento Particular On-chip ResourcesParticular On-chip Resources: This includes the : This includes the
Accumulator (A), the Stack Pointer (SP), the Data Accumulator (A), the Stack Pointer (SP), the Data Pointer (DP), the Program Counter (PC), and the Pointer (DP), the Program Counter (PC), and the Carry (C). Other On-chip Registers are Memory-Carry (C). Other On-chip Registers are Memory-mapped while these have special Op-codes.mapped while these have special Op-codes.
Immediate operandsImmediate operands: The # sign is the designator. : The # sign is the designator. These are 8-bits except for DPTR contents (16-bits).These are 8-bits except for DPTR contents (16-bits).
Register operandsRegister operands: Designated as Rn, where n is : Designated as Rn, where n is 0..7. One of the four Register Banks is used (PSW 0..7. One of the four Register Banks is used (PSW selected).selected).
![Page 29: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/29.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Modos de endereçamentoModos de endereçamento Direct OperandsDirect Operands: From 00 to FF Hex, : From 00 to FF Hex,
specifies one of the internal data addresses.specifies one of the internal data addresses.
Indirect AddressIndirect Address: Designated as @Ri, where : Designated as @Ri, where i is 0 or 1, uses the contents of R0 or R1 in i is 0 or 1, uses the contents of R0 or R1 in the selected Register Bank to specify the the selected Register Bank to specify the address. Other form is @A, using address. Other form is @A, using Accumulator contents.Accumulator contents.
![Page 30: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/30.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Instruction Set : Arithmetic
Mnemonics Operands Bytes/Cycles
ADD A, Rn 1/1
ADDC A, direct 2/1
SUBB A, @Ri 1/1
A, #data 2/1
INC A 1/1
DEC Rn 1/1
direct 2/1
@Ri 1/1
INC DPTR 1/2
MUL AB 1/4
DIV AB 1/4
DA A 1/1
![Page 31: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/31.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)Instruction Set : Logic
Mnemonic Operands Bytes/Cycles
ANL A, Rn 1/1
ORL A, direct 2/1
XRL A, @Ri 1/1
A, #data 2/1
direct, A 2/1
direct, #data 3/2
C, bit 2/2
C, /bit 2/2
CLR A 1/1
CPL C 1/1
bit 2/1
![Page 32: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/32.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Instruction Set : Logic (cont'd)
Mnemonic Operands Bytes/Cycles
RL A 1/1
RLC A 1/1
RR A 1/1
RRC A 1/1
SWAP A 1/1
SETB C 1/1
CLR bit
CPL
2/1
![Page 33: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/33.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Instruction Set : Data Transfer
Mnemonic Operands Bytes/Cycles
MOV A, Rn 1/1
A, direct 2/1
A, @Ri 1/1
A, #data 2/1
Rn, A 1/1
Rn , direct 2/2
Rn, #data 2/1
direct, A 2/1
direct, Rn 2/2
direct, direct 3/2
direct, @Ri 2/2
direct, #data 3/2
![Page 34: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/34.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Instruction Set : Data Transfer (cont'd)
Mnemonic Operands Bytes/Cycles
MOV @Ri, A 1/1
@Ri, direct 2/2
@Ri, #data 2/1
DPTR, #data16 3/2
C, bit 2/1
bit, C 2/2
MOVX A,@DPTR 1/2
@DPTR,A 1/2
A,@Ri 1/2
@Ri,A 1/2
![Page 35: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/35.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Instruction Set: Data Transfer (cont'd)
Mnemonic Operands Bytes/Cycles
MOVC A, @A+DPTR 1/2
A, @A+PC 1/2
PUSH direct 2/2
POP direct 2/2
XCH A, Rn 1/1
A, direct 2/1
A, @Ri 1/1
XCHD A, @Ri 1/1
![Page 36: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/36.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Instruction Set : Branching
Mnemonic Operands Bytes/Cycles
LCALL addr16 3/2
ACALL addr11 2/2
RET - 1/2
RETI - 1/2
LJMP addr16 3/2
AJMP addr11 2/2
SJMP rel 2/2
JMP @A+DPTR 1/2
JZ rel 2/2
JNZ rel 2/2
![Page 37: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/37.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Instruction Set : Branching (cont'd)
Mnemonic Operands Bytes/Cycles
CJNE A, direct, rel 3/2
A, #data, rel 3/2
Rn, #data, rel 3/2
@Ri,#data,rel 3/2
DJNZ Rn, rel 2/2
direct, rel 3/2
NOP - 1/1
JC rel 2/2
JNC rel 2/2
JB bit, rel 3/2
JNB bit, rel 3/2
JBC bit, rel 3/2
![Page 38: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/38.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Ferramentas de desenvolvimento IARFerramentas de desenvolvimento IAR
![Page 39: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/39.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Portas de IOPortas de IO Four 8-bit I/O ports;Four 8-bit I/O ports; Most have alternate functions;Most have alternate functions; Quasi-bidirectional:Quasi-bidirectional:
• Soft pull-up when port latch contains a Soft pull-up when port latch contains a 1. Can be used as inputs (30kohm 1. Can be used as inputs (30kohm average pull-up).average pull-up).
![Page 40: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/40.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Porta P0Porta P0 As an I/O port:As an I/O port:
• No strong pull-up, outputs act as open drain.No strong pull-up, outputs act as open drain.
As a multiplexed data bus:As a multiplexed data bus:• Tristate bus with strong pull-ups.Tristate bus with strong pull-ups.• 8-bit instruction bus, strobed by PSEN.8-bit instruction bus, strobed by PSEN.• Low byte of address bus, strobed by ALE.Low byte of address bus, strobed by ALE.• 8-bit data bus, strobed by WR and RD.8-bit data bus, strobed by WR and RD.
3.2 mA outputs (about 8 LS-TTL loads).3.2 mA outputs (about 8 LS-TTL loads).
![Page 41: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/41.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Porta P1Porta P1 As an I/O port:As an I/O port:
• Standard quasi-bidirectional.Standard quasi-bidirectional.
Alternate functions:Alternate functions:• Only on some derivatives.Only on some derivatives.
1.6 mA outputs (about 4 LS-TTL loads).1.6 mA outputs (about 4 LS-TTL loads).
![Page 42: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/42.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Porta P2Porta P2 As an I/O port:As an I/O port:
• Standard quasi-bidirectional.Standard quasi-bidirectional.
Alternate functions:Alternate functions:• High byte of address bus for external program and High byte of address bus for external program and
data memory accesses.data memory accesses.
1.6 mA outputs (about 4 LS-TTL loads).1.6 mA outputs (about 4 LS-TTL loads).
![Page 43: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/43.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Porta P3Porta P3 As an I/O port:As an I/O port:
• Standard quasi-bidirectional.Standard quasi-bidirectional.
Alternate functions:Alternate functions:• Serial I/OSerial I/O - TXD, RXD- TXD, RXD• Timer clocksTimer clocks - T0, T1- T0, T1• InterruptsInterrupts - INT0, INT1- INT0, INT1• Data memoryData memory - RD, WR- RD, WR
1.6 mA outputs (about 4 LSTTL loads).1.6 mA outputs (about 4 LSTTL loads).
![Page 44: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/44.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Valores após Valores após o RESETo RESET
REGISTRO
VALOR REGISTRO VALOR
PC 0000 H TMOD 00 H
ACC 00 H TCON 00 H
B 00 H TH0 00 H
PSW 00H TL0 00 H
SP 07 H TH1 00 H
DPTR 0000 H TL1 00 H
P0 a P3 FF H ou 11111111 B
SCON 00 H
IP 0XX00000 B
SBUF indeterminado
IE 00 H PCON (CMOS)
0XXX0000 B
![Page 45: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/45.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Ligando o 8051 – Circuito de RESET típicoLigando o 8051 – Circuito de RESET típico
![Page 46: Microprocessador 8051 Aula 01 Prof Afonso Ferreira Miguel](https://reader036.vdocuments.net/reader036/viewer/2022062418/552fc12a497959413d8ce292/html5/thumbnails/46.jpg)
Microcontrolador 8051 (MCS-51)Microcontrolador 8051 (MCS-51)
Ligando o 8051 – ClockLigando o 8051 – Clock