Uma das coisas que acho muito legal na minha profissão é a utilização de kits de desenvolvimento para microcontroladores ou DSPs. Tenho maior apreço pelo desenvolvimento de software voltado para um determinado hardware ou sistema embarcado do que o desenvolvimento de sistemas de alto nível. Talvez por causa da formação em engenharia. E estes kits oferecem uma séria de periféricos ou interfaces que nos permitem construir aplicações bacanas e ter um sentimento de como o firmware controla as coisas no mundo real.
Entretanto, este é um campo onde experimentamos o como a tecnologia pode ser volátil e como isto é uma dor de cabeça. Por isso, resolvi compartilhar algumas experiências que possam alertar para algumas questões que devemos nos atentar ao mergulhar neste mundo:
Mudanças de Mercado - Quando eu era professor da disciplina de Processamento Digital de Sinais do curso de engenharia elétrica da SATC, estava a minha disposição um kit de desenvolvimento de um DSP da Motorola para as práticas da disciplina. Quando estava montando a estrutura necessária para fazer o kit funcionar, havia a necessidade de uma licença de ativação dos recursos. Assim, o próximo passo seria contatar o fornecedor para, a partir do código de cliente, obter a tal licença. Para minha surpresa, a Motorola havia transformado sua divisão de CIs na Freescale, que por sua vez havia descontinuado o tal DSP, não havendo qualquer registro sobre ele. Resultado: kit inútil e devidamente sepultado em algum armário da instituição.
Descontinuidade de linha - Apesar do exemplo anterior está relacionado a isto, adiciono este caso ocorrido com MCU da Microchip, que não saiu do mercado. Aprendi a programar e testar projetos com MCU PIC usando simuladores como o Hades e o Multisim. Ambos suportam o PIC16F84. Entretanto, a Microchip havia descontinuado este CI (embora a página do fabricante exibe como disponível e em produção). Tanto que se você procurar kits, o mais próximo que deve encontrar aqui ou aqui é o kit do PIC16F877. Tudo bem, o código para 16F84 deve funcionar no 16F877. Mas, olhando o preço deste kit, preferi não arriscar.
Padrões Tecnológicos - Descobri a algum tempo atrás uma placa com um microcontrolador TINI, da Maxim, que, dentre outras coisas, permitia o desenvolvimento de sistemas embarcados em linguagem Java. O que achei muito legal desta proposta era a capacidade de se transformar coisas como forno de microondas, TVs e outros equipamentos em Internet Appliances, por conta de rodar uma espécie de sistema operacional embarcado em Java, permitindo, dentre outras coisas, embarcar um servidor httpd nele, o que possibilita acessá-lo e controlá-lo pela world wide web. A medida que lia o bom livro Design Embedded Internet Devices, de Dan Eisenreich e Brian DeMuth, percebi que a placa de desenvolvimento do TINI só possuía interface serial RS232, o que exigia um computador com interface DB09 ou DB25 para se comunicar com a placa e carregar o código. Infelizmente, já não possuo mais qualquer computador desktop ou laptop com este tipo de interface (e olha que não possuo as configurações de ponta disponíveis no mercado). E caçar em brechó máquinas de segunda mão para isto estava fora de cogitação. Melhor escolher outra plataforma de hardware...
Nenhum comentário:
Postar um comentário