The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Как правильно собрать программу для Debian (Raspbian"
Версия для распечатки Пред. тема | След. тема
Форум Программирование под UNIX
Исходное сообщение [ Отслеживать ]

. "Как правильно собрать программу для Debian (Raspbian" +/
Сообщение от skb7 (ok), 11-Мрт-14, 12:16 
> иногда вместе с результатом измерения появляется сообщение - Error OW_WRITE_BYTE

Очень похоже на то, что говорил pavlinux здесь:
http://www.opennet.ru/openforum/vsluhforumID9/9804.html#25

Попробуйте увеличить QUIRK_LIBUSB_SLEEP до 100. По-хорошему конечно надо переехать с libusb-0.1 на libusb-1.0, по идее там это починили.


> Смотрел в код, но так и не смог разобраться, почему появляется это
> сообщение.

Это сообщение показывается, если вызов OW_WRITE_BYTE() завершился некорректно в одной из следующих функций:
- MATCH_ROM()
- SEARCH_ROM()
- SKIP_ROM_CONVERT()
- GET_TEMPERATURE()

Думаю, в вашем случае это была GET_TEMPERATURE().

В каждой из этих функций в случае некорректного завершения OW_WRITE_BYTE делается несколько повторов (ONEWIRE_REPEAT=5), что видно из кода:


    while (!RESULT && N--)


Если за 5 повторов так и не вышло нормально выполнить OW_WRITE_BYTE(), тогда будет выведено сообщение о том, в какой верхней функции произошла ошибка (список этих функций я написал выше). Но поскольку вы видите всего один вывод об ошибке, значит при повторном чтении программе удалось нормально прочитать значение датчика и вывести его. Иначе бы вы увидели 5 выводов "Error OW_WRITE_BYTE" и потом еще вывод об ошибке верхней функции.

Глядя в код OW_WRITE_BYTE() можно увидеть, что всего 3 возможных причины ошибки:
1. ошибка в вызове USB_SET_FEATURE()
2. ошибка в вызове USB_GET_FEATURE()
3. некорректный USB буффер после чтения записанного значения (т.е. либо записалось что-то не то, либо прочиталось неправильно).

В нашем случае это 3-я ошибка. Почему она возникает -- см. в самом верху этого сообщения.

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Как правильно собрать программу для Debian (Raspbian, DimNsk, 28-Дек-13, 23:35  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру