PROTEUS 5.2 INTRODUO O Proteus uma potente ferramenta de simulao eletrnica, que consta de vrios programas. Neles podemos ver desde o comportamento de um circuito at realizar desenhos para posteriormente utiliza-los na criao de circuitos para simulaes. Neste tutorial, iremos comentar o funcionamento bsico, do ISIS, onde iremos ver como desenhar e analisarmos passo a passo... COMO COMEAMOS? Quando se executa o programa, a primeira imagem que iremos ver,ser a tela principal do ISIS, e uma rea em branco onde se pode comear a construir o desenho.
DEFINIO DO CDIGO DE TRABALHO
Antes de comear a desenhar e de simular, temos que indicar com qual cdigo vamos compilar, para que quando se testar o funcionamento do desenho realizado, possamos comprovar que no existam erros. Para isso acessamos a janela de Source e depois se escolhe a opo. Define Code Generation Tools... Uma vez clicado nesta opo, aparecera outra janela nessa que se dever indicar com quais programas vamos compilar e o destino em que devem estar guardados esses programas.
Janela do code generation tools Continuando se define o compilador para arquivos .ASM. A tela dever ficar como a que aparece nesta figura. Para configurar vamos clicar sobre o boto NEW, aparecer uma outra tela nessa que indicaremos a direo do arquivo Mpasm.exe que esta na pasta de ferramentas, Tools e na sub-pasta, MPASM. Logo coloca-se Source Extn: indicaremos com que tipo de extenso iremos trabalhar, em nosso caso ser ASM. Logo se aciona o arquivo de verificao Always Build para que este gere o arquivo de extenso HEX. Depois em Command Line colocamos, a parte do comando %1, o comando /q. Por ltimo no arquivo de List File Extn, colocamos a extenso LST e clicamos sobre Browse e indicaremos a direo do arquivo, mpasmddx.exe, que se encontra na pasta BIN, este arquivo, nos permitira realizar uma simulao passo a passo e poder ver como se comporta o circuito, instruo a instruo. Para salvar as mudanas clicamos em OK. Continuando, vamos definir o compilador para arquivos de extenso .COD. Para isto, realizamos os mesmos passos que usamos para criar o de extenso .ASM, porem em lugar de usarmos o arquivo Mpasm.exe, iremos usar o Codddx.exe, que se encontra na pasta BIN. No arquivo de source code, devemos usar a extenso COD, e clicar OK para salvar as mudanas, neste tipo de compilao, no necessrio o arquivo de List File Extn, devido a que o Isis no tem simulao passo a passo para arquivos do tipo COD. Assm dever ficar a tela.
COMEANDO A CONSTRUIR... Uma vez predefinido os compiladores com os que iremos trabalhar, comeamos a desenhar o circuito. E neste exemplo, vamos desenhar um, circuito que realizara a simulao de um dado eletrnico. O arquivo do programa que se utilizar para a simulao, ser do tipo .COD. E no desenho se utilizar um Display BCD que se encontra na biblioteca Display, Resistencias da biblioteca Device, um oscilador (Button) da biblioteca Active e um microcontrolador PIC16F84 da biblioteca Micro. A primeira coisa que faremos, ser inserir o microcontrolador PIC16F84, para isso, na tela de componentes seleccionados, clicamos sobre o icone que tem um P, aparecer uma tela, onde se encontram todas bibliotecas, localizamos Micro, dentro dela temos que localizar o PIC16F84, se seleciona com duplo clic o PIC passa para a tela dos componentes.
Assim,iremos colocando os componentes que vamos utilizar, buscando nas bibliotecas correspondentes, uma vez escolhidos, se fecha a tela, podendo voltar mais tarde e escolher outros componentes, sem que os anteriores desapaream.
Uma vez selecionado os componentes, temos que comear a realizar o nosso desenho. Primeiro, se pulsa sobre o PIC16F84 e se situa sobre a zona de desenho, com o boto esquerdo. Se considerarmos que a imagem do desenho pequena, sempre temos a possibilidade de aumentar segundo nossa convenincia, para aumentar, se pulsa a tecla <Shift> e sem soltar, se faz um quadrado com o boto esquerdo sobre a rea que se deseja ampliar, ao soltar, a rea selecionada ser aumentada. Para fazermos o desenho menor, temos que ir no View ->Zoom out.
Ao inserirmos o PIC, aparecem uma serie de referencias e valores, como estes: PIC16F84, <TEXT>, U1, que se podem desabilitar para uma melhor visualizao do componente, para tira-los, temos que clicar com o boto direito do mouse, e dever ficar de cor roxo, logo se clica com o boto esquerdo e aparecer uma tela, em que teremos que habilitar as duas Hidden que aparecem, logo se pulsa OK. Se em lugar de desabilita-las, desejamos mudar de nome, introduzimos a referencia ou o valor que se deseja.
Uma vez desabilitadas estas referencias, ainda ficar visvel uma etiqueta, escrito <TEXT>, para tira-la, se volta a selecionar o PIC, com o boto direito do mouse e se clica com o boto esquerdo, sobre a etiqueta <TEXT>, aparecer uma tela, que se dever selecionar a janela de Style, logo temos que desabilitar a opo de Follow Global? e a de Visible?, se aceitam as mudanas e so retiradas todas as etiquetas. *Como mover objetos? Se pretendemos mover um componente, temos que seleciona-lo com o boto direito, e com o boto esquerdo se mover para a posio desejada, tambm se pode mover fazendo um quadrado sobre o componente, com o boto esquerdo e clicar sobre o cone que se encontra no quadro de ferramentas, logo aparecer um re- quadro, para situar o objeto na rea desejada. Esta opo costuma se utilizar com freqncia, para mover desenhos inteiros, ou partes, e no desfazer o desenho por mover uma s pea. Se o que desejamos apagar o componente, teremos que seleciona-lo com boto direito e voltar a clicar sobre ele com o boto direito.As vezes apagamos o componente sem essa inteno, posto que o mais normal seria seleciona-los comobotoesquerdo, paravoltar a recupera-lo, vamos a Edit ->Undo. Para apagar tambm temos um boto no quadro de ferramentas , tendo selecionado anteriormente com um re- quadro como fizemos para mover. Continuando com a elaborao do desenho, se inserem as resistncias a saida do PORTB, se selecionam na janela de componentes, e se inserem no circuito, se posicionar em frente de uma sada, e se tiram as marcas de referencias e valores, as resistncias, que so colocadas de forma incorreta com o valor de 10K, porm se pode modificar, se esto em Ohms, se pe o valor somente, sempre que passe de 1K, o valor deve levar a letra K. Uma vez trocado o valor, e ocultado os valores, se continua colocando as resistncias, para este exemplo s vamos utilizar quatro, uma para cada perninha da saida do PORTB, as outras saidas no vamos utilizar. Para colocar as outras resistncias, se seleciona a que temos, e vamos ao Edit -> Copy to clipboard, para copiar a resistncia e logo colar sobre o desenho, sem ter que colocar todas as resistncias e ocultar uma por uma todas suas referencias.
Agora temos que unir as perninhas do PIC com as resistncias, para isso, se posiciona o ponteiro do mouse em uma perninha do PORTB e quando se visualiza-se uma cruz, se clica com o boto esquerdo e aparece uma linha, que deve situar se na perninha junto a do PIC.
Uma vez unidas todas as perninhas, se insere o Display e se unem as resistncias.
Agora se coloca o oscilador conectado a perninha RA0 da PORTA se conecta aqui, porque no arquivo do programa, definimos a PORTA como entrada, e RA0 a porta com a qual trabalhamos, para controlar quando algum pulsa, bem seja para parar o dado ou para que continue contando. O oscilador levar na conexo com RA0 a alimentao, no meio uma resistncia PULL UP, que para proteger a entrada do PIC. Para selecionar a alimentao, clicamos sobre o icone da figura, no quadro de ferramentas, e logo na tela de componentes escolhemos POWER e se situa sobre nosso desenho. Esta vem com o valor incorreto de 10V, que se poder modificar igual como fizemos com a resistncia. No outro extremo do oscilador se liga GROUND, que se encontra debaixo de POWER. Se pretendemos rotear a alimentao, podemos fazer com o boto que est no quadro de ferramentas, e com este outro se colocam espelhos horizontais e verticais. Uma vez colocado o oscilador, com sua resistncia, sua alimentao e sua massa, dever ficar com o seguinte aspecto.
Como se pode ver, todas as perninhas da PORTA esto ligados a massa, se fez porque, como j comentamos, configuramos todas as perninhas da PORTA como entrada, e como essas perninhas no se utilizam, as ligamos a massa, seno, o programa no dar por correto o desenho, ainda poderiamos ter configurado como saidas e no haveria problemas. Agora o que falta, conectar a perninha WCLR a alimentao, para que o PIC funcione. Devemos ter esse aspecto final do desenho.
O mais complicado j esta feito, agora s falta fazer uns pequenos ajustes e colocarmos os cdigos que anteriormente criamos. Primeiro clicamos sobre a janela Source e se escolhe a opo de Add/Remove Source files...
Uma vez selecionado nessa opo, aparecera outra tela, nela que devemos indicar que tipo de compilador iremos utilizar e a localizao do arquivo.
Para isso,onde se coloca Code generation tool seleciona-se o compilador de CODDDX que previamente foi criado. Continuando se clica sobre New e aparece uma janela, ela nos indica em que pasta est guardado o arquivo de programa .COD. logo aceitamos as mudanas.
Uma vez introduzido o arquivo de programa .COD, temos que introduzir o arquivo .HEX no PIC, arquivo que criamos quando compilamos o programa que se fez utilizando um cdigo, neste caso, compilamos com o programa PicC (PCW). Para introduzir arquivo no Pic, temos que selecionar o PIC com o boto direito e logo dar um click com o esquerdo, para entrar em uma tela de propriedades, logo se clica sobre ? e onde mostra Program File se tem acesso a outra janela na qual iremos indicar a direo do arquivo .HEX, a direo do arquivo .COD e a do .HEX devem de ser a mesma., para que no apresente erros no ISIS. Logo se aceitam as mudanas.
J a est quase terminado nosso desenho, para poder comprovar se esta tudo em ordem desenho e os arquivos corretamente direcionados. Quando vamos comprovar, o menu costuma mostrar este tipo de erro:
Este erro se deve, a que se introduziu uma resistncia, e logo as outras, copiando e colando, pois o programa as cria porem no registra nenhuma referencia, o mesmo que dizer, que esto sem nome. Para solucionar isto, sem ir ter que colocar nome uma a uma, temos que ir a Tools e Global Annotator, logo aparecer esta outra tela, se clica Ok e j esta listado para comprovar o desenho. -- ->>
Para comprovar o desenho, primero temos que ir a Source ->Build all... e comprovar que os arquivos no tem erros. Se dever ver esta tela.
SIMULAO COMPLETA Uma vez comprovado o cdigo, se comea a simulao, para isso, temos que pressionar no boto Play que tem na parte inferior direita,
Proteus simulando o circuito Isto poderia ser feito diretamente sem a opo: Build All...
SIMULAO PASSO A PASSO (depurao) Se no tem nenhum erro, nosso desenho j comea a simular. Se durante o transcurso da simulao se deseja ver como se comparta o circuito instruo a instruo, teremos que pressionar sobre Pausa e acessar o men Debug e clicar sobre Source Code, logo aparecer a seguinte janela, na qual se poder visualizar como esta processando o programa passo a passo. Para visualiza-lo, temos que pressionar F11, cada pulsao corresponde a um passo, e no transcurso da simulao passo a passo, se pode acionar o oscilador do circuito e ver como se comportam na seguinte instruo, desta maneira, podemos identificar os possveis erros que se podem cometer no programa, e fazer uma melhor depurao. Inclusive se pode colocar uns Break Points.. que seria colocar umas marcas no programa, para ver seu comportamento s nesse intervalo que foi criado. Para marcar os Break Points temos que posicionar, mediante F11, na instruo que se deseja, logo se pressiona o boto direito do mouse e se abrira um menu, no qual se seleciona sobre a opo Toggle Breakpoint, assim se far nosso primeiro ponto de ruptura, logo teremos que criar o seguinte.
No menu Debug, podemos abrir mais janelas para a simulao passo a passo, como por exemplo a de Registers na qual se visualiza como esto trocando todos os registros internos do PIC e ver que dados tem em cada momento.
Outra janela disponivel seria a Eeprom Memory, para ver como se registram dados na memria eeprom del PIC, e ver como esto mudando.
Para seguir com a simulao no modo normal, temos que pressionar o boto Play. At aqui mostramos uma viso de como comear a desenhar e simular programas com o ISIS de PROTEUS. S dizer, que em muitas ocasies, quando se coloca para simular um circuito com um cdigo em .ASM o programa pode dar erros, ao tentar simular, e ver como o desenho e o programa esto corretos. Para isto a nica soluo que temos encontrado a de salvar o desenho, fechar o programa e voltar a redefinir as direes dos arquivos .ASM e .HEX e voltar a simular, assim ter de ser feito. PROTEUS (Agradecemos a D. Joaqun Lara y a D. Salustiano Nievas, catedrticos de Sistemas Electrnicos, su inestimable ayuda en la elaboracin de esta seccin). PROTEUS es una herramienta software que permite la simulacin de circuitos electrnicos con microcontroladores. Sus reconocidas prestaciones lo han convertido en el ms popular simulador software para microcontroladores PIC. En esta seccin exponemos algunos enlaces interesante para su descarga y aprendizaje. Tambin se ha incluido los esquemas y ficheros *.HEX necesarios para simular todas las prcticas del libro. Esto permite realizar de forma virtual las prcticas de Laboratorio. En todo caso es necesario el acompaamiento del libro "MICROCONTROLADOR PIC16F84. DESARROLLO DE PROYECTOS. Editorial Ra-Ma" para poder estudiar los circuitos expuestos en esta Web. Tambin se ha incluido un entrenador para el aprendizaje del microcontrolador PIC16F876. Enlaces tiles . Descarga del programa, manuales, tutoriales, librerias y foros. Prcticas del libro en PROTEUS: o Captulos 1 al 12. MICROCONTROLADOR PIC16F84. Diseo en PROTEUS del entrenador bsicos para aprendizaje del PIC16F84 con 64 ejercicios para analizar los fundamentos de la programacin del PIC16F84. o Captulos 13 y 14. LCD y EEPROM DE DATOS. Diseo del circuito en PROTEUS y 22 ejercicios para estudiar el control del mdulo LCD y memoria EEPROM interna de datos del PIC16F84. o Captulo 15. TIMER 0. Esquema en PROTEUS y 6 ejercicios para el estudio de Timer 0 del PIC16F84. o Captulo 16. OTROS RECURSOS. Circuito en PROTEUS y 19 ejercicios para estudiar algunos recursos del PIC116F84: Direccionamiento Indirecto, Macros y Subrutinas Aritmticas. o Captulo 17. INTERRUPCIONES. Diseo de 2 esquemas en PROTEUS y 13 ejercicios para analizar las interrupciones INT y RBI del PIC16F84. o Captulo 18. INTERRUPCIONES POR DESBORDAMIENTO DEL TIMER 0. Diseo de 2 circuitos en PROTEUS y 16 ejercicios para estudiar la interrupcin por desbordamiento del Timer 0. Se incluye un reloj digital completo y un temporizador. o Captulo 19. TECLADO HEXADECIMAL. Esquema en PROTEUS y 9 ejercicios para estudiar el control del teclado hexadecimal por parte de un PIC16F84. Se incluye una cerradura electrnica. o Captulo 20. COMUNICACIN CON ORDENADOR. Diseo de 3 circuitos en PROTEUS con 11 ejercicios para estudiar la comunicacin entre un ordenador y un PIC16F84. o Captulo 22. BUS I2C. MEMORIA EEPROM 24LC256. Anlisis del bus I2C aplicndolo a una memoria 24LC256 controlada por PIC16F84. o Captulo 25. BUS I2C. CONTROLADOR DE DISPLAY SAA1064. o Captulo 26. BUS I2C. EXPANSOR DE BUS I2C CON PCF8574. o Captulo 27. BUS I2C. ADC Y DAC CON PCF8591. o Captulo 28. BUS 1-WIRE de Dallas. Anlisis del Bus de 1 lnea aplicndolo a una sensor de temperatura DS18B20 en un circuito utilizado como termmetro y termostato. o Captul0 29. MOTOR DE CORRIENTE CONTINUA. o Captulo 30. MOTOR PASO A PASO. o Captulo 31. SERVOMOTOR DE RADIOCONTROL. Entrenador para PIC16F84. Este entrenador completo diseado por Joaqun Lara, permite probar todos ejercicios del libro "MICROCONTROLADOR PIC16F84. DESARROLLO DE PROYECTOS" de la Editorial Ra-Ma. Entrenador para PIC16F876. Este entrenador completo diseado por J oaqun Lara, permite estudiar el microcontrolador PIC16F876. Traduo para o Portugus (Brasil) Peter Odlaws