Você está na página 1de 138

Proteus (Isis, Ares)

Muitos conhecem este poderoso software, ou j escutaram falar, ou j viram exemplos de circuitos simulados nele. Realmente no mundo da simula !o de circuitos eletr"nicos # de tirar o chap#u para software como este. Aos ami$os do forum% http%&&www.forumnow.com.'r&vip&foruns.asp(forum)*+,-. , /ue aconteceu uma oportunidade de al$uns /ue n!o conhecem este poderoso software. A eles /ue $ostam de pro$ramar microcontroladores e tirar suas duvidas # /ue foi dedicado esta p$ina ... 0extos de Arturo Sandoval Bermdez 1r#ditos para a ami$a Prof. Joana pela tradu !o e corre 2es, e sua dedica !o de elevar nossos conhecimentos nesta rea da tecnolo$ia 0odos os exemplos foram tirados da vers!o 6.2, /ue n!o difere muitos dos mais novos, 3tima oportunidade de conhecer um pouco mais so're este software . .. 4oa leitura 5

Introduo. 6 software de desenho e simula !o Proteus 78M # uma ferramenta 9til para estudantes e profissionais /ue desejam acelerar e melhorar suas ha'ilidades para do desenvolvimento de aplica 2es anal3$icas e di$itais. :le permite o desenho de circuitos empre$ando um entorno $rfico no /ual # poss;vel colocar os s;m'olos representativos dos componentes e reali<ar a simula !o de seu funcionamento sem o risco de ocasionar danos aos circuitos. A simula !o pode incluir instrumentos de medi !o e a inclus!o de $rficas /ue representam os sinais o'tidos na simula !o.

6 /ue mais interesse despertou # a capacidade de simular ade/uadamente o funcionamento dos microcontroladores mais populares (PI18, A0M:=>A7R, Motorola, ?@.+, etc.) 0am'#m tem a capacidade de passar o desenho a um pro$rama inte$rado chamado AR:8 no /ual se pode levar a ca'o o desenvolvimento de placas de circuitos impressos.

Procedimento de Arranque do programa


+.> In;cio >A Pro$ramas >A Proteus B Professional >A I8I8 B Professional.

C.> A forma curta # dar um duplo clicD no ;cone do pro$rama /ue se locali<ado no desDtop.

1IR1EI068 4F8I168
B.! "ircuito B#$ico % & '(e$envolvimento) ! Alimentao de um *+mpada de corrente alterna. +.> Gar um clicD no 'ot!o Pic, (evice$ locali<ado na parte es/uerda da tela de'aixo da tela de explora !o do dia$rama para a'rir a forma do mesmo nome.

C.> Ha janela *i-rarie$ (Parte superior es/uerda) procurar a 'i'lioteca A.I/0, e dar um clicD so're ela.

-.> Ha janela 1-2ect$ escolher o componente A*.034A.13 dando duplo clicD so're o nome.

pode>se o'servar /ue na janela (0/I"0S aparece o nome do componente eleito. 8e for o 9nico componente /ue vai se escolher se pode fechar a forma PicD Gevices, mas se for necessrio mais de um, pode>se continuar escolhendo os componentes necessrios para nosso desenho

*.> Ha mesma 'i'lioteca A.I/0 dar duplo clicD so're o componente *A5P.

..> Iechar a Iorma Pic, (evice$ no 'ot!o padr!o. (A cru< na es/uina superior direita) B.> Gar um clicD na palavra A*.034A.13 da janela (0/I"0S e o'servar /ue aparece o componente na tela de explora !o do circuito.

J.> :xplorar as fun 2es de orienta !o do componente, parte inferior es/uerda da tela.

?.> 1ome ando pela es/uerda pressionar cada um dos 'ot2es de orienta !o. ,.> Ho /uadro de texto se pode introdu<ir um Kn$ulo mas s3 aceita valores de (@L, M&>,@L, M&>+?@L, M&>CJ@L), por isso # melhor diri$ir a orienta !o por meio dos 'ot2es. :ste mesmo /uadro de texto mostra o Kn$ulo atual o'tido ao pressionar os 'ot2es. +@.> Geixar o componente na posi !o inicial. ++.> 1om o componente selecionado dar um clicD na rea de tra'alho, com o /ue se conse$ue colocar o componente na rea de tra'alho.

+C.> Repetir o procedimento anterior com o componente =AMP.

+-.> 1onfi$urar os componentes da se$uinte maneira. A.> Gar um clicD com o 'ot!o direito so're o componente A*.034A.13. Hotar /ue seu contorno troca para vermelho.

4.> Gar um clicD a$ora com o 'ot!o es/uerdo para a'rir a forma 0dit "omponent.

1.> Gar um nome ao componente no campo 1omponent Reference (A1+), P"r o valor do componente no 1omponent 7alue (+C7), Modificar o valor da amplitude para (+C7) e a fre/NOncia para @..P<. d.> Pressionar o 'ot!o 6Q. :.> 7erificar os valores do componente *A5P e se o valor da volta$em corresponder com o do A*.034A.13, n!o # necessrio reali<ar nenhuma modifica !o. Pressionar 6Q.

+*.> Reali<ar a conex!o dos componentes da se$uinte forma% A.> 1olocar o ponteiro do mouse no extremo superior do A=0:RHA06R. Aparece uma cru< no extremo da flecha. 4.> Gar um clicD para ha'ilitar a conex!o por meio de ca'o. 1.> Geslocar o mouse (desaparece a cru<) at# o extremo superior do componente =AMP e o'ter /ue volte a aparecer a cru< no extremo da flecha. d.> Gar outro clicD para reali<ar a conex!o.

:.> Repetir os passos anteriores para a pare inferior dos componentes. 3e$ultado

:ste # o procedimento padr!o para conectar /ual/uer componente com o /ue se tra'alhe no pro$rama. +..> Provar o funcionamento do circuito pressionando o 'ot!o plaR /ue se encontra na parte inferior da tela.

+B.> Para aproximar o circuito e poder o'servar melhor a simula !o se pode recorrer aos controles de <oom.

1ome ando da es/uerda para a direita temos% A.> Re>centrar a tela.

4.> Incrementar a aproxima !o. 1.> Gecrementar a aproxima !o. d.> 7er a folha completa. :.> 7er uma rea selecionada Esar a ferramenta para ver uma rea selecionada dando um clicD

Esando o cursor modificado pressionar o 'ot!o es/uerdo no extremo superior es/uerdo do circuito armado e sem soltar o 'ot!o formar um retKn$ulo /ue contenha todo o circuito, por 9ltimo soltar o 'ot!o. :ste procedimento se pode usar para aproximar partes de um circuito de maior tamanho. +J.> Pa'ilitar as cores de volta$em e as flechas de corrente do circuito para completar as simula !o. A.> In$ressar no menu 8Rstem e selecionar Set Animation 1ption$... para a'rir a forma Animated "ircuit$ "onfiguration.

4.> Pa'ilitar as casinhas 8how Sire 7olta$em 'R 1olour( e 8how Sire 1urrent with Arrows(. 1.> Pressionar 6Q. +?.> 7oltar a simular o circuito e o'servar o /ue ocorre. +,.> 8alvar o circuito. A.> 8elecionar a ferramenta 8ave current desi$n.

4.> Gar um clicD no 'ot!o criar uma nova pasta e lhe dar o nome de 1urso Proteus.

1.> In$ressar na pasta proteus e criar dentro desta, uma pasta com o nome :xerc;cio +.

d.> Ho campo 4ome de arquivo nomear ao ar/uivo como :xerc;cio +.

dar um clicD no 'ot!o salvar ou pressionar a tecla 04.03.

".! "ircuito B#$ico %2 '(e$envolvimento) ! Bateria ! Interruptor ! *ampada.

+.> Gar um clicD em "reate a 4e6 (e$ign.

C. Presionar el 'ot3n Pic, (evice$.

-.> Ga janela *i-rarie$ selecionar A0I7: e na janela 6'jects escolher os componentes% > 4A00:RT > =AMP > 8SI01P

*.> Armar o se$uinte circuito%

Modificar os valores dos componentes se for necessrio. ..> :xecutar a simula !o do circuito e testar o funcionamento do interruptor. Gando clicDs com o 'ot!o es/uerdo nas flechas acima > a'aixo do interruptor. B.> 8alvar o ar/uivo. A.> Pressionar 8ave current desi$n. 4.> 8air da pasta do :xerc;cio +. (8u'ir um n;vel) 1.> dentro da pasta de 1urso Proteus, criar uma nova pasta com o nome :xerc;cio C. d.> In$ressar na pasta :xerc;cio C e dentro dela salvar o ar/uivo com o nome :xerc;cio C.

(.! "ircuito B#$ico %7 '(e$envolvimento) ! Bateria ! Potenciometro ! *ampada. +.> Gar um clicD em "reate a 4e6 (e$ign. C. Pressionar o 'ot!o Pic, (evice$. -.> Ga janela *i-rarie$ selecionar A0I7: e na janela 6'jects escolher os componentes% > 4A00:RT > =AMP > P60>=IH

*.> Armar o se$uinte circuito%

..> :xecutar a simula !o do circuito e provar o funcionamento do potenciometro. 1om o ponteiro do mouse dar clicD nas flechas para aumentar ou diminuir a resistOncia. B.> 8alvar o ar/uivo. A.> Pressionar 8ave current desi$n. 4.> 8air da pasta do :xerc;cio C. (8u'ir um n;vel) 1.> dentro da pasta de 1urso Proteus, criar uma nova pasta com o nome :xerc;cio -. d.> In$ressar na pasta :xerc;cio - e dentro dela salvar o ar/uivo com o nome :xerc;cio -.

0.! Adicionar in$trumento$ de medida a um circuito. Esando o circuito anterior fa<er o se$uinte% A.> Ga 'arra superior de ferramentas selecionar 7irtual Instruments.

4.> Gar duplo clicD com o 'ot!o no ca'o /ue une o potenciometro e a lampada para deixar espa o a um amper;metro. 8e for necessrio mover um pouco a lampada para a direita.

H60A% Para mover um componente na rea de tra'alho se reali<am os se$uintes passos% I.> Gar um clicD com o 'ot!o direito so're o componente /ue se deseja mover. iI.> Pressionar o 'ot!o es/uerdo so're o componente e sem soltar arrastar o componente U posi !o desejada.

1.> Ga janela I4S.38504.S ao lado es/uerdo da tela selecionar com um clicD es/uerdo o instrumento(" A550.03.

d.> Gar um clicD na rea de tra'alho entre o potenci"metro e a lKmpada, e conectar os componentes para o'ter o se$uinte circuito.

:.> 8elecionar o instrumento (" /1*.50.03 da janela I4S.38504.S. I.> 1olocar na rea de tra'alho da mesma forma /ue o instrumento anterior para o'ter o se$uinte circuito.

V.> :xecutar a simula !o do circuito. P.> 8alvar o circuito. 1omo j tinha sido salvando o ar/uivo j n!o # necessrio trocar de diret3rio ou nomear o ar/uivo. H60A% para voltar h ha'ilitar a janela (0/I"0S pressionar, na 'arra de ferramentas, "omponent.

9.! "ircuito B#$ico %: ! "ircuito Serie.

;.! "ircuito B#$ico %< ! "ircuito Paralelo.

=.! "ircuito B#$ico %6 ! "ircuito com doi$ interruptore$ para controle em dua$ dire>e$.

H60A% Esar o componente S?!SP(. da 'i'lioteca A.I/0.

P31.08S /S5 2
I.! "ircuito B#$ico %@ ! "ontrole de direo de um motor "(.

6 motor se encontra na 'i'lioteca A.I/0 e ter /ue selecionar o /ue s3 tem o nome 51.13. 6s interruptores tam'#m se encontram na 'i'lioteca A.I/0 e seu nome # S?!(P(..

J.! "ircuito B#$ico %A ! 8$o de 9u$Bvei$.

6 fus;vel se encontra dentro da 'i'lioteca A.I/0 'aixo o nome do IE8:.

Modificar este circuito lhe adicionando um amper;metro.


Modificar

o circuito do motor adicionando um amper;metro e um v3ltmetro.

C.! 0DercBcio$

1 (iodo $e encontra na -i-lioteca (0/I"0 -aiDo o nome (I1(0.

1 capacitor $e encontra na livraria A.I/0 a-aiDo do nome "APA"I.13.

P31.08S /S5 7

*.! 0DercBcio$ 2 A.! 8$o de um tran$formador.

.3A4S913503 E *IB303FA '(0/I"0) ! .3A4!2P2S G(09I40 ;?I30E&07 "onfigurao do A*.034A.13

"onfigurao do .3A4!2P2S B.! (iodo com uma fonte alternada.

3e$i$tHncia E (0/I"0 '30S) (iodo E (0/I"0 '(I1(0) B.! 3etificador de 5eia 1nda.

8$ar o A*.034A.13 com a $eguinte configurao inicial.

Para poder o-$ervar a $aBda no o$cilo$copio trocar a 9reqIHncia a 6J=z.

GGG Adicionar amperBmetro$ e capacitor.

"APA"I.13 E A".I/0 '"APA"I.13) .rocar a$ caracterB$tica$ do$ amperBmetro$ ao 5A. 0 provar a re$oluo com a$ outra$ fila$. ".! 3etificador de onda completa u$ando uma Ponte 3etificadora.

P14.0 30.I9I"A(13A E (0/I"0 'B3I(;0) GGG"onfigurao A*.034A.13.

d.! 8$o de rele$.

3ele E A".I/0 '30*AK)

0.! 8$o de tran$B$tore$.

GGGAtivao (ireta.

GGG 8$ando um divi$or de ten$o.

GGG "om um Potenciometro.

GGG Ativando um 3ele.

GGG 8$ando um capacitor e re$i$tor para criar um retardo de tempoL a$$im como um -oto como re$et do circuito.

Boto E A".I/0 'B8..14) GGG Provar o $eguinte circuito e o-$ervar a mudana.

GGG "ircuito com retardo de ace$o vari#vel.

9.! 8$o de operacionai$.

GGG "ircuito de controle de inten$idade de cada l+mpada.

GGG 0DercBcio$ com amplificadore$ operacionai$. "ircuito 4M1 Inver$or

"ircuito Inver$or

g.! 8$o do "ircuito Integrado <<<

GGG Porta A4(.

A!I4P8. E A".I/0 '*1;I"S.A.0) B!I4P8. E A".I/0 '*1;I"S.A.0) N!18.P8. E A".I/0'*1;I"P31B0'BI;)) A4( E A".I/0 'A4()

GGG Porta 13. 'Armar no me$mo circuito)

13 E A".I/0 '13)

GGG Pora 41.. 'Armar no me$mo circuito)

41. E A".I/0 '41.)

GGG Pota 4A4(. 'Armar no me$mo circuito)

4A4( E A".I/0 '4A4() GGG Porta 413 'Armar no me$mo circuito)

413 E A".I/0 '413)

GGG Porta O13. 'Armar no me$mo circuito)

O13 E A".I/0 'O13) I.! *Pgica SeqIencial. GGG 9*IP!9*1P '3S)

GGG 9*IP!9*1P '()

(.99 E A".I/0 '(.99)

"*1"C E A".I/0 '"*1"C)

GGG 9*IP!9*1P 'JC)

JC99 E A".I/0 'JC99)

GGG 30;IS.31 (0 (0S*1"A504.1

GGG "14.A(13 BI4Q3I1 cR (ISP*AK @ S0;504.1S E (ISP*AK '@S0;!B"()

.! 8$o do "onver$or AnalPgico (igital.

C.! =a-ilitao do compilador PI" BASI" P31. I.> In$ressar no menu 8ource.

II.> 8elecionar Gefine 1ode Veneration 0ools... e pressionar o 'ot!o H:S.

III.> Procurar a pasta na rai< de W1W com o nome P'pC**.

I7.> In$ressar na pasta P'pC** e selecionar o ar/uivo P'pw.

7.> 1ompletar a forma como se mostra na se$uinte fi$ura e pressionar 6Q.

*.! Prova de funcionamento do programa B*I4C. faz!$e pi$car um led conectado a P13.B.J

I.! "riar o $eguinte circuito.

(0/I"0 '"AP) (0/I"0 '"3KS.A*) (0/I"0 '30S)

5I"31 'PI"&69A:A) A".I/0 '*0(!30() II.! Salvar o circuito em uma pa$ta com o nome Blin, e nomear ao arquivo Blin,. III.! "opiar o $eguinte teDto ao 41.0PA( do ?indo6$ e $alva!lo em uma arquivo de teDto com o nome Blin,.-a$ dentro da pa$ta Blin,. XPro$rama de Xcada se$undo. loop% Pause =ow Pause Voto Xpiscando. :nd I/.! Ingre$$ar no menu Source. loop exemplo Pi$h .@@ P6R04.@ .@@ XRetorna XRetardo ao loop /ue fa< piscar a um XAcende de XApa$a de e o =:G conectado o .. o .. =:G a P6R04.@ =:G se$undos =:G se$undos fica

P6R04.@ XRetardo

/.! Selecionar AddR3emove Source "ode 9ile$...

/I.! 4o "ode ;eneration .ool$ e$colSer PBP?.

/II.! Pre$$ionar o -oto 40?.

/III.! Selecionar o arquivo Blin,.-a$.

IO. Pre$$ionar 1C.

41.A Para que funcione todo o anterior deve Saver!$e incluBdo no PA.= do $i$tema ?indo6$ a rota T pa$ta " UPBP2::L i$to $e con$egue editando o arquivo A8.10O0".BA.L no que $e adiciona ao final do PA.= eDi$tente. Para o ?indo6$ 2JJJ e OP o procedimento V diferente. tem!$e que ingre$$ar na forma SW$temL $elecionar 1p>e$ Avanada$ e ter# que declarar uma nova vari#vel de entorno. 0$te pendente verificar e$te$ pa$$o$.

O.! 4o menu Source e$colSer Build All. Se tudo e$ta correto deve aparecer a $eguinte 2anela a qual $e pode fecSar pre$$ionando "*1S0.

OI.! (ar clic, com o -oto direito $o-re o microcontrolador e depoi$ outro com o e$querdo para a-rir a forma de configurao.

OII.! (ar um clic, com o -oto e$querdo no Bcone que mo$tra uma pa$ta a-erta 'que marca o ret+ngulo vermelSo). OIII.! Selecionar o arquivo Blin,.SeD.

OI/.! A2u$tar a freqIHncia do relPgio a :5=z no campo Proce$$or "loc, 9recuencW. O/.! Pre$$ionar 1C. O/I.! 0Decutar a $imulao.

P31.08S /S5 :

5.! 0Demplo$ com microcontroladore$ Pic da 5I"31"=IP. I.! 5icrocontrolador PI"&69A: com doi$ *0(S.

"omponente$

(0/I"0 '"AP) E 77p9 (0/I"0 '"3KS.A*) E :5=z (0/I"0 '30S) E &J,L &2JL &2J (0/I"0 '"AP!0*0") E &Ju9

5I"31 'PI"&69A:A) A".I/0 '*0(!;3004) A".I/0 '*0(!30() A alimenta !o e o terra para este circuito se encontre dentro do Inter>8heet 0erminal da 'arra de ferramentas.

Programa 0RI8A ) @ P6R0A.@ ) + P6R0A.+ ) @

A84% 06VV=: P6R0A.@ 06VV=: P6R0A.+ PAE8: .@@ V606 A84 :HG GGG Provar o $eguinte circuito

Programa

0RI8A ) @ =6S P6R0A.@ PIVP P6R0A.+ =6S P6R0A.C A84% 06VV=: P6R0A.@ 06VV=: P6R0A.+ 06VV=: P6R0A.C PAE8: +@@@ V606 A84 :HG iI.! "ircuito com interruptore$ de 2 po$i>e$.

Programa 0RI84 ) Y++++++++ 0RI8A ) @ 8S8 7AR 4T0: 6P0I6HZR:V ) @ A84% 8S8 ) P6R04 [ Y@@@@+++@

8:=:10 1A8: 8S8 1A8: Y+++@ =6S P6R0A.@ 1A8: Y++@@ PIVP P6R0A.@ 1A8: Y+@+@ PIVP P6R0A.@ 1A8: Y+@@@ =6S P6R0A.@ 1A8: Y@++@ PIVP P6R0A.@ 1A8: Y@+@@ =6S P6R0A.@ 1A8: Y@@+@ =6S P6R0A.@ 1A8: Y@@@@ PIVP P6R0A.@ :HG 8:=:10 PAE8: +@@ V606 A84 :HG iII.! 8$o do *"( AlfanumVrico e ativao de uma carga de corrente alterna por meio de um tran$i$tor e um rele.

"omponente$

BIP1*A3 '242222) (ISP*AK '*5J&6*) Programa X 8et =1G Gata port G:IIH: =1GZGR:V P6R0A X8et startin$ Gata 'it (@ or *) if *>'it 'us G:IIH: =1GZG4I0 @ X 8et =1G Re$ister 8elect port G:IIH: =1GZR8R:V P6R0A X 8et =1G Re$ister 8elect 'it G:IIH: =1GZR84I0 * X 8et =1G :na'le port G:IIH: =1GZ:R:V P6R04 X 8et =1G :na'le 'it G:IIH: =1GZ:4I0 X 8et =1G 'us si<e (* or ? 'its) G:IIH: =1GZ4I08 * X 8et num'er of lines on =1G G:IIH: =1GZ=IH:8 C X 8et command delaR time in us G:IIH: =1GZ16MMAHGE8 C@@@ X 8et data delaR time in us G:IIH: =1GZGA0AE8 .@ 0RI84.+ ) @ A84% =1G6E0 \I:, +, WP6=A A=EMH6W PAE8: +@@@

=1G6E0 \I:, \1@, WPR60:E8W PAE8: +@@@ 06VV=: P6R04.+ V606 A84 :HG i/.! "omunicao $erial entre doi$ microcontroladore$ PI"&69A:.

Programa$ XPicuno.-a$Y

IH1=EG: Wmodedefs.'asW 0RI8A ) C.. A84% 8:R6E0 P6R04.@, 0,B@@, ]W6QRW,P6R0A^ V606 A84 :HG

XPicdo$.-a$Y IH1=EG: Wmodedefs.'asW 0RI8A ) @ A84% 8:RIH P6R04.@, 0,B@@, ]W6QRW^, P6R0A 06VV=: P6R04.+ V606 A84 :HG

/.! 8$o do microcontrolador PI"&6962A

41.A modificar o micro utilizado em (efine "ode ;eneration .ool$... dentro do menu Source.

"ircuito

"omponente$

5I"31 'PI"&6962AA) Programa G:IIH: 1M16H ) J 7R16H ) @ X A&G 7olta$e reference disa'led X G:IIH: X 8et startin$ Gata 8et 681 PortA =1G =1GZGR:V 'it (@ * I&6 port P6R04 'us

) Gata or *) if

di$ital

*>'it

G:IIH: X G:IIH: X G:IIH: X G:IIH: X G:IIH: X G:IIH: X G:IIH: X G:IIH: X G:IIH: =1GZGA0AE8 .@ PAE8: C@ =1G6E0 \I:, +, WH6M4R:W A84% V606 A84 :HG 8et

=1GZG4I0 =1G Re$ister 8elect =1GZR8R:V 8et =1G Re$ister 8elect =1GZR84I0 8et =1G :na'le =1GZ:R:V 8et =1G :na'le =1GZ:4I0 =1G 'us si<e (* or ? =1GZ4I08 8et num'er of lines on =1GZ=IH:8 8et command delaR time in =1GZ16MMAHGE8 8et data delaR time in 8et

@ port P6R0A 'it C port P6R0A 'it 'its) * =1G C us C@@@ us

vi.! 8$o do (i$plaW AlfanumVrico e .eclado. .rocar o tipo de micro da me$ma forma que o circuito anterior para !P&69A@@

"omponente$ A".I/0 'C0KPA(!S5A**"A*")

Programa G:IIH: 681 C@ XG:IIH: =6AG:RZE8:G + AG16H+ ) J 0RI8: ) @ 0RI84 ) Y@@@@++++ 6P0I6HZR:V ) Y@@@+@+@+ XIH016HC ) Y@@@@@@@@ G:IIH: =1GZGR:V P6R04 G:IIH: =1GZG4I0 * G:IIH: =1GZR8R:V P6R0: G:IIH: =1GZR84I0 @ G:IIH: =1GZ:R:V P6R0: G:IIH: =1GZ:4I0 + G:IIH: =1GZ4I08 * G:IIH: =1GZ=IH:8 C G:IIH: =1GZ16MMAHGE8 C@@@ G:IIH: =1GZGA0AE8 .@ 0ecla var 'Rte I=AV 7AR 4I0 =+ 16H Y@+++@@@@ =C 16H Y+@++@@@@ =- 16H Y++@+@@@@ =* 16H Y+++@@@@@

PAE8: C@ =1G6E0 \I:, +,W=istoW X1lear displaR and show _Preparado` Rastreo% P6R04 ) =+ 8:=:10 1A8: P6R04 [ \@I 1A8: Y+++@ =1G6E0 \I:, +,W6H&1W I=AV ) + 1A8: Y++@+ =1G6E0 \I:, +,W@W I=AV ) + 1A8: Y+@++ =1G6E0 \I:, +,W)W I=AV ) + 1A8: Y@+++ =1G6E0 \I:, +,WMW I=AV ) + :HG 8:=:10 P6R04 ) =C 8:=:10 1A8: P6R04 [ \@I 1A8: Y+++@ =1G6E0 \I:, +,W+W I=AV ) + 1A8: Y++@+ =1G6E0 \I:, +,WCW I=AV ) +

1A8: Y+@++ =1G6E0 \I:, +,W-W I=AV ) + 1A8: Y@+++ =1G6E0 \I:, +,W>W I=AV ) + :HG 8:=:10 P6R04 ) =8:=:10 1A8: P6R04 [ \@I 1A8: Y+++@ =1G6E0 \I:, +,W*W I=AV ) + 1A8: Y++@+ =1G6E0 \I:, +,W.W I=AV ) + 1A8: Y+@++ =1G6E0 \I:, +,WBW I=AV ) + 1A8: Y@+++ =1G6E0 \I:, +,WaW I=AV ) + :HG 8:=:10 P6R04 ) =* 8:=:10 1A8: P6R04 [ \@I 1A8: Y+++@ =1G6E0 \I:, +,WJW I=AV ) + 1A8: Y++@+

=1G6E0 \I:, +,W?W I=AV ) + 1A8: Y+@++ =1G6E0 \I:, +,W,W I=AV ) + 1A8: Y@+++ =1G6E0 \I:, +,W&W I=AV ) + :HG 8:=:10 II I=AV ) + 0P:H PAE8: +.@ I=AV ) @ :HGII V606 Rastreo

P31.08S /S5 <


4.! 8$o do PI"" com o Proteu$.

Armar o se$uinte circuito% :ste circuito se utili<ou como controle de um inversor monofsico de m9ltiplos pulsos, com fre/NOncia e volta$em varivel. +?I*.C

"omponente$

MI1R6 (PI1+?I*.C) GI8P=AT (=M@+B=) A10I7: (4E006H) A10I7: (8SI01P)

8alvar o circuito em uma nova pasta s3 para o circuito. Hesta pasta se deve salvar tam'#m o c3di$o fonte $erado com o PI11. Pegar o $eguinte programa em um novo arquivo u$ando PI"". Programa && Inversor @. WIinalW binclude c+?I*.C.hA buse delaR(clocD)C@@@@@@@) bfuses P8,PE0,4R6SH6E0,H6SG0,H6PR60:10,H6=7P, 46R7C@, 807R:H buse fastZio(1) buse fastZio(4) binclude clcd.cA int+B delta ) @, d+ ) @, deltaZ'acD, d+Z'acDd int? volfrec ) @, cuenta ) @, periodo ) @d int+ inicio ) @, arran/ue ) @, fla$+ ) @, fla$C ) @d void cam'io()d bIH0Z:a0 void modo() e if (inicio )) @) e inicio ) +d fla$+ ) +d lcdZ$otoxR(.,C)d lcdZputc(W@@@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@@@W)d f

else e if (input(PIHZ4C) )) +) e if (volfrec c) ++) e volfrec M) +d f f else e if (volfrec A @) e volfrec >) +d f f cam'io()d f f bIH0Z:a0+ void motor() e disa'leZinterrupts(IH0Z:a0+)d inicio ) @d arran/ue ) +d volfrec ) -d cam'io()d f

bIH0Z0IM:R@ void motZarr() e if (volfrec c) ++) e setZtimer@(CB*J-)d volfrec M) +d cam'io()d if (volfrec )) +C) e disa'leZinterrupts(IH0Z0IM:R@)d setupZtimerZ@(R011Z6II)d f f f bIH0Z0IM:R+ void car$aZdelta() e 8:0Z0RI8Z1(@x@@)d 8:0Z0RI8Z4(@xII)d outputZ1(@x@@)d disa'leZinterrupts(IH0Z:a0)d disa'leZinterrupts(IH0Z0IM:R+)d setupZtimerZ+(0+ZGI8A4=:Gg0+ZGI7Z4TZ+)d setZtimer-(d+Z'acD)d setupZtimerZ-(0-ZIH0:RHA=g0-ZGI7Z4TZC)d

ena'leZinterrupts(IH0Z0IM:R-)d periodo M) +d cuenta M) +d if (cuenta )) .) e cuenta ) @d if (fla$C )) @) e fla$C ) +d f else e fla$C ) @d f f outputZlow(PIHZ1@)d outputZlow(PIHZ1+)d ena'leZinterrupts(IH0Z:a0)d f bIH0Z0IM:Rvoid car$aZd+() e disa'leZinterrupts(IH0Z:a0)d disa'leZinterrupts(IH0Z0IM:R-)d setupZtimerZ-(0-ZGI8A4=:Gg0-ZGI7Z4TZC)d

setZtimer+(deltaZ'acD)d setupZtimerZ+(0+ZIH0:RHA=g0+ZGI7Z4TZ+)d if (fla$C )) @) e outputZhi$h(PIHZ1@)d f else e outputZhi$h(PIHZ1+)d f ena'leZinterrupts(IH0Z0IM:R+)d f void main() e portZ'Zpullups(0RE:)d setupZadcZports(H6ZAHA=6V8)d setupZadc(AG1Z6II)d setupZpsp(P8PZGI8A4=:G)d setupZspi(IA=8:)d setupZtimerZC(0CZGI8A4=:G,@,+)d disa'leZinterrupts(IH0Z0IM:R+)d disa'leZinterrupts(IH0Z0IM:R-)d setupZtimerZ@(R011Z6II)d

extZintZed$e(PZ06Z=)d lcdZinit()d lcdZputc(XhfX)d lcdZ$otoxR(C,+)d lcdZputc(WIH7:R86R I0AW)d lcdZ$otoxR(+,C)d lcdZputc(W76=%6II IR:1%6IIW)d setupZtimerZ+(0+ZGI8A4=:Gg0+ZGI7Z4TZ+)d setZtimer+(@x@@@+)d setupZtimerZ-(0-ZGI8A4=:Gg0-ZGI7Z4TZC)d setZtimer-(@x@@@+)d setupZtimerZ@(R011Z6II)d setZtimer@(@x@@@+)d ena'leZinterrupts(V=64A=)d ena'leZinterrupts(IH0Z:a0)d ena'leZinterrupts(IH0Z:a0+)d while(0RE:) e if (inicio )) +) e if (periodo )) +@) e periodo ) @d fla$+ ) @d f if (fla$+ )) @)

e deltaZ'acD ) deltad d+Z'acD ) d+d fla$+ ) +d setZtimer-(d+Z'acD)d setupZtimerZ-(0-ZIH0:RHA=g0-ZGI7Z4TZC)d ena'leZinterrupts(IH0Z0IM:R-)d f f else e if (arran/ue )) +) e disa'leZinterrupts(IH0Z:a0+)d setZtimer@(CB*J-)d setupZtimerZ@(R011ZIH0:RHA=gR011ZGI7Z+C?)d ena'leZinterrupts(IH0Z0IM:R@)d arran/ue ) @d inicio ) +d fla$+ ) @d f f f f void cam'io() e switch (volfrec) e

case @% disa'leZinterrupts(IH0Z0IM:R+)d disa'leZinterrupts(IH0Z0IM:R-)d ena'leZinterrupts(IH0Z:a0+)d outputZlow(PIHZ1@)d outputZlow(PIHZ1+)d fla$+ ) +d lcdZ$otoxR(.,C)d lcdZputc(W@@@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@@@W)d 'reaDd case +% fla$+ ) @d disa'leZinterrupts(IH0Z:a0+)d delta ) B.CCJd d+ ) +.B,@d lcdZ$otoxR(.,C)d lcdZputc(W@+@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@@.W)d 'reaDd case C% delta ) B*,+,d d+ ) *@?*.d lcdZ$otoxR(.,C)d lcdZputc(W@C@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@+@W)d 'reaDd case -% delta ) B*B+@d d+ ) *,--Cd lcdZ$otoxR(.,C)d lcdZputc(W@-@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@+.W)d 'reaDd

case *% delta ) B*-@+d d+ ) .-B.-d lcdZ$otoxR(.,C)d lcdZputc(W@*@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@C@W)d 'reaDd case .% delta ) B-,,-d d+ ) .B-@?d lcdZ$otoxR(.,C)d lcdZputc(W@.@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@C.W)d 'reaDd case B% delta ) B-B?*d d+ ) .?+C,d lcdZ$otoxR(.,C)d lcdZputc(W@B@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@-@W)d 'reaDd case J% delta ) B--JBd d+ ) .,*J-d lcdZ$otoxR(.,C)d lcdZputc(W@J@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@-.W)d 'reaDd case ?% delta ) B-@BJd d+ ) B@.C+d lcdZ$otoxR(.,C)d lcdZputc(W@?@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@*@W)d 'reaDd

case ,% delta ) BCJ.?d d+ ) B+-B,d lcdZ$otoxR(.,C)d lcdZputc(W@,@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@*.W)d 'reaDd case +@% delta ) BC*.@d d+ ) BC@J,d lcdZ$otoxR(.,C)d lcdZputc(W+@@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@.@W)d 'reaDd case ++% delta ) BC+*+d d+ ) BCB??d lcdZ$otoxR(.,C)d lcdZputc(W++@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@..W)d 'reaDd case +C% delta ) B+?-Cd d+ ) B-CC+d lcdZ$otoxR(.,C)d lcdZputc(W+C@W)d lcdZ$otoxR(+*,C)d lcdZputc(W@B@W)d 'reaDd f f

41.A recomenda!$e ta-ular o programa anterior para que $e2a mai$ f#cil $ua leitura.

8alvar o ar/uivo na mesma pasta em /ue se salvou o circuito. 1ompilar o ar/uivo.

Para que o programa anterior funcione corretamente V nece$$#rio editar o arquivo *"(." que vem com o PI""L $u-$tituindo a in$truo delaWZcWcle$'&) por delaWZu$'&). 0$te arquivo $e encontra em " UArcSivo$ de programaUPI""U(river$

"arregar o arquivo G.=0O gerado pelo PI""L como $e realizou para o$ microcontroladore PI"&69A: e A@@. A freqIHncia do relPgio deve $er trocada para 2J5=z.

I.! 8$ando ISIS montar o $eguinte circuito

"omponente$ GI6G: (+H*+*?) 4IP6=AR (41.*J)

G:7I1: (1AP>:=:1) GI6G: (-:i?7CG.) GI6G: (-:i.7+G.) G:7I1: (R:8) G:7I1: (16HH>G,) MI1R6 (PI1+BI?JJ) A alimenta !o e o terra para este circuito se encontram dentro do Inter>8heet 0erminal da 'arra de ferramentas.

j necessrio eti/uetar o P6S:R como 7GG e o VR6EHG como 788, para /ue se reali<e a conex!o ade/uada com o PI1. As duas terras devem ter a mesma eti/ueta. 0am'#m se re/uer modificar o emcapsulamento do capacitor de +@@uI, o /ue se reali<a da se$uinte forma% Gar clicD direito so're o componente 1AP>:=:1 (+@@uI) W1+W e depois com o es/uerdo para a'rir sua forma de confi$ura !o.

Gar um clicD no s;m'olo de interro$a !o.

Procurar o 6'jeto (:=:1>RAGC@) da 'i'lioteca PA1QAV: dando um duplo clicD so're o nome do o'jeto. Pressionar 6Q na forma de edi !o do componente. 8alvar o circuito. Ir ao menu 0ools e pressionar Hetlist 1ompiler. Ho mesmo menu pressionar Hetlist to AR:8. 0am'#m se pode pressionar o ;cone de AR:8 /ue se encontra na 'arra de ferramentas. 6 /ual $era a Hetlist e a exporta a AR:8.

a're>se a tela de tra'alho do AR:8.

6s componentes aparecem do lado es/uerdo da tela, ao parecer n!o serve de nada o ter conectado os componentes no I8I8, mas o /ue acontece # /ue # necessrio colocar os componentes dentro de uma rea /ue represente o tamanho da placa /ue /ueremos criar. Ao ir colocando os componentes se v!o conectando automaticamente. 6 processo de coloca !o manual s3 # necessrio para a/ueles componentes /ue re/uerem um coloca !o especial na placa, j /ue outros componentes se podem colocar em forma automtica usando o Auto Placer, /ue se ver mais adiante. reali<a>se a cria !o do 'orde /ue representa o tamanho da placa a $erar. utili<a>se a ferramenta CG Vraphics 4ox.

Ao dar clicD so're esta ferramenta # poss;vel desenhar uma fi$ura retan$ular usando o 'ot!o es/uerdo do mouse dando um clicD dentro da rea de tra'alho e sem soltar desenhar o retKn$ulo do tamanho desejado. ante$ de realizar o anterior V nece$$#rio e$pecificar em que *aWer queremo$ de$enSar o ret+ngulo. I$to $e e$pecifica na parte inferior da tela e $e deve $elecionar [Board 0dge[.

"om i$to $e o-tVm que o programa A30S po$$a identificar a #rea de tra-alSo e$pecifica em que $e tHm que colocar o$ componente$ e aonde $e tem que levar a ca-o o A8.1 318.03. A cor de$te tipo de ret+ngulo V amarelo.

6 9nico componente /ue # necessrio colocar em forma manual # o G4>, (1onector s#rie), j /ue este deve estar no 'ordo da placa e se o fi<ermos em forma automtica ser colocado em /ual/uer parte. Para selecion>lo voltar a ha'ilitar a janela de componentes pressionando 1omponent placement and editin$.

:ste componente est identificado como Wk+W 1olocar este componente no 'orde direito, como se mostra a se$uir.

A numera !o do componente se pode apreciar melhor na se$uinte aproxima !o%

Para a coloca !o correta do componente # necessrio usar as ferramentas de $iro e espelho

6 Auto Placer se ativa ao dar um clicD so're o ;cone desta ferramenta.

Aparece a se$uinte forma em /ue ter /ue pressionar 6Q.

1om o /ue se o't#m o se$uinte resultado%

Ha fi$ura anterior se pode ver /ue j se reali<aram as conex2es, mas ainda n!o se criaram as pistas correspondentes, s3 parecem unidas com um ca'o direto. 6utra ferramenta /ue facilita o tra'alho # a possi'ilidade de $erar as pistas de forma automtica, utili<ando o AE06 RE0:R. antes de poder utili<ar esta ferramenta # necessrio modificar como v!o se criar as pistas, principalmente a $rossura e em /ue lado da placa v!o aparecer. Para trocar estas caracter;sticas se acessa ao menu 8Rstem e se seleciona 8et 8trate$ies... A forma deve ficar da se$uinte forma, para o'ter um lar$o de pista aceitvel e /ue s3 o fa a de um lado da placa. A fi$ura se$uinte # para a 8trate$R Power.

lll 8e aparecer uma 8trate$R P6S:R se devem p"r os mesmos valores /ue se o'servam na forma anterior, com o fim de usar so<inho um lado da placa.

aceitam>se os valores pressionando 6Q. Para executar o AE06 R6E0:R se d um clicD so're a se$uinte ferramenta.

Aparece a se$uinte forma e se pressiona 6Q.

o't#m>se o se$uinte resultado.

1a'e mencionar /ue os resultados s!o variveis e dependem da $rossura das pistas, o tamanho da placa escolhida e se se executar novamente o auto router se pode che$ar a o'ter outro resultado se ainda apresentar pontes (ca'os diretos).

Para tratar de redu<ir o n9mero de pistas n!o criadas se pode ampliar o tamanho da placa. Para poder fa<O>lo # necessrio voltar a selecionar a ferramenta CG Vraphics 4ox e ter na parte inferior da tela selecionado 46ARG :GV:.

seleciona>se o /uadro com o 'ot!o direito e ao trocar a cor para 'ranco aparecem uns pe/uenos /uadros /ue se utili<am para modificar o tamanho da placa, o /ue se reali<a utili<ando o 'ot!o es/uerdo so're estes /uadros pressionando e sem soltar reali<ar a modifica !o de tamanho. depois disto se pode voltar a tentar o AE06>R6E0:R.

Para desfa<er o AE06>R6E0:R se reali<a o se$uinte% +.> :scolher a ferramenta 0racD placement and editin$ dando um clicD so're ela.

C.> Gepois utili<ando o 'ot!o direito selecionar toda a placa e por 9ltimo pressionar 8EPR ou G:=:0: no teclado. 8e /ueremos tirar todos os componentes se tem /ue escolher 1omponent placement and editin$.

8e n!o /uerermos apa$ar o 'orde da placa se tem /ue reali<ar a sele !o dentro desta, j /ue se selecionarmos toda a placa, esta tam'#m se apa$ar. depois de reali<ada a sele !o se pressiona 8EPR ou G:=:0:. 1a'e mencionar /ue os componente s!o retornados U janela 16MP6H:H08 do lado es/uerdo da tela, com o /ual podemos reali<ar o processo novamente at# o'ter um resultado ade/uado. 8e /ueremos adicionar umas perfura 2es nas es/uinas da placa se reali<a o se$uinte% +.> :scolher a ferramenta Round throu$h>hole pad placement.

C.> :scolher o pad ade/uado as nossas necessidades.

-.> Gar um clicD no /ue se necessite, para poder reali<ar a coloca !o nas /uatro es/uinas da placa utili<ando o 'ot!o es/uerdo. *.> Placa final o'tida (H!o est otimi<ada)

lll Placa final o'tida (6timi<ada)

41.A 0$ta placa no foi fa-ricada e provadaL $P $e utiliza ne$te cur$o como eDemplo do funcionamento do programa A30SL por i$$o $e acon$elSa que $e2a feito uma revi$o ante$ de levar a ca-o $ua fa-ricao.

Você também pode gostar