Автор Тема: Замкнуть 2 пина GPIO и прочитать сигнал  (Прочитано 177 раз)

Оффлайн 2kx

  • Новичок
  • *
  • Сообщений: 13
  • Лайков: 0
  • Карма: +0/-0
  • OPiPC2, OPiLite
    • Просмотр профиля
Замкнуть 2 пина GPIO и прочитать сигнал
« : Август 14, 2017, 11:05:09 am »
Добрый день, смотрю эта ветка более менее живая, спрошу тут.
У меня задача замкнуть 2 пина и прочитать сигнал.
То есть я пишу в один пин 1, и должен со второго пина считать 1.
Как я понял, на втором пине я должен включить подтяжку к 0. Собственно и всё, задача вроде простая. Но у меня не получается считать значение. При замыкании и размыкании значение не меняется.
Может я не так себе это представляю, подскажите.

Оффлайн AlDemin

  • Житель
  • ****
  • Сообщений: 412
  • Лайков: 110
  • Карма: +14/-1
  • OPi, OPi+, OPiOne, OPiZero, OPiPC2, BPi, RPiB.
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #1 : Август 14, 2017, 02:32:25 pm »
Один порт "x" настраиваем на вывод, другой "y" на ввод, ставим перемычку.
echo 1 > /sys/class/gpio_sw/Pxx/data
cat /sys/class/gpio_sw/Pxy/data
читается "1"
echo 0 > /sys/class/gpio_sw/Pxx/data
cat /sys/class/gpio_sw/Pxy/data
соответственно "0"

Оффлайн 2kx

  • Новичок
  • *
  • Сообщений: 13
  • Лайков: 0
  • Карма: +0/-0
  • OPiPC2, OPiLite
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #2 : Август 14, 2017, 04:42:12 pm »
Один порт "x" настраиваем на вывод, другой "y" на ввод, ставим перемычку.
echo 1 > /sys/class/gpio_sw/Pxx/data
cat /sys/class/gpio_sw/Pxy/data
читается "1"
echo 0 > /sys/class/gpio_sw/Pxx/data
cat /sys/class/gpio_sw/Pxy/data
соответственно "0"
то есть подтяжку к 0 не надо делать?
я пробовал на питоне, через либу orangepi_PC_gpio_pyH3.
а через WiringOP это можно сделать? А то не нахожу у себя /sys/class/gpio_sw такого каталога.
Пробую на armbian и op lite

Оффлайн AlDemin

  • Житель
  • ****
  • Сообщений: 412
  • Лайков: 110
  • Карма: +14/-1
  • OPi, OPi+, OPiOne, OPiZero, OPiPC2, BPi, RPiB.
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #3 : Август 14, 2017, 11:51:31 pm »
Я прокладками не пользовался, только средствами ОС-и.
Если нет такого каталога, значит модуль не загужен.
gpio_sunxi или sunxi_gpio не помню как точно, ну и в script.bin gpio должны быть включены и сконфигурированы на ввод или вывод.
Подозреваю, что ввод-вывод можно настроить из самой системы, но как не разбирался.

Оффлайн ua3nbw

  • Посвященный
  • ***
  • Сообщений: 169
  • Лайков: 78
  • Карма: +10/-0
  • Orange Pi PC
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #4 : Август 15, 2017, 10:12:38 am »
с прокладкой WiringOtherPi, модули загружать не надо, и script.bin ковырять не надо.

Оффлайн 2kx

  • Новичок
  • *
  • Сообщений: 13
  • Лайков: 0
  • Карма: +0/-0
  • OPiPC2, OPiLite
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #5 : Август 15, 2017, 11:07:26 am »
пробую через wiringop
gpio mode 24 out
gpio write 24 1
gpio mode 25 in
соединяю проводом.
gpio readall показывает
 |  20 |  25 |  GPIO.25 |   IN | 0 | 37 |
при этом провод сильно греется.
что-то всё таки не так

Оффлайн ua3nbw

  • Посвященный
  • ***
  • Сообщений: 169
  • Лайков: 78
  • Карма: +10/-0
  • Orange Pi PC
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #6 : Август 15, 2017, 12:33:44 pm »

при этом провод сильно греется.
что-то всё таки не так
а провод правильно подключали ?
GPIO.24  и  GPIO.25 это 35 и 37 ноги гребёнки.

Оффлайн 2kx

  • Новичок
  • *
  • Сообщений: 13
  • Лайков: 0
  • Карма: +0/-0
  • OPiPC2, OPiLite
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #7 : Август 15, 2017, 12:43:00 pm »

при этом провод сильно греется.
что-то всё таки не так
а провод правильно подключали ?
GPIO.24  и  GPIO.25 это 35 и 37 ноги гребёнки.
да, 35 и 37, подключал на них.

Оффлайн ua3nbw

  • Посвященный
  • ***
  • Сообщений: 169
  • Лайков: 78
  • Карма: +10/-0
  • Orange Pi PC
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #8 : Август 15, 2017, 01:42:48 pm »
проверяйте на других gpio , например GPIO.22 GPIO.23

проверил на OPiPC,
gpio mode 24 out
gpio write 24 1
gpio mode 25 in

 
Извините, вам запрещён просмотр содержимого спойлеров.

Оффлайн 2kx

  • Новичок
  • *
  • Сообщений: 13
  • Лайков: 0
  • Карма: +0/-0
  • OPiPC2, OPiLite
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #9 : Август 15, 2017, 02:24:44 pm »
проверяйте на других gpio , например GPIO.22 GPIO.23
на других пинах провод не греется но и значение не меняется.
значение проверяю через gpio readall
но похоже в этой таблице не правильно расставлены пины, делаю так
gpio mode 21 out
gpio mode 4 in
gpio write 21 1
далее замыкаю 29 ногу с 16, ничего не меняется. размыкаю и 1 пин(12 нога) становится единицей. Замыкаю и 1 пин становится нулём. То есть явно что-то происходит не с тем пином.

root@orangepi:~# uname -a
Linux orangepi 3.4.113-sun8i #18 SMP PREEMPT Thu Jun 15 02:16:06 CEST 2017 armv7l GNU/Linux

Оффлайн ua3nbw

  • Посвященный
  • ***
  • Сообщений: 169
  • Лайков: 78
  • Карма: +10/-0
  • Orange Pi PC
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #10 : Август 15, 2017, 02:52:04 pm »
пины на гребёнке считаете не правильно, попробуйте посчитать с другого конца гребёнки.

Оффлайн 2kx

  • Новичок
  • *
  • Сообщений: 13
  • Лайков: 0
  • Карма: +0/-0
  • OPiPC2, OPiLite
    • Просмотр профиля
Re: Замкнуть 2 пина GPIO и прочитать сигнал
« Ответ #11 : Август 15, 2017, 03:18:08 pm »
пины на гребёнке считаете не правильно, попробуйте посчитать с другого конца гребёнки.
оспади, верх ногами проверял, вот я тупень) почему то я думал что гребенка должна быть в верхней части платы))