Originalmente um microcontrolador era escolhido por seu desempenho de processamento, família tecnológica e capacidade de memória. Como a unidade de processamento e a memória ocupavam quase toda a área de silício, sobrava muito pouco espaço para os periféricos, que eram poucos e limitados em recursos.
Atualmente, com a evolução dos processos de produção e tecnologia dos microcontroladores, a área ocupada pela unidade de processamento e memória foi muito reduzida, o que abriu, literalmente, espaço para a incorporação de diversos periféricos junto ao microcontrolador.
Como uma boa parte dos periféricos utiliza funções analógicas e circuitos analógicos não podem ser reduzidos tão facilmente como os digitais, a maior parte do silício agora é dedicada aos circuitos periféricos.
Os microcontroladores disponíveis no mercado, de todos os fabricantes, oferecem uma ampla gama de opções de periféricos, incluindo ADCs (conversores analógico-digitais), DACs (conversores digital-analógicos), PWMs (moduladores por largura de pulso), além de interfaces I2C, SPI, USB, Ethernet, e outras.
Essa diversidade de opções, por um lado, permite que se execute projetos com todas as funcionalidades que se possa imaginar, mas, por outro lado, implica em maior dificuldade na escolha do microcontrolador mais adequado.
Critérios para a Seleção
O primeiro passo é determinar qual é a menor arquitetura capaz de atender os requisitos do sistema, uma vez que os microcontroladores de 8 bits, apresentam menor custo que os de 16 ou 32 bits. Nesse ponto vale verificar se é possível a utilização de um microcontrolador de 8 bits considerando algum sacrifício no tamanho do código e na velocidade de execução.
A escolha da linguagem de prgramação, linguagem de alto nível ou assembler, poderá causar impacto no desempenho do sistema e, dessa forma, também influenciar na seleção da arquitetura. Para aplicações em escala, o custo do sistema pode ser o critério mais importante.
A frequência do barramento, ou clock, determina a taxa de execução de processamento em um período de tempo do mi- crocontrolador. A determinação do clock necessário para o sistema é importante para a escolha correta do microcontrolador a ser utilizado, visto que pode ocorrer que o clock seja empregado para a geração de um outro clock requerido para uma porta de comunicação, por exemplo.
Tecnologia usada para a produção do chip do microcontrolador. A tecnologia HCMOS consome menos energia e, portanto, gera menos calor.
Os recursos embutidos no chip microcontrolador permitem obter maior grau de integração e confiabilidade com um custo menor. Quanto mais recursos presentes no microcontrolador, menor será a necessidade de circuitos externos, o que significa maior confiabilidade.
O conjunto específico de instruções disponível para um dado microcontrolador também é um aspecto que deve ser analisado cuidadosamente.
Algumas perguntas devem ser feitas, como por exemplo:
• Existem instruções especiais disponíveis que podem ser utilizadas no código gerado para seu sistema?
• Existem modos de baixa potência que podem ser usados para conservação de baterias? Esses modos são viáveis para sua aplicação?
• Existem instruções de manipulação de bits que permitam implementação mais simples de aplicações de controle?
A escolha cuidadosa do microcontrolador a ser utilizado pode representar uma economia considerável para o projeto, mas outros aspectos também devem ser analisados.
A rápida evolução da tecnologia de interfaces pode tornar o projeto limitado em um curto espaço de tempo.
As interfaces seriais UART, SPI e I2 C são consideradas padrões para os dispositivos atuais, mas também sofrem evolução. A interface I2 C possui uma versão Fast-Mode Plus, que oferece velocidades de até 1 MHz.
A interface USB é outro exemplo de tecnologia que tem evoluído rapidamente, microcontroladores de 8 bits podiam ser escolhidos pois suportavam a operação no padrão USB 1.1. Mas há os padrões mais novos, como USB On-The-Go, que permite a um dispositivo funcionar como mestre ou escravo, ou a versão USB 2.0 (Hi-Speed) com taxas de até 480 Mbits/s, que necessitam da capacidade de um núcleo de 32 bits.
Ethernet é outra interface que vem sendo adotada em sistemas embedded, especialmente em aplicações industriais. Sendo uma interface confiável, suas aplicações têm encontrado campo em ambientes industriais e automotivos hostis, assim como para serviços de atualização e diagnósticos. A maioria dos microcontroladores com capacidade Ethernet nativa possuem apenas a MAC (Media-Acess Controller). Para a implementação completa, será necessária a adição da interface física (PHY).
Conclusão
A escolha do modelo de microcontrolador mais adequado para um projeto não é uma atividade simples e representa compromissos que podem se mostrar limitantes no futuro.
Além da escolha propriamente dita, outros aspectos também são importantes: ferramentas de desenvolvimento de software e hardware, documentação em português ou apenas em inglês, exemplos de aplicação (application notes), suporte técnico local (ou internacional) por te- lefone ou internet e disponibilidade de componentes, tanto na forma de amostras como para produção (no caso de não existir em estoques locais, tempo de entrega considerando importação, desembaraço alfandegário, transporte, etc).
O tipo de encapsulamento é uma característica que pode implicar em gastos adicionais caso não seja observada, uma vez que alguns tipos podem exigir equipamentos especiais, como os encapsulamentos BGA, por exemplo.
A familiaridade do projetista com uma determinada marca ou família de microcontroladores pode ser uma vantagem, assim como uma desvantagem. Será uma vantagem se o microcontrolador mais adequado fizer parte desse conhecimento, o que irá reduzir os tempos de desenvolvimento, e uma desvantagem se o componente escolhido esbarrar com a natural resistência que os projetistas apresentam quando se trata de alterar o modo como executam seu trabalho.
Atualmente, com a evolução dos processos de produção e tecnologia dos microcontroladores, a área ocupada pela unidade de processamento e memória foi muito reduzida, o que abriu, literalmente, espaço para a incorporação de diversos periféricos junto ao microcontrolador.
Como uma boa parte dos periféricos utiliza funções analógicas e circuitos analógicos não podem ser reduzidos tão facilmente como os digitais, a maior parte do silício agora é dedicada aos circuitos periféricos.
Os microcontroladores disponíveis no mercado, de todos os fabricantes, oferecem uma ampla gama de opções de periféricos, incluindo ADCs (conversores analógico-digitais), DACs (conversores digital-analógicos), PWMs (moduladores por largura de pulso), além de interfaces I2C, SPI, USB, Ethernet, e outras.
Essa diversidade de opções, por um lado, permite que se execute projetos com todas as funcionalidades que se possa imaginar, mas, por outro lado, implica em maior dificuldade na escolha do microcontrolador mais adequado.
Critérios para a Seleção
O primeiro passo é determinar qual é a menor arquitetura capaz de atender os requisitos do sistema, uma vez que os microcontroladores de 8 bits, apresentam menor custo que os de 16 ou 32 bits. Nesse ponto vale verificar se é possível a utilização de um microcontrolador de 8 bits considerando algum sacrifício no tamanho do código e na velocidade de execução.
A escolha da linguagem de prgramação, linguagem de alto nível ou assembler, poderá causar impacto no desempenho do sistema e, dessa forma, também influenciar na seleção da arquitetura. Para aplicações em escala, o custo do sistema pode ser o critério mais importante.
A frequência do barramento, ou clock, determina a taxa de execução de processamento em um período de tempo do mi- crocontrolador. A determinação do clock necessário para o sistema é importante para a escolha correta do microcontrolador a ser utilizado, visto que pode ocorrer que o clock seja empregado para a geração de um outro clock requerido para uma porta de comunicação, por exemplo.
Tecnologia usada para a produção do chip do microcontrolador. A tecnologia HCMOS consome menos energia e, portanto, gera menos calor.
Os recursos embutidos no chip microcontrolador permitem obter maior grau de integração e confiabilidade com um custo menor. Quanto mais recursos presentes no microcontrolador, menor será a necessidade de circuitos externos, o que significa maior confiabilidade.
O conjunto específico de instruções disponível para um dado microcontrolador também é um aspecto que deve ser analisado cuidadosamente.
Algumas perguntas devem ser feitas, como por exemplo:
• Existem instruções especiais disponíveis que podem ser utilizadas no código gerado para seu sistema?
• Existem modos de baixa potência que podem ser usados para conservação de baterias? Esses modos são viáveis para sua aplicação?
• Existem instruções de manipulação de bits que permitam implementação mais simples de aplicações de controle?
A escolha cuidadosa do microcontrolador a ser utilizado pode representar uma economia considerável para o projeto, mas outros aspectos também devem ser analisados.
A rápida evolução da tecnologia de interfaces pode tornar o projeto limitado em um curto espaço de tempo.
As interfaces seriais UART, SPI e I2 C são consideradas padrões para os dispositivos atuais, mas também sofrem evolução. A interface I2 C possui uma versão Fast-Mode Plus, que oferece velocidades de até 1 MHz.
A interface USB é outro exemplo de tecnologia que tem evoluído rapidamente, microcontroladores de 8 bits podiam ser escolhidos pois suportavam a operação no padrão USB 1.1. Mas há os padrões mais novos, como USB On-The-Go, que permite a um dispositivo funcionar como mestre ou escravo, ou a versão USB 2.0 (Hi-Speed) com taxas de até 480 Mbits/s, que necessitam da capacidade de um núcleo de 32 bits.
Ethernet é outra interface que vem sendo adotada em sistemas embedded, especialmente em aplicações industriais. Sendo uma interface confiável, suas aplicações têm encontrado campo em ambientes industriais e automotivos hostis, assim como para serviços de atualização e diagnósticos. A maioria dos microcontroladores com capacidade Ethernet nativa possuem apenas a MAC (Media-Acess Controller). Para a implementação completa, será necessária a adição da interface física (PHY).
Conclusão
A escolha do modelo de microcontrolador mais adequado para um projeto não é uma atividade simples e representa compromissos que podem se mostrar limitantes no futuro.
Além da escolha propriamente dita, outros aspectos também são importantes: ferramentas de desenvolvimento de software e hardware, documentação em português ou apenas em inglês, exemplos de aplicação (application notes), suporte técnico local (ou internacional) por te- lefone ou internet e disponibilidade de componentes, tanto na forma de amostras como para produção (no caso de não existir em estoques locais, tempo de entrega considerando importação, desembaraço alfandegário, transporte, etc).
O tipo de encapsulamento é uma característica que pode implicar em gastos adicionais caso não seja observada, uma vez que alguns tipos podem exigir equipamentos especiais, como os encapsulamentos BGA, por exemplo.
A familiaridade do projetista com uma determinada marca ou família de microcontroladores pode ser uma vantagem, assim como uma desvantagem. Será uma vantagem se o microcontrolador mais adequado fizer parte desse conhecimento, o que irá reduzir os tempos de desenvolvimento, e uma desvantagem se o componente escolhido esbarrar com a natural resistência que os projetistas apresentam quando se trata de alterar o modo como executam seu trabalho.
oi!
ResponderExcluirquem quiser tirar dúvidas a respeito da matéria, pode me enviar e-mail.
abs
Olá Rodrigo, muito boa esta matéria. Parabéns! Estou desenvolvendo atualmente uma fechadura biométrica e encontrei o meu primeiro problema exatamente na escolha do microcontrolador. Acredito que escolherei o PIC16F628A, tendo em vista que seus recursos atendem a minha necessidade. Minha dúvida é: Este microcontrolador é normalmente utilizado para produção de produtos em grande escala? Este projeto é para ser utilizado por uma empresa que produzirá em linha de produção. Vi que existem uns tipos voltados para produção que permitem garvação única. Isso existe?
ResponderExcluirAgradeço a sua atenção!
Vitor Farias
Obrigado pelo artigo! Agregou algum conhecimento para mim. Abraço!
ResponderExcluir