PCCar.ru - Ваш автомобильный компьютер

Вернуться   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > AndroidCar > Софт

Ответ
 
Опции темы Поиск в этой теме
Старый 15.07.2016, 10:17   #171
armlive
Старший Пользователь
 
Регистрация: 12.12.2013
Возраст: 43
Город: Армавир
Регион: 23, 93
Машина: Nissan Qashqai
Сообщений: 510
armlive is a glorious beacon of lightarmlive is a glorious beacon of lightarmlive is a glorious beacon of lightarmlive is a glorious beacon of lightarmlive is a glorious beacon of light
По умолчанию

Цитата:
Сообщение от Alekssandr Посмотреть сообщение
DelleTenebre Привет! Яву начал изучать недавно.

Подскажи пожалуйста как отправить данные на Ваше приложение, пишу приложение под андроид которая будет работать в связке с SerialManager. Почему не срабатывают команды на включение и отключение светодиода на ардуино, из моего приложения, хотя с виджета всё работает. Походу чтото делаю не так.

Обработчик кнопок работает проверял через Toast.

PHP код:
    public static final String ACTION_SERVIS "serial.manager.send";
    public static final 
String EXTRA_DATA "data:";

    public 
void don(View view) {
        
Intent intent = new Intent();
        
intent.setAction(ACTION_SERVIS);
        
intent.putExtra(EXTRA_DATA,"on");
        
sendBroadcast(intent);
    }

    public 
void doff(View view) {
        
Intent intent = new Intent();
        
intent.setAction(ACTION_SERVIS);
        
intent.putExtra(EXTRA_DATA,"off");
        
sendBroadcast(intent);
    } 

С приемником kg.delletenebre.serial.NEW_DATA разобрался всё работает отлично.
Вот ты извращенец, зачем посредников используешь. сразу в порт учись отправлять
__________________
Nexus 7 (2013) Nissan Qashqai
armlive вне форума   Ответить с цитированием
Старый 15.07.2016, 12:55   #172
Alekssandr
Старший Пользователь
 
Регистрация: 11.08.2013
Возраст: 35
Регион: 86
Сообщений: 445
Alekssandr is a jewel in the roughAlekssandr is a jewel in the roughAlekssandr is a jewel in the rough
По умолчанию

Цитата:
Сообщение от armlive Посмотреть сообщение
Вот ты извращенец, зачем посредников используешь. сразу в порт учись отправлять
=) я не хочу потерять возможности SerialManager, просто делаю удобную оболочку для настройки аудиопроцессора tda7719.
Alekssandr вне форума   Ответить с цитированием
Старый 16.07.2016, 11:20   #173
slon25
Старший Пользователь
 
Регистрация: 29.10.2009
Возраст: 47
Регион: Украина
Сообщений: 131
slon25 is a jewel in the roughslon25 is a jewel in the roughslon25 is a jewel in the rough
По умолчанию

Что нужно до установить чтобы на нексусе работали команды из раздела эмуляция клавиатуры рут???
slon25 вне форума   Ответить с цитированием
Старый 28.07.2016, 18:38   #174
DelleTenebre
Старший Пользователь
 
Регистрация: 10.01.2015
Возраст: 32
Город: Бишкек
Регион: Казахстан
Машина: Subaru Outback
Сообщений: 163
DelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant future
По умолчанию

C лёгкого пинка ali_vlad, я начал эксперименты с GPIO. В версии 1.6.2 готов модуль считывания состояния 1 и 0. Под шумок добавил возможность "GPIO-кнопка" - можно получать данные не 1 и 0, а click и hold (удержание).

----

Обновлено 11.09.2016

Чтобы распознавать команды с GPIO нужно выбрать Тип команды GPIO, в появившееся поле Номер GPIO, как ни странно, номер GPIO (Скриншот).

Например, у geekbox landingship есть пин с маркировкой GPIO3_A3 - не знаю стандартное это обозначение или нет, но необходимый номер высчитывается по формуле (тут можно ещё почитать):
Код:
GPIO[X]_[Y][Z] = 32*[X] + 8*[Y] + [Z] (for Y: A=0, B=1, C=2, D=3)
В результате имеем номер 99. В поле Номер GPIO пишем 99, в поле значение одно из следующих: 1, 0, click или hold.
__________________
Подсолнух (github) для авторегулировки яркости экрана по позиции солнца и синхронизации времени по GPS (v1.6 от 13.06.17)
Serial Manager для обработки данных с Arduino
Calls Assistant - замена TabletTalk

Последний раз редактировалось DelleTenebre; 11.09.2016 в 21:49.
DelleTenebre вне форума   Ответить с цитированием
Старый 28.07.2016, 19:28   #175
mark949
Пользователь
 
Аватар для mark949
 
Регистрация: 28.05.2008
Возраст: 43
Город: Astrakhan
Регион: 30
Машина: RAM 2500
Сообщений: 33
mark949 is on a distinguished road
По умолчанию

В правильном направлении движетесь товарищ!
Считаю это необходимо в нашем деле...
mark949 вне форума   Ответить с цитированием
Старый 29.07.2016, 20:48   #176
DelleTenebre
Старший Пользователь
 
Регистрация: 10.01.2015
Возраст: 32
Город: Бишкек
Регион: Казахстан
Машина: Subaru Outback
Сообщений: 163
DelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant future
По умолчанию

mark949, спасибо.

В 1.6.3 добавил действие установки состояния GPIO: low, high, invert. Формат такой: gpioX:low, gpioX:high, gpioX:invert. Где X номер GPIO. Если GPIO уже был инициализирован и имеет режим IN, будет сообщение об ошибке (в целях безопасности). Команда invert, как следует из названия, инвертирует состояние, т.е. если было 0, то станет 1; если было 1 - станет 0; если порт не был настроен, то будет выбрано состояние 0.

Немного исправил уведомления - теперь они должны исчезать как и положено.

Приношу свои извинения всем кто активно пользовался виджетами приёма данных - они у вас немножко (почти полностью) сломаются. Но в качестве компенсации вы получаете возможность пользоваться математическими выражениями и функциями описанными по этой ссылке, а так же hex2dec(), dec2hex(), bin2dec(), dec2bin(), выводить значение ключа с помощью %key, а полученного от контроллеров значения через %value. Все эти плюшки работают и в уведомлениях.

Например, чтобы перевести полученное значение в hex, в поле Текст пишем: dec2hex(%value)

Для работы с мат. выражениями необходимо всю формулу обернуть в %{}.

Например, от контроллера приходят данные о температуре в Фаренгейтах, а нам нужно перевести в градусы Цельсия: %{round((%value - 32) * (5 / 9), 1)} ºC
По формуле выше, мы перевели градусы и округлили до десятых (до одного знака после запятой). Т.е. если от контроллера пришла цифра 89, то мы на выходе получим 31.7 ºC. При этом текст до и после %{} остаётся без изменений.
__________________
Подсолнух (github) для авторегулировки яркости экрана по позиции солнца и синхронизации времени по GPS (v1.6 от 13.06.17)
Serial Manager для обработки данных с Arduino
Calls Assistant - замена TabletTalk

Последний раз редактировалось DelleTenebre; 03.08.2016 в 19:15.
DelleTenebre вне форума   Ответить с цитированием
Старый 29.07.2016, 23:03   #177
ali_vlad
Старший Пользователь
 
Регистрация: 21.06.2014
Возраст: 46
Регион: 05
Машина: Hyundai Accent II
Сообщений: 556
ali_vlad is on a distinguished road
По умолчанию

Вопрос по GPIO.
Может я чего не так делаю
Добавляю новое действие, категория GPIO, определять ключ/значение автоматически. Замыкаю ножку GPIO на землю и тишина.
ali_vlad вне форума   Ответить с цитированием
Старый 29.07.2016, 23:25   #178
DelleTenebre
Старший Пользователь
 
Регистрация: 10.01.2015
Возраст: 32
Город: Бишкек
Регион: Казахстан
Машина: Subaru Outback
Сообщений: 163
DelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant future
По умолчанию

ali_vlad, для нового gpio автоматически не получится получить ключ и значение. Алгоритм я сделал такой: при добавлении новой команды, если ключ соответствует шаблону gpioX (где X цифра), то инициализируется пин gpio с указанным номером в состояние in. Только после этого SM начинает его "слушать" и можно получить ключ/значение автоматически (хотя ключ уже есть). При удалении команд проверяется - если такой же номер GPIO не встречается ни в одной из команд, то пин GPIO отключается (через /sys/class/gpio/unexport).

Насколько я понял из документаций к разным платам с GPIO, их может быть сколько угодно с почти любыми номерами и лучше заранее не "слушать" всё подряд, так как неизвестно какие из них и для чего мог настроить пользователь.
__________________
Подсолнух (github) для авторегулировки яркости экрана по позиции солнца и синхронизации времени по GPS (v1.6 от 13.06.17)
Serial Manager для обработки данных с Arduino
Calls Assistant - замена TabletTalk
DelleTenebre вне форума   Ответить с цитированием
Старый 29.07.2016, 23:33   #179
ali_vlad
Старший Пользователь
 
Регистрация: 21.06.2014
Возраст: 46
Регион: 05
Машина: Hyundai Accent II
Сообщений: 556
ali_vlad is on a distinguished road
По умолчанию

Цитата:
Сообщение от DelleTenebre Посмотреть сообщение
ali_vlad, для нового gpio автоматически не получится получить ключ и значение. Алгоритм я сделал такой: при добавлении новой команды, если ключ соответствует шаблону gpioX (где X цифра), то инициализируется пин gpio с указанным номером в состояние in. Только после этого SM начинает его "слушать" и можно получить ключ/значение автоматически (хотя ключ уже есть). При удалении команд проверяется - если такой же номер GPIO не встречается ни в одной из команд, то пин GPIO отключается (через /sys/class/gpio/unexport).
У меня они называются /sys/class/gpio/gpiochip***. Это ничего?
ali_vlad вне форума   Ответить с цитированием
Старый 29.07.2016, 23:47   #180
DelleTenebre
Старший Пользователь
 
Регистрация: 10.01.2015
Возраст: 32
Город: Бишкек
Регион: Казахстан
Машина: Subaru Outback
Сообщений: 163
DelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant futureDelleTenebre has a brilliant future
По умолчанию

Не, это не те номера. /sys/class/gpio/gpiochip насколько я понимаю просто номера контроллеров GPIO, и хранят информацию и том за какие пины отвечают.

Если у Вас Odroid-XU4/3, то исходя из этой первой таблицы, например для 13 пина:

13 XE.INT13 GPX1.5 (#21)

прицепив провод на обозначенный на плате 13 пин, в SM надо писать gpio21. Как бы "логично" это не выглядело Я пока с этими номерами разобрался, плату чуть в окно не выкинул
__________________
Подсолнух (github) для авторегулировки яркости экрана по позиции солнца и синхронизации времени по GPS (v1.6 от 13.06.17)
Serial Manager для обработки данных с Arduino
Calls Assistant - замена TabletTalk
DelleTenebre вне форума   Ответить с цитированием
Ответ

Метки
android, arduino, управление


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 07:02.


Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot