Pergunta

Eu tenho que desenvolver software para uma escala USB que, quando você pressiona um botão sobre ele, envia comunicação serial sobre USB. Eu posso ver os valores em HyperTerminal.

Vou usar as classes .NET para comunicação serial para interceptar os dados.

O problema é, eu não tenho a escala. A escala é conectado a um computador remoto que posso RDP em. Quando eu quiser testar, eu posso pedir ao cliente para pressionar o botão na escala.

Eu não posso pedir ao cliente para pressionar o botão 100 vezes por dia, eu preciso ter uma maneira de desenvolver com uma razoavelmente boa idéia do que a escala vai relatar, e único teste quando eu acho que tenho uma solução.

Eu estou procurando algo localmente, que pode imitar a escala e enviar aos meus .NET classes de série, a mesma saída que a escala. Idealmente, se eu pudesse gravar os dados da escala, e, em seguida, reproduzi-lo em outra máquina, seria perfeito.

Como eu faria isso?

Foi útil?

Solução

1) abstrair o código de comunicações. No modo de teste, alimentar a sua função lógica a partir de um fluxo de arquivo de dados, em vez do fluxo de série.

ou

2) Se você tem 2 portas seriais (ou duas peças), em seguida, configurar um aplicativo emulador de escala que fala para fora através de uma porta, e plugue que no outro porto onde o software está em execução.

Outras dicas

Se você tomar a rota de emulação de porta serial, dê uma olhada com0com . Eu usá-lo o tempo todo para comunicações falsos com instrumentos de laboratório e ele funciona muito bem. Muito útil quando você laptop carece de portas seriais.

Você tem dois problemas:

  1. Test seu .NET classes de série para verificar se eles podem lidar com a recepção de dados (qualquer dados) através de uma porta serial
  2. Teste seu aplicativo para verificar se ele pode lidar com o tipo específico de dados que você obtém com a escala

Você pode testar 1. anexando qualquer coisa que possa gerar dados (por exemplo, um outro PC com Hyperterminal) à porta serial local do seu PC.

Você pode testar 2. by (para fins de teste) substituindo suas classes de série com software que funciona como um "objeto fictício" para o 'aulas + serial escala' combinação (ou seja, que se alimenta em seu programa, usando a API que o seu aulas de série usaria, os dados que você espera receber a partir da escala).

Você também pode testar 1 e 2, por:

  • Escrever um programa que finge ser a escala enviando o tipo de dados que a escala iria enviar
  • A execução deste programa para enviar dados fora de uma porta serial
  • Usando um nulo modem para connct suas duas portas seriais back-to-back (de modo que os dados enviados para fora de uma porta é recebido por um outro em seu software).
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top