Buscar

Multisim Utilização didática na implementação PIC 16F84

Prévia do material em texto

1 
 
Utilização didática do MULTISIM na implementação do PIC16F84 
 
João Guilherme Correia Caldonazio
1 
Vladimir Rambaldi Chagas
2 
Prof. M.Sc. Juliano Coêlho Miranda
3 
RESUMO 
 
Este artigo tem como objetivo a formulação didática da implementação do 
microcontrolador PIC16F84 no software de simulação MULTISIM, orientando profissionais 
que possuem conhecimento em eletrônica e linguagem de programação a realizar um projeto 
de simulação antes de aplicá-lo fisicamente e auxiliar academicamente aulas voltadas a este 
tipo de aplicação. Apresentará um diagrama contendo o projeto de inserção do PIC16F84 em 
ambiente de simulação, assim como a descrição de cada etapa. A falta de documentação em 
língua nativa causa uma dificuldade na utilização desse sistema de simulação, o que uma parte 
será suprida com esse artigo, através de modelos, testes e definições de circuitos utilizando a 
linguagem C e Assembly. Terá como resultado a obtenção de material para satisfazer a 
implementação inicial do microcontrolador no sistema de simulação, e aplicabilidade em 
algumas situações reais. 
 
Palavras-chave: MULTISIM, implementação, microcontrolador, C, Assembly, PIC6F84. 
 
1 INTRODUÇÃO 
 Um ambiente de simulação eletrônico físico necessita de um investimento que não há 
como mensurar, onde temos várias variáveis que devem ser levadas em consideração. Caso o 
 
1
 João Guilherme Corrêia Caldonazio, Graduando em Bacharelado em Ciência da Computação (2007 – 2010) no 
Centro Universitário do Sul de Minas. 
2
 Vladimir Rambaldi Chagas, Graduando em Bacharelado em Ciência da Computação (2007-2010) no Centro 
Universitário do Sul de Minas. 
3
 Prof. M. Sc. Juliano Coêlho Miranda, Mestre em Engenharia Elétrica (EESC/USP) e Doutorando da Escola de 
Engenharia Elétrica de São Carlos (EESC/USP). http://lattes.cnpq.br/9613023129913069. 
2 
 
ambiente de simulação seja um laboratório de uma universidade temos que serão necessários 
vários tipos de conectores assim com todo material de parte elétrica, robótica e computacional 
para a consolidação de um equipamento eletrônico. 
 Neste artigo será abordada a implementação de um microcontrolador PIC16F84 de 
maneira simples em um ambiente de simulação, o MULTISIM, visto que não há material 
disponível em língua portuguesa para este tipo de operação. 
 
2 MICROCONTROLADORES E SUAS PROGRAMAÇÕES 
2.1 Microcontroladores 
 “Os microcontroladores, [...], são dispositivos mais simples, com memórias RAM e 
ROM internas, oscilador interno de clock, I/O interno, [...]” (PEREIRA, 2004, 3ª ed., p. 19). 
“O microcontrolador foi projetado para ter tudo num só. Nenhum outro componente 
externo é necessário nas aplicações, uma vez que todos os periféricos necessários já estão 
contidos nele. [...]” (Microcontroladores). 
 
Segundo PEREIRA (2004, P. 35), Os microcontroladores PIC utilizam uma 
arquitetura RISC, com freqüências de clock de até 40Mhz, até 2048k word de 
memória de programa e até 3968 bytes de memória RAM. São divididos em três 
famílias basicamente que se diferenciam pelo tamanho de sua memória de programa, 
sendo 12, 14 ou 16 Bits, possuindo todos um barramento interno de 8 bits. 
 
PEREIRA (2004, p. 36-57) ressalta que a arquitetura PIC reside na semelhança e 
compatibilidade entre os diversos chips, o que facilita a migração de um MCU para outro. 
Deve se destacar algumas características internas dos MCUs, como capacidade de pipeline, 
capacidade de execução de uma instrução por ciclo de máquina, cada instrução ocupar apenas 
uma posição de memória de programa e o tempo de execução fixo para todas as instruções. 
Essa arquitetura se consolida na apresentação de memória de programa, esta sendo ROM do 
tipo máscara, OTP, EPROM e FLASH; de Memória RAM e Registradores, sendo Registrador 
W, contador de programa (PC), Pilha (Stack); de interrupções, estas sendo, mascaráveis e não 
mascaráveis. Os PICs mais antigos possuem até quatro tipos de interrupções, sendo, externa, 
por mudança de nível lógico na porta B(RBIF), do timer0 (T0IF), de periférico, interrupção 
GPIF OU GPIO. 
 
3 
 
2.2 Programação de microcontroladores 
 Em uma aplicação real, um microcontrolador, por si só, não é suficiente, é necessário 
que haja uma programação. O programa é uma parte fundamental quando se trabalha com 
microcontroladores, onde este tem a funções de informar dados ao microcontrolador, assim 
sucessivamente de controlar toda a estrutura onde está localizado. Esta programação pode ser 
realizada em Assembly, C e Basic, respectivamente do nível mais baixo de programação ao 
nível mais alto de programação, sendo a linguagem C um nível que realiza comunicação 
direta com o nível mais baixo de programação e apresenta algumas características de nível 
alto de programação. (Microcontrolador). 
 
2.2.1 Linguagem Assembly 
 Segundo PEREIRA (2007, p. 15), o Assembly consiste em uma forma alternativa de 
representação dos códigos de máquina, usando mnemônicos. A conversão desses mnemônicos 
em códigos binários executáveis pela máquina é realizada por um montador chamado 
Assembler. 
“Todos os computadores executam os comandos que residem na memória sob a 
forma de instruções de máquinas, assim a finalidade de um montador (Assembler), 
tem a finalidade de traduzir os comandos escritos em linguagem de alto nível para 
nível de máquina.[...]. No entanto o Assembly utiliza instruções que estão mais 
próximas da manipulação do hardware do computador”(GODFREY, 1989, p. 18-
19, tradução nossa). 
 
2.2.2 Linguagem C 
 PEREIRA (2007, p. 16) afirma que as linguagens de alto nível, ao qual se enquadra a 
linguagem C, são criadas para permitir a programação utilizando comandos de alto nível, e 
que são posteriormente traduzidos para a linguagem de baixo nível, ou diretamente para 
código de máquina do sistema utilizado. 
O uso da linguagem C permite a programação dos microcontoladores em situações 
complexas, o que não seria viável caso tivesse que ser realizada em Assembly. 
“A utilização de uma linguagem de alto nível como C permite que o programador preocupe-se 
mais com a programação da aplicação em si [...]” (PEREIRA, 2007, P. 18). 
 
 
4 
 
3. SIMULAÇÃO 
 A simulação se define por “representação de um sistema ou de um processo por um 
modelo estatístico com que se trabalha, como se tratasse desse sistema ou processo, para 
investigar os seus efeitos” (Infopédia). 
 Segundo (Kelton ET AL., 1998) a simulação de sistemas consiste na utilização de um 
conjunto de métodos e técnicas matemáticas, com o objetivo de representar o comportamento 
de sistemas reais, com a utilização de computadores e sistemas adequados. 
 Define-se também, como um processo de expressar um modelo de sistema real, e de 
procedimentos de experimentos com este modelo, objetivando o resultado comportamental do 
sistema visando avaliar melhores posicionamentos ou estratégias para a operação de maneira 
real (Pegden et AL., 1995). 
 Há a possibilidade de simulação de praticamente quase todos os tipo de operação ou 
processos reais (Freitas Filho, 1997). 
 
4 MATERIAIS E MÉTODOS 
4.1 Microcontrolador PIC16F84 
 Tateoki (2009, p. 5) apresenta que “um microcontrolador como o PIC16F84 é por sua 
natureza, um computador completo em um chip, onde este possui um processador, 
registradores, programa e memória de dados”. 
O PIC16F84 apresenta um processador de 8-bits, 90 registradores que são 
responsáveis pelo armazenamento interno do processador, possui uma memória de programa 
de 1k, ou seja, 1024 locais para programa, sendo endereçada do endereço 000h até 3ffh, 
possui 64 bytes de memória de dados (EEPROM),interrupções e os seus pinos de I/O, sendo 
um total de 13 pinos divididos em 5 sendo portas A e 8 sendo portas B (Figura 01). 
 
 
Figura 1 - Microcontrolador PIC16F84 (Fonte: Apostila Introdução aos microcontroladores) 
5 
 
4.2 MULTISIM 
 O MULTISIM se apresenta como uma ferramenta de análise comportamental de 
circuitos eletrônicos, combinando recursos intuitivos e facilidades de utilização com o padrão 
industrial de simulação SPICE em um único ambiente integrado, abstraindo as complexidades 
e dificuldades de simulação tradicional. (MULTISIM, 2010). 
Segundo Braga (2009, p. 7) “o MULTISIM é capaz de verificar erros antes que eles 
se propaguem pelo projeto, essa verificação é feita através de um conjunto amplo de 
instrumentos virtuais que indicam formas de ondas, sinais, tensões e correntes, além 
da própria posta de freqüência de um circuito”. 
 
5 AMBIENTE DE SIMULAÇÃO 
 Um projeto de simulação se inicia com a escolha do ambiente de simulação. O 
MULTISIM se apresenta como uma ferramenta de simulação de ambientes eletrônicos, onde 
se pode realizar simulações de circuitos antes da implementação no ambiente laboratorial. 
 No ambiente de simulação MULTISIM, são avaliadas as reações das ligações dos 
componentes juntamente com a execução de uma programação que busca o fim de manipular 
os dados entre o microcontrolador e o circuito, assim tendo respostas de erros de compilação 
de códigos como a não execução do ambiente por motivo de erro de montagem do circuito. 
As etapas de um projeto de simulação eletrônica se compõem pelos seguintes passos: 
- especificação do circuito a ser montado, isso se faz através de identificação dos 
componentes que serão necessários e qual será a utilidade deste circuito. 
- escolha do sistema de simulação para a realização da implementação do circuito elétrico 
planejado. 
- colocação do circuito elétrico no ambiente de simulação. Caso o circuito possua um sistema 
que necessite de programação de algum componente, parte-se para a etapa da criação do 
programa que será utilizado na execução de instruções em um componente específico, como 
um microcontrolador. 
Com essas etapas, temos que neste projeto realizaremos uma simulação com um 
circuito elétrico, contendo um microcontrolador PIC16F84, aplicado no ambiente de 
simulação MULTISIM, utilizando as linguagens de programação Assembly e C para a 
programação de seus sistemas internos para a realização das tarefas/objetivos do circuito. 
O diagrama 01 apresenta os passos a serem seguidos no processo de simulação. 
 
6 
 
 
Diagrama 1 - Diagrama dos processos para a simulação 
 
O ambiente de simulação MULTISIM (Figura 02) se apresenta com uma interface 
amigável e com grande acessibilidade, desde que o projetista tenha a noção de eletrônica 
(componentes e ligações) e um conhecimento de programação (lógica de programação). 
O MULTISIM passa ao criador do projeto ferramentas para controle da visualização 
do painel central onde será desenvolvido o circuito da simulação, (região 01 da Figura 02), 
uma barra de componentes, (região 02 da Figura 02), controles da simulação (START, PAUSE 
e STOP), (região 03 da Figura 02), uma barra de ferramenta de análise (multímetro, 
osciloscópio, etc.), (região 04 da Figura 02), a Desig toolbox (barra contendo arquivos do 
projeto), (região 05 da Figura 02), e a Spreadsheet View, (região 06 da Figura 02), que contém 
informações sobre a execução do circuito. 
 
7 
 
 
Figura 2 – Ambiente de desenvolvimento MULTISIM (Fonte: Print Screen retirado pelos autores) 
 
O projetista, tendo as noções de aplicações das ferramentas apresentadas pelo 
programa inicia seu projeto inserindo no painel central o microcontrolador, (Figura 03), e os 
componentes que compõem o circuito. Estes componentes são inseridos através da barra de 
ferramentas components onde ao clicar em qualquer tipo de componente é apresentada uma 
janela de seleção de componentes, nesta janela se encontra a caixa de busca de circuito, onde 
o projetista apresenta em inglês o nome do componente que será necessário. 
 
 
Figura 3 - Inserção do Microcontrolador PIC16F84 (Fonte: Print Screen retirado pelos autores) 
 
8 
 
Na inserção do microcontrolador é necessária a criação de um espaço de trabalho 
(projeto), (Figura 04), nesta etapa se define o nome do ambiente de trabalho passando assim a 
escolha da linguagem a ser utilizada (Figura 05). Tem que se aplicar um nome ao projeto e ao 
arquivo de programa seja ele Assembly (.asm) ou C (.c), (Figura 06). 
 
 
Figura 4 - Montagem do Workspace (Fonte: Print Screen retirado pelos autores) 
 
Figura 5 - Montagem do Projeto na linguagem (Fonte: Print retirado pelos autores) 
 
 
Figura 6 - Inserção do arquivo para o código (Fonte: Print Screen retirado pelos autores) 
9 
 
 
Inserido o microcontrolador temos no design toolbox os arquivos do projeto definidos 
como arquivo geral do design, arquivo do microcontrolador (workspace), arquivo indicando o 
projeto que está sendo executado, e o arquivo do programa (Figura 07). 
 
 
Figura 7 - Design Toolbox contendo os arquivos do projeto (Fonte: Print Screen retirado pelos autores) 
 
No arquivo design serão implantados os outros componentes para a formação do 
circuito desejado. 
O simulador apresenta uma ferramenta de gerenciamento do microcontrolador (Figura 
08), esta ferramenta é acessada pelo projetista através de dois cliques no MCU apresentado na 
área Design Toolbox. 
 
 
Figura 8 - Gerenciamento do Microcontrolador (Fonte: Print Screen retirado pelos autores) 
10 
 
 
 O gerenciamento do projeto possibilita ao projetista a inserção de novos arquivos de 
códigos assim como novos projetos interligados ao que está sendo montado, fazendo com que 
haja a interação de projetos distintos. 
No arquivo de programa temos a abertura de um ambiente onde serão inseridas as 
linhas de programação (Figura 09), para a informação de ordens ao microcontrolador, 
informando-lhe bits de programação de portas, assim como informações a serem passadas aos 
outros componentes do circuito (Figura 10). 
 
 
Figura 9 - Ambiente de programação (Fonte: Print Screen retirado pelos autores) 
 
 
Figura 10 - Programação realizada no ambiente (Fonte: Print Screen retirado pelos autores) 
 
11 
 
Na etapa de programação são necessários alguns princípios básicos de lógica da 
programação como sintaxe e semântica, com esses princípios são aplicadas as funções 
específicas de programação para microcontroladores tendo em Assembly (Figura 11) e em C 
(Figura 12) onde é necessário o conhecimento e domínio destas linguagens para poder realizar 
a implementação. 
 
 
12 
 
Figura 11 – Código aplicado no projeto Assembly.asm (Fonte: Print Screen retirado pelos autores) 
 
 
Figura 12 - Código aplicado no projeto main.c (Fonte: Print Screen retirado pelos autores) 
 
Realizada a programação do microcontrolador apresentados na Figuras 11 e 12, 
juntamente com a montagem do circuito conforme projeto desejado. Inicia-se então a fase de 
execução do circuito, nessa fase utilizam-se os comandos de controle da simulação. Ao dar 
START no circuito, na Spreadsheet View acompanhamos o que ocorreu ao programa ser 
executado, caso o programa apresente alguma irregularidade, é neste ambiente que conterá as 
informações de erros ou alertas. Apresentando erros ou alertas, é necessário que o projetista 
realize as correções para que tudo esteja operando de maneira correta, para que possa haver a 
aplicação em ambiente laboratorial (físico) sem que haja a necessidade de correções. 
 
8 PROJETOS FUTUROS 
 Será realizada a continuação dosestudos para a simulação de um sistema real, assim 
como a disponibilização dos materiais programados no MULTISIM, com passo a passo na 
criação dos circuitos e geração dos códigos. 
 
13 
 
7 CONCLUSÃO 
 O direcionamento para a aplicação de um microcontrolador no ambiente de simulação 
MULTISIM não é encontrado na língua portuguesa. O embasamento neste campo possibilitou 
a aprendizagem de simulação eletrônica assim como o conhecimento de programação em uma 
linguagem de nível próximo ao de máquina. Um conteúdo didático apresentando as 
características de montagem de um ambiente para trabalho e estudos de circuitos semi-
aplicados, pois estes a priori se apresentam em forma de simulação e posteriormente podendo 
ser aplicado de maneira física, evitando perdas em excesso de componentes e placas. 
 Com esta aplicação tem-se um material semi-narrativo apresentando a maneira de se 
realizar a implementação do microcontrolador no ambiente de simulação MULTISIM, assim 
como a sua aplicação. 
 
PIC16F84: didatic use of MULTISIM in implementing PIC16F84A 
 
ABSTRACT 
 
This article aims at teaching the formulation of the implementation of the PIC16F84 
microcontroller simulation software MULTISIM, targeting professionals who are 
knowledgeable in electronics and programming language to perform a simulation project 
before you apply it physically. Submit a diagram containing the project's insertion into 
PIC16F84 simulation environment, as well as a description of each step. The lack of 
documentation in the native language causes a difficulty in using this simulation system, 
which will be supplied with a part of this article, from models, tests and definitions of circuits 
using C and Assembly. Will result in the procurement of material to satisfy the initial 
implementation of the microcontroller in the system simulation, and applicability to some real 
situations. 
 
Keywords: MULTISIM, implementation, microcontroller, C, Assembly, PIC6F84. 
 
 
14 
 
REFERÊNCIAS 
 
Introdução aos microcontroladores. Disponível em: 
<http://www3.fsa.br/LocalUser/Eletronica/mario.garcia/Microprocessaores/Apostila%20Micr
ocontrolador%20PIC16F84.pdf>. Acesso em: 06 nov. 2010. 
 
O que é MULTISIM?. Disponível em: <http://digital.ni.com/express.nsf/bycode/braf3i>. 
Acesso em: 06 nov. 2010. 
 
BRAGA. N. C. Aprenda a Usar o MULTISIM. Saber. 2009. p. 7. 
 
GODFREY, J. T. IBM microcomputer assembly language: begining to advanced. Prentice-
hall, 1989. p. 18-19. 
 
PEREIRA, F. Controladores PIC: Técnicas Avançadas. São Paulo: Érica, 2004. p.19; 35-57. 
 
PEREIRA, F. Microcontroladores PIC: programação em C. 7. ed. São Paulo: Erica, 2007. 
p.15-18. 
 
TATEOKI, G. T. Apostila curso de programação PIC. 2009. Disponível em: 
http://www.getulio.eng.br/meusalunos/EDII/curso_pic_16f84.pdf>. Acesso em: 06 nov. 2010. 
 
KELTON, W. D.; SADOWSKI, R. P.;SADOWSKI, D. A. – Simulation with Arena. 
McGraw-Hill, NY, 1998. 
 
PEDGEN, C. D.; SHANON, R. E.; SADOWSKI, R. P. – Introduction to simulation using 
SIMAN. McGraw-Hill: 2nd ed., NY, 1995. 
 
FREITAS FILHO, Paulo J. – Introdução a modelagem e a simulação de sistemas discretos. 
Apostila, UFSC, SC, 1997. 
 
Definição de simulação. Disponível em: <http://www.infopedia.pt/pesquisa-
global/Simulação>. Acesso em: 12 dez. 2010.

Continue navegando