Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:2
Поисковых ботовПоисковых ботов:2
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:5
Форум » starterkit.ru » Отладочные платы » SK-NUC976
Вопросы по 1-Wire на GPIO
rexy-craxy
Добавлено 19.05.2017 09:09
0
Сообщение: 1
rexy-craxy
0

Пункты: 272
Регистрация: 03.05.2017
1. На какой ножке какого разъема по умолчанию "заводится" w1-gpio?
2. Как указать w1-gpio другой GPIO?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 19.05.2017 10:07 Редактировалось 19.05.2017 10:08 Сообщение: 2
sasamy
4.70

Пункты: 77214
Регистрация: 14.08.2009
Цитата

1. На какой ножке какого разъема по умолчанию "заводится" w1-gpio?


насколько помню по умолчанию w1-gpio не используется

Цитата

2. Как указать w1-gpio другой GPIO?


прописать можно тут - это типа board-файл

arch/arm/mach-nuc970/dev.c
Спуститься к концу Подняться к началу
Персональная информация
rexy-craxy
Добавлено 19.05.2017 11:52 Сообщение: 3
rexy-craxy
0

Пункты: 272
Регистрация: 03.05.2017
Цитата
насколько помню по умолчанию w1-gpio не используется

Да, "в коробке" он не собран. Имелось в виду: какую ногу он будет использовать, если пересобрать ядро с включенными соотв. опциями.

Цитата
прописать можно тут - это типа board-файл
arch/arm/mach-nuc970/dev.c

Спасибо, будем посмотреть.
Спуститься к концу Подняться к началу
Персональная информация
rexy-craxy
Добавлено 19.05.2017 15:02 Сообщение: 4
rexy-craxy
0

Пункты: 272
Регистрация: 03.05.2017
Еще вопрос: где прописано соответствие номеров GPIO с т.з. LInux (напр., gpio319 ) физическим "ножкам" SoC (у которого всего 148 линий GPIO, согласно Technical Reference)?
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 19.05.2017 15:31 Сообщение: 5
sasamy
4.70

Пункты: 77214
Регистрация: 14.08.2009
Посмотрите в исходниках ядра

arch/arm/mach-nuc970/include/mach/gpio.h
Спуститься к концу Подняться к началу
Персональная информация
rexy-craxy
Добавлено 20.05.2017 15:00 Сообщение: 6
rexy-craxy
0

Пункты: 272
Регистрация: 03.05.2017
Спасибо, завелось.
Спуститься к концу Подняться к началу
Персональная информация
rexy-craxy
Добавлено 22.05.2017 09:19 Редактировалось 22.05.2017 14:53 Сообщение: 7
rexy-craxy
0

Пункты: 272
Регистрация: 03.05.2017
ЗЫ Может, пригодится кому. Diff для вышеупомянутого dev.c:
Код

62a63
> #include <linux/w1-gpio.h>
1379a1381,1401
>
> /*
> * w1-gpio support
> * see Documentation/driver-model/platform.txt
> */
> #if defined(CONFIG_W1_MASTER_GPIO) || defined(CONFIG_W1_MASTER_GPIO_MODULE)
> static struct w1_gpio_platform_data nuc970_w1_gpio_platform_data = {
> .pin = NUC970_PI11,
> .is_open_drain = 0,
> .ext_pullup_enable_pin = -1,
> // .enable_external_pullup = NULL,
> };
>
> static struct platform_device nuc970_device_w1_gpio = {
> .name = "w1-gpio",
> .id = -1,
> .dev.platform_data = &nuc970_w1_gpio_platform_data,
> };
> #endif
> /* ----- */
>
1535c1557,1562
< &nuc970_device_ge2d,
---
> &nuc970_device_ge2d,
> #endif
>
> /* w1-gpio support */
> #if defined(CONFIG_W1_MASTER_GPIO) || defined(CONFIG_W1_MASTER_GPIO_MODULE)
> &nuc970_device_w1_gpio,
> #endif
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 23.05.2017 15:39 Сообщение: 8
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
ЗЫ Может, пригодится кому. Diff для вышеупомянутого dev.c:

конечно пригодится. спасибо..
ЗЫ что в качестве слейва используете? как со стабильностью считывания на шине?

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
rexy-craxy
Добавлено 24.05.2017 15:14 Сообщение: 9
rexy-craxy
0

Пункты: 272
Регистрация: 03.05.2017
Цитата
Цитата
ЗЫ Может, пригодится кому. Diff для вышеупомянутого dev.c:

конечно пригодится. спасибо..
ЗЫ что в качестве слейва используете? как со стабильностью считывания на шине?


Слэйв-драйвер -- Thermal family implementation. Железо -- короткий (ок. 20 см) трехпроводной шлейфик с двумя DS18B20, линия данных подтянута к +3,3 В резистором 4,7 кОм. Ошибок чтения не заметил, но и специально на них не охотился.

ЗЫ На днях, кстати, собрали ядро с двумя 1-Wire мастерами. Примерно так:

Код

...
#if defined(CONFIG_W1_MASTER_GPIO) || defined(CONFIG_W1_MASTER_GPIO_MODULE)
static struct w1_gpio_platform_data nuc970_w1_gpio_platform_data[] = {
{
.pin = NUC970_PI11,
.is_open_drain = 0,
.ext_pullup_enable_pin = -1,
},
{
.pin = NUC970_PI9,
.is_open_drain = 0,
.ext_pullup_enable_pin = -1,
}
};

static struct platform_device nuc970_device_w1_gpio0 = {
.name = "w1-gpio",
.id = 0,
.dev.platform_data = &nuc970_w1_gpio_platform_data[0],
};

static struct platform_device nuc970_device_w1_gpio1 = {
.name = "w1-gpio",
.id = 1,
.dev.platform_data = &nuc970_w1_gpio_platform_data[1],
};
#endif
...
static struct platform_device *nuc970_public_dev[] __initdata = {
&nuc970_serial_device0,
...
#if defined(CONFIG_W1_MASTER_GPIO) || defined(CONFIG_W1_MASTER_GPIO_MODULE)
&nuc970_device_w1_gpio0,
&nuc970_device_w1_gpio1,
#endif
}
...
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 24.05.2017 20:05 Сообщение: 10
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата
ЗЫ На днях, кстати, собрали ядро с двумя 1-Wire мастерами. Примерно так:

отлично, спасибо что поделились..
у меня заложены два канала w1 на nuc976, всё руки не доходили дописать, а тут так в тему..

зы: на небыстрых процах (9260/9g45) я изредка видел timeout-ы по шине, что связываю с софтовой реализацией и таймингами..
впрочем, посмотрим..

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Отладочные платы » SK-NUC976