Conhecimento Básico sobre os AVR

Software e Hardware para ATMEL

Moderadores: 51, guest2003, brasilma

Conhecimento Básico sobre os AVR

Mensagempor Fugem » 02 Set 2009 23:47

Ola a todos,
Comecei agora de pouco no mundo dos AVR, pois vou precisar fazer alguns projetos mais complexos do que os meus de costume 8051 dão conta.
Me deparei com um mundo novo de termos e componentes, e gostaria da ajuda de vocês para esclarecer algumas questões, e dar algumas dicas de experiência prática, pois não disponho de tanto tempo para estar ele com calma e desvendar seus segredos.
Acho que isso ajudará também a muitos que como eu não dispõe desse tempo hábil para desvenda-lo sozinho.

Fiz uma relação do que eu entendi até o momento do mundo dos AVR! Me corrijam se eu estiver errado, e tem algumas dúvidas espalhadas pelo meio! qualquer acréscimo também é bem vindo!

AVR:
Os modelos mais usados para projetos são os de 8bits RISC, sendo:

Tiny, 2313 (20 pinos, 18 I/O) - com menor quantidade de portas e pinos
Mega, 8, 32, 128 (28 e 40 pinos, 3 a 4 portas)

Não entendi muito bem sobre os modelos Mega 48, 88, 168!! Alguém poderia complementar?!

é claro que a linha de produtos é muito mais ampla! pode ser vista neste link,
mas esses são os de fácil acesso no mercado.

Todos possuem oscilador interno, mas podem trabalhar com um externo.
Possuem PWM, timers, e entradas analógicas (com exeção do Tiny).
Podem ser programados no próprio circuito, se este tiver suporte. (ICSP)

Para gravação é necessário uma interface ICSP, que pode ser Paralela (mais simples), Serial, ou USB. Existem vários projetos na internet para a paralela e serial, mas ai depende também do programa que será usado. Eu particularmente gostei da opção do PonyProg, que possibilita a utilização da interface serial, e também da paralela. (Como a porta paralela não é isolada, é necessário botar um buffer como está no esquemático deste link.
Para programação pela Serial, Neste Link tem um esquemático bem simples, e funcional.

Ao que puder ver também, o próprio AVR Studio, faz a gravação também..
E tem ainda o AVRProg e o AVRDude! Será que alguém pode complementar sobre eles?!

Para gravar pela USB, é necessário um microcontrolador para fazer o intercambio! Nesse Projeto, é usado o Mega8 para isso. é bem completinho! Mas só é fornecido o arquivo em "hex"! Se fosse fornecido o "C" dava até pra adaptar em um Tiny e reduzir mais ainda essa placa. Alguém tem as rotinas para utilizar a USB diretamente no Microcontrolador, da maneira que é neste circuito?

Li também que para gravar os Mega, é necessário configurar os Fusiveis "Fuses", podendo até perder o componente caso não seja bem feito. O que seria isso?? Alguém pode indicar um material sobre isso, ou passar uma noção sobre isso!

Outros Termos que também me gerou certa confusão no início:
- Arduino: é uma placa de teste que faz grande sucesso pela facilidade de uso, e pelos módulos prontos. Página Oficial
- JTAG: é um método parecido com o ICSP para gravação, mas pode também ser usado para monitorar o que se passa dentro do micro-controlador em tempo real (portas, memória...). é necessário uma interface que faça essa comunicação entre o PC e o uC, pela serial ou USB, e também um software que de suporte a este método, como o próprio AVRStúdio. Não achei um projeto aberto de JTAG com USB, mas em serial tem este da Aquaticus, mas que não da suporte aos Tiny nem ao ATmega8! que pena.


Bom, isso é tudo o que sei até o momento dos AVR's, se tem alguma coisa mais que eu deva saber antes de projetar uma placa de testes, ou qualquer complemento útil nessa área, eu agradeceria!!

Grato desde já,
Fábio Luiz
Avatar do usuário
Fugem
Bit
 
Mensagens: 13
Registrado em: 21 Ago 2007 01:41
Localização: Floripa

Mensagempor brasilma » 03 Set 2009 08:46

Olá Fabio,

Estou mais ou menos no mesmo ponto - sempre trabalhei com o 8051 e iniciei a pouco com os AVRs - tenho no meu gaveteiro o 2313 porem nunca usei, fui direto ao ATMega32.

Como o componente possui arquitetura RISC é muito recomendável a programação em C e como ferramenta de trabalho há o AVR Studio que é um freeware da Atmel.

Sobre os fuses realmente é verdade como todos componentes que usam este sistema, até agora isso não aconteceu comigo, porem se ocorrer com um programador paralelo geralmente se resolve.

Como programador uso um que adquiri na net via USB bem baratinho.

O ATMega para mim foi bastante interessante em relação ao 89S52 que utilisava pois tem mais RAM e EEPROM, no resto tem os mesmos dispositivos internos e mais alguns.

Abraços.
" A Teoria orienta e a Prática decide" ;-)
Avatar do usuário
brasilma
Dword
 
Mensagens: 3621
Registrado em: 11 Out 2006 15:39
Localização: Planeta Terra

Mensagempor RobL » 03 Set 2009 09:57

Para quem trabalha com 8051 não é um salto tão grande usar AVRs.
A maior vantagem está na velocidade, extremamente maior que os 8051, mais periféricos e maior eficiência para os compiladores em C, visto que os AVRs tem 32 registros de trabalho (similar a arquitetura ARM ), ligados diretamente à ALU, contra somente um ACC no 8051 , 3 apontadores de 16 bits, um par de registro de 16bits par operações aritméticas e um conjunto amplo de instruções.
Quanto aos periféricos, seus timers são muito interessantes, tem váras funções que não se encontram em micros populares de baixo preço.

Um AVR nunca é perdido por ter os fuses programado de forma errada.
O problema está somente para quem programa com ISP e desabilita, pelos fuses, o periférico SPI. Desta forma não se tem mais acesso por este (SPI), somente em modo paralelo, ou seja, a programação, deste fuse só poderá ser feita através de uma porta com 8bits mais sinais de controle, visto que a serial foi bloqueada.
Basta usar um programador paralelo para habilitar o SPI novamente.


Quanto a usar programadores, se não quiser esquentar, pode usar o AVRDragon, da Atmel (gravador/emulador "um fio" e JTAG), por menos de R$100,00 no GrupoCn (CnCompectron).
Veja as limitações deste gravador antes de adquirí-lo.

Cabe observar os novos XMegas (super veloz e super eficiência em C). Se pensar em grandes projetos, veja a nova linha 32bits Cortex M3 da Atmel , da NXP e STM. Muito interessante os produtos da STM e NXP, visto que a Atmel não liberou ainda seus Cortex M3.

Não entendi muito bem sobre os modelos Mega 48, 88, 168!! Alguém poderia complementar?!

Essa linha, por exemplo o ATmega88 é o ATmega 8 mais moderno com mais funções, velocidade e menor consumo. Tem ainda a linha ATmega48P,88P,168P e a PA. Os com P, são pico power e com PA são pico power automotivos (125*C).
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56

Mensagempor Djalma Toledo Rodrigues » 03 Set 2009 13:02

RobL --- Valiósas informações.

Se a AVR tomar conhecimento te contrata . rs
.
Avatar do usuário
Djalma Toledo Rodrigues
Dword
 
Mensagens: 2334
Registrado em: 03 Ago 2008 13:22

Mensagempor Fugem » 03 Set 2009 13:31

Opa,
Vlw Brasilma e RobL!

Muito legal, já deu pra dar uma clareada a mais agora..!
A minha situação é a seguinte..
Comprei dois AtMega8, e um display LCD, para poder brincar um pouco..

Não pretendo gastar muito, por exemplo com gravador e tals, pois ainda não tenho certeza se vou realmente fazer meu projeto com os AVR!
Por isso, vou fazer o modelinho de gravador mais simples de serial, já estou projetando uma placa de teste com comunicação serial e algumas ferramentas primordiais..

Por isso queria saber se já tem um post, ou um material meio que explicando o funcionamento e a configuração desses Fuses! Ou seria apenas no datasheet de cada componente.
O mais provavel é que eu utilize o PonyProg, para gravar, pois da suporte a esse modelo de gravador serial.
O programa que uso para programar é o Keil.

Grato
Fábio
Avatar do usuário
Fugem
Bit
 
Mensagens: 13
Registrado em: 21 Ago 2007 01:41
Localização: Floripa

Mensagempor brasilma » 03 Set 2009 13:38

Olá Fábio,

Isso é muito simples qdo começar a trabalhar com o componente vai entender na hora.

Na minha versão deo AVR studio - que é bem antiga - já tinha uma ferramenta para isso que deixava bem claro estes procedimentos, creio que na nova versão deve continuar ou ter melhorado.

Abraços.
" A Teoria orienta e a Prática decide" ;-)
Avatar do usuário
brasilma
Dword
 
Mensagens: 3621
Registrado em: 11 Out 2006 15:39
Localização: Planeta Terra

Mensagempor RobL » 03 Set 2009 16:56

Djalma, creio que não me contratariam pois não falo noruegues e nem bacalhoes pois, até este os noruegueses não "falam" mais, já eram.
Aliás os caras trocaram bacalhaus por chips!!!! Sinceramente não sei se foi uma boa.
RobL
Dword
 
Mensagens: 1546
Registrado em: 20 Fev 2007 17:56


Voltar para AVR

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x