Baixe o app para aproveitar ainda mais
Prévia do material em texto
FUNDAÇÃO EDUCACIONAL MONTES CLAROS FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS ENGENHARIA DE COMPUTAÇÃO LABORATÓRIO DE SOFTWARE BÁSICO AULA PRÁTICA 6 PROGRAMAÇÃO DE MICROCONTROLADORES MSP-430 EM ASSEMBLY (2) OBJETIVOS: Aprender a utilização do assembler disponível na IDE IAR Embedded Workbench para tradução de programas escritos em assembly para microcontroladores MSP-430. PROCEDIMENTOS: 1) Criar uma pasta para o projeto dentro de \Meus Documentos\7PECOM com o nome PROG6. 2) Utilizando a IDE IAR Embedded Workbench, crie um projeto dentro da pasta PROG6 com o mesmo nome. 3) Insira o código do programa no anexo 1. 4) Salve o arquivo dentro da pasta do projeto e realize a compilação. 5) Grave o programa no microcontrolador da placa LauchPad MSP-EXP430G2 e observe o seu funcionamento. 6) Monte o circuito abaixo. 6) A partir de uma análise do código em assembly, elabore um programa que exiba uma contagem de 00 a 99 segundos nos displays (obs.: utilize a técnica de multiplexação para controle dos displays, com um tempo de 10ms para acionamento de cada display). FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS – FACIT Avenida Deputado Esteves Rodrigues, nº 1637 – Centro / Montes Claros – MG CEP.: 39400-141 Tel.: (38) 4009-5777 FUNDAÇÃO EDUCACIONAL MONTES CLAROS FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS ENGENHARIA DE COMPUTAÇÃO 7) Criar uma pasta para o projeto dentro de \Meus Documentos\7PECOM com o nome PROG6-2. 8) Utilizando a IDE IAR Embedded Workbench, crie um projeto dentro da pasta PROG6-2 com o mesmo nome. 9) Escreva o código do programa. 10) Salve o arquivo dentro da pasta do projeto e realize a compilação. 11) Grave o programa no microcontrolador da placa LauchPad MSP-EXP430G2 e observe o seu funcionamento. QUESTÕES 1) Explique o funcionamento do código desenvolvido para fazer a contagem do tempo e exibi-la nos displays de 7 segmentos. EQUIPE: Nomes: ___________________________________________________________________________ Turma: ______________________ Data: _____ / _____ / ____ FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS – FACIT Avenida Deputado Esteves Rodrigues, nº 1637 – Centro / Montes Claros – MG CEP.: 39400-141 Tel.: (38) 4009-5777 FUNDAÇÃO EDUCACIONAL MONTES CLAROS FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS ENGENHARIA DE COMPUTAÇÃO ANEXO 1: ;------------------------------------------------------------------------------- ; Inclusão de bibliotecas ;------------------------------------------------------------------------------- #include "msp430.h" ; #define controlled include file ;------------------------------------------------------------------------------- ; Declaração de rótulos ;------------------------------------------------------------------------------- LEDVM EQU 01h ; Led vermelho LEDVD EQU 40h ; Led verde ;------------------------------------------------------------------------------- ; Início do programa ;------------------------------------------------------------------------------- NAME main ; module name PUBLIC main ; make the main label vissible ; outside this module ORG 0FFFEh DC16 init ; set reset vector to 'init' label RSEG CSTACK ; pre-declaration of segment RSEG CODE ; place program in 'CODE' segment init: MOV #SFE(CSTACK), SP ; set up stack main: NOP ; main program MOV.W #WDTPW+WDTHOLD,&WDTCTL ; Stop watchdog timer bis.b #LEDVM,&P1DIR ; Configura a I/O P1.0 como saída bis.b #LEDVD,&P1DIR ; Configura a I/O P1.6 como saída clr.b R13 ; Zera o reg. R13 clr.b R14 ; Zera o reg. R14 LOOP: call #DELAY ; Chama a subrotina DELAY inc.b R13 ; Incrementa o reg. R13 cmp.b #10,R13 ; Compara o reg. R13 com a constante jnz CONT1 ; Desvia para CONT1 se R13 é diferente call #CMD1 ; Chama a subrotina CMD1 CONT1: inc.b R14 ; Incrementa o reg. R14 cmp.b #100,R14 ; Compara o reg. R14 com a constante jnz CONT2 ; Desvia para CONT2 se R14 é diferente call #CMD2 ; Chama a subrotina CMD2 CONT2: jmp LOOP ; Desvia para LOOP ;------------------------------------------------------------------------------- ; Subrotina CMD1 ;------------------------------------------------------------------------------- CMD1: xor.b #LEDVM,&P1OUT ; Liga/desliga o Led vermelho clr.b R13 ; Zera o reg. R13 ret ; Retorna ;------------------------------------------------------------------------------- ; Subrotina CMD2 ;------------------------------------------------------------------------------- FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS – FACIT Avenida Deputado Esteves Rodrigues, nº 1637 – Centro / Montes Claros – MG CEP.: 39400-141 Tel.: (38) 4009-5777 FUNDAÇÃO EDUCACIONAL MONTES CLAROS FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS ENGENHARIA DE COMPUTAÇÃO CMD2: xor.b #LEDVD,&P1OUT ; Liga/desliga o Led verde clr.b R14 ; Zera o reg. R13 ret ; Retorna ;------------------------------------------------------------------------------- ; Subrotina DELAY (~5ms) ;------------------------------------------------------------------------------- DELAY: mov.w #1834,R15 ; Carrega o reg. R15 L: dec.w R15 ; Decrementa o reg. R15 jnz L ; Desvia para L se R15 não é zero ret ; Retorna ;------------------------------------------------------------------------------- ; Fim do programa ;------------------------------------------------------------------------------- END . FACULDADE DE CIÊNCIA E TECNOLOGIA DE MONTES CLAROS – FACIT Avenida Deputado Esteves Rodrigues, nº 1637 – Centro / Montes Claros – MG CEP.: 39400-141 Tel.: (38) 4009-5777 Fundação Educacional Montes Claros
Compartilhar