Sistemas Embarcados:



Documentos relacionados
Ambiente de desenvolvimento de Programação Assembly MCU 8051 IDE

Laboratório de Microprocessadores e Microcontroladores

Sistemas Embarcados:

Usando o simulador MIPS

Oprojeto apresenta três níveis de dificuldade: fácil, médio e difícil. No modo fácil tem-se uma

3.a Aula Prática Projeto de Circuitos Sequenciais com FPGA. Projeto e simulação de um gerador de frequência

CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM

Disciplina: Laboratório de Circuitos Digitais

CONSTRUÇÃO DE UMA UCP HIPOTÉTICA M++ INTRODUÇÃO

Portas Lógicas Básicas: Parte 2 Simulação Lógica

EXPERIÊNCIA 17 USO DO TEMPORIZADOR INTERNO

Autor: Daniel Corteletti Centro Tecnológico de Mecatrônica SENAI

MC404 - Organização de Computadores. e Linguagem de Montagem Instituto de Computação. Universidade Estadual de Campinas

Sistemas Microcontrolados

Simulação de Circuitos Microcontrolados com o Proteus

[RÓTULO:] MNEMÔNICO [OPERANDOS] [;COMENTÁRIO]

Aplicações de Microprocessadores I. Prof. Adilson Gonzaga

PIC16F628a. Pinagem do PIC16F628a:

EXERCÍCIOS RESOLVIDOS

Arquitetura de Computadores. Tipos de Instruções

Estrutura de Dados. Ricardo José Cabeça de Souza Parte 1

Organização de Computadores Hardware

Electrónica Digital 2. Xilinx Webpack

Manual de instalação da TDI 3 PANASONIC TDE/NCP e NS1000

Laboratório de Arquitectura de Computadores IST - Taguspark 2008/2009 Introdução aos sistemas binários Guião 1 9 a 13 de Março 2009

Passos para executar um programa no Simulador MPLAB

Tutorial de Auxílio. figura 1.0 programa de gravação

PROJETO LÓGICO DE COMPUTADORES Prof. Ricardo Rodrigues Barcelar

Multimedidores Inteligentes MGE G3 Modo de uso do software IBIS_BE_cnf. ABB Automação. Hartmann & Braun

Arduino e Proteus (Tutorial)

Prof. Adilson Gonzaga

Para que o NSBASIC funcione corretamente em seu computador, você deve garantir que o mesmo tenha as seguintes características:

Nota de Aplicação. Exemplo de log de usuários utilizando IHM Magelis e o leitor biometrico XB5S5B2L2. Suporte Técnico Brasil. Versão: 1.

Instruções de instalação do software de edição e conexão EmbroideryEditor. Exclusivo para máquina de bordar MC500E

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 03 Conceitos de Hardware e Software parte 01. Cursos de Computação

Laboratório de Arquitetura de Computadores IST - Taguspark 2014/2015 Introdução ao simulador Guião 1 23 a 27 fevereiro de 2015

Departamento de Engenharia Electrotécnica e de Computadores Instituto Superior Técnico Universidade Técnica de Lisboa.

Comunicação Serial com o AVR ATMEGA8

INTRODUÇÃO AO PSPICE. Usaremos o PSPICE para simular o circuito mostrado na Figura 1. Figura 1. Exemplo No. 1

Instrução de acesso ao DVR da Yoko Modelo RYK925x Via Software.

Temporização Interrupções. Prof: Evandro L. L. Rodrigues. Rotinas de Atraso

Programação Básica em STEP 7 Operações Binárias. SITRAIN Training for Automation and Drives. Página 6-1

Nota de Aula: Utilização da IDE Code::Blocks

MICROPROCESSADORES E MICROCONTROLADORES PROVA 2 - RESPOSTA ESPERADA

ALP Algoritmos e Programação. . Linguagens para Computadores

PASSO A PASSO COMO CRIAR UM NOVO PROJETO EM SCHEMATIC NO SOFTWARE QUARTUS II

TUTORIAL DE UTILIZAÇÃO DO PROTEUS

Interrupção. Prof. Adilson Gonzaga

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE - UFRN DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA DIMAP

Conhecendo o Proteus

Roteiro para Solicitação e instalação de certificado digital para aplicação (Windows 2000)

Hardware Parte I. Fábio Rodrigues de la Rocha

Microprocessadores e Microcontroladores. Prova Substitutiva Uma Solução

6 - Apresentação do Painel de Controle do software DVR-Viewer. Itens Descrição 1 Lista do DVR: Adiciona/Modifica/Apaga a lista de DVRs conectados.

Tópicos. DATACARD Atualização de Firmware Instruções. O que você precisa. Como atualizar usando o CD de upgrad Go Green

7. PROGRAMANDO O MICROCONTROLADOR. Microcontroladores - Prof: Demantova

Laboratório de Microprocessadores e Microcontroladores

ULA Sinais de Controle enviados pela UC

Algoritmos e Programação Aula 01 Introdução a Computação

Gerenciador de Boot Simples

Comunicação de dados. Introdução

Laboratório de Microprocessadores e Microcontroladores

Simulador do Processador Neander T&D-Bench Simulator Manual do Usuário. por Júlio César Maccali. revisado por Prof. Christian Zambenedetti

Temporização da CPU SEL-433 APLICAÇÕES DE MICROPROCESSADORES I. Ciclos de Máquina. Ciclos de Máquina. Temporização Interrupções Rotinas de Atraso

1. SINTAXE DA LINGUAGEM ASSEMBLY

Laboratório de Microprocessadores e Microcontroladores

Disciplina: Laboratório de Circuitos Digitais

PROJETOS COM MICROCONTROLADORES

Token SafeNet Authentication Cliente 8.3 (x32 e x64)

Laboratório de Microprocessadores e Microcontroladores

Instalação de ambiente de desenvolvimento para a série NXP LPC111x

3.1) Baixe os arquivos necessários para preparação neste link:

Especificações. Conteúdo. Compatibilidade de Tags com o GPW-100. Tabela de Revisões

CAPÍTULO 2 CARACTERÍSTICAS DE E/S E PORTA PARALELA

Laboratório de Microprocessadores e Microcontroladores

Software Ativo. Operação

Sistemas Digitais. Tutorial Placa de Prototipação - Altera

As 5 partes fundamentais. Linguagem de Programação Pinagem Características Elétricas Ambiente de Desenvolvimento Integrado - IDE

Instituto Tecnológico de Aeronáutica - ITA Divisão de Engenharia Eletrônica Departamento de Eletrônica Aplicada Laboratório de EEA-21

INDICE 1. INTRODUÇÃO CONFIGURAÇÃO MÍNIMA INSTALAÇÃO INTERLIGAÇÃO DO SISTEMA ALGUNS RECURSOS SERVIDOR BAM...

ESCOLA SUPERIOR DE TECNOLOGIA DE TOMAR DEPARTAMENTO DE ENGENHARIA INFORMÁTICA 2005/ Valores

O cursor se torna vermelho e uma Paleta de Edição contendo as instruções mais utilizadas é apresentada.

Copyright 2013 VW Soluções

PROGRAMA DE GERENCIAMENTO DOS AMPLIFICADORES MR 4.50D-XT MR 6.50D-XT MR 6.80-XT Rev. 2.3 de 29/01/2014

UTFPR Departamento Acadêmico de Eletrônica Curso Técnico em Eletrônica Microcontroladores 1 - Prof. Cion nov/2010 (atualizado em jul 2015)

MC-102 Aula 01. Instituto de Computação Unicamp

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação

Introdução ao IDE Netbeans (Programação Java)

Módulo de Desenvolvimento PIC16F877A

CONFIGURADOR DO PAINEL FP1 v 1.3

Programação de Microprocessadores. Programação de Microprocessadores SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

Micro Adaptador USB Wireless N 150 Mbps

Manual de Instalação ( Client / Server ) Versão 1.0

UNIVERSIDADE FEDERAL DO CEARÁ CURSO DIDÁTICO SOBRE O SIMULADOR DE CIRCUITOS ELÉTRICOS E ELETRÔNICOS

ARQUITETURA DE COMPUTADORES

Características. Conteúdo. Ligações. Tabela de Revisões

Unidade Central de Processamento (CPU) Processador. Renan Manola Introdução ao Computador 2010/01

Transcrição:

Sistemas Embarcados: Microcontroladores Prof. Protásio Laboratório de Microengenharia/DEE/CEAR/UFPB

Programação Assembly 8051

Programação Assembly Ferramentas de simulação MCU 8051 IDE v1.4.7 An open source IDE for MCS-51 based microcontrollers for POSIX Systems, this software is licenced under the GNU GPL v2 licence. Download at http://mcu8051ide.sourceforge.net Proteus 8.0 Ferramenta para o design de projetos eletrônicos baseado em SPICE. Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 3

MCU 8051 IDE Execute o MCU 8051 IDE Criação de Projeto Project -> New Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 4

MCU 8051 IDE Execute o MCU 8051 IDE Criação de Projeto Project -> New Digite um nome para o projeto Indique a pasta que será salvo o projeto Defina o processador Finalize OBS: Em Select MCU, pode-se obter informações gerais sobre a CPU Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 5

MCU 8051 IDE Área de edição de código Simulador Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 6

MCU 8051 IDE Na área de edição de código, insira o seguinte código: ;**************************************** ;*** PROGRAMA PISCA LED ****** ;**************************************** ORG 0000H ; Diretiva que informa ao montador o endereço da próxima instrução LJMP INICIO ; Pula para o endereço (rótulo) "INICIO" ORG 0030H INICIO: CPL P2.0 ; Complementa o estado do bit 0 da porta P2 MOV R0,#50 ; Move o valor 50 em decimal para o registrador R0 DJNZ R0,$ ; Decrementa o valor em R0 e pula para "$"(mesmo endereço) se for ; diferente de zero SJMP INICIO ; Pula para o endereço "INICIO" END ; Diretiva que informa ao montador o FIM DO PROGRAMA Após, salve o código File Save Monte o código Tools compile ou F11 Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 7

MCU 8051 IDE O arquivo.hex é o que de fato deve ser transferido ao microcontrolador Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 8

MCU 8051 IDE Iniciando a simulação Simulator Start/Shutdown ou F2 A linha verde indica onde está a simulação Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 9

MCU 8051 IDE Simulação passo-a-passo Simulator Step ou F7 Executa a instrução corrente e pula para próxima instrução Abaixo ver-se que a instrução LJMP INICIO foi executada Ou seja, foi realizado o pulo para o endereço INICIO Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 10

MCU 8051 IDE Simulação passo-a-passo Próximo F7 Executa CPL P2.0 Observe que o valor de P2 muda Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 11

MCU 8051 IDE Simulação passo-a-passo Próximo F7 Executa MOV R0,#50 Observe que a RAM de Dados é modificada Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 12

MCU 8051 IDE Simulação passo-a-passo Próximo F7 Executa DJNZ R0,$ Observe que o valor em R0 é decrementado Observe que o ponteiro (linha verde) continua no mesmo lugar. Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 13

MCU 8051 IDE Simulação passo-a-passo Próximos 50 clicks em F7 Executa a instrução DJNZ Loop R0,$ 50x Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 14

MCU 8051 IDE Simulação passo-a-passo Próximo F7 Executa JMP INICIO Volta ao endereço INICIO Próximo F7 Executa CPL P2.0 E continua o laço INFINITO Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 15

MCU 8051 IDE Programa: a cada 50 interações, o estado do bit 0 da porta 2 é modificado Se um LED for ligado a este pino, então este piscará Questão? Qual a frequência em que o LED piscará? Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 16

Cálculo da execução do programa Considerando um cristal de 12MHz Período de clock (Tc) = 83,3 ns 1/12MHz Ciclo de Instrução (Ti) = 1 µs 83,3 ns * 12 Instrução Número de Ciclos de Instrução por instrução Número de Ciclos de Instrução por loop CPL P2.0 1 1 MOV R0, #50 1 1 DJNZ R0,$ 2 2*50 SJMP INICIO 2 2 Tempo de execução do loop (T L ) = (1+1+2*50+2)* 1 µs = 104 µs Assim, o LED ficará ON por 104 µs e OFF por 104 µs Frequência de Oscilação do LED = 1/(2*T L ) 4,8 khz Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 17

Cálculo da execução do programa Qual a frequência caso o valor de inicial de R0 seja 250? Qual a frequência do LED caso o programa seja modificado para o abaixo: ORG 0000H ; Diretiva que informa ao montador o endereço da próxima instrução LJMP INICIO ; Pula para o endereço (rótulo) "INICIO" ORG 0030H INICIO: CPL P2.0 ; Complementa o estado do bit 0 da porta P2 MOV R0,#250 ; Move o valor 250 em decimal para o registrador R0 MOV R1,#250 ; Move o valor 250 em decimal para o registrador R1 LOOP: DJNZ R0,$ ; Decrementa o valor em R0 e pula para LOOP se for diferente de zero DJNZ R1,LOOP ; Decrementa o valor em R1 e pula para LOOP se for diferente de zero SJMP INICIO ; Pula para o endereço "INICIO" END ; Diretiva que informa ao montador o FIM DO PROGRAMA Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 18

Inserção de breakpoints Compile o programa anterior e execute-o passo a passo (???). Para executar um trecho de programa de uma vez, pode-se inserir breakpoint. Click acima da numeração da linha desejada para inserção de um breakpoint Para executar até o breakpoint Simulator Run ou F9 Observe o tempo de execução Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 19

Arquivo de listagem Contem informações sobre o código montado e código montado. File Open Filter = Code listing (*.lst) PISCA_LED.lst Código de Máquina Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 20

Arquivo *.hex Contém o código de máquina que será gravado no microcontrolador File Open Filter = All files (*) PISCA_LED.hex Arquivo PISCA_LED.hex :03000000020030CB :0C003000B2A078FA79FAD8FED9FC80F46E :00000001FF Start code: character em ASCII : Byte count: Número de bytes do código Address: Endereço inicial da sequência de bytes de código Record type: Valor entre 00 e 05 que especifica o tipo de campo de dado Data: Sequência de bytes de código Checksum: Byte de detecção de erro Exemplos - 00 indica que campo de dados (instruções) - 01 indica fim de arquivo. Em geral, o endereço especificado é 0000 Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 21

Simulação no Proteus Monte o circuito abaixo no Proteus e rode o código visto Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 22

Exemplos de circuitos com o 8051 Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 23

Exemplos de circuitos com o 8051 Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 24

Tarefas Utilizando o MCU 8051 IDE e/ou o Proteus, monte os seguintes circuitos: Contador de eventos (use uma chave para emular o evento) em que o número de evento em binário apareça em 8 LED. Contador de eventos (use uma chave para emular o evento) em que o número de evento em decimal apareça em 1 display de 7 segmentos. Cronômetro com mostrador de minutos e segundos. Sistema de verificação de senha via teclado numérico (keypad) 9x9. Se senha ok, LED on. Se senha incorreta, LED off e ALARME. Prof. Protásio / Laboratório de Microengenharia/DEE/CEAR/UFPB 25