![]() |
|
![]() |
#1 |
Moderator
Регистрация: 19.10.2013
Сообщений: 479
Вес репутации: 600 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
![]()
Вот дописанный пример простой HTML Кнопки но с обратной связью.
Код:
#!/bin/sh #Copyright (C) 2013 cyberwrt.ru, duino.ru, cyber-place.ru, mp3car.ru echo "Content-type: text/html; charset=utf-8" echo echo "<title>Button</title> `cat /www/menu.html` <br> <body bgcolor="#f0f0f0"> <style> .b1 { font-size: 15pt; text-align: center; padding: 20px 40px; margin-left: 20px; cursor: pointer; border-radius:inherit; letter-spacing: 1px; min-width: 150px; max-width: 250px; } </style> <table align=center border=1 style=background-color:f1e1f1 width=550><tr><td align=center> <table> <form method=GET action="index.cgi">" #========== Чтение порта ==========# echo R > /dev/ttyUSB0 # запрос к ардуйне для передачи состояния пинов #head -n 1 /dev/ttyUSB0 > /tmp/arduino # и читаем порт. Без задержки но иногда при ошибках чтения зависает #===== или так читаем порт. С задержкой но не зависает while read -t 1 line; do echo $line > /tmp/arduino done < /dev/ttyUSB0 #=====# #========== ====================# krug=1 nols=0 odin=1 for a in 13 3 4 5 6; do #================ button =================================================# if [ "$a" -eq "13" ]; then a=LED b="" else b=D fi echo " <tr><td>"Knopka " <b>$b$a</b></td><td>" # pos=$(cat /tmp/arduino | awk -F "," '{print $'$krug'}') # print $1 print $2 print $3 print $4 print $5 ..... if [ "$pos" -eq "1" ]; then nolsu=$nols odinu=$odin #===== Для прямых уровней выходов =====# # vizor=". Включить . " # novizor="Выключить" # stl="" # stlon="style=background-color:FFFFCC" #===============================# #===== Для инверсных уровней выходов =====# vizor="Выключить" novizor=". Включить . " stl="style=background-color:FFFFCC" stlon="" #===============================# else nolsu=$odin odinu=$nols #===== Для прямых уровней выходов =====# # vizor="Выключить" # novizor=". Включить . " # stl="style=background-color:FFFFCC" # stlon="" #===============================# #===== Для инверсных уровней выходов =====# vizor=". Включить . " novizor="Выключить" stl="" stlon="style=background-color:FFFFCC" #===============================# fi opros=$(echo $QUERY_STRING | awk -F "=" '{print $1}') # ====== сама кнопка =================================================== echo "<button type=subbmit" if [ "$opros" -eq "$odinu" ]; then # -eq "1" -eq "3" -eq "5" ..... echo $nolsu > /dev/ttyUSB0 # echo 0 echo 2 echo 4 echo 6..... echo " name="$nolsu" class="b1" $stl>$vizor $b$a</button>" # name=0 name=2 name=4 name=6.... else echo $odinu > /dev/ttyUSB0 # echo 1 echo 3 echo 5 echo 7..... echo " name="$odinu" class="b1" $stlon>$novizor $b$a</button>" # name=1 name=3 name=5 name=7.... fi # ================================================================== : $((krug = $krug + 1)) : $((odin = $odin + 2)) : $((nols = $nols + 2)) echo "</td></tr><tr><td></td></tr>" #================ END - button =================================================# done echo "</form></table></td></tr></table></body>" #===== Надо только при отладке скрипта. Визуал. что отправляем и принимаем =====# #echo "<p><textarea rows="4" cols="64" name="text" spellcheck="false" placeholder=Text-print? >" # echo "$QUERY_STRING" # opros=$(echo $QUERY_STRING | awk -F "=" '{print $1}') # echo $opros # echo R > /dev/ttyUSB0 # head -n 1 /dev/ttyUSB0 # #echo "</textarea>" #========================================================# PHP код:
Если не сменить (кому как) то прописать ее в rc.local, подключить ардуйну и перезагрузить. А что бы не ждать перезагрузку то в путти дать команду с подключенной к юсб ардуйной. Код:
stty -F /dev/ttyUSB0 cs8 115200 ignbrk -brkint -icrnl -imaxbel -opost -onlcr -isig -icanon -iexten -echo -echoe -echok -echoctl -echoke noflsh -ixon -crtscts -hupcl /dev/ttyACM0 других нету. А на UNO R3 ch340g убрал с платы. Подключил через pl2303. С открытым вторым портом прием не работает. Последний раз редактировалось melsem; 10.05.2015 в 12:31. |
![]() |
![]() |
![]() |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
|
|