Author Topic: DS18B20  (Read 17346 times)

Offline warlock

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
    • View Profile
DS18B20
« on: April 06, 2014, 04:54:01 pm »
Здравствуйте, форумчне!
Вот раздобыл датчик температуры, пытаюсь подключить, но что-то не получается. Пишут что нужно использовать 1-wire. У меня его нету...(включается в script.bin???)
Если кто имел опыт работы с ним, пожалуйста, отпишитесь.
Спасибо.
« Last Edit: May 08, 2014, 04:21:22 am by ua3prq »

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: DS18B20
« Reply #1 on: April 07, 2014, 01:12:13 am »
У соседей вот решение http://www.cubieforums.ru/viewtopic.php?f=5&t=25#p85
От далласа у меня самые хорошие впечатления, 18B20 уже трудится третий год дома на котле, ап-тайм по сезону (поаккуратнее только с ним, не любит физики на корпус- прижатий и пр. и говорят от частых обращений может разогреваться/врать)  ;)
« Last Edit: April 07, 2014, 07:32:57 am by ua3prq »

Offline warlock

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
    • View Profile
Re: DS18B20
« Reply #2 on: April 07, 2014, 05:49:24 am »
Да, но:
Так как с использованием GPIO для эмуляции шины 1-Wire возникли трудности, решил сделать по-другому и лучше - применить микросхему DS2482-800 (восьмиканальный мастер интерфейса 1-Wire) поддержку которой можно включить в ядре.

Еще я не могу найти menuconfig((( :(
С чем это может быть связано?

-------------
И все же у меня нету w1 в корне /sys/bus/w1

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: DS18B20
« Reply #3 on: April 07, 2014, 06:14:23 am »
Да я думаю, все там получится.
Поддержка далласа 1-Wire встроена в ядро- How to Connect DS18B20 Thermal Sensor via 1-Wire bus

По компиляции здесь подскажут, я не делал еще ни разу, вроде пока нет нужды.


Offline warlock

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
    • View Profile
Re: DS18B20
« Reply #4 on: April 07, 2014, 06:24:46 am »
Вот-вот, компиляция)
Работаю с Cubieboard2.
Программу по получению значения температуры взял на оф. сайте: http://docs.cubieboard.org/tutorials/cb1/customization/ds18b20_via_1-wire

Но у меня нету LCD, поэтому удалил ненужны функции. Компилится без ошибок. :)
При подключенном датчике вывод ошибки "Не найден девайс в /sys/bus/w1/devices".
Судя по оф. сайту, в корне должна быть папка /sys/bus/w1/devices/28-000004f0230d/w1_slave.
Как ее раздобыть?? :o
Спасибо.

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: DS18B20
« Reply #5 on: April 07, 2014, 07:21:45 am »
Насколько я понимаю, если драйвер встроен в ядро, при перезапуске платы и подключенном датчике ветка /sys/bus/w1/devices/28-хххх и появится сама.
Можно попробовать загрузить драйвер (gpio_sunxi, w1_sunxi, w1_gpio, w1_slave_therm ?)
Code: [Select]
sudo modprobe w1_gpioОни пишут, что пины должны быть заранее сконфигурированы через script.bin
(Правильные названия модулей в /lib/modules)

Edit: вот очень похожий старт на малине http://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/temperature/
« Last Edit: April 07, 2014, 08:04:18 am by ua3prq »

Offline UnКаЙF

  • Full Member
  • ***
  • Posts: 241
  • Karma: +9/-6
    • View Profile
Re: DS18B20
« Reply #6 on: April 07, 2014, 02:33:20 pm »
menuconfig собирается перед сборкой ядра. См. например http://www.cubieforums.com/index.php?topic=1696.0

Offline warlock

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
    • View Profile
Re: DS18B20
« Reply #7 on: April 07, 2014, 06:06:08 pm »
FATAL: Module w1_gpio not found.

Такое вот получил...
Но w1 есть в /lib/modules/kernel...
В script.bin назначил его.

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: DS18B20
« Reply #8 on: April 08, 2014, 12:54:51 am »
Попробуйте
Code: [Select]
sudo modprobe w1-gpio
Нашел конфиг от патвудовкого кернела 3.4.75+
Code: [Select]
#
# MODULbus GPIO expanders:
#
CONFIG_W1=m
CONFIG_W1_CON=y
CONFIG_W1_SUNXI=m

#
# 1-wire Bus Masters
#
CONFIG_W1_MASTER_DS2490=m
CONFIG_W1_MASTER_DS2482=m
CONFIG_W1_MASTER_DS1WM=m
CONFIG_W1_MASTER_GPIO=m

#
# 1-wire Slaves
#
CONFIG_W1_SLAVE_THERM=m
CONFIG_W1_SLAVE_SMEM=m
CONFIG_W1_SLAVE_DS2408=m
CONFIG_W1_SLAVE_DS2423=m
CONFIG_W1_SLAVE_DS2431=m
CONFIG_W1_SLAVE_DS2433=m
# CONFIG_W1_SLAVE_DS2433_CRC is not set
CONFIG_W1_SLAVE_DS2760=m
CONFIG_W1_SLAVE_DS2780=m
CONFIG_W1_SLAVE_DS2781=m
CONFIG_W1_SLAVE_BQ27000=m
CONFIG_POWER_SUPPLY=y
CONFIG_AW_AXP=y
# CONFIG_AW_AXP18 is not set
# CONFIG_AW_AXP19 is not set
CONFIG_AW_AXP20=y
CONFIG_AXP_CHARGEINIT=y
CONFIG_AXP_CHGCHANGE=y
CONFIG_AXP_HWMON=y
# CONFIG_POWER_SUPPLY_DEBUG is not set
CONFIG_AXP152=y
# CONFIG_PDA_POWER is not set
# CONFIG_TEST_POWER is not set
# CONFIG_BATTERY_DS2760 is not set
# CONFIG_BATTERY_DS2780 is not set
# CONFIG_BATTERY_DS2781 is not set
# CONFIG_BATTERY_DS2782 is not set
# CONFIG_BATTERY_SBS is not set
# CONFIG_BATTERY_BQ27x00 is not set
# CONFIG_BATTERY_MAX17040 is not set
# CONFIG_BATTERY_MAX17042 is not set
# CONFIG_CHARGER_ISP1704 is not set
# CONFIG_CHARGER_MAX8903 is not set
# CONFIG_CHARGER_LP8727 is not set
# CONFIG_CHARGER_GPIO is not set
# CONFIG_CHARGER_MANAGER is not set
# CONFIG_CHARGER_SMB347 is not set
CONFIG_HWMON=y
# CONFIG_HWMON_VID is not set
# CONFIG_HWMON_DEBUG_CHIP is not set 

Походу все сконфигурировано, осталось загрузить модули правильно, вот что у меня в lib
Code: [Select]
\drivers\w1\masters\ds1wm.ko
\drivers\w1\masters\ds2482.ko
\drivers\w1\masters\ds2490.ko
\drivers\w1\masters\w1-gpio.ko
\drivers\w1\slaves\w1_bq27000.ko
\drivers\w1\slaves\w1_ds2408.ko
\drivers\w1\slaves\w1_ds2423.ko
\drivers\w1\slaves\w1_ds2431.ko
\drivers\w1\slaves\w1_ds2433.ko
\drivers\w1\slaves\w1_ds2760.ko
\drivers\w1\slaves\w1_ds2780.ko
\drivers\w1\slaves\w1_ds2781.ko
\drivers\w1\slaves\w1_smem.ko
\drivers\w1\w1_sunxi.ko
\drivers\w1\slaves\w1_therm.ko
\drivers\w1\wire.ko
« Last Edit: April 08, 2014, 01:02:20 am by ua3prq »

Offline Раджа

  • Sr. Member
  • ****
  • Posts: 438
  • Karma: +6/-2
  • Разбираюсь в чем попало
    • View Profile
Re: DS18B20
« Reply #9 on: April 08, 2014, 05:04:26 am »
Слэши в другую сторону ;)
Заткнись и смотри аниме!

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: DS18B20
« Reply #10 on: April 08, 2014, 05:13:37 am »
Слэши в другую сторону ;)
Total Commander рулит ;)

Offline warlock

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
    • View Profile
Re: DS18B20
« Reply #11 on: April 08, 2014, 01:42:35 pm »
Quote
Нашел конфиг от патвудовкого кернела 3.4.75+
Куда его вводить/кидать?
И как грузить модуля? :-\

Вот так?
Code: [Select]
git clone https://github.com/cubieboard2/linux-sunxi/tree/sunxi-3.4-cb2/drivers/w1
« Last Edit: April 09, 2014, 10:55:55 am by warlock »

Offline ua3prq

  • Moderator
  • Hero Member
  • *****
  • Posts: 660
  • Karma: +14/-1
    • View Profile
Re: DS18B20
« Reply #12 on: April 10, 2014, 08:23:35 am »
И как грузить модуля? :-\
Через modprobe для начала тестирования.
С остальным потом уже, если понадобится.
« Last Edit: April 10, 2014, 08:27:19 am by ua3prq »

Offline warlock

  • Jr. Member
  • **
  • Posts: 89
  • Karma: +0/-0
    • View Profile
Re: DS18B20
« Reply #13 on: April 10, 2014, 09:44:20 am »
Я же писал, modprobe выдает ошибку FATAL: Module w1_gpio not found.

Offline UnКаЙF

  • Full Member
  • ***
  • Posts: 241
  • Karma: +9/-6
    • View Profile
Re: DS18B20
« Reply #14 on: April 10, 2014, 09:50:31 am »
Ты установил себе ядро и модули по совету выше ?
В /lib/modules/3.4.75+/kernel/drivers/w1/ есть нужный модуль ?
« Last Edit: April 10, 2014, 10:02:56 am by UnКаЙF »