Vous êtes sur la page 1sur 27

PROTEUS ISIS MANUAL

F Garca Miranda

NDICE
Introduccin............................................................................................................. p.2 Acciones bsicas...................................................................................................... p.3 Generacin de informes.........................................................................................p.6 Creacin de componentes...................................................................................... p.8 Edicin de componentes.........................................................................................p. 2 !imu"acin Generadores................................................................................................... p. 3 Grficas........................................................................................................... p. 6 Intrumentos #irtua"es.................................................................................. p. 8 !imu"acin de microcontro"adores A$ustes pre#ios.............................................................................................. p.2% Compi"acin...................................................................................................... p.2 !imu"acin....................................................................................................... p.23 &epuracin...................................................................................................... p.2'

INTRODUCCIN
Actualmente existen en el mercado un gran nmero de paquetes de software que nos posibilitan la creacin de esquemas de circuitos electrnicos e incluso el diseo de la PCB. Cada da es mayor el nmero de programas que nos ofrecen estas posibilidades y las opciones que nos ofrecen pero cuando buscamos un programa que adem!s nos permita simular esos mismos circuitos la cosa se complica. "l campo de la simulacin interacti#a de circuitos electrnicos no est! tan ampliamente cubierto como el de diseo de esquemas y PCBs. Podemos encontrar paquetes como $rCA% que nos dan esa funcionalidad &simulacin y diseo' pero tan slo nos ofrecen la posibilidad de una simulacin est!tica por lo que pierde gran parte de la utilidad que puede #enirnos a la mente al pensar en el concepto de (simulacin de un circuito electrnico(. )sta es la #enta*a de Proteus Proteus nos permite simular en tiempo real &dependiendo claro est! de las posibilidades de nuestra m!quina' todo tipo de circuitos electrnicos pudiendo #isuali+ar gr!ficas con los #alores que obtengamos comprobar #alores de tensin e intensidad en cualquier parte del circuito y adem!s permitirnos interactuar con todos los componentes del circuito susceptibles de ello. Adem!s de esta posibilidad nos permite simular microprocesadores que podamos ,aber incluido en el circuito dandonos la posibilidad de programarlos &y compilar estos programas' e incluso depurar esos programas desde la misma aplicacin. -odo ello incluyendo tambi.n un potente software de diseo de esquemas &/sis' y de PCBs &Ares' todo completamente integrado por lo cual las posibilidades son inmensas pudiendo ,acer cosas impensables con la gran mayora de paquetes de caractersticas similares en el mercado. )sta es la ra+n de la creacin de .ste manual simplificar un poco el acceso a Proteus y proporcionar una muestra de su potencial comen+ando desde cero y acabando con el diseo y programacin e incluso depurado de circuitos comple*os. "l presente manual est! basado en la #ersin 0.1 2P3 de Proteus siendo a da de ,oy la 0.4 la ltima #ersin aunque por el momento es desaconse*able su uso debido a cierto nmero de errores que presenta siendo la 0.1 la #ersin m!s estable.

ACCIONES BSICAS
"mpe+aremos creando un circuito sencillo para familiari+arnos con el entorno de /sis. A la i+quierda del entorno de traba*o podemos #er una barra de ,erramientas que nos facilita el acceso a las funciones b!sicas necesarias en el traba*o con esta aplicacin. "mpe+aremos directamente reali+ando un pequeo circuito para e*emplificar esto5

"l primer paso a reali+ar ser! seleccionar los componentes que necesitaremos en el proceso para lo cual utili+aremos la ,erramienta componente . Pulsando en ese botn #eremos como a la derec,a de la barra de ,erramientas se acti#ar! una lista &#aca en primera instancia' con el ttulo de de#ices. A, es donde #eremos el listado de componentes seleccionados para su inclusin en el esquema. Podemos obser#ar como a la i+quierda de este ttulo ,ay dos botones pulsaremos sobre el botn 6P6 y tendremos acceso a la #entana de seleccin de componentes5

"n este cuadro de di!logo podemos seleccionar la librera en la que deseamos buscar y dentro de esa librera el componente que queremos aadir a la lista. "n la parte derec,a de la #entana #eremos una pre#isuali+acin del componente en el esquema y la placa de circuito impreso respecti#amente. Para aadir un componente a la lista ,aremos doble clic7 sobre su nombre. 8na #e+ ,ayamos aadido los componentes que necesitemos podemos cerrar la #entana y #ol#er a la #entana de diseo. Para reali+ar el circuito del e*emplo necesitaremos los componentes 9A:P BA--";< y B8--$= de la librera AC-/>" y el componente BC?@A de la librera B/P$9A;. "l siguiente paso ser! colocar los componentes en el espacio para ello destinado. 2eleccionaremos el nombre del componente a colocar con el ratn y ,aremos clic7 i+quierdo en un espacio del esquema. Por cada clic7 que ,agamos colocaremos una nue#a copia del componente. "n la #entana de pre#isuali+acin podremos comprobar cmo #a a ser colocado el componente y rotarlo mediante los botones de la esquina superior i+quierda 5 . Pero qui+! podamos querer rotar o mo#er un componente despu.s de colocarlo esto se consigue seleccion!ndolo con un clic7 derec,o del ratn y arrastr!ndolo con el botn i+quierdo &para mo#erlo' o manipulando los botones de rotacin una #e+ seleccionado. Para deseleccionar un componente ,aremos clic7 derec,o en un espacio #aco. 8na #e+ colocados de forma correcta los componentes en el espacio de traba*o el siguiente paso lgico sera conectarlos entre s mediante cables usando para ello la ,erramienta cable &wires'. Para usarla solo tenemos que accionarla y ,acer clic7 i+quierdo en cada uno de los pines que queramos conectar &es importante que el componente en cuestin no est. seleccionado o slo conseguiremos editar sus propiedades' /sis se encarga autom!ticamente de seleccionar la me*or ruta a seguir para el tra+ado del cable.Aunque si no estamos satisfec,os con el resultado podemos actuar sobre el cable tra+ado del mismo modo que lo ,aramos sobre un componente. "xiste una opcin que nos permite eliminar de la lista de componentes aquellos componentes que toda#a no ,ayamos utili+ado en nuestro diseo. "s la opcin -idy del menu "dit. Podemos probar a incluir en la lista cualquier componente y despu.s selecionar la opcin -idy para #er como desaparece de la lista si no ,a sido colocado antes. Bien ya tenemos nuestro primer circuito diseado a,ora #amos a probar algo de simulacin b!sica por el momento nos limitaremos a comprobar si el circuito se comporta como debera comportarse &encendido de la l!mpara al pulsar el botn'. Para ello acti#aremos el modo de simulacin pulsando el botn de inicio de simulacin de la barra inferior 5 o presionando B?1. Para simular la accin sobre el pulsador del circuito ,aremos clic7 sobre .l una #e+ la simulacin est. en marc,a y comprobaremos su efecto. Para detener la simulacin pulsaremos el botn correspondiente de la barra. 2i queremos editar las propiedades de un componente primero lo selecionaremos ,aciendo clic7 derec,o sobre .l para despu.s ,ace clic7 i+quierdo. Ante nosotros aparecer! el cuadro de di!logo de propiedades de componente que #ariar! segn el componente y mediante el cual podremos configurarlo a nuestro gusto. "lementos comunes a la mayora de componentes son su referencia &;? ;1 C?...' y #alor asi como tambi.n el footprint seleccionado para pasar el esquema a A;"2 la aplicacin de diseo de PCB. 2i el componente tiene pins de alimentacin que se encuentran ocultos podemos seleccionar a que red &net' queremos conectarlos mediante el boton CPower PinsD aunque en circunstancias normales los #alores por defecto son adecuados. Para este e*emplo modificaremos los par!metros de la fuente de tensin accediendo a su #alor de propiedades de la manera anteriormente indicada y modificando su tensin de salida

&#oltage' probando a introducir en el respecti#o campo el #alor de E por e*emplo. 2i #ol#emos a simular el circuito podremos comprobar cmo la CiluminacinD de la bombilla es de un tono m!s oscuro. Podemos probar distintos #alores para comprobar como se nos muestran las distintas intensidades de luminosidad de la bombilla. -ambi.n podemos cambiar de la misma manera la tensin a la que funcionar! la bombilla comprobando por e*emplo que con una tensin demasiada ele#ada de la bombilla y demasiado pequea por parte de la fuente de tensin no podremos encender la bombilla. 8n detalle a tener en cuenta sobre la simulacin de circuitos en Proteus es que no es necesario disear en .l el circuito completo para poder simularlo ya que podemos ob#iar partes como pueden ser las alimentaciones de los circuitos integrados los osciladores de los microcontroladores incluso las salidas ya que durante la simulacin se nos muestra mediante un sistema de colores el estado lgico de cada salida o extremo de un componente.

GENERACIN DE INFORMES
8no de los informes principales que podemos reali+ar con /2/2 y practicamente cualquier paquete de diseo de esquemas es el ";C &"lectrical ;ules C,ec7' para comprobar si todo est! correctamente en nuestro diseo. "ste informe podemos reali+arlo mediante el men Tools/Electrical rule check... o mediante el botn de la barra superior de ,erramientas . Al reali+arlo tendremos en pantalla una #entana con el resultado del informe que nos dir! si se ,an encontrado o no errores en el circuito y cuales son estos errores en caso de ,aberse producido. -ambi.n nos informar! de la correcta generacin &o no' del netlist del circuito. "n esta #entana se nos da la posibilidad de copiar su contenido al portapapeles o incluso guardarlo en un arc,i#o para su posterior uso o consulta en cualquier momento. $tro informe que podemos reali+ar con /2/2 es la lista de materiales &Bill $f :aterials' mediante el botn o su correspondiente opcin del men Tools/Bill Of Materials. %esde este men tenemos tambi.n la posibilidad de selecionar el tipo de salida que queramos como por e*emplo salida en formato A2C// &texto' o HTML. El BOM del circuito ejemplo en formato HTML sera como el de la figura:

Pero probablemente el m!s importante de los informes que podamos generar con /2/2 es el =etlist ya que el =etlist nos permite pasar el circuito diseado a A;"2 para proceder al diseo de la PCB. Para la reali+acin de esto tenemos #arios caminos. 2i lo que queremos es pasar el

circuito a A;"2 para disear la PCB directamente podemos ,acerlo mediante su botn en la barra de ,erramientas o su opcin de men5 Tools/Netlist to ARES . %ependiendo de si ,emos sal#ado o no pre#iamente el circuito #eremos un cuadro de di!logo pidiendo que sal#emos el circuito antes de proceder tras lo cual se genrerar! el =etlist y si no ,ay ningn problema se abrir! A;"2 preparado para disear la placa del circuito. -ambi.n podemos generar el =etlist aparte mediante la opcin Tools/Netlist compiler... en la cual podemos seleccionar si queremos la salida en un #isor &el mismo que nos proporcionaba por e*emplo el B$:' o en un arc,i#o y el formato de =etlist que queremos &lo normal sera usar 2P/C"'.

CREACIN DE COMPONENTES
"n ocasiones puede interesarnos crear nuestros propios componentes para su inclusin en nuestros diseos bien por no encontrarlo en las libreras de Proteus o por cualquier otra ra+n. Como e*emplo para ilustrar la creacin de un componente en /2/2 #amos a crear un EEE por ser un integrado sencillo y de no muc,as patillas. "n la figura se muestra el componente una #e+ creado5

/2/2 no dispone de un editor de componentes por tanto los componentes se crean y editan en el mismo entorno de traba*o lo que llega a ser m!s pr!ctico ya que no requiere por parte del usuario acostumbrarse a #arios sistemas distintos de traba*o ya que sin salir de la misma #entana puede estar diseando un circuito y a la #e+ creando un componente que pueda necesitar para lle#ar el diseo a t.rmino. Para crear el componente comen+aremos dibu*ando su forma para ello usaremos las ,erramientas de ca*a de gr!ficos 1d de Proteus5 8na #e+ seleccionada la ,erramienta crearemos un rect!ngulo del tamao que consideremos adecuado para el componente ,aciendo clic7 i+quierdo y arrastrando ,asta el tamao correcto. 8na #e+ reali+ado el cuadro procederemos a aadir al componente los pines que tendr! para ello empleamos la ,erramienta de pines 5 y comprobamos que al seleccionar la ,erramienta en la lista de la derec,a nos aparecen los diferentes tipos de pines que podemos aadir al componente los m!s importantes son5 %"BA89- FG tipo est!ndar de pin. /=>";- FG 2eal negada. P$2C9H FG "ntrada de relo* ="IC9H FG "ntrada negada de relo* Aadiremos J pines del tipo %"BA89- a nuestro componente 3 a cada lado como #emos en la figura anterior. "l siguiente paso ser! ad*udicarles los nombres a cada uno de los pines y sus caractersticas. Para ello seleccionamos un pin con clic7 derec,o y abrimos sus propiedades con un clic7 i+quierdo5

"n el campon CPin =ameD introduciremos el nombre que queremos darle al pin que en el caso de la figura es I=% &:asa'. "l campo de nmero de pin lo de*amos por el momento en blanco ya que posteriormente asignaremos esa numeracin autom!ticamente. 9as siguientes opciones nos permiten ocultar respecti#amente el cuerpo del pin su nombre y su nmero. < por timo podemos seleccionar el tipo del pin ya sea .ste pasi#o entrada salida bidireccional de triple estado salida pullFup salida pullFdown o de alimentacin como es el caso que a,ora nos ocupa. A,ora estableceremos las propiedades del resto de pines asignandoles los nombres que podemos #er en la figura del e*emplo. =o debemos ol#idar de asignar a los pines de alimentacin su mismo tipo. Al resto de pines podemos asignarles el tipo Pasi#o. A,ora solo nos resta asignar a cada pin su nmero para lo cual usaremos el Property Assignmente Tool que encontraremos en el menu Tools o al que accederemos igualmente presionando la tecla 6A6. "n el campo 2tring escribiremos C=8:KLD esto indica a Proteus que lo que queremos es establecer el nmero del pin en orden segn el #alor actual. "l campo count se usa para indicar el #alor inicial y campo increment para el incremento que ,abr! entre un nmero y otro. Para nuestro caso count deber! #aler ? e increment tambi.n. Aceptando estos #alores procederemos a asignar los #alores esto se ,ace ,aciendo clic7 en los pines del componente en el mismo orden en que queremos numerarlos y obser#aremos como #an apareciendo los nmeros *unto a los pines.

8na #e+ nombrados y numerados los pines ya podemos crear el componente propiamente dic,o para ello seleccionaremos todos los elementos &es decir rect!ngulo y pines creados a su alrededor' y seleccionaremos del men la opcin !i"rary/Make #e$ice...

Aparecer! el cuadro de di!logo de creacin de componente el cual nos pedir! en primer lugar el nombre del componente y el prefi*o de referencia que utili+ar! como en el e*emplo creamos un circuito integrado el prefi*o ser! 8. "l siguiente cuadro de di!logo nos informar! de que no ,ay footprints asociados a ese componente ante lo cual tenemos dos opciones5 seguir igualmente con la creacin del componente &no ,abr! ningn problema pero al pasar el circuito a A;"2 necesitaremos buscar un footprint adecuado para el componente' o seleccionar uno a,ora. >amos a seleccionar un footprint para nuestro componente pulsando en el botn A##/E#it .

"n este di!logo podemos seleccionar el footprint adecuado para nuestro componente e incluso comprobar que es el adecuado y cambiar la numeracin de los pines por si no enca*ara con nuestro footprint o #ice#ersa. Para aadir un footprint al componente pulsaremos el botn A## y en el cuadro de di!logo resultante seleccionaremos de la librera Package el footprint %&!'( con un doble clic7 sobre su nombre. "l siguiente di!logo nos pregunta por algunas m!s de las propiedades de nuestro componente pero debido a que se refieren una #e+ m!s a opciones que ya ,emos seleccionado al escoger nuestro footprint podremos de*ar las opciones por defecto pasando al siguiente di!logo. "n .ste cuadro se nos ofrece la posibilidad de indicarle una direccin remota del datas,eet del componente para poder #isuali+arlo en cualquier momento desde /2/2. =os pide para ello el nombre del datas,eet la direccin del ser#idor ftp donde estara alo*ado y el nombre de usuario y contrasea de ese ser#idor. Por ltimo se nos pide la librera donde guardar el componente solo tenemos que seleccionar la que queramos y aceptar y ya tenemos nuestro componente creado y listo para ser usado en cualquier diseo que ,agamos.

EDICIN DE COMPONENTES
2upongamos que no queremos crear un componente sino tan slo modificar uno ya existente por e*emplo supongamos que a,ora decidimos que es m!s pr!ctico a efectos de nuestro circuito que nuestro EEE tenga ocultos sus pines de alimentacin5

Para ello colocaremos una copia del componente y despu.s la seleccionaremos mediante el botn derec,o del ratn seleccionando despu.s la opcin del men !i"rary/%ecompose con lo cual conseguiremos que el componente se di#ida en las partes de que se compone esto es de un rect!ngulo y #arios pines asociados. :odificaremos las propiedades de los dos pines de alimentacin deseleccionando la opcin C%raw bodyD para indicar que ese pin pasa a ser in#isible. 8na #e+ reali+ados los cambios pertinentes en el componente #ol#emos a seleccionar todas las partes del mismo y seleccionar la opcin !i"rary/Make %e$ice tal y como ,icimos anteriormente para crear el componente con la diferencia de que a,ora los #alores por defecto en los cuadros de di!logo son los #alores del componente ya creado con lo cual si lo que queremos es sobreescribir el componente antiguo podemos aceptar sin m!s todos los cuadros de di!logo y decir si a la pregunta final de Proteus sobre si deber! sobreescribir el componente. 8na #e+ reali+ados todos estos pasos ya tendremos el componente con nue#as caractersticas en nuestra librera.

SIMULACIN GENERADORES
Probablemente la #irtud fundamental de Proteus sean sus potentes ,erramientas de simulacin que nos permitir!n incluso simular uno o m!s microcontroladores en un mismo circuito. -rataremos con #arios e*emplos de comprender el funcionamiento del sistema de simulacin de Proteus empe+ando con simulaciones sencillas de c!lculo de tensiones e intensidades con sus respecti#as formas de onda para pasar m!s adelante a la simulacin de microcontroladores e incluso el depurado de su cdigo. 8na ,erramienta muy til y que probablemente necesitaremos con frecuencia en el transcurso de nuestra simulaciones son los generadores. 2e acti#an con el siguiente botn de la barra de ,erramientas lateral 5 . Al seleccionar esta ,erramienta comprobaremos que nos aparece la lista de posibles generadores de que disponemos en Proteus. A continuacin ,ay una bre#e explicacin de los m!s importantes &las capturas proceden de las propiedades de cada uno de ellos'5

%C FG Produce una seal de corriente contnua. 2lo nos permite configurar la tensin de salida que por defecto al colocar el generador en el espacio de traba*o es de @#.

2/=" FG "s una onda senoidal de corriente alterna. Podemos parametri+ar la tensin de salida y su frecuencia. 9a tensin de salida podemos expresarla mediante su amplitud su tensin de pico a pico y su #alor efica+. 9a frecuencia podemos indicarsela mediante el #alor de la frecuencia propiamente dic,a o de su periodo.

Pulse FG "s un pulso digital como bien podria ser una seal de relo*. Podemos configurar su tensin a ni#el ba*o su tensin a ni#el alto el instante en que comen+ar! la onda sus tiempos de subida y ba*ada &que deben existir por ra+ones de simulacin aunque los proporcionados por Proteus no deberan tocarse'. -ambi.n podemos especificar la duracin que queremos que tenga el pulso a ni#el alto expres!ndolo como un porcenta*e del periodo total de la onda o por tiempo. < por ltimo podemos configurar la frecuencia de la onda tanto por el #alor de su frecuencia

como por el de su periodo.

Pwlin FG "s el generador m!s configurable de todos ya que nos permite incluso dibu*ar la forma de onda resultante que queremos obtener. 2lo tenemos que ,acer clic7 i+quierdo sobre los puntos de la gr!fica que queramos establecer. < en los campos inferiores podemos indicar los minimos y m!ximos de la escala que queremos usar.

F Audio FG "ste generador nos permite simular una entrada de audio &a tra#.s de un arc,i#o .MA>' de la cual podemos indicar su amplitud y canal que queremos extraer &i+quierdo o derec,o'.

8n detalle importante a tener en cuenta en el traba*o de generadores es que a la ,ora de unirlos a cualquier elemento de un circuito mediante la ,erramienta de cable debemos pinc,ar antes en el otro elemento y despu.s en el generador ya que Proteus necesita saber antes de conectar un generador donde #a a ser conectado.

GRFICAS
A,ora reali+aremos un sencillo circuito para ilustrar el uso de generadores sondas y gr!ficas.

As a simple #ista aparecen unos cuantos elementos nue#os por tanto iremos por partes en el desarrollo de esta simulacin5 "l primer paso es montar el circuito. 9as resistencias podemos encontrarlas en la librera ;"2/2-$; ba*o el nombre de :/=;"2?7 y :/=;"217 respecti#amente. "l generador lo obtendremos de la ,erramienta generadores como ,emos #isto anteriormente &como propiedades le pondremos un amplitud de E# y una frecuencia de EN+' y la masa sale de la ,erramienta conectores ba*o el nombre de I;$8=%. "l siguiente elemento (extrao( son los smbolos que encontramos antes de las resistencias. 2on las sondas de intensidad. Proteus dispone de sondas de tensin y sondas de intensidad . Cada sonda tiene su botn correspondiente en el panel de ,erramientas lateral 5 y para colocarlas solo tenemos que pulsar el botn

correspondiente y pinc,ar sobre el cable donde queramos ubicarlas e instant!neamente tomar!n el nombre del componente al que se ,ayan conectado. 8na #e+ conectadas las dos sondas de intensidad de la figura podemos proceder a simular el circuito mediante el botn y comprobaremos como las sondas #an adquiriendo unos #alores &recordemos que la onda es senoidal por tanto no tendr! unos #alores fi*os'.

"l siguiente paso es aadir la gr!fica para ello seleccionamos la ,erramienta gr!ficas

y sealamos el tipo de gr!fica A=A9$I8" &que es el tipo de gr!fica m!s rele#ante de cuantas aparecen en la lista y el que nos ser#ir! para anali+ar todas nuestras seales analgicas' y la ubicamos en el espacio de traba*o ,aciendo clic7 en .l y arrastrando el ratn ,asta un tamao que consideremos apropiado. Con esto ya tenemos gr!fica aunque a,ora est. #aca. 9o primero que ,aremos ser! editar sus propiedades &seleccionar con clic7 derec,o propiedades con clic7 i+quierdo' y #eremos que podemos cambiar su ttulo su instante de inicio y su instante final. Cambiaremos el ttulo de la gr!fica a aquel que queramos y le pondremos como instante final @.1@ ms para #er tan slo un ciclo completo de la onda senoidal.

F 8na #e+ establecidas las propiedades de la gr!fica slo nos queda arrastrar ambas sondas ,acia el espacio de la gr!fica y #eremos cmo en su esquina superior i+quierda aparecen los nombres ;? y ;1 lo cual significa que ya ,an sido incluidos en la gr!fica. Para generar los #alores de la gr!fica pulsamos la tecla ESPA)&O y al instante aparecer!n los #alores en la gr!fica. Naciendo clic7 en el ttulo de la gr!fica .sta se abrir! en una #entana nue#a. 8na #e+ en la gr!fica podemos actuar sobre los tra+os como si de componentes se tratara. Podemos seleccionarlos deseleccionarlos e incluso editar sus propiedades o eliminarlos.

2era interesante a,ora probar ese mismo circuito con distintos generadores y distintas configuraciones para estos para comprobar como cada #e+ que pulsamo "2PAC/$ se actuali+a la gr!fica para a*ustarse a los nue#os #alores. -ambi.n podemos alterar los #alores de las resistencias seleccion!ndolas mediante un clic7 derec,o y ,aciendo clic7 i+quierdo en el #alor de la resistencia.

INSTRUMENTOS VIRTUALES
Proteus pone a nuestra disposicin una serie de elementos de medida y seal #irtuales enormemente tiles a la ,ora de simular nuestros circuitos. "stos se encuentran en la ,erramienta intrumentos $irtuales de la barra de ,erramientas . 8na #e+ la seleccionamos podemos #er la lista de instrumentos #irtuales que ,ay a nuestra disposicin.A continuacin se incluye una bre#e explicacin de los m!s rele#antes5 >oltmetros y ampermetros FG 2e incluyen en primer lugar por ser los m!s simples. "xisten en Proteus 1 #oltmetros y 1 ampermetros de corriente contnua y alterna respecti#amente. 2i editamos sus propiedades podemos especificar la unidad de salidas esto es si queremos la salida en #oltios &o amperios segn el instrumento' o alguno de sus submltiplos.

$sciloscopio FG Proteus dispone de un osciloscopio de 1 canales que nos permitir! medir seales de cualquier tipo. Para su utili+acin tan slo tenemos que conectar una de sus entradas a la parte del circuito que queramos medir e iniciar la simulacin. 9a #entana del osciloscopio aparecer! autom!ticamente en pantalla momento en el cual slo tenemos que actuar sobre los mandos como ,aramos con un osciloscopio real ,asta obtener la forma de onda deseada. Nota: el osciloscopio debe aparecer autom!ticamente al iniciar la simulacin pero para ello debe ser el ltimo componente introducido en el circuito esto probablemente sea debido a un fallo en la #ersin 0.1 2P3 &sobre la que se ,i+o este manual' y ser! corregido en #ersiones posteriores.

Ienerador de seal FG es un generador de ba*a frecuencia para su utili+acin lo aadiremos al circuito &seguir para ello las mismas recomendaciones que el osciloscopio' y conectaremos el pin + a la parte del circuito en la cual queramos inyectar la seal. %espu.s iniciaremos una simulacin. 9a #entana del generador de seal se nos abrir! autom!ticamente permiti.ndonos en ella cambiar el tipo de forma de onda que queremos inyectar al circuito su frecuencia y su amplitud.

-erminal #irtual FG 2e usa para simular un puerto ;2141 mediante el cual podemos producir una entrada o salida a un micro que ,aya en nuestro diseo. 9a interaccin se produce mediante el teclado. "n las propiedades de este terminal #irtual podemos cambiar la #elocidad de la conexin en baudios y otras especificaciones de la conexin.

2in duda el principal atracti#o de Proteus radica a pesar de todas sus #enta*as en muc,os !mbitos con programas de caractersticas similares en la posibilidad de simular microprocesadores y particularmente microcontroladores como es por e*emplo el caso de los P/C de :icroC,ip y de los cuales nos ocuparemos a,ora. <a ,emos discutido anteriormente que el punto fuerte de Proteus es su #ersatilidad y a,ora es cuando #erdaderamente #amos a comprobar ,as qu. punto es cierto esto. =o slo nos permitir! Proteus incluir microcontroladores en nuestros diseos y simularlos si no que adem!s nos permitir! depurar sus programas e inclusos crearlos y compilarlos sin salir del entorno de Proteus. Para familiari+arnos con todo el proceso crearemos desde cero un programa en ensamblador para el pic?0fJ3 lo compilaremos lo incluiremos en un circuito lo simularemos y lo depuraremos. Pero #ayamos por partes lo primero que debemos ,acer es ,acer unos a*ustes en Proteus para que podamos compilar nuestros programas5 "ntraremos en el men source/)o#e generation tools... seleccionaremos de la lista el compilador :PA2:M/= y escribiremos en command line 5 Op?0fJ3 Oq (P?( .

SIMULACIN DE MICROCONTROLADORES AJUSTES PREVIOS

Nota:9a configuracin comentada como puede comprobarse es para programar un pic?0fJ3 en caso de querer programarse otro modelo de P/C se debe sustituir el ?0fJ3 por el modelo en cuestin para e#itar fallos de compilacin. Adem!s de esto cambiaremos el editor de cdigo de Proteus ya que el existente no nos da la posibilidad de crear un arc,i#o desde cero. Para ello seleccionaremos el men source/setup e*ternal te*t e#itor... y cambiaremos el e*ecutable que aparece por cualquier otro que usemos en el e*emplo se usa el bloc de notas de windows pero puede ser cualquier otro.

COMPILACIN
8na #e+ reali+ado este paso ya podemos compilar nuestros programas con Proteus #amos a comprobarlo. "ntramos en el men source/a##+remo$e source files... y aparecer! un cuadro de di!logo parecido al de la figura. 9os pasos que ,emos de seguir para aadir un arc,i#o de cdigo son los siguientes5 2eleccionar el compilador de la lista. "n nuestro caso el compilador es el :PA2:M/= por tanto lo seleccionaremos de la lista. Pulsar el botn New para aadir un arc,i#o de cdigo a la lista cada #e+ que lo pulsemos aadiremos un arc,i#o de cdigo al proyecto &usaremos el botn remo#e para borrar arc,i#os de cdigo del proyecto' "n un cuadro de di!logo se nos pedir! el nombre del arc,i#o .A2: que usaremos. Podemos coger un arc,i#o .A2: ya creado o crear nosotros uno como es el caso. Por tanto entraremos en la carpeta donde queramos guardar el arc,i#o y le pondremos por nombre por e*emplo prueba@?. "l programa nos informar! de que dic,o arc,i#o no existe y nos preguntar! si deseamos crearlo &ob#iamente responderemos que s'.

<a podemos salir del cuadro de di!logo. 2i entramos en el men source comprobaremos como en su parte inferior ,ay una opcin nue#a con el nombre del arc,i#o que acabamos de aadir al proyecto. 9a seleccionaremos y se nos abrir! el editor de texto que ,ayamos seleccionado. A,ora introduciremos el siguiente cdigo en .l5

LIST P=16F84 STATUS EQU 3 PORTA EQU 5 TRISA EQU 5 PORTB EQU 6 TRISB EQU 6 RP0 EQU 5 ORG 0XC CONTA RES 1 ; REGISTRO GENERAL PARA EL RETARDO ORG 0X00 INICIO BSF STATUS,RP0 ; ENTRA EN EL BANCO 1 MOVL 0X1F ; MUEVE 1F! A MOV F TRISA ; CONFIGURA EL PUERTO A COMO ENTRADA MOVL 0X00 ; MUEVE 00 A MOV F TRISB ; CONFIGURA EL PUERTO B COMO SALIDA BCF STATUS,RP0 ; SALE DEL BANCO 1 CLRF PORTB ; LIMPIA EL PUERTO B

OTRA BTFSS PORTA,4 ; PREGUNTA SI EL PIN 4 DEL PUERTO A ES CERO GOTO OTRA ; SALTA A LA ETIQUETA OTRA MOVL 0X18 ; MUEVE 18! A MOV F PORTB ; CARGA EN EL PUERTO B CALL RETARDO ; LLAMA A LA ETIQUETA RETARDO BTFSS PORTA,4 ; PREGUNTA SI EL PIN 4 DEL PUERTO A ES CERO GOTO OTRA1 ; SALTA A LA ETIQUETA OTRA1 MOVL 0X"4 ; MUEVE "4! A MOV F PORTB ; CARGA EN EL PUERTO B CALL RETARDO ; LLAMA A LA ETIQUETA RETARDO BTFSS PORTA,4 ; PREGUNTA SI EL PIN 4 DEL PUERTO A ES CERO GOTO OTRA1 ; SALTA A LA ETIQUETA OTRA1 MOVL 0X4" ; MUEVE 4"! A MOV F PORTB ; CARGA EN EL PUERTO B CALL RETARDO ; LLAMA A A LA ETIQUETA RETARDO BTFSS PORTA,4 ; PREGUNTA SI EL PIN 4 DEL PUERTO A ES CERO GOTO OTRA1 ; LLAMA A MOVL 0X81 ; MUEVE 81! A MOV F PORTB ; CARGA EN EL PUERTO B CALL RETARDO ; LLAMA A LA ETIQUETA RETARDO OTRA1 CLRF PORTB ; LIMPIA EL PUERTO B GOTO OTRA ; SALTA A LA ETIQUETA OTRA RETARDO MOVL 0X3" ; MUEVE 3"! A MOV F CONTA ; CARGA A CONTA3 RET NOP ; NO OPERA NOP NOP NOP NOP NOP DECFS# CONTA,1 ; DECREMENTA CONTA1 EN 1 $ SALTA SI ES CERO GOTO RET ; SALTA A LA ETIQUETA RET1 RETURN ; RETORNA END

-odo aquello que siga a un Q son comentarios y no es necesario copiarlos para el correcto funcionamiento del programa aunque s son recomendables para su posterior legibilidad. 8na #e+ escrito el programa y guardado procederemos a compilarlo. Para ello usaremos la opcin de men source/"uil# all la cual abrir! el compilador y proceder! a crear el arc,i#o .N"R de nuestro programa. 2i no ,a ,abido errores &el compilador nos informar! en caso de ,aberlos' ya tenemos nuestro arc,i#o ,exadecimal con el cual podemos simular ya o incluso programar un P/C real mediante un circuito programador y un software destinado a tal efecto como /CP;$I. 2i ,a surgido algun error de compilacin debemos #erificar el cdigo introducido.

SIMULACIN
<a tenemos nuestro arc,i#o ,exadecimal a,ora #amos a proceder a simularlo y depurarlo. Para ello crearemos el siguiente circuito 5

"l P/C?0fJ3A lo encontraremos en la librera :/C;$ mientras que el interruptor se encuentra en AC-/>" ba*o el nombre de 2M/-CN. 9a alimentacin se encuentra en la ,erramienta conectores como P$M";. A,ora solo resta asociar al microcontrolador el ,exadecimal que ,emos creado. Para ello abriremos las propiedades del componente y en el campo Program ,ile introduciremos la ruta del . N"R creado &tambi.n puede ser cualquier otro .N"R para lo cual no se necesita ninguno de los pasos anteriores'. "l circuito como puede comprobarse es extremadamente sencillo y esa es otra #irtud de Proteus permitirnos reali+ar la simulacin necesitando para ello un nmero mnimo de componentes. Probemos a iniciar la simulacin pulsando B?1 o su botn correspondiente en la barra de ,erramientas inferior y acti#emos el interruptor para comprobar como reacciona el microcontrolador. $bser#aremos cmo se acti#an y desacti#an las salidas sin necesidad de aadirle otros componentes como leds o sondas lgicas. A+ul se corresponde a un estado ba*o de la salida y ;o*o a un estado alto. Iris se corresponde a un estado indeterminado.

;ecapitulemos los pasos para crear y compilar nuestro propio programa5 source/a##+remo$e source files... +- /ndicamos :PA2:M/= como el compilador a usar y le damos el nombre del arc,i#o o arc,i#os que queremos compilar. 2eleccionaremos en el men source el nombre del programa que deseemos crear o editar y reali+aremos sobre .l las acciones oportunas o presionar A!T+S y el nmero del arc,i#o deseado. Source/"uil# all para compilar y generar el arc,i#o o arc,i#os .N"R Cargar el programa en el microcontrolador 2i no queremos compilar el programa sino tan slo simular un fic,ero .N"R que ,emos compilado pre#iamente con cualquier otra aplicacin tan slo este ltimo paso es necesario.

DEPURACIN
Pero para sacarle el m!ximo partido a Proteus no debemos conformarnos con compilar y simular nuestros programas. -ambi.n deberemos ser capaces de depurarlos que es lo que #amos a ,acer a,ora. Para ellos emplearemos el men #e"ug y sus mltiples opciones. Para acceder a estas opciones debe estar en marc,a la simulacin y pausada mediante el botn ya que mientras la simulacin se est! produciendo no se acti#ar!n las #entanas de depurado. 8na #e+ iniciemos la simulacin y la pausemos exploraremos el men debug pinc,ando en el o pulsando A!T.% y el nmero de la #entana que queramos acti#ar. :ientras simulamos podemos ir paso a paso en la simulacin con el botn . A continuacin se explicar!n bre#emente las #entanas de depuracin m!s importantes5 1FMatc, window FG "s el inspector de #ariables. Con .l podemos #igilar el #alor de cualquier registro o +ona de memoria. Para ello ,aremos clic7 derec,o sobre el inspector de #ariables seleccionando A## &tems pudiendo ,acerlo por direccin o por nombre. 8na #e+ seleccionada la opcin podremos como en la figura de la i+quierda seleccionar la direccin de memoria que queremos #igilar o como en la figura de la derec,a seleccionar el nombre del registro en cuestin.

2i queremos cambiar el formato en el que se mostrar!n estos datos usaremos el men contextual sobre el registro y seleccionaremos %isplay format y a,i elegiremos la opcin deseada.

4FCP8 source code FG en esta #entana podemos depurar el cdigo ensamblador en s controlando en cada momento qu. instruccin se est! e*ecutando permiti.ndonos introducir puntos de interrupcin y e*ecutar el programa paso a paso.

FG 2imular S ;eanuda la simulacin. FG 2tep o#er S "*ecutar ,asta fin de la funcin o subrutina. FG Step into Ejecutar hasta entrar en la funci n o su!rutina. "# Step out Ejecutar hasta salir de la funci n o su!rutina. "# Ejecutar hasta la posici n del cursor. FG Acti#ar o desacti#ar punto de interrupcin en la posicin del cursor. Cuando durante la e*ecucin se llega a un punto de interrupcin .sta se detiene

instant!neamente. 3FP/C CP8 ;egistersFG>entana con informacin de la instruccin que se est! e*ecutando actualmente y #alores de los principales registros de memoria del P/C tales como el registro de traba*o el registro de estado la configuracin y #alor actual de los puertos etc...

EFP/C CP8 %A-A :emory FG "sta #entana al igual que las siguientes ya se usa para un depurado a m!s ba*o ni#el en ella podemos #er la memoria de datos del microcontrolador en la cual se almacenar!n los contenidos de las #ariables que se usen. Con el inspector de #ariables podemos ,acer un seguimiento m!s ex,austi#o de cualquier posicin concreta de memoria por lo cual esta #entana se reser#a para usos m!s generales.

0FP/C CP8 "P;$: :emoryFG"n esta #entana se nos muestra el contenido de la memoria "P;$: del P/C. "s muy til cuando tenemos programas que deben leer o escribir de .sta memoria para #erificar que estas operaciones se reali+an correctamente.

FAFP/C CP8 P;$I;A: :emoryFG )sta es la memoria de programa del P/C. Aqu se almacena el programa a e*ecutar en el microcontrolador.

JFP/C CP8 2-ACHFGAqu podemos #er la pila de e*ecucin del microcontrolador.