Приветствую!
Помогите пожалуйста разобраться в чём может быть причина.
Я передаю по UART от ардуины на esp8266 пакеты скажем по 160 байт. На esp принимаю эти 160 байт и записываю в файл. Если я передаю 100 таких пакетов с небольшими паузами, то по закрытию файла их оказывается только 70-80%. Т.е. принято не всё. В результате всестороннего тестирования оказалось, что esp пропускает начало передачи любого из пакетов и принимает не всё. Она на что-то отвлекается и я не могу понять на что. Пока не трогал Wi-fi принималось всё. Как только первый раз подключил её к сети, с тех пор она перестала принимать всё. На esp я использую LUA и следующий кусок кода отвечает за приём пакета:
uart.on("data, 160, function(data)
file.write(data)
end, 0)
Но! Теперь, даже если я отключаю Wi-fi модуль (статус показывает нуль, а на роутере нет подключения), картина не меняется - этот moth..fu..ed device просто съел мне мозг и он по прежнему отвлекается и пропускает некоторые передачи. Я менял скорости. На низких скоростях типа 9600 принимает в большинстве всё, но меня интересует скорость 115200 или 256к.
У ардуины и esp есть некоторое различие в скоростях, оно связано с разными тактовыми частотами. Во всяком случае у ардуины кварц 16МГц даёт около 3% ошибок при передаче на 115200, но ведь всё работало до начала использования Wi-fi.
Возможно я не достаточно отключаю Wi-fi, или что-то ещё не делаю, пожалуста, помогите советом на что обратить внимание.
Помогите пожалуйста разобраться в чём может быть причина.
Я передаю по UART от ардуины на esp8266 пакеты скажем по 160 байт. На esp принимаю эти 160 байт и записываю в файл. Если я передаю 100 таких пакетов с небольшими паузами, то по закрытию файла их оказывается только 70-80%. Т.е. принято не всё. В результате всестороннего тестирования оказалось, что esp пропускает начало передачи любого из пакетов и принимает не всё. Она на что-то отвлекается и я не могу понять на что. Пока не трогал Wi-fi принималось всё. Как только первый раз подключил её к сети, с тех пор она перестала принимать всё. На esp я использую LUA и следующий кусок кода отвечает за приём пакета:
uart.on("data, 160, function(data)
file.write(data)
end, 0)
Но! Теперь, даже если я отключаю Wi-fi модуль (статус показывает нуль, а на роутере нет подключения), картина не меняется - этот moth..fu..ed device просто съел мне мозг и он по прежнему отвлекается и пропускает некоторые передачи. Я менял скорости. На низких скоростях типа 9600 принимает в большинстве всё, но меня интересует скорость 115200 или 256к.
У ардуины и esp есть некоторое различие в скоростях, оно связано с разными тактовыми частотами. Во всяком случае у ардуины кварц 16МГц даёт около 3% ошибок при передаче на 115200, но ведь всё работало до начала использования Wi-fi.
Возможно я не достаточно отключаю Wi-fi, или что-то ещё не делаю, пожалуста, помогите советом на что обратить внимание.