- Fatores importantes a serem considerados ao selecionar um MCU
- 1. Aplicação
- 2. Selecione Arquitetura do Microcontrolador
- 3. Tamanho do bit
- 4. Interfaces para comunicação
- 5. Tensão operacional
- 6. Número de pinos de I / O
- 7. Requisitos de memória
- 8. Tamanho da embalagem
- 9. Consumo de energia
- 10. Suporte para microcontrolador
Um microcontrolador é essencialmente um pequeno computador em um chip, como qualquer computador, ele possui memória e geralmente é programado em sistemas embarcados para receber entradas, realizar cálculos e gerar saídas. Ao contrário de um processador, ele incorpora a memória, a CPU, E / S e outros periféricos em um único chip, conforme mostrado no layout abaixo.
Escolher o microcontrolador certo para um projeto é sempre uma decisão complexa porque é o coração do projeto e disso depende o sucesso ou o fracasso do sistema.
Existem milhares de tipos diferentes de microcontroladores, cada um deles com uma característica única ou vantagem competitiva desde o formato, o tamanho da embalagem e a capacidade da RAM e ROM que os torna adequados para certas aplicações e impróprios para certas aplicações. Assim, muitas vezes, para evitar a dor de cabeça que vem com a seleção do certo, os projetistas optam por microcontroladores que já conhecem e que, às vezes, nem mesmo atendem realmente aos requisitos do projeto. O artigo de hoje examinará alguns dos fatores importantes a serem observados ao selecionar um microcontrolador, incluindo a arquitetura, a memória, as interfaces e o estado real de E / S, entre outros.
Fatores importantes a serem considerados ao selecionar um MCU
A seguir estão alguns dos fatores importantes a serem observados ao selecionar um microcontrolador, incluindo a arquitetura, a memória, as interfaces e o estado de E / S, entre outros.
1. Aplicação
A primeira coisa a fazer antes de selecionar um microcontrolador para qualquer projeto é desenvolver um entendimento profundo da tarefa para a qual a solução baseada em microcontrolador deve ser implantada. Uma ficha técnica é sempre desenvolvida durante este processo e ela ajudará a determinar as características específicas que o microcontrolador irá utilizar para o projeto. Um bom exemplo de como a aplicação / uso do dispositivo determina o microcontrolador a ser usado é exibido quando um microcontrolador com uma unidade de ponto flutuante é adotado para o projeto de um dispositivo que será usado para realizar operações envolvendo muitos números decimais.
2. Selecione Arquitetura do Microcontrolador
A arquitetura de um microcontrolador se refere a como o microcontrolador é estruturado internamente. Existem duas arquiteturas principais usadas para o projeto de microcontroladores;
- Arquitetura Von Neumann
- Arquitetura Harvard
A arquitetura de von Neumann apresenta o uso do mesmo barramento para transmitir dados e buscar conjuntos de instruções da memória. Portanto, a transferência de dados e a busca de instruções não podem ser realizadas ao mesmo tempo e geralmente são programadas. A arquitetura Harvard, por outro lado, apresenta o uso de barramentos separados para a transmissão de dados e busca de instruções.
Cada uma dessas arquiteturas tem suas próprias vantagens e desvantagens. A arquitetura Harvard, por exemplo, são computadores RISC (Conjunto de instruções reduzidas) e, portanto, são capazes de executar mais instruções com ciclos mais baixos do que os computadores CISC (Conjunto de instruções complexas) que são baseados na arquitetura de von Neumann. Uma vantagem importante dos microcontroladores baseados em Harvard (RISC) é o fato de que a existência de diferentes barramentos para dados e conjunto de instruções permite a separação do acesso à memória e as operações da unidade aritmética e lógica (ALU). Isso reduz a quantidade de energia computacional exigida pelo microcontrolador e leva a custos reduzidos, baixo consumo de energia e dissipação de calor, o que os torna ideais para o projeto de dispositivos operados por bateria. Muitos ARM,Os microcontroladores AVR e PIC são baseados na arquitetura Harvard. Exemplos de microcontroladores que usam a arquitetura Von Neumann incluem 8051, zilog Z80 entre outros.
3. Tamanho do bit
Um microcontrolador pode ter 8 bits, 16 bits, 32 bits e 64 bits, que é o tamanho máximo de bit atual possuído por um microcontrolador. O tamanho do bit de um microcontrolador representa o tamanho de uma “palavra” usada no conjunto de instruções do microcontrolador. Isso significa que em um microcontrolador de 8 bits, a representação de cada instrução, endereço, variável ou registro leva 8 bits. Uma das principais implicações do tamanho do bit é a capacidade de memória do microcontrolador. Em um microcontrolador de 8 bits, por exemplo, existem 255 locais de memória exclusivos, conforme ditado pelo tamanho do bit, enquanto em um microcontrolador de 32 bits, existem 4.294.967.295 locais de memória exclusivos, o que significa que quanto maior o tamanho do bit, maior o número de locais de memória disponíveis para uso no microcontrolador. Os fabricantes hoje em dia, no entanto,estão desenvolvendo maneiras de fornecer acesso a mais localização de memória para microcontroladores de tamanho de bit menor por meio de paginação e endereçamento, de modo que o microcontrolador de 8 bits se torne endereçável de 16 bits, mas isso tende a complicar a programação para o desenvolvedor de software integrado.
O efeito do tamanho do bit provavelmente é mais significativamente experimentado ao desenvolver o firmware para o microcontrolador, especialmente para operações aritméticas. Os vários tipos de dados têm tamanhos de memória diferentes para tamanhos de bits de microcontroladores diferentes. Por exemplo, o uso de uma variável declarada como um inteiro sem sinal que devido ao tipo de dados exigirá 16 bits de memória, em códigos a serem executados em um microcontrolador de 8 bits levará à perda do byte mais significativo nos dados que às vezes pode ser muito importante para a realização da tarefa para a qual o dispositivo no qual o microcontrolador será usado foi projetado.
Portanto, é importante selecionar um microcontrolador com um tamanho de bit que corresponda ao dos dados a serem processados.
É provavelmente importante notar que a maioria das aplicações atualmente são microcontroladores entre 32 bits e 16 bits, devido aos avanços tecnológicos incorporados nesses chips.
4. Interfaces para comunicação
A comunicação entre o microcontrolador e alguns dos sensores e atuadores que serão usados para o projeto pode exigir o uso de uma interface entre o microcontrolador e o sensor ou atuador para facilitar as comunicações. Por exemplo, conectar um sensor analógico a um microcontrolador exigirá que o microcontrolador tenha ADC suficiente (conversores analógico para digital) ou, como mencionei anteriormente, variar a velocidade de um motor DC pode exigir o uso de interface PWM no microcontrolador. Portanto, será importante confirmar se o microcontrolador a ser selecionado possui interfaces suficientes, incluindo UART, SPI, I2C entre outras.
5. Tensão operacional
A tensão operacional é o nível de tensão no qual um sistema foi projetado para operar. É também o nível de tensão ao qual certas características do sistema estão relacionadas. No projeto de hardware, a tensão operacional às vezes determina o nível lógico no qual o microcontrolador se comunica com outros componentes que compõem o sistema.
Os níveis de tensão de 5 V e 3,3 V são a tensão de operação mais popular usada para microcontroladores e uma decisão deve ser feita sobre qual desses níveis de tensão será usado durante o processo de desenvolvimento da especificação técnica do dispositivo. Usar um microcontrolador com uma tensão operacional de 3,3 V no design de um dispositivo onde a maioria dos componentes externos, sensores e atuadores estarão operando em um nível de tensão de 5 V não será uma decisão muito inteligente, pois haverá a necessidade de implementar o nível lógico deslocadores ou conversores para permitir a troca de dados entre o microcontrolador e os outros componentes e isso aumentará o custo de fabricação e o custo geral do dispositivo desnecessariamente.
6. Número de pinos de I / O
O número de portas de entrada / saída de uso geral ou especial e (ou) pinos possuídos por um microcontrolador é um dos fatores mais importantes que influenciam a escolha do microcontrolador.
Se um microcontrolador tivesse todos os outros recursos mencionados neste artigo, mas não tivesse pinos de IO suficientes conforme exigido pelo projeto, ele não poderia ser usado. É importante que o microcontrolador tenha pinos PWM suficientes, por exemplo, para controlar o número de motores DC cuja velocidade será variada pelo dispositivo. Embora o número de portas de E / S em um microcontrolador possa ser expandido pelo uso de registradores de deslocamento, ele não pode ser usado para todos os tipos de aplicações e aumenta o custo dos dispositivos nos quais é usado. Portanto, é melhor garantir que o microcontrolador a ser selecionado para o projeto tenha o número necessário de portas de E / S de uso geral e especial para o projeto.
Outra coisa importante a se ter em mente ao determinar a quantidade de pinos de I / O de propósito geral ou especial necessários para um projeto é a melhoria futura que pode ser feita no dispositivo e como essas melhorias podem afetar o número de pinos de I / O requeridos.
7. Requisitos de memória
Existem vários tipos de memória associados a um microcontrolador que o designer deve observar ao fazer uma seleção. Os mais importantes são a RAM, ROM e EEPROM. A quantidade necessária de cada uma dessas memórias pode ser difícil de estimar até que seja usada, mas a julgar pela quantidade de trabalho exigida do microcontrolador, as previsões podem ser feitas. Esses dispositivos de memória mencionados acima formam os dados e a memória de programa do microcontrolador.
A memória de programa do microcontrolador armazena o firmware para o microcontrolador, de forma que, quando a alimentação é desconectada do microcontrolador, o firmware não é perdido. A quantidade de memória necessária para o programa depende da quantidade de dados, como bibliotecas, tabelas, arquivos binários de imagens, etc., necessários para que o firmware funcione corretamente.
A memória de dados, por outro lado, é usada durante o tempo de execução. Todas as variáveis e dados gerados como resultado do processamento entre outras atividades durante o tempo de execução são armazenados nesta memória. Assim, a complexidade dos cálculos que ocorrerão durante o tempo de execução pode ser usada para estimar a quantidade de memória de dados necessária para o microcontrolador.
8. Tamanho da embalagem
O tamanho do pacote se refere ao fator de forma do microcontrolador. Os microcontroladores geralmente vêm em pacotes que variam de QFP, TSSOP, SOIC a SSOP e o pacote DIP regular que facilita a montagem em protoboard para prototipagem. É importante planejar antes da fabricação e imaginar qual pacote será o melhor.
9. Consumo de energia
Este é um dos fatores mais importantes a considerar ao selecionar um microcontrolador, especialmente quando ele deve ser implantado em um aplicativo alimentado por bateria, como dispositivos IoT, onde se deseja que o microcontrolador seja o mais baixo possível. A folha de dados da maioria dos microcontroladores contém informações sobre várias técnicas baseadas em hardware e (ou) software que podem ser usadas para minimizar a quantidade de energia consumida pelo microcontrolador em diferentes modos. Certifique-se de que o microcontrolador que você está selecionando atenda aos requisitos de energia do seu projeto.
10. Suporte para microcontrolador
É importante que o microcontrolador que você escolher para trabalhar tenha suporte suficiente, incluindo; amostras de código, designs de referência e, se possível, uma grande comunidade online. Trabalhar com um microcontrolador pela primeira vez pode trazer vários desafios e ter acesso a esses recursos o ajudará a superá-los rapidamente. Embora o uso de microcontroladores mais recentes por causa dos novos recursos interessantes com os quais ele veio seja uma coisa boa, é aconselhável garantir que o microcontrolador esteja disponível por pelo menos 3-4 meses para garantir a maioria dos problemas iniciais que podem estar associados ao microcontrolador teria sido resolvido, já que vários clientes teriam feito muitos testes do microcontrolador com diferentes aplicativos.
Também é importante selecionar um microcontrolador com um bom kit de avaliação, para que você possa rapidamente começar a construir protótipos e testar recursos facilmente. Os kits de avaliação são uma boa forma de adquirir experiência, familiarizar-se com a cadeia de ferramentas usada para o desenvolvimento e economizar tempo durante o desenvolvimento do dispositivo.
Selecionar o microcontrolador certo para um projeto continuará sendo um problema, todo projetista de hardware terá que resolver e embora existam mais alguns fatores que podem influenciar a escolha do microcontrolador, esses fatores mencionados acima são os mais importantes.