Buscar

Aula Prática 6 - Programação de Microcontroladores MSP-430 em Assembly - 2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 4 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

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

Continue navegando