B.4 T ensões após ajuste dos ir uitos eletrni os
4.2 Desenvolvimento do Controlador Digital
4.2.1 Sistema embar ado
Foram pesquisadosalguns mi ro ontroladores disponíveis nomer ado queatendessem as
espe i açõesne essáriasaoprojeto. O ir uitointegradoATMega328 daAtmelCorporation
perten ente à família AVR da sériemegAVR foi es olhido para avaliação. Todososmodelos
destafamília ompartilhamumaarquiteturae onjuntodeinstruçõesbási as,parti ularmente
osgrupostinyAVR(mi ro ontroladores ATtiny), megAVR(osATmega)eXMEGA(osATx-
mega).
O ir uito integrado ATMega328 da Atmelé ummi ro ontrolador(MCU) de8 bits, om
arquitetura Harvard modi ada e onjunto reduzido de instruções (RISC). O fabri ante in-
formaoutrasespe i açõeselétri asquesãoimportantesnaes olhaadequadado ontrolador
digital. Essasespe i açõespodemser observadasaseguir.
•
ArquiteturaRISCde 8 bits;•
CPUde 8 bitsAVR;•
Tensão deoperação 3,3Vou 5,0V;•
Corrente dasportas deI/O40 mA;•
Memóriade programaFLASH 32kB;•
MemóriaSRAM 2kB;•
MemóriaEEPROM1kB;•
Chip om32 pinos;•
Entradas analógi as 8 pinos;•
Entradas e saídasdigitais 14 pinos dasquais6podem serPWM;A Figura 4.27 apresenta a des rição dos pinos do mi ro ontrolador om o seu respe tivo
en apsulamento do tipo TQFP onvertido em DIP de 24 pinos. Este en apsulamento foi
es olhido nesta apli ação devido ao fá il manuseio e o upar uma pequena área na pla a de
ir uitoimpresso.
Figura 4.27: En apsulamento tipoTQFPdo MCU ATMega328.
Nestemi ro ontroladorexistemligaçõesseparadasentreopro essador(CPU)easmemó-
rias FLASHe SRAM.Essaseparação éuma ara terísti a espe í a da arquiteturaHarvard
que possuiduas memórias diferentes e independentes em termos de barramento e ligação à
CPU. Permite a essodireto amemória de dadosseparadamenteda memória deprograma.
Na família AVR as duasvias tem largura de 8 bits e a memória FLASH pode ser usada
paraarmazenar dados onstantes, daíser uma arquitetura Harvard modi ada. Entretanto,
somente instruções armazenadas na FLASH podem ser exe utadas, não é possível exe utar
instruções que estejam na memória SRAM. Como outros mi ro ontroladores AVR, o AT-
Mega328 possui ainda uma memória do tipo EEPROM, que esta ligada na via de onexão
aosperiféri os, e portanto não éa essadapelas instruçõesnormais dea essoa memória.
Além da EEPROM existem três portas de I/O digital (PORTs B, C e D), três timers
(TCx,doisde 8bitse umde16bits),o onversoranalógi o-digital(AD) de10bits,o ompa-
radoranalógi oe asinterfa es seriaisSPI, TWI( ompatível omI
2
Por m, a omuni ação entre o mi ro ontrolador e o ambiente de desenvolvimento pode
serrealizadavia onexãoUSB.Estainterfa etambémpodeserrealizadaforadapla a,substi-
tuídaporum onversorRS232ouaprogramaçãodoMCUpodeserexe utada one tandoum
programadorexterno. Para onverteroníveldossinaisdeRXeTXentreTTLeRS232existe
tambémo ir uito onversor FT232 daFuture Te hnology Devi es International - FTDI.
Na Tabela 4.2, são identi ados os pinos do mi ro ontrolador ATMega328 om as suas
respe tivas des rições. Estas informações mostram à função dos pinos omo, por exemplo,
dealimentação, omuni ação serialRX-TX, I/Odigitais,entradas analógi as, onversor AD,
interrupções externaeo pinode RESET.
Tabela4.2: Funçõesdos pinosdo mi ro ontrolador ATMega328.
Pinos Des rição
V Alimentaçãode3,3V ou5V.
Gnd 0Vterradafonte.
Rx Utilizadoparare eberdadosseriaisttl.
Tx Usadoparatransmitirdadosseriaisttl.
PinosdeI/Odigitais. Estes pinostambém
podemser onguradosparadispararuma
2e3 interrupçãoexternaporumvalorbaixo,
uma bordadesubida ouqueda,ouuma
mudançadeestado.
PinosdeI/Odigitais. Elestambémpodem
3,5,6,9,10,e11 ser onguradosparapropor ionarsaída
depulsospwmde8bits.
PinosdeI/Odigitais. Elestambémpodem
10,11,12e13 ser ongurados omopinosSPI;
10(SS), 11(MOSI),12(MISO)e13(SCK).
A0aA3 Pinosdeentradaanalógi a.
A4aA5 Pinosdeentradaanalógi a. Elestambém
podemserusadospara omuni açãoI
2
C;
A4(SDA)eA5(SCL).
A6aA7 Pinosdeentradaanalógi a.
Reset Reini iaasfun ionalidadesdoMCU
volvimento seriautilizado para onstruir o algoritmo da máquina de estados do ontrolador
digital. Para programar o mi ro ontrolador ATMega328 da família AVR avaliaram-se dois
softwares AVR Studio 4 e o CodeBlo ks. Foi es olhido o ambiente de programação Code-
Blo ks,vistoqueesteambiente integrado éde ódigoabertoemultiplataforma esuaarquite-
turaéorientadaaplugins. Estesre ursostrazeminúmerosbenefí iosaodesenvolvedordevido
prin ipalmente aosplugins queforne ematualizações om maisfun ionalidades.
A programaçãodo MCUfoirealizada utilizando a linguagemC/C
++
no ambientede de-
senvolvimento CodeBlo ks, onde exe utou-se a ompilação e depuração do algoritmo. Esta
ferramenta de DEBUG é útil para a dete ção de erros no algoritmo (rmware) do sistema
embar ado. Ao ompilar o programa, o software ria um arquivo em hexade imal, que é
salvo na pasta padrão do projeto e este será utilizado para a gravação da memória FLASH
domi ro ontrolador. Oalgoritmodesenvolvidoparaosistemaembar adododosímetropode
servisto noApêndi e D.
A Figura 4.28mostra osambientes de desenvolvimento utilizadospara elaboração e gra-
vaçãodormware dos mi ro ontroladores ATMega328 apli adono desenvolvimento do on-
troladordigital dodosímetro.
(a) (b)
Figura 4.28: Ambientesde desenvolvimento AVRStudio 4e CodeBlo ks.
Para realizar o arregamento do arquivo hexade imal na memória FLASH dos mi ro-
A Figura4.29apresenta o onversor FT232RL utilizado na gravação dosmi ro ontroladores
ATMega328 daAtmelCorporation.
Figura4.29: Conversor USBparaRS232 om hip FT232RL.