Disciplina: Microcontroladores Prof. Remy Eskinazi, MSc

Slides:



Advertisements
Apresentações semelhantes
Arquitetura de Computadores
Advertisements

WebDesign Redes de Computadores Aula 05
Arquitetura e organização de computadores.
Capítulo 6 As portas (portes) de entrada e saída da família de microcontroladores MCS-51 da Intel e suas aplicações no controle digital de máquina e de.
Autor: Salvador P. Gimenez
Capítulo 3 O conjunto de instruções da família de microcontroladores MCS-51 da Intel Prentice Hall Microcontroladores 8051.
SOFTWARE BÁSICO.
A Arquitetura: conjunto de instruções
Assembly MAC-1 Implementação de ciclos Ciclo ‘while’ // Em Java : ...
1 O Conjunto de Instruções ISA – Instruction Set Architecture.
Aula 4 – Sumário Linguagem assembly do MAC-1 A pilha
Software Básico Silvio Fernandes Universidade Federal Rural do Semi-Árido Departamento de Ciências Ambientais Ciência da Computação Aula 03: Computador.
Sistemas Embarcados Microcontroladores PIC
Arquitetura dos Microprocessadores 8086 e 8088
Sistemas Operacionais
Conhecendo Hardware Parte 1
EEL Microprocessadores
Professor: Erivelto Tschoeke – UDESC/CEPLAN
O MICROPROCESSADOR INTEL 8080
Sistemas Digitais Microprocessados
REPRESENTAÇÃO DE INSTRUÇÕES
Assembly x86.
Autor: Fernando de Mesentier Silva
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP PIC16F877A - Parte III Jadsonlee da Silva Sá
Unidade Central de Processamento
Unidade Central de Processamento
Funcionamento básico de um computador
Representação de Instruções
(Ou porque da necessidade de upgrade :-)
Classes de Arquiteturas Tipos de operação Codificação das operações
ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I prof. Dr. César Augusto M. Marcon prof. Dr. Edson Ifarraguirre Moreno Computador Cleópatra Arquitetura e Programação.
Comparação Processadores Hardwired x Microcoded
Unidade Central de Processamento UCP
ORGANIZAÇÃO DE COMPUTADORES
Prática de Programação Assembly 8086
Organização e Arquitetura de Computadores
Agenda - Aula 2 Introdução (Computador Digital) Processadores
Agenda Modos de Endereçamento.
Processamento de dados na UCP e memória UCP
Prof. Remy Eskinazi - Microcontroladores
Aula º sem Microcontroladores LT36D LT36D Prof.: Paulo Denis Garcez da.
Unidade Central De Processamento: Processador
Arquitetura de Computadores
Disciplina: Microcontroladores Prof. Remy Eskinazi, MSc UPE - POLI
Arquitetura 8051 Disciplina: Microcontroladores Prof. Remy Eskinazi
Disciplina: Microcontroladores Prof. Remy Eskinazi, MSc
A Linguagem de Máquina – Desvios e Laços
A Linguagem de Máquina – Funções e recursividade Prof. André Luis M. Silva orgearq wordpress.com.
Microprocesadores x Microcontroladores
8088 Assembly Software Básico Mitsuo Takaki.
Disciplina: Microcontroladores
Arquitetura de Computadores 2009 Infra-estrutura Hardware
8 - 1 Organização Básica de Computadores e Linguagem de Montagem Ricardo Pannain ORGANIZAÇÃO BÁSICA DE COMPUTADORES E LINGUAGEM DE MONTAGEM A pilha e subrotinas.
Parte 3 Seção de Dados e Unidade de Controle
2a Aula Pratica Dispositivos Programáveis Roteador 2E-2S e Modularização.
1 Ports Paralelos no 8051 Disciplina: Microcontroladores Prof. Remy Eskinazi, MSc UPE - POLI.
1. Introdução O processador é o componente vital do sistema de computação, responsável pela realização das operações de processamento (os cálculos matemáticos.
Processador MAC-1 Arquitectura.
Afonso Ferreira Miguel
Instruções Condicionais e de Acesso a Memória Universidade Federal de Uberlândia Faculdade de Computação Prof. Dr. rer. nat. Daniel D. Abdala GSI013 –
ARQUITETURA DE COMPUTADORES Nível do Conjunto de Instruções
Arquitetura do ARM RISC (Reduced Instruction Set Computer) – Conjunto relativamente grande de registradores – Modelo “load/store “de processamento Operações.
Prof. André Luis Roland Tancredo Engenheiro da Computação e Pesquisador em Desenvolvimento Tecnológico para Semicondutores pelo CNPq Especialista em Microeletrônica.
Modos de Endereçamento da família MC8051
Ney Laert Vilar Calazans Exemplo de Apresentação de TP1 Descrição Resumida de uma Arquitetura de Processador: o estudo de caso do Intel 8086 ORGANIZAÇÃO.
 Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:  Somar e subtrair  Mover um dado de um local de armazenamento.
Programação em Assembly Conceitos Iniciais Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores.
Programação em Assembly Ambiente de Programação Prof. Luiz Antonio Rodrigues Prof. Luiz Antonio Unioeste - Cascavel Jpanel e Diagramadores.
NEANDERWin - Simulador
Arquitetura 8051 Disciplina: Microcontroladores Prof. Remy Eskinazi
Transcrição da apresentação:

Disciplina: Microcontroladores Prof. Remy Eskinazi, MSc 8051 Assembly Language Disciplina: Microcontroladores Prof. Remy Eskinazi, MSc

Modos de endereçamento 8051 (1) Imediato (Direto) - (Label ou Número) MOV PSW,05 ; M(PSW) R5 MOV A,04510 ; Acc M(4510) Constante Imediata – (# Label ou Número) MOV R6,#14 ; R6 1410 MOV A,#0CAh ; Acc CA16 MOV DPTR,#loc ; DPTR Valor associado a “loc” Registrador – (Rn) MOV R1,A ; R1 Acc MOV B,R3 ; B R3 Microcontroladores - Prof. Remy Eskinazi

Modos de endereçamento 8051 (2) Indireto por Registrador - @R0, @R1, @DPTR MOV @R0,#250 ; M(R0) 250 10 MOV A,@R1 ; A M(R1) MOVX @DPTR,A ; External data M(DPTR) A Indexado (Registrador Indireto) - @A+DPTR, @A+PC MOVC A,@A+DPTR ; A ROM(A+DPTR) MOVC A,@A+PC ; A ROM(A+PC) JMP @A+DPTR ; PC (A+DPTR) Bit – Número do bit, label.bit ou bit label MOV C,IE.0 ; cy bit 0 do IE reg. (EX0) MOV C,EX0 ; identico SETB 07Fh ; Bit 7F 1 SETB 2F.7 ; identico Microcontroladores - Prof. Remy Eskinazi

Modos de endereçamento 8051 (3) Saltos e desvios (controle de programa) Exemplos: Salto Incodicional: JMP (Address16) AJMP (Address11) SJMP (Address8) LJMP (Address16) Salto condicional: JC (Address8) JNC (Address8) JB (Address8) JNB (Address8) Microcontroladores - Prof. Remy Eskinazi

Exemplo de Programa Assembly ; **** Programa Exemplo *** ; **** Objetivo: Explicar campos de um programa assembly 8051 **** Valor: equ 02h org 0h ;Reset sjmp inicio org 03 ; Int. Externa 0 sjmp ext0 Inicio: mov A, #0FFh mov R1, #valor DB 02h DB ‘A’ ; ASCII do caractere A End ; Fim de programa p/ compilação Microcontroladores - Prof. Remy Eskinazi

Microcontroladores - Prof. Remy Eskinazi Instruções 8051 Tipos de instruções Movimentação de Dados Aritméticas Lógicas Manipulação de Bit Controle de programa (Saltos e Desvios) Microcontroladores - Prof. Remy Eskinazi

Instruções 8051 – Movimentação de Dados MOVE MOV A, #n A Immediate Direct A Direct R A Register @Ri A Register Indirect MOV Rn, # Rn Immediate Direct … A MOV Direct, # Direct Immediate Direct … R @R A MOV @Ri, # M(Ri) Immediate Direct … A Microcontroladores - Prof. Remy Eskinazi

Instruções 8051 – Movimentação de Dados Move From Program Memory MOVC A, @A+DPTR Acc Rom(A+DPTR) A, @A+PC Acc Rom(A+PC) Move External Data RAM MOVX A, @R A, @DPTR MOVX @R, A @DPTR, A Others PUSH D SP SP+1, m(SP) D POP D D m(SP), SP SP - 1 XCH A, R SWAP Acc Rn D @R Microcontroladores - Prof. Remy Eskinazi

Instruções 8051 – Aritméticas Add/Subtract ADD A, # Acc A+Immediate D R @R ADDC A, # Acc A+Immediate+Carry D R @R SUBB A, # Acc Acc-Immediate-Carry D R @R Microcontroladores - Prof. Remy Eskinazi

Instruções 8051 – Aritméticas Inc/Dec INC A Acc Acc+1 D R @R DPTR DEC A Acc Acc-1 D R @R Mul/Div MUL AB B:A Acc * B (unsigned) DIV AB A Quo ( A/B ) (unsigned) B Rem( A/B ) Microcontroladores - Prof. Remy Eskinazi

Microcontroladores - Prof. Remy Eskinazi Instruções 8051 – Lógicas AND,OR,XOR AND A, # ORL D XRL R @R D, A D, # Outras CLR A Acc 0 CPL A Acc Acc SWAP A Acc(7-4) Acc(3-0) Microcontroladores - Prof. Remy Eskinazi

Microcontroladores - Prof. Remy Eskinazi Instruções 8051 – Lógicas Rotações RL A RLC A RR A RRC A 7 Acc 7 C Acc 7 Acc 7 Acc C Microcontroladores - Prof. Remy Eskinazi

Instruções 8051 – Manipulação de Bits Clear/Set/Complement CLR C Carry 0 bit bit 0 SETB C bit CPL C And, Or, Move ANL C, bit Carry Carry AND bit C, /bit Carry Carry AND bit ORL C, bit C, /bit MOV C, bit bit, C Microcontroladores - Prof. Remy Eskinazi

Instruções 8051 – Manipulação de Bits Saltos JC label Jump if Carry set JNC label Jump if Carry clear JB bit, label Jump if bit set JNB bit, label Jump if bit clear JBC bit, label Jump if bit set, then clear bit label = PC relative (+ 127) Microcontroladores - Prof. Remy Eskinazi

Instruções 8051 – Controle do Programa Saltos AJMP label-A Absolute Jump- 11 bits(2K) LJMP label-L Long Jump - 16 bits (64K) SJMP label Short Jump JMP @A+DPTR Jump Indirect PC (A+DPTR) JZ label Jump if zero JNZ label Jump if not zero Compara e Salta CJNE A, #, label Compare 1st op to 2nd op and A, D, label jump to label if not Equal R, #, label @R,#, label Microcontroladores - Prof. Remy Eskinazi

Instruções 8051 – Controle do Programa Decrementa e Salta DJNZ R, label Rn = Rn-1 , Jump if not zero D, label Subrotinas (Chamadas de Funções) ACALL label-A Absolute Call - 11 bits (2K) LCALL label-L Long Call - 16 bits (64K) RET Return from Subroutine RETI Return from ISR: PC m(SP), SP SP-2 Microcontroladores - Prof. Remy Eskinazi

Programa Acha Zero – Algoritmo INÍCIO DPTR  ENDEREÇO INICIAL Objetivo: Determinar se em um range de memória existe um byte 0 A  M(DPTR) S F0  1 A=0 ? N DPTR  DPTR+1 N FIM? S RET Microcontroladores - Prof. Remy Eskinazi

Programa Acha Zero – Código Fonte ; Autores: Turma Dispositivos ; Descrição: O Programa faz a busca no range 0000h a 01FFh de um byte 0. ; Se existir, sinalizamos com flag F0=1 e saímos do programa com DPTR=Posição ; do byte 0. INICIO: MOV DPTR, #0h ; Inicia Ponteiro CLR F0 ; Limpa Flag F0 REPETE: MOVX A, @DPTR ; Poe o dado da posição indicada pelo DPTR no ; Acumulador CJNE A, #0h, CONTINUA ; Pula para CONTINUA se A=! 0 ACHOU: SETB F0 ; Sinaliza o encontro do valor zero com F0=1 SJMP FIM ; CONTINUA: INC DPTR ; Se não encontrou byte zero, aponta para proxima posicao MOV A, DPH ; CJNE A, #02h, REPETE ; Se DPTR<0200h pula para REPETE FIM: RET ; FIM END ; Fim de Arquivo p/ compilação Microcontroladores - Prof. Remy Eskinazi

Programa Acha Maior Microcontroladores - Prof. Remy Eskinazi INICIO Ponteiro <-- pos. inicial ( DPTR <-- 0 ) B <-- 0 Ent.: DPTR = End. Inicial Acc <-- (Ponteiro) (Acc <-- ( DPTR )) Subrotina AchaMaior Acc > B ? Saída.: Acc = Maior valor DPTR = End. Maior dado S Preserva dado e end. ( B <-- Acc ) ( R1R0 <-- DPTR ) N Próxima posição (DPTR <-- DPTR + 1) Acc <-- DPh DPh = 01H ? N S Acc <-- B DPTR <-- R1R0 Microcontroladores - Prof. Remy Eskinazi RET