Primeiro parse no arduino

No meu projeto de controle remoto para a minha TV, eu queria enviar dados com comandos para o IR(infrared), mas como a porta serial soh aceita 1 bits por vez e como queria ficar livre para enviar varios comandos e com varios parametros, fiz um parser simples.

Decidi que os parametros do comando seriam dividios por ‘;’ e cada pacote seria composto por 10 bits, pronto agora fica mais facil.

Com o tamanho do pacote definido, fica mais facil, basta eu esperar a quantidade de bits disponivel para ler e quando chegasse a 10 bits, bastaria eu fazer o parse.

Usando a funcao Serial.available() que retorna a quantidade de bits disponiveis para serem lidos. Criei esse codigo.

No codigo acima, a variavel tmp vai ter os 10 caracteres que preciso para fazer o parse com seguranca. Como variavel tmp esta com uma string, posso chamar a funcao do parser.

O primeiro while eu descubro a quantidade de parametros, o segundo eu preencho o array de String, e retorno a quantidade de parametros por referencia.

E ai, sabe uma maneira melhor de fazer esse parse, fique a vontade de falar nos comentarios.

One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.