|
|
|
|
|
by javiermaestro
2743 days ago
|
|
Mmmm maybe I'm missing something, but... what's preventing the rest of the command from being corrupt? Imagine two commands, CM and DM. CM is good and DM is bad. Noise gets in and changes ATCM into ATDM. Boom. Unless you have error detection / correction, etc, I don't think the AT would add anything else to the equation :-? |
|
Now what do you do? Well, you check the first byte and see if it's a valid first byte for a command. There are hundreds of them, so basically every uppercase ASCII character should do.
In the happy path, you get a byte stream like "DT 1234\r\n".
Sometimes, the data stream has noise in it, so you get bytes like "%$DT 1234\r\n".
There are no commands that start with "%" or "$" so you can just drop it.
However, in the unhappy path, you might get bytes like "CMDT 1234\r\n".
CM is a valid command! But "DT 1234" are not valid arguments.
If only there was a way to get the ATtention of the parser before parsing commands...