Вы находитесь на странице: 1из 3

2/1/2016

ArduinoeCia:MontandoArduinonaprotoboard

MontandoArduinonaprotoboard
Noltimopost(GravandobootloadernoATMEGA328usandoArduino)eufaleisobrecomogravarobootloader
no ATMEGA328 utilizando a prpria placa do Arduino como gravador, o que permite que voc use o
microcontroladorforadaplacaArduino.LembresetambmquenaFILIPEFLOPvoctemaopodecompraro
chipjcomobootloadergravadoecomtodososcomponentesutilizadosnesteartigo.
Ok,legal,mascomoeuusoomicrocontroladorforadaplacaArduino?
Projetos definitivos utilizando Arduino no precisam, na maioria das vezes, de atualizao constante do
programa contido no microcontrolador. Depois que voc testar o circuito na protoboard e estiver tudo ok, voc
podetransferloparaumaplacadecircuitoimpressoe,comalgunscomponentesadicionais,fazercomqueele
funcione"sozinho".
Assim voc elimina, por exemplo, a necessidade do circuito regulador de tenso e tambm o chip de
comunicaoUSBcomocomputador,compostopeloATMEGA16U2.
Fiqueatentoaofatodeque,utilizandooATMEGA328destaforma,aalimentaodoCIdeveficarentre1,8e
5,5 volts, que so os valores limite fornecidos pelo fabricante e que constam no datasheet do
microcontrolador.
Testar o ATMEGA328 fora da placa bem simples e podemos usar praticamente o mesmo circuito que
montamosparagravarobootloaderdopostanterior,comoacrscimodeumpushbuttonparafazerafunode
botodereset,e2capacitorescermicosde22pFparaligaoaocristal.
Assumindo que temos um Arduino UNO, vamos colocar o microcontrolador no soquete e carregar o seguinte
programa:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

//Programa:SequencialdeledsTesteATMEGA328
//Autor:ArduinoeCia

intpino_verde=4;//Pinoligadoaoledverde
intpino_verm=5;//Pinoligadoaoledvermelho
intpino_amar=6;//Pinoligadoaoledamarelo
inttempo=1000;//Controlaotempodeativacaodosleds

voidsetup()
{
//Defineospinosdosledscomosaida
pinMode(pino_verde,OUTPUT);
pinMode(pino_verm,OUTPUT);
pinMode(pino_amar,OUTPUT);
}

voidloop()
{
digitalWrite(pino_verde,HIGH);
digitalWrite(pino_verm,LOW);
digitalWrite(pino_amar,LOW);
delay(tempo);
digitalWrite(pino_verde,LOW);
digitalWrite(pino_verm,HIGH);
digitalWrite(pino_amar,LOW);
delay(tempo);
digitalWrite(pino_verde,LOW);

http://www.arduinoecia.com.br/2014/01/montandoarduinonaprotoboard.html

1/3

2/1/2016

28
29
30
31
32
33
34
35
36

ArduinoeCia:MontandoArduinonaprotoboard

digitalWrite(pino_verm,LOW);
digitalWrite(pino_amar,HIGH);
delay(tempo);
tempo=tempo50;
if(tempo<100)
{
tempo=1000;
}
}

Esseprogramaacionaos3ledsdocircuitoabaixoemsequncia,eavarivelTEMPOdefineotempoqueoled
ficarligado/desligado.Acadasequnciaavariveltemovalordiminudo,oquefazcomqueosledsacendam
cadavezmaisrpido.QuandoavarivelTEMPOatingeumvalormenordoque100milisegundos,oprocesso
reiniciado.

Comoprogramacarregadoedevidamentetestado,vamosagorautilizaroATMEGAforadoArduinoUno.Retire
o microcontrolador, coloqueo na protoboard e monte o circuito abaixo, observando as conexes do
ATMEGA328, sendo que agora vamos ligar o led verde porta D4 (Pino 6 do ATMEGA), o led vermelho
porta D5 (pino 11 do ATMEGA), e o led amarelo ao D6 (pino 12 do ATMEGA). O resistor ligado ao pino 1
(Reset)temovalorde10K:

http://www.arduinoecia.com.br/2014/01/montandoarduinonaprotoboard.html

2/3

2/1/2016

ArduinoeCia:MontandoArduinonaprotoboard

Alimente o circuito com pilhas/baterias ou outra fonte que fornea at 5.5 volts, e veja o seu ATMEGA328
funcionarsemumaplacaArduino.

http://www.arduinoecia.com.br/2014/01/montandoarduinonaprotoboard.html

3/3

Вам также может понравиться