![]() |
|
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
![]() |
#1 |
Junior Member
Регистрация: 11.05.2014
Сообщений: 4
Вес репутации: 0 ![]() |
![]()
Задача вроде бы тривиального характера, но не знаю как решить.
Задумалось мне подключить 2 реле к GPIO роутера, да вот незадача - GPIO 7 и 29 я уже заюзал для других целей. GPIO на светодиодах использовать не хочу по известной причине моргания на старте. По этому решено было использовать GPIO 18 и 20 от слайдера. Но судя по показаниям мультиметра по дефолту при загрузке там 2.5В, что не есть хорошо. Как решить данную проблему? Может быть альтернативное решение, например использовать GPIO подпаянных к VCC? Правда я не разобрался как это можно сделать так, чтобы по дефолту был 0. |
![]() |
![]() |
![]() |
#2 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Скорее всего на этих GPIO подтягивающие резисторы
|
![]() |
![]() |
![]() |
#3 |
Junior Member
Регистрация: 11.05.2014
Сообщений: 4
Вес репутации: 0 ![]() |
![]()
У меня сейчас шина SPI для управления светодиодной лентой заведена как раз на GPIO 7 и 29. В принципе там не так важно что будет на старте - 0 или 1. Я могу эту шину перекинуть на 18 и 20, а 7 и 29 оставить для реле. Вот и нашлось простое элегантное решение ))
|
![]() |
![]() |
![]() |
#4 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Для расширения портов можно еще использовать регистр 74HC595
|
![]() |
![]() |
![]() |
#5 |
Junior Member
Регистрация: 11.05.2014
Сообщений: 4
Вес репутации: 0 ![]() |
![]()
А поподробней? Где это можно прочитать? Я в регистрах ещё не разбирался так что вообще не понял о чём речь
|
![]() |
![]() |
![]() |
#6 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Только для расширения потребуется 3 пина
|
![]() |
![]() |
![]() |
#7 |
Junior Member
Регистрация: 11.05.2014
Сообщений: 4
Вес репутации: 0 ![]() |
![]()
Ах, это. Да, интересная штука, спасибо за совет! Правда мне это не нужно, думаю обойдусь тем что имеет роутер, а так может кому и пригодится. В крайний случай можно было бы использовать USB клавиатуру разобранную для дополнительных 3-х выходов.
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Регистрация: 04.01.2013
Адрес: Москва
Сообщений: 461
Вес репутации: 1153 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
или по i2c, что-то типа pca953x и потом kmod-i2c-algo-pca_3.3.8-1_ar71xx.ipk
|
![]() |
![]() |
![]() |
#9 | |
Senior Member
Регистрация: 15.07.2014
Сообщений: 939
Вес репутации: 990 ![]() ![]() ![]() ![]() ![]() |
![]() Цитата:
Пакеты поставил: kmod-i2c-core, kmod-i2c-algo-bit, kmod-i2c-gpio, kmod-i2c-gpio-custom, kmod-gpio-pca953x, i2c-tools Делаю пока такие комманды: Код:
root@OpenWrt:~# insmod i2c-dev root@OpenWrt:~# insmod i2c-gpio-custom bus0=0,11,4 root@OpenWrt:~# i2cdetect 0 WARNING! This program can confuse your I2C bus, cause data loss and worse! I will probe file /dev/i2c-0. I will probe address range 0x03-0x77. Continue? [Y/n] y 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- root@OpenWrt:~# echo pca953x 0x49 > /sys/bus/i2c/devices/i2c-0/new_device root@OpenWrt:~# dmesg | tail -4 [ 143.730000] i2c /dev entries driver [ 156.830000] Custom GPIO-based I2C driver version 0.1.1 [ 156.850000] i2c-gpio i2c-gpio.0: using pins 11 (SDA) and 4 (SCL) [ 264.560000] i2c i2c-0: new_device: Instantiated device pca953x at 0x49 root@OpenWrt:~# i2cdump -y 0 0x49 No size specified (using byte-data access) 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef 00: ff ff 00 ff XX XX XX XX XX XX XX XX XX XX XX XX ....XXXXXXXXXXXX 10: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX 20: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX 30: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX 40: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX 50: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX 60: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX 70: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX 80: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX 90: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX a0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX b0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX c0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX d0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX e0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX f0: XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XXXXXXXXXXXXXXXX root@OpenWrt:~# cat /sys/kernel/debug/gpio GPIOs 0-15, ath79: gpio-0 (sysfs ) out lo gpio-1 (sysfs ) out lo gpio-2 (netgear:green:power ) out lo gpio-3 (sysfs ) out lo gpio-4 (scl ) in hi gpio-5 (rtl8366s ) in hi gpio-6 (netgear:green:wan ) out hi gpio-7 (rtl8366s ) in hi gpio-8 (sysfs ) out lo gpio-9 (sysfs ) out lo gpio-11 (sda ) in hi root@OpenWrt:~# ![]() Здесь есть кой чего по коммандам, но не пойму, например комманда i2cset -y 0 0x20 0x07 0x7F - 0x07 (для9535) -> заменяю на 0x03 (для9537), 0x20 -> 0x49, а откуда берется значение 0x7F - не пойму? Даташит читал, но как таблицу к команде прикрутить (скрин)? Может еще что доставить или как-то по другому. Спасибо Последний раз редактировалось sakatgg; 17.05.2015 в 21:10. |
|
![]() |
![]() |
![]() |
#10 |
Senior Member
Регистрация: 12.10.2012
Адрес: Moscow-Voronezg
Сообщений: 272
Вес репутации: 0 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Что за дисплей? И да, как его подключить?
|
![]() |
![]() |
![]() |
Здесь присутствуют: 3 (пользователей: 0 , гостей: 3) | |
|
|