Pergunta

Isto segue um par de href="https://stackoverflow.com/questions/448513/starting-a-microcontroller-simulator-emulator"> questions (mas eu acho que refinaram a minha pergunta melhor).

Eu quero testar o meu código de firmware antes de eu colocar no dispositivo.

Eu percebo que um monte de gente escrever seu código, upload, teste, etc. Mas eu realmente quero escrever e teste antes de upload (principalmente porque eu quero para automatizar os muitos cenários).

Então, qual é a melhor maneira de fazer isso. Se eu estivesse escrevendo software pura, como em, nenhum firmware em tudo, gostaria de ir sobre ele, usando cppunit (por exemplo). Mas estou um pouco perdido com essa coisa firmware.

Todas as idéias?

Graças

Foi útil?

Solução

Bem, é difícil dizer sem saber como seu código é arquitetado, mas, basicamente, você pode testar o software no nível de classe / função como qualquer outro software. Qualquer código que interfaces com o dispositivo seria mais provável necessidade de ser testado via emmulation.

Outras dicas

Eu não acho que a resposta marcada como "correta" é de todo correto ou completo.

Para código de firmware, você realmente deve realizar um teste em duas frentes para ser rigoroso.

  1. Os testes iniciais feitos usando um emulador. Este é o ideal, mas presume-se que você pode obter um bom emulador para a plataforma de destino.

  2. Test sobre o hardware real, mas num quadro de ensaio. Ou seja, você testar no dispositivo real, mas com hardware adicional (ou seja, osciloscópio, sondas) e outras conexões para permitir adequada trace / debug no que está acontecendo.

Com firmware, muitas vezes os erros mais difíceis são respectivo calendário, e só aparecem uma vez que você está no hardware real. No pior dos casos, o ato de sondagem pode alterar horários de tal forma que os erros não aparecerá - apenas na versão de "produção". Então você se divertir real.

Cheers,

-Richard

Muitos dispositivos embarcados têm software simuladores disponíveis, mas isso depende do dispositivo.

Você deve unidade de teste suas classes, tanto quanto você pode, mas no final do dia, você deve executá-lo e testá-lo no hardware.

Para testar o firmware em uma gravação dispositivo uma interface de depuração de modo que você pode usar um emulador de terminal como procomm para falar com o seu dispositivo. Então, quando você está escrevendo uma característica, tem um caminho para a sua depuração interface para chamar métodos em sua classe, de que maneira você pode especificamente testar o seu código no próprio dispositivo.

Depois de ter isso feito, você pode escrever scripts em seu emulador de terminal para fazer os testes automaticamente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top