Alguma dica de livros para sistemas embarcados ?

Por ser uma pessoa pública e bastante conhecida na Internet, muitas … ah, exagerei. Ok, de novo. Por ser uma pessoa muito afável e consultor na área … pula. Mais uma. Por ter vários amigos, idade suficiente e já ter tomados algumas traulitadas (bem mais real), é comum me pedirem dicas sobre assuntos ligados ao mundo embedded.

Em geral, procuro evitar livros de linguagens ou plataformas específicas, a menos que tragam algum diferencial. Existe muito material sobre este tipo de assunto já na Internet. Por exemplo, um livro sobre C++ pode não ser um investimento tão bom quanto um de C++ com design patterns. É claro que tudo tem exceção, até mesmo o que eu acabei de falar. O livro de C++ do Stroustrup é bem interessante comprar quando você acha que já sabe C++. Aliás, é um dos livros que ainda não terminei de ler. Não tirem conclusões sobre as últimas três frases, tudo bem ?

Voltando ao assunto, vou citar dois livros que gostei e que tem relação direta com código embarcado, apesar de não parecer. O primeiro pode lhe ajudar a fazer um código que você consiga usar no seu PC ou microcontrolador de 8, 16 e 32 bits e com alinhamentos diferentes, por exemplo. Não pensar em código portável na hora de escrever, de forma natural, pode lhe trazer problemas no futuro.

O segundo vai numa linha parecida, mas ensinado a entender melhor a relação entre o que você digita na IDE e o que o seu processador/controlador vai enfrentar no microcódigo depois.

Esperava um livro sobre “Programando PICs” (argh), “ARM Cortex M3 para iniciantes” ou “Os segredos do MSP430″ ? Esqueça, até mesmo porque acabei de inventar estes títulos. Não resolvem muita coisa e apenas juntam o que existe nos manuais. Imediatistas ? Talvez sim. Mas não são obras que ficarão na sua estante por muito tempo.

PS: preciso terminar o Stroustrup …

  1. #1 por João Bernardo em fevereiro 12, 2011 - 2:12 pm

    Boa parte de escrever código bom e portável (ou seria portátil?) se resume a evitar otimização prematura.

    Parece que o Santo Graal da computação é atingir O(1) para tudo… Ninguém quer saber das constantes multiplicativas.

    Outra coisa que você deveria recomendar o pessoal a ler são os datasheets.

  2. #2 por jedizone em fevereiro 12, 2011 - 3:03 pm

    Você com certeza leu aquele famoso link “premature optimization is the root of all evil”. Vale um post futuro !

  3. #3 por João Bernardo em fevereiro 12, 2011 - 4:03 pm

    Pra falar a verdade, falta de identação é algo ainda pior… :) Python FTW

    Todo mundo gosta de ver seu programa rodando 5x mais rápido, mas se ele antes demorava 5 microssegundos para ser executado, você provavelmente só perdeu legibilidade.

    Esse texto é muito bom e funciona como psicologia reversa:
    http://www.thc.org/root/phun/unmaintain.html

    Choose variable names that masquerade as mathematical operators, e.g.:
    openParen = (slash + asterix) / equals;

  4. #4 por jedizone em fevereiro 12, 2011 - 5:19 pm

    Infelizmente, um bom python embedded ainda não existe. Lua tá na frente. Pena que em termos de biblioteca passa longe.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

WordPress.com Logo

Você está comentando usando sua conta WordPress.com. Sair / Mudar )

Imagem do Twitter

Você está comentando usando sua conta Twitter. Sair / Mudar )

Foto do Facebook

Você está comentando usando sua conta Facebook. Sair / Mudar )

Conectando a %s

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 499 outros seguidores

%d bloggers like this: