Introdução

Os sistemas embarcados são fundamentais em diversos dispositivos do nosso dia a dia, de forma que estamos verdadeiramente cercados deles. Apenas para citar alguns exemplos, sua televisão, seu relógio de pulso, seus eletrodomésticos e partes do seu carro são sistemas embarcados.

Do ponto de vista de carreira, para se destacar profissionalmente nessa área é fundamental ter algumas habilidades e conhecimentos específicos, os quais serão tratados neste artigo.

Conselho 1 – tenha muita vontade de aprender

Se tem uma coisa que é constante na vida de um profissional da área de sistemas embarcados é o constante aprendizado. Como microcontroladores, SOCs e SiPs sempre evoluem e, ainda, sistemas embarcados fazem interface com diferentes equipamentos e sistemas que também evoluem bastante com o tempo, é necessário que o profissional da área tenha sede e fome de aprendizado.

Para conhecer boas indicações de livro para um sólido aprendizado, veja esta lista de livros recomendados que eu disponibilizo aqui em meu site: Livros Recomendados

Conselho 2 – domine a linguagem C

Embora bastante antiga, a linguagem C continua sendo a principal linguagem de programação quando se trata de sistemas embarcados. Dominar a linguagem C é essencial para conseguir desenvolver software embarcado para os mais variados microcontroladores, SoCs e SiPs do mercado, uma vez que todos têm suporte / SDK para essa linguagem. Ainda, com a linguagem C é possível extrair o máximo do hardware, levando ao melhor desempenho possível, característica valiosa em sistemas embarcados.

Além da linguagem C em si, é altamente recomendável também ter boas noções de arquitetura de software, de modo que você seja ser capaz de desenvolver software embarcado de boa qualidade, bem organizado, escalável e de código reaproveitável. Para ter esse conhecimento, recomendo fortemente fazer o curso on-line Arquitetura de Software para Sistemas Embarcados . Saiba mais sobre ele clicando aqui.

Conselho 3 – explore sistemas operacionais embarcados

Em software embarcados, contar com um sistema operacional testado, validado e confiável é a chave para desenvolver uma solução com software de alta qualidade, fácil de manter e com menor chance de bugs e falhas críticas. Sendo assim, conhecer os principais sistemas operacionais embarcados é fundamental para desenvolver bons sistemas embarcados. Tais sistemas operacionais se dividem entre RTOS (Real-Time Operating Systems) e GPOS (General Purpose Operating Systems).

Segue abaixo algumas indicações de sistemas operacionais embarcados para conhecer:

  • RTOS: NuttX, Zephyr e FreeRTOS
  • GPOS: Linux embarcado (nas mais variadas distros disponíveis)

Conselho 4 – saiba ler circuitos esquemáticos

O profissional de sistemas embarcados lida, obrigatoriamente, com hardware e software. Seja para projetar o hardware ou para escrever o software embarcado para um determinado produto com placa já desenvolvida, o profissional em sistemas embarcados precisa saber ler circuitos esquemáticos.

Adicionalmente, aprender a utilizar softwares de desenho e projeto de placas de circuito impresso (PCB) é uma ótima recomendação, sobretudo se você almeja fazer desenvolvimento de hardware e software embarcado por completo. Para isso, recomendo o domínio dos softwares KiCAD e Altium.

Para compreender bem como cada componente e circuito se comportam e permitir uma compreensão completa dos circuitos esquemáticos, eu recomendo estudar seguindo o livro A Arte da Eletrônica: Circuitos Eletrônicos e Microeletrônica . Para saber mais sobre ele, clique aqui.

Conselho 5 – aprenda protocolos de comunicação

Como dito anteriormente neste artigo, o profissional de sistemas embarcados desenvolve soluções que interagem com outros sistemas e soluções, seja localmente (no mesmo hardware) ou remotamente (via rede). Portanto, dominar protocolos de comunicação com hardware local (I²C, UART, SPI, etc.) e via rede (HTTP, HTTPS, MQTT, etc.) é uma habilidade crucial para o bom profissional da área.

Leia mais


Pedro Bertoleti

Informações completas em: http://pedrobertoleti.com.br/index.php/sobre/