В предыдущей статье мы считывали показания датчика DS18B20 без использования драйверов, написав собственную программу на C++. В этой статье мы попробуем настроить 1-Wire драйвер и, с его помощью, получить температуру с DS18B20, подключенного к Orange Pi PC.
Операционная система Armbian 5.35 (Ubuntu 16.04) имеет драйвер для работы с 1-Wire устройствами, а именно с датчиком температуры DS18B20. По умолчанию этот драйвер отключён и по этому нужно его настроить.
О наличии этого драйвера в других операционных системах (не Armbian) я не знаю, не проверял.
Настройка драйвера 1-Wire
- Для начала сделайте резервную копию script.bin, чтобы, в случае чего, вы смогли вернуть обратно все настройки:
sudo cp /boot/script.bin /boot/script.bak
- Преобразуйте бинарный файл script.bin в редактируемый файл fex:
bin2fex /boot/script.bin /boot/script.fex
- Теперь отредактируйте файл script.fex с помощью утилиты nano:
nano /boot/script.fex
- Найдите раздел [w1_para] и отредактируйте строки w1_used и gpio:
[w1_para] w1_used = 1 gpio = 20
где gpio — это номер пина по колонке BCM. Чтобы узнать, где и какой пин находится, выполняем gpio readall. В моём случае BCM=20, т.е. 37-й физический пин.
- Сохраните и закройте файл:
Ctrl X, Y (Yes), Enter
- Преобразуйте измененный script.fex в script.bin:
sudo fex2bin /boot/script.fex /boot/script.bin
- Отредактируйте файл /etc/modules с помощью утилиты nano:
nano /etc/modules
- Добавьте следующие строки:
w1-sunxi w1-gpio w1-therm
- Сохраните и закройте файл:
Ctrl X, Y (Yes), Enter
- Перезагрузите систему:
reboot
Схема подключения датчика DS18B20 к Orange Pi PC
Считывание температуры с датчика DS18B20
После перезагрузки выполняем команду:
dmesg | grep -E 'w1|wire'
вы должны получить примерно такой результат:
root@orangepipc:~# dmesg | grep -E 'w1|wire' [ 5.375196] W1_SUNXI: Added w1-gpio on GPIO-20 [ 5.379420] Driver for 1-wire Dallas network protocol.
Это означает, что драйвер 1-wire настроен на 20-й пин.
Чтобы увидеть все подключённые датчики выполняем:
ls -al /sys/bus/w1/devices
У меня два датчика, 28-000005464e04 и 28-00000547cabb:
root@orangepipc:~# ls -al /sys/bus/w1/devices total 0 drwxr-xr-x 2 root root 0 Dec 3 19:59 . drwxr-xr-x 4 root root 0 Dec 3 19:59 .. lrwxrwxrwx 1 root root 0 Dec 3 20:02 28-000005464e04 -> ../../../devices/w1_bus_master1/28-000005464e04 lrwxrwxrwx 1 root root 0 Dec 3 20:02 28-00000547cabb -> ../../../devices/w1_bus_master1/28-00000547cabb lrwxrwxrwx 1 root root 0 Dec 3 19:59 w1_bus_master1 -> ../../../devices/w1_bus_master1 root@orangepipc:~#
Температура и crc записаны в файле w1_slave каждого датчика и, чтобы узнать её, выводим на экран содержимое этого файла:
cat /sys/bus/w1/devices/28-000005464e04/w1_slave
результат:
61 01 4b 46 7f ff 0f 10 02 : crc=02 YES 61 01 4b 46 7f ff 0f 10 02 t=22062
Linux orangepipcplus 4.19.20-sunxi #5.75
С датчиком разобрался — работает, но есть один вопросик :
Вы случаем не знаете как переключить разрешение датчика
на 10-11 битное преобразование, а то он похоже на 9 битах.
При комнатной, у вас кстати примером выше тоже похоже — 20750, т.е. точность 0.25 градуса.
И кстати он предложил подключить датчик на 110 порт (PD14) и на другие не соглашался.
Я во всяких никсах и программировании не очень, так что если вам удастся придумать как — будет вам большой респект 😉
Да и кстати в начале темы все ок (где температура t=22062, т.е. 22.062 °C.) т.е. преобразование с большим разрешением, интересно почему. Другая версия драйвера ?
По опыту общения с 18b20 насколько я понял все просто
9бит -точность 0.25
10 — 0.1
11-0.01
Ну да, просто вот вопрос, почему на Kernel 3.4. идет преобразование наверно 12 бит, а на 4.14 — 10 бит.
Может просто со старого какой-нить файлик вытащить и переставить на новый?
На orange pi pc после установки свежего armbian 21.05.1
просто запускаем armbian-config -> System -> Hardware
в самом низу чекаем w1-gpio
сохраняем, получаем предложение перезагрузки и после чего
на PD14 получаем данные.
В node-red узел node-red-contrib-sensor-ds18b20
сразу читает данные с этого пина.
В ядре 5.10.34-sunxi:
в /boot/armbianEnv.txt
добавляем:
overlays=w1-gpio
param_w1_pin=PA20
param_w1_pin_int_pullup=1
инфа отсюда: https://docs.armbian.com/User-Guide_Allwinner_overlays/
prague 420 https://shop-cannabis-prague.com
hash for sale in prague thc gummies delivery in prague
Нужны деньги срочно взять деньги под процент с быстрым одобрением и моментальным переводом на карту. Минимум документов, удобные условия и прозрачные ставки. Оформите займ прямо сейчас!
Промокоды для игр https://esportpromo.com/ это бесплатные бонусы, скидки и эксклюзивные награды! Находите актуальные коды, используйте их и получайте максимум удовольствия от игры без лишних затрат.
Хотите проверить компанию https://innproverka.ru по ИНН? Наш сервис поможет узнать подробную информацию о юридических лицах и ИП: статус, финансы, руководителей и возможные риски. Защищайте себя от ненадежных партнеров!
The full special bip39 Word List consists of 2048 words used to protect cryptocurrency wallets. Allows you to create backups and restore access to digital assets. Check out the full list.
The most comprehensive bip39 for securely creating and restoring cryptocurrency wallets. Learn how mnemonic coding works and protect your digital assets!
application casino en ligne casino en ligne argent reel
Full wordlist New full BIP39 2048 words used to create and restore crypto wallets. Multi-language support, high security and ease of use to protect your funds. 2048 mnemonic words for seed generation.
перевезти холодильник https://perevozimgruz.by/kvartirnyj-pereezd-minsk-sankt-peterburg/
Каталог финансовых организаций https://srochno-zaym-online.ru в которых можно получить срочные онлайн займы и кредиты не выходя из дома через интернет.
Каталог финансовых организаций srochno zaym online ru в которых можно получить срочные онлайн займы и кредиты не выходя из дома.
резка смотреть боевики с озвучкой онлайн лучшие аниме 2025 HD 1080p
купить диплом спо
Сауна очищает организм https://sauna-broadway.ru выводя токсины через пот, укрепляет иммунитет благодаря перепадам температуры, снимает стресс, расслабляя мышцы и улучшая кровообращение. Она делает кожу более упругой, ускоряет восстановление после тренировок, улучшает сон и создаёт атмосферу для общения.
Korean cosmetics http://fh3809kd.bget.ru/index.php?name=account&op=info&uname=jessicoore3 perfect skin without effort! Innovative formulas, Asian traditions and visible results. Try the best skin care products right now!
smm-panel-cheap boost of subscribers
диплом о средне специальном образовании купить
буст билдов path of exile 2 купить сферы царей пое 2
купить диплом об окончании 11 классов
эльдорадо игровые автоматы на деньги eldorado casino вход
Any time you need a beneficial treatment option, you should essay writing tip is one way to save time and money.
Buying write a dissertation for consumers.
Eliminate ED problems through professional term paper writers less respected than men who don’t use it?
киного фильмы по мотивам игр киного фильмы по режиссерам
Take off problems of erection. Follow this link writing helper ? What are the drawbacks?
Buying essays online to buy Buy
the best promotions from established online pharmacies and paper writing service with wholesale discounts
Don’t be afraid to ask questions when you are buying write my paper now.
купить диплом тула
You’ll get excellent deals when you easy way to write an essay . Get one now! You can’t find more affordable prices.
Special offers can help you essay for college or in a regular pharmacy?
Тут можно преобрести оружейный сейф цена купить сейф под карабин
What are the real benefits with using essays writing help without a prescription?
училище купить диплом