Font Size

Fonte: www.makezine.com by John Teel

 

O blog makezine.com publicou recentemente o artigo 12 Specs to Consider When Choosing a Microcontroller for Your Product, o artigo foi escrito por John Teel, um profissional com vasta experiência no desenvolvimento de produtos voltados a sistemas embarcados, caso você queira conhecer um pouco mais sobre a história do John Teel, clique aqui. Nossa dica de leitura de hoje é esse artigo pois ele vem a acrescentar novas informações complementares ao nosso post  Qual Arduino utilizar em seu projeto?, demonstra que mesmo você que ainda não é experiente no mundo da eletrônica pode atentar a simples critérios e especificações na  escolha de uma plataforma Arduino, ou no caso, um microcontrolador, as mesmas  que um profissional já experiente e renomado da área leva em consideração, além de trazer conceitos importantes e talvez novos para quem está ingressando agora no mundo embarcado.

No artigo, o autor descreve de forma bem sucinta  as 12 especificações que o desenvolvedor deve levar em conta na escolha de um microcontrolador para seu produto, são eles:

1) Memória – Atualmente os microcontroladore disponíveis no mercado já contam com memórias RAM e Flash em sua estrutura. A Flash é uma memória não-volátil utilizada para armazenamento de programa, já a RAM é uma memória volátil para armazenamento de dados temporários. Alguns microcontroladores também incluem a memória EEPROM, responsável pelo armazenamento de dados permanentes;

2) GPIOs(Digital General Purpose Input and Output ) – São pinos utilizados para entrada e saída;

3) Entrada Analógica – A maioria dos microcontroladores possui a capacidade de ler de forma precisa tensões analógicas, os sinais analógicos são vistos pelo microcontrolador através de um conversor analógico digital(ADC);

4) Saída Analógica – Os sinais podem ser gerados pelo microcontrolador através de um conversor digital analógico(DAC) ou por um gerador de PWM, nem todos os microcontroladores possuem um DAC mas oferecem saídas PWM;

5) In Circuit Programming(ISP) – O ISP permite ao desenvolvedor programar o microcontrolador enquanto ele estiver instalado no circuito de aplicação, não existe a necessidade de removê-lo apenas para gravá-lo. Os dois protocolos mais conhecidos são JTAG e SWD;

 

Conector ICSP Arduino

 

6) Wireless – Se o seu produto necessita de interfaces sem fio, há microcontroladore especializados para esse tipo de aplicação que oferecem bluetooth, wifi, zigbee entre outros padrões wireless.

 

Microcontroladores de aplicações Wireless são indispensáveis em projetos de IOT

7) Comunicação Serial – Todos os microcontroladores oferecem algum tipo de comunicação serial. Os vários protocolos de comunicação serial são UART, SPI, I2C

8) UART(Universal Asynchronous Receiver Transmitter) – UART(Universal Asynchronous Receiver Transmitter) – é uma porta serial que transmite palavras digitais, tipicamente de comprimento de 7 a 8 bits, sua função é possibilitar a transmissão e a recepção de dados seriais;

9) SPI(Serial Peripheral Interface) – SPI é utilizado para comunicações seriais de curta distância entre microcontrolador e periféricos, SPI é um protocolo síncrono, ou seja, possui um clock que temporiza a comunicação, a SPI possui por padrão 4 sinais(data in, data out, clock e chip select).

spi
Exemplo de Ligação no protocolo SPI

 

10) I2C(Inter Integrated circuit) – é um barramento serial de 2 sinais, muito utilizado na comunicação entre o microcontrolador e outros chips da placa, assim como o SPI, o I2C é um protocolo síncrono. No entanto, o I2C possui um único sinal para data in e data out e ao invés de um pino de seleção de chip(Chip Selec), o I2C utiliza um único endereço para cada periférico, esse padrão de comunicação possui como vantagem utilizar apenas 2 sinais, onde o padrão SPI utiliza 4 sinais, porém, o I2C é mais lento que o SPI.

Exemplo de Ligação de Periféricos no protocolo I2C
Exemplo de Ligação de Periféricos no protocolo I2C

 

11) USB(Universal Serial Bus) – É provavelmente o padrão mais familiar, USB é um dos protocolos de comunicação serial mais rápidos, é normalmente utilizado para ligação de periféricos que necessitam de grandes quantidades de transferência de dados.

interface-usb
USB – Utilizada na ligação de perfifericos de alta taxa de transferência de dados

12) CAN(Controller Area Network) – É um padrão de comunicação serial desenvolvido para ser utilizado apenas em aplicações automotivas.

interface-can
Padrão CAN criada para ser utilizada em aplicações automotivas

Após citar as 12 especificações e um breve resumo sobre o significado de cada uma, o autor descreve quatro famílias de microcontroladores notáveis, são elas: Arm Cortex – M, 8051, PIC e Atmel AVR, por fim, ele conclui o artigo dizendo que após selecionado o microcontrolador, o próximo passo é o design do circuito do microcontrolador e ligação dele com os periférios, mas essas são cenas dos próximos capítulos!

Opinião do Blog AutoCore Robótica sobre o artigo:

O artigo é bem sucinto, não traz tantos detalhes técnicos porém dá uma boa noção sobre o que significa cada especificação e vontade de buscar outras fontes para se aprofundar, eu particularmente, incluiria um outro fator que considero extremamente importante mas que o John Teel talvez não tenha considerado por ter levado em conta apenas especificações de hardware, a minha  13º especificação seria suporte  do fabricante, será que o fabricante presta um bom suporte? Será que há uma vasta documentação técnica ou será que a documentação é pobre? Será que existem ides amigáveis para trabalhar com tal microcontrolador? Evaluation kits? Fica esse outro critério pra vocês leitores do blog também considerarem.

Bom pessoal, espero que vocês tenham curtido a dica de artigo de hoje! O artigo na íntegra, em inglês, você encontra aqui. Aguardo os feedbacks, até a próxima dica de artigo!

0.00 avg. rating (0% score) - 0 votes