![]() |
![]() |
#11 |
Senior Member
Регистрация: 12.10.2012
Адрес: Moscow-Voronezg
Сообщений: 272
Вес репутации: 0 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
А можно прокомментировать эту часть кода?
PHP код:
Зачем умножение на 28 ? |
![]() |
![]() |
![]() |
#12 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
if(inByte>47 && inByte<59) если значение с порта от 0 до 9
9 ступеней яркости по 28 в каждой, получаем 252, при максимуме 200-255 inByte=(inByte-48) переводим из ASC-II в десятичное исчисление |
![]() |
![]() |
![]() |
#13 |
Senior Member
Регистрация: 12.10.2012
Адрес: Moscow-Voronezg
Сообщений: 272
Вес репутации: 0 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
А с двух\трёх-значными по сложнее будет.
|
![]() |
![]() |
![]() |
#14 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Сложнее, готового кода для 2-3 значных чисел у меня нет
|
![]() |
![]() |
![]() |
#15 |
Junior Member
Регистрация: 06.02.2014
Сообщений: 5
Вес репутации: 0 ![]() |
![]()
Приветствую.
У меня есть следующая сложность. Собрал схемку согласно куче инфы на вашем сайте, и пытаюсь запустить диммер по скетчу из первого сообщения. Итог: Не работает. Проверил скетч. Напрямую от компа через монитор порта ввожу цифры от 1 до 9 все работает. С горем пополам настроил драйвера и с конденсатором между Reset-ом и GND получилось управлять светодиодом на ардуино с помощью HTML кнопки. То есть передача от роутера TL-MR3020 в ардуину идет. Поковырялся в настройках HTML кнопки и диммера и увидел что в Кнопке вы пуляете на ардуину сигнал по двум портам (поправьте меня если я не правильно излагаю), тоесть так: echo 1 > /dev/ttyUSB0 echo 1 > /dev/ttyACM0. А в диммере строки с ttyACM0 нету. Ардуина у меня такая UNO BUONO R3. И HTML кнопка работает как раз по ttyACM0. Залез в файлы Диммера. Там в файле uart.cgi есть следующая строчка: echo ${QUERY_STRING//dimm=} > /dev/ttyUSB0 К ней я дописываю еще одну ниже и получается вот так. echo "<h1>${QUERY_STRING//dimm=}</h1>" echo ${QUERY_STRING//dimm=} > /dev/ttyUSB0 echo ${QUERY_STRING//dimm=} > /dev/ttyACM0 Все сохранил перезагрузился. Итог: Не работает. Подскажите пожалуйста где могут быть косяки с моей стороны? И как это заставить работать? Подскажите пожалуйста какую команду можно кинуть через терминал роутера в ардуину, чтобы это было как эквивалент прямому вводу цифр из монитора порта при подключении ардуины напрямую? Последний раз редактировалось CEP; 19.12.2014 в 20:15. |
![]() |
![]() |
![]() |
#16 |
Senior Member
Регистрация: 02.04.2012
Адрес: Питер
Сообщений: 1,125
Вес репутации: 1312 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
echo 1 > /dev/ttyACM0
|
![]() |
![]() |
![]() |
#17 |
Junior Member
Регистрация: 06.02.2014
Сообщений: 5
Вес репутации: 0 ![]() |
![]()
Это одно из первых телодвижений проделанных мной после того как не заработало.
echo 1 > /dev/ttyACM0 с HTML кнопкой работает. С программой диммера НЕ работает. Отсюда вопрос... Может быть помимо echo 1 > /dev/ttyACM0 есть еще какие то команды, которые смогут включить лампу на 10% яркости, на 50% и т.д. |
![]() |
![]() |
![]() |
#18 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9824 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Регулировка яркости от 0 до 9
0-выкл. 9-вкл. 100% echo 5 > /dev/ttyACM0 |
![]() |
![]() |
![]() |
#19 |
Junior Member
Регистрация: 28.03.2015
Сообщений: 2
Вес репутации: 0 ![]() |
![]()
Здравствуйте!
Не буду открывать тему, которую можно назвать Dimmer and Arduino micro Если заглянуть в текст модуля http_button, то там при нажатии кнопки выполняются две строки echo 1 > /dev/ttyUSB0 echo 1 > /dev/ttyACM0 а в файле www/cgi-bin/modules/dimmer/uart.cgi содержится только строка echo ${QUERY_STRING//dimm=} > /dev/ttyUSB0 Я изменил USB на ACM и моя плата arduino micro (=leonrdo) на чипе atmega32u4 заработала, будучи подключенной к usb порту роутера без всяких паек и мостов. Так что, если у вас atmega со встроенным usb, вам нужен драйвер ACM (acm) и соответствующие измениния в коде нужных модулей. Предложение к разработчикам - "удвоить" нужные строки в модулях, в частности, в диммере. Последний раз редактировалось mihaleb; 28.03.2015 в 11:55. |
![]() |
![]() |
![]() |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|