Sie sind auf Seite 1von 30
Apresentação do MPLAB IDE (V7.10)

Apresentação do MPLAB IDE (V7.10)

Apresentação do MPLAB IDE (V7.10)

2

Bruno F. Marques, DEE/ESTV

Sistemas Microcontroladores

Breve guia de utilização do Ambiente de Desenvolvimento e Programação (IDE)

MPLAB (V7.10)

Bruno F. Marques, DEE/ESTV

3

Bruno F. Marques, DEE/ESTV 3 MPLAB (IDE)  Características e Instalação  Breve apresentação  Selecção

MPLAB (IDE)

Características e Instalação

Breve apresentação

Selecção de um dispositivo (Microcontrolador)

Criação de um Projecto

Configuração de Ferramentas inclusas

Atribuir um nome a um Projecto

Escrever e Código

Reconstrução de um Projecto

Programação de um PIC16F84A

4

Breve apresentação

O MPLAB

do Windows® para programação de

dispositivos da família “PICmicro MCU” e “dsPIC Digital Signal

Controllers”;

IDE

é

um

IDE

Possibilita:

Criar e Editar Código Fonte num editor integrado;

Assemblar, compilar e lgar (“Link”) código fonte;

Depurar a execução lógica do código, analisando o fluxo do programa por intermédio

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

de um similador integrado, ou

Em tempo real com “in-circuit emulators” ou “in-circuit debuggers”;

Efectuar medições temporais com o simulador ou emulador;

Verificar variáveis em Janelas de Análise (“Watch windows”)

Programar “firmware” nos dispositivos atarvés de um programador

5

Instalação/desinstalação

Para instalar o MPLAB IDE:

Se instalar apartir de um CD-ROM:

insira o disco no leitor de CDs e siga as intruções visíveis no menu apresentado no ecranb para instalar o MPLAB IDE;

Se não aparecer nenhum menu, utilize o “Windows Explorer” para localizar e executar o ficheiro de instalação (menu.exe) apartir do CD-ROM;

Se efectuar o “download” do MPLAB IDE apartir das páginas deste módulo (http://www.estv.ipv.pt/paginaspessoai/bmarq/sismicro/):

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

localize o ficheiro (mplab710.zip) da secção de “downloads”, seleccione o ficheior e grave-o no PC;

Descomprima o ficheiro e execute-o.

Para desinstalar:

Selecionar “Start>Settings>Control Panel” para abrir o painel de controlo;

“Clicar” em “Add/Remove Programs” e localizar “MPLAB IDE” na lista de programas instalados apresentada e clicar nele;

Clicar “Change/Remove” para remover o programa do sistema.

6

Execução do MPLAB IDE

Para executar o MPLAB IDE, clique no “ícon” instalado no ambiente de trabalho após a instalação

ou seleccione “Start>Programs>Microchip MPLAB IDE vx.x>MPLAB IDE vx.x

Um ecran irá mostrar o logotipo do MPLAB IDE, seguido do ambiente de trabalho do MPLAB IDE.

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
irá mostrar o logotipo do MPLAB IDE, seguido do ambiente de trabalho do MPLAB IDE. Bruno

7

Passos a seguir

Por forma a criar o código que possa ser executado em qualquer microcontrolador, são necessários incluir num projecto ficheiros fonte. O código fonte pode então ser transformado em código executável utilizando- se para o efeito as ferramentas disponibilizadas no MPALB (assembladores, compiladores, ligadores (“linkers”), etc.;

No MPLAB IDE, é o gestor de projectos que nos controla este processo;

Todos os projectos possuem os passos básicos seguintes:

Selecção do Dispositivo

As capacidades do MPLAB IDE variam de acordo com o dispositivo seleccionado. A selecção do dispositivo deverá ser efectuada primeiro antes de se iniciar um projecto;

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

Criação de um Projecto

Para facilitar, utilizaremos o “MPLAB Project Wizard” para criar um projecto;

Selecção das ferramentas (“Language Tools”)

Serão seleccionadas as ferramentas a utilizar no “Project Wizard”. Para esta breve introdução serão utilizados o assemblador e ligador incluídos. Para outros projectos, existe à disposição no mercado compiladores e ferramentas de terceiros que possam ser seleccionados;

8

Passos a seguir

Inclusão de ficheiros num projecto

Serão incluídos num projecto dois ficheiros, um ficheiro tipo e um “linker script”. Ambos existem em subpastas incluídas na pasta do MPLAB IDE. Se utilizarmos estes dois ficheiros, deverá ser fácil a nossa iniciação;

Na criação de código iremos acrescentar ao ficheiro tipo algumas instruções que incrementem um valor num porto E/S (I/O port);

Construção do Projecto

O projecto será construído, resultando na assemblagem do código e sua ligação ao código máquina que pode ser corrido dentro de um microcontrolador PIC;

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

Teste de Código com o Simulator

Finalmente, o código pode ser testado com o simulador para posterior programação de um PIC.

O ”Project Wizard” guiar-nos-á facilmente através destes passos básicos, mas fundamentais.

9

Selecção do dispositivo

Para mostrar a selecção das opções do menu durante esta apresentação, o ítem seleccionado na barra de menus (no topo do IDE) seguirá o seguinte esquema:

Nome_do_Menu > Item_do_Menu

Para esqcolher o ítem “Select Device” no menu “Configure

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

Seleccione “Configure>Select Device

” no menu “ Configure ” Bruno F. Marques, DEE/ESTV  Seleccione “ Configure>Select Device ”

10

Selecção do dispositivo

Na caixa de diálogos do dispositivo seleccione da lista de dsipositivos possíveis PIC16F84A se não estiver seleccionado;

As “luzes” indicam este dispositivo;

quais os componentes que o MPLAB IDEsuporta para

A luz verde indica suporte total;

A luz amarela indica suporte mínimo;

A luz vermelha indica a inexistência de suporte para este dispositivo;

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
mínimo;  A luz vermelha indica a inexistência de suporte para este dispositivo; Bruno F. Marques,

11

Criação do Projecto

O passo seguinte é a criação de um projecto utilizando o ”Project Wizard

Um projecto não é mais do que a forma em como os ficheiros estão organizados e que serão assemblados/compilados

Iremos utilizar um único ficheiro “assembly” para este projecto e um “linker script”.

Escolha “Project>Project Wizard

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
projecto e um “ linker script ”.  Escolha “ Project>Project Wizard ” Bruno F. Marques,

12

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

Criação do Projecto

Na caixa de diálogo de boasvindas, clique on “Next>” para prosseguir.

A caixa de diálogo seguinte (Step One) permitir-nos-á seleccionar o tipo de dispositivo, (que nós já seleccionámos);

Segure-se de que mostra PIC16F84A. Se não, seleccione o dispositivo PIC16F84A da lista apresentada;

Clique em “Next>

PIC16F84A . Se não, seleccione o dispositivo PIC16F84A da lista apresentada;  Clique em “ Next>

13

Selecção de ferramentas

O segundo passo do “Project Wizard” define as ferramentas a utilizar neste projecto.

Seleccione:

Microchip MPASM Toolsuite” na lista “Active Toolsuite

MPASM

e

MPLINK

devem

estar

visíveis

na

caixa

Contents

Toolsuite

Clique em cada uma delas para verificar a sua localização.

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
” “ Toolsuite  Clique em cada uma delas para verificar a sua localização. Bruno F.

14

Selecção de ferramentas

Se o MPLAB IDE tiver sido instalado na sua pasta por defeito, o ficheiro executável do assemblador MPASM deverá ser:

C:\Program Files\Microchip\MPASM Suite\MPAsmWin.exe

O ficheiro executável do ligador MPLINK deverá ser:

C:\Program Files\Microchip\MPASM Suite\MPLink.exe

E o executável da livraria MPLIB:

C:\Program Files\Microchip\MPASM Suite\MPLib.exe

Se não estiver correcto, utilize o botão “browse” para localização e actualizar a respectiva localização.

Quando finalizar, clique “Next>”.

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
actualizar a respectiva localização.  Quando finalizar, clique “ Next> ”. Bruno F. Marques, DEE/ESTV 4/22/05

15

Atribuir um nome ao projecto

O terceiro passo permite-nos atribuir um nome ao nosso projecto e guardá- lo numa pasta

Este exemplo mostra que o projecto se irá chamar de MeuProjecto

Utilizando o botão “Browse” vamos colocar o projecto numa pasta chamada SisMic

De seguida, clique “Next>

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
colocar o projecto numa pasta chamada SisMic  De seguida, clique “ Next> ” Bruno F.

16

Adicionar ficheiros

O quarto passo permite-nos selecionar os ficheiros a incluir no projecto

Como aonda não foi seleccionado um ficheiro contendo o nosso código fonte, vamos utilizar um ficheiro tipo para começar. O ficheiro possui as secções essenciais para qualquer código fonte, e contém a informação que nos ajudará a escrever e a organizar o nosso código.

Escolha o ficheiro nomeado pic16f8a_tipo.asm, escolhendo o caminho correcto para a sua localização

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

C:\SisMic\f84atemp.asm

escolhendo o caminho correcto para a sua localização Bruno F. Marques, DEE/ESTV  C:\SisMic\f84atemp.asm 4/22/05

17

Adicionar ficheiros

Prima “Add>>” para mover o nome do ficheiro para o painel da direita e clique na caixa de verificação para permitir que o ficheiro seja copiado para a nossa pasta de trabalho (C:\SisMic);

Existe um para cada tipo de dispositivo;

Estes ficheiros definem a configuração da memória, e o nome dos registos de todos os dispositivos;

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
de todos os dispositivos; Bruno F. Marques, DEE/ESTV • Tenha a certeza de que a sua

Tenha a certeza de que a sua caixa de diálogo se assemelha à apresentada nesta figura. De seguida, prima “Next>” para terminar o “Project Wizard

18

Resumo

A caixa de diálogo final do “Project Wizard” sumaria os passos efectuados, indicando o dispositivo seleccionado, as ferramentas e o nome de projecto;

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
efectuados, indicando o dispositivo seleccionado, as ferramentas e o nome de projecto; Bruno F. Marques, DEE/ESTV

19

Resumo

Depois de primir o botão “Finish”, veja a janela do Projecto no MPLAB IDE.

Ela deverá assemelhar-se à figura.

Se a janela não se encontrar aberta, seleccione “View>Project.

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
figura.  Se a janela não se encontrar aberta, seleccione “ View>Project. ” Bruno F. Marques,

20

Criação do projecto

Apartir do menu “Project” podemos assemblar e ligar os ficheiros actuais. Eles não terão de momento qualquer código nosso, mas garantem-nos que o projecto estará bem configurado.

Para construir o projecto, poderemos seleccionar tanto:

Project>Build All

Clicar com o botão direito do rato no nome do projecto dentro da janela de projectos e seleccionar “Build All

Clicar no ícon “Build All” da barra de ferramentas “Project

A janela de “Output” mostrará o resultado do processo de construção do projecto. Se tudo correr bem não deverá aparecer a indicação de erros em cada passo da construção do projecto.

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
não deverá aparecer a indicação de erros em cada passo da construção do projecto. Bruno F.

21

Edição do código

Abra o ficheiro tipo do projecto

fazendo um duplo clique em cima do seu nome dentro da janela do projecto

Ou seleccionando-o com o cursor e utilizando o botão direito do rato para activar o menu de contexto

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
com o cursor e utilizando o botão direito do rato para activar o menu de contexto

22

Edição

O ficheiro tem alguns comentários no início. Esta área pode ser utilizada como um cabeçalho tipo com a informação/comentário acerca do ficheiro

Por agora deixemos o ficheiro tal como está (se fosse um projecto real,

poderíamos começar por desenvolver o nosso código nele)

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
(se fosse um projecto real, poderíamos começar por desenvolver o nosso código nele) Bruno F. Marques,

23

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

Edição

Façamos algumas alterações ao ficheiro tipo

list

#include <p16F84A.inc>

p=16F84A

RADIX

DEC

ERRORLEVEL

-302

; directiva list para definir o processador ; definições específicas das variáveis do processador

;

; The lables following the directive are located in the respective .inc file.

; See respective data sheet for additional information on configuration word.

'

CONFIG'

directive is used to embed configuration data within .asm file.

CONFIG

_CP_OFF & _WDT_ON & _PWRTE_ON & _RC_OSC

;***** DEFINICOES DE VARIÁVEIS

LED EQU 0 ; variável LED utilizada para definir o bit do porto a utilizar
LED
EQU
0
; variável LED utilizada para definir o bit do porto a utilizar
ORG 0CH
Contador RES
2
;**********************************************************************
ORG
00H
bsf
STATUS,RP0
movlw
00011111B
movwf
TRISA
movlw
11111110B
movwf
TRISB
bcf
STATUS,RP0
bsf
PORTB,LED
O código continua

24

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

Edição

Continuação do código

CicloPrincipal

call

Atraso

btfsc

PORTB,LED

goto

PorAZero

bsf

PORTB,LED

goto

CicloPrincipal

PorAZero

bcf

PORTB,LED

goto

CicloPrincipal

PorAZero bcf PORTB,LED goto CicloPrincipal ;***** Subrotinas

;***** Subrotinas ******************************************************** ;Código para atraso Atraso clrf Contador

clrf

Contador+1

CicloAtraso

decfsz Contador,1

goto

CicloAtraso

decfsz Contador+1,1

goto

CicloAtraso

return

END

; directiva que indica o 'fim do programa'

25

Reconstrução do código

Seleccione “Project>Build All” para assemblar o código novamente.

Se na assemblagem não ocorrerem erros, a Janela de Saída “Output Window” deverá assemelhar-se à figura

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
ocorrerem erros, a Janela de Saída “Output Window” deverá assemelhar-se à figura Bruno F. Marques, DEE/ESTV

26

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

Programação de um PIC16F84A

Após a criação, edição de código e assemblagem do mesmo, estamos prontos para programarmos o nosso primeiro PIC.

Para tal, vamos utilizar o MPLAB ICD 2 que é uma peça de Hardware que nos permitirá, através do nosso computador e por intermédio do MPLAB ID, programarmos imediatamente o nosso PIC

O MPLAB ICD 2 será ligado ao nosso computador através de um cabo USB, e ao kit PICDEM 2 Plus através de um cabo com um conector do tipo RJ.

nosso computador através de um cabo USB, e ao kit PICDEM 2 Plus através de um

27

Programação

Seleccione o menu “File>Import” e seleccione o ficheiro resultante da assemblagem do código, normalmente no formato *.hex. (no nosso caso

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

f84atemp.hex)

Clique no botão “Open

no formato *.hex. (no nosso caso Bruno F. Marques, DEE/ESTV f84atemp.hex)  Clique no botão “

28

Programação

Ainda antes de programar o PIC, poderemos ver o programa em memória

Seleccione menu “View>Program Memory” e poderá ver a desassemblagem do código (processo inverso da assemblagem)

Obviamente que o código não nos irá aparecer exactamente tal e qual nós o escrevemos (antes de o termos assemblado)

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
irá aparecer exactamente tal e qual nós o escrevemos (antes de o termos assemblado) Bruno F.
irá aparecer exactamente tal e qual nós o escrevemos (antes de o termos assemblado) Bruno F.

29

Programação

Certifiquêmo-nos de que temos o Programador MPLAB ICD 2 seleccionado

Selecione menu “Programmer>Select Programmer>1 MPLAB ICD 2

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV
Programmer>1 MPLAB ICD 2 ” Bruno F. Marques, DEE/ESTV  O MPLAB irá tentar, através do

O MPLAB irá tentar, através do ICD 2, comunicar com o kit onde temos o nosso PIC pronto para ser programado

Se tudo estiver correcto, a nossa janela de “Output” deverá ser parecida com a da figura ao lado

 Se tudo estiver correcto, a nossa janela de “Output” deverá ser parecida com a da

30

Programação

Apartir deste momento estamos aptos para programar o nosso PIC

Seleccione para tal o menu “Programmer>Program” e

Bruno F. Marques, DEE/ESTV
Bruno F. Marques, DEE/ESTV

Iniciar-se-á o processo de programação:

DEE/ESTV  Iniciar-se-á o processo de programação:  Validação da configuração  Apagar a memória

Validação da configuração

Apagar a memória existente

Programa a nova memória do PIC

Verificação do programa gravado

Programação dos bits de configuração

Verificação da configuração da memória