Автор Тема: Arduino Micro + clickermann. Обход любых защит. DLL для общения с контроллером!!  (Прочитано 4391 раз)

0 Пользователей и 1 Гость просматривают эту тему.

inilim

  • Зашел в гости
  • *
  • Сообщений: 11
    • Просмотр профиля
Аналог Micro с али стоит 340 р.
Буду рад ссылке)

Vint

  • Супермодератор
  • Герой форума
  • *
  • Сообщений: 3871
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • Просмотр профиля
Вот
https://aliexpress.ru/item/32836616428.html?_ga=2.49378543.877831236.1633931742-754631008.1628835162&sku_id=65077718692&spm=a2g39.orderlist.0.0.202c4aa64oUzxG

Я заказывал не только этот. И с впаянными ногами и чуть другой по виду.
Этот стоил 182, второй 422. Сейчас они 361 и 700
https://aliexpress.ru/item/32676998690.html?_ga=2.49845359.877831236.1633931742-754631008.1628835162&item_id=32676998690&sku_id=10000001285896058&spm=a2g39.orderlist.0.0.202c4aa64oUzxG

Если б я ещё помнил на какой пробовал, цены бы не было  :D


Думаю там много вариантов
https://aliexpress.ru/item/32849563958.html?_evo_buckets=165608%2C165598%2C188872%2C176818%2C194277&_t=gps-id%3AaerPdpSubstituteRcmd%2Cscm-url%3A1007.33958.210224.0%2Cpvid%3A7f3b52a9-a060-4697-9ed6-dd0de4784eea%2Ctpp_buckets%3A21387%230%23233228%234&gps-id=aerPdpSubstituteRcmd&item_id=32849563958&pvid=7f3b52a9-a060-4697-9ed6-dd0de4784eea&scm=1007.33958.210224.0&scm-url=1007.33958.210224.0&scm_id=1007.33958.210224.0&sku_id=10000000445779851&spm=a2g2w.detail.1000060.1.54a43cd1ROvmyM

https://aliexpress.ru/item/32768308647.html?_ga=2.83865695.877831236.1633931742-754631008.1628835162&_t=gps-id%3ApcOrderList%2Cscm-url%3A1007.30114.213637.0%2Cpvid%3A0b629c0d-3505-4357-ae35-e58b8cafe8b2%2Ctpp_buckets%3A668%232846%238113%231998&gps-id=pcOrderList&item_id=32768308647&pdp_ext_f=%7B%22sceneId%22%3A%2220114%22%2C%22sku_id%22%3A%2212000024349272661%22%7D&pvid=0b629c0d-3505-4357-ae35-e58b8cafe8b2&scm=1007.30114.213637.0&scm-url=1007.30114.213637.0&scm_id=1007.30114.213637.0&sku_id=12000024349272661&spm=a2g39.orderlist.rcmd.1.202c4aa6JuMzxa
« Последнее редактирование: Октябрь 11, 2021, 05:19:12 pm от Vint »


inilim

  • Зашел в гости
  • *
  • Сообщений: 11
    • Просмотр профиля
Благодарю, закажу оба варианта, кстати программировать аналогично как и arduino?

Bereza

  • Зашел в гости
  • *
  • Сообщений: 3
    • Просмотр профиля
Ездил на радиорынок за ардуинкой. Из выбора были Микро и Нано. Микра 500 р. Нана - 400.  Микро, вся, с обеих сторон - колючая каракатица. Нано чистая, тонкая,  без лишнх напаек, они  в пакетике россыпью, как раз бы удобно в корпус от флешки но как написано тут - бесполезна. Спросил на всякий случай, какие, новые без скетчей, в диспетчере устройств видятся как клавиатура с мышью, и по глазам понял что лучше бы не спрашивал))) Поборовшись с жабой, решил взять обе, вдруг  и вторая куда нибудь сгодится.
Дома оказалось, что под Микру, древнего кабеля с мини ЮСБи нет. У Наны разьем более свежий - Микро-ЮСБ, шнур нашелся и фигась себе - Нана оказалась Леонардой, подвезло)))

Вопрос такой  -  Arduino_mouse_keyboard.cms неплохо работает, хоть и тормозит немного, но почему при вытащенной ардуинке ничего обратно в скрипт не возвращает а висит и ждет когда рак свистнет? Очень не удобно.
Хотелось сделать чтобы при вытаскивании шнура, скрипт не прерывался а переходил на обычную работу и благополучно завершался.
Код: Clickermann
  1. #include "Arduino_mouse_keyboard.cms"
  2.  
  3. // подпрограмма обязательно выше вызова
  4.  
  5. SUB(mouse, $IN_X, $IN_Y, $mouse, $Razb_X, $Razb_Y)
  6.  
  7. IF(($mouse = 11) or ($mouse = 12))
  8.   $MOVE_END_X=$IN_X + rnd(rnd(-1*$Razb_Y, 0),rnd(0, $Razb_Y))
  9.   $MOVE_END_Y=$IN_Y + rnd(rnd(-1*$Razb_Y, 0),rnd(0, $Razb_Y))
  10. ELSE
  11.   $MOVE_END_X=$IN_X + rnd(rnd(-1*$Razb_X, 0),rnd(0, $Razb_X))
  12.   $MOVE_END_Y=$IN_Y + rnd(rnd(-1*$Razb_Y, 0),rnd(0, $Razb_Y))  
  13. END_IF
  14.  
  15. //-------------------------------------------------------
  16.   $MOVE_SPEED = 1  // множитель скорости
  17.   $MOVE_Start_X = $_xmouse  // Считать текущую  X
  18.   $MOVE_Start_Y = $_ymouse  // Считать текущую  Y
  19.   $MOVE_X = $MOVE_Start_X
  20.   $MOVE_Y = $MOVE_Start_Y
  21.  
  22.   // Расстояние между начальной и конечной точками:
  23.   $dist = DIST($MOVE_END_X,$MOVE_END_Y,$MOVE_Start_X,$MOVE_Start_Y)
  24.  
  25.   $MOVE_SPEEDVAR = INT((SQRT($dist))/$MOVE_SPEED)
  26.  
  27.   IF($MOVE_SPEEDVAR < 1)
  28.      $MOVE_SPEEDVAR = 1
  29.   END_IF
  30.  
  31.   $MOVE_step=($dist-1)/$MOVE_SPEEDVAR
  32.   $MOVE_X_step = ($MOVE_END_X-$MOVE_Start_X)/$MOVE_step
  33.   $MOVE_Y_step = ($MOVE_END_Y-$MOVE_Start_Y)/$MOVE_step
  34.  
  35.   FOR($MOVE_i=0, $MOVE_i<INT($MOVE_step))
  36.      $MOVE_X = $MOVE_X + $MOVE_X_step
  37.      $MOVE_Y = $MOVE_Y + $MOVE_Y_step
  38.  
  39.      // Промежуточная точка с рандомом:
  40.  
  41.      $MOVE_X_ = ROUND($MOVE_X,0)+RND(-5,5)
  42.      $MOVE_Y_ = ROUND($MOVE_Y,0)+RND(-5,5)
  43.  
  44.      micro_move($MOVE_X_, $MOVE_Y_)
  45.  
  46.      IF($_return1 != 5)  // Если Ардуино выключено то:    
  47.         MOVE($MOVE_X_, $MOVE_Y_)
  48.      END_IF
  49.  
  50.      WAITMS(1)
  51.  
  52.   END_CYC
  53.  
  54.      // Конечная точка:
  55.  
  56.      micro_move($MOVE_END_X, $MOVE_END_Y)
  57.  
  58. IF($_return1 != 5)  // Если Ардуино выключено то:
  59.         move($MOVE_END_X, $MOVE_END_Y)
  60.      END_IF
  61.  
  62. //-------------------------------------------------------
  63.  
  64. SWITCH($mouse)
  65. CASE(0)
  66. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  67.  
  68. CASE(1)
  69. micro_lclick($MOVE_END_X, $MOVE_END_Y)
  70. IF($_return1 != 5)
  71. print("- Без Ардуино -")
  72. LCLICK($MOVE_END_X, $MOVE_END_Y)   // Левый клик
  73. END_IF
  74. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  75.  
  76.  
  77. CASE(2)
  78. micro_rclick($MOVE_END_X, $MOVE_END_Y)
  79. IF($_return1 != 5)
  80. RCLICK($MOVE_END_X, $MOVE_END_Y)   // Правый клик
  81. END_IF
  82. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  83.  
  84. CASE(3)
  85. micro_mclick($MOVE_END_X, $MOVE_END_Y)
  86. IF($_return1 != 5)
  87. MCLICK($MOVE_END_X, $MOVE_END_Y)   //  Средний клик
  88. END_IF
  89. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  90.  
  91. CASE(4)
  92. micro_dblclick($MOVE_END_X, $MOVE_END_Y)
  93. IF($_return1 != 5)
  94. DBLCLICK($MOVE_END_X, $MOVE_END_Y) // Двойной левый
  95. END_IF
  96. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  97.  
  98. CASE(5)
  99. micro_ldown($MOVE_END_X, $MOVE_END_Y)
  100. IF($_return1 != 5)
  101. LDOWN($MOVE_END_X, $MOVE_END_Y)    // Зажать левую
  102. END_IF
  103. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  104.  
  105. CASE(6)
  106. micro_lup($MOVE_END_X, $MOVE_END_Y)
  107. IF($_return1 != 5)
  108. LUP($MOVE_END_X, $MOVE_END_Y)      // Отпустить левую
  109. END_IF
  110. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  111.  
  112. CASE(7)
  113. micro_rdown($MOVE_END_X, $MOVE_END_Y)
  114. IF($_return1 != 5)
  115. RDOWN($MOVE_END_X, $MOVE_END_Y)    // Зажать правую
  116. END_IF
  117. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  118.  
  119. CASE(8)
  120. micro_rup($MOVE_END_X, $MOVE_END_Y)
  121. IF($_return1 != 5)
  122. RUP($MOVE_END_X, $MOVE_END_Y)      //  Отпустить правую
  123. END_IF
  124. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  125.  
  126. CASE(9)
  127. micro_mdown($MOVE_END_X, $MOVE_END_Y)
  128. IF($_return1 != 5)
  129. MDOWN($MOVE_END_X, $MOVE_END_Y)    // Зажать среднюю
  130. END_IF
  131. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  132.  
  133. CASE(10)
  134. micro_mup($MOVE_END_X, $MOVE_END_Y)
  135. IF($_return1 != 5)
  136. END_IF
  137. MUP($MOVE_END_X, $MOVE_END_Y)     // Отпустить среднюю
  138. WAITMS(50+rnd(rnd(-9,0),rnd(0,23)))
  139.  
  140. CASE(11)
  141. micro_wheeldown($Razb_X)
  142. WAITMS(200+rnd(rnd(-47,0),rnd(0,37)))
  143. IF($_return1 != 5)
  144. FOR($i=0, $i < $Razb_X)
  145. WHEELDOWN                              // Колесико вниз
  146. WAITMS(200+rnd(rnd(-47,0),rnd(0,37)))
  147. END_CYC
  148. END_IF
  149.  
  150.  
  151. CASE(12)
  152. micro_wheelup($Razb_X)
  153. WAITMS(200+rnd(rnd(-47,0),rnd(0,37)))
  154. IF($_return1 != 5)
  155. FOR($i=0, $i < $Razb_X)
  156. WHEELUP                               // Колесико вверх
  157. WAITMS(200+rnd(rnd(-47,0),rnd(0,37)))
  158. END_CYC
  159. END_IF
  160.  
  161. END_SWITCH
  162.  
  163. $mouse=0
  164. $Razb_X=0
  165. $Razb_Y=0
  166.  
  167. END_SUB
  168.  
  169. //-------------------------------------------------------
  170.  
  171. //  SUB(mouse, $IN_X, $IN_Y, $mouse, $Razb_X, $Razb_Y)
  172.  
  173. // 1: $IN_X - координата х
  174. // 2: $IN_Y - координата Y
  175. // 3: $mouse -  действия мыши в конечной точке
  176.  
  177. // $mouse = 0     нет действия
  178. // $mouse = 1  LCLICK      (Левый клик)
  179. // $mouse = 2  RCLICK      (Правый клик)
  180. // $mouse = 3  MCLICK      (Средний клик)
  181. // $mouse = 4  DBLCLICK    (Двойной левый клик)
  182. // $mouse = 5  LDOWN       (Зажать левую)
  183. // $mouse = 6  LUP         (Отпустить левую)
  184. // $mouse = 7  RDOWN       (Зажать правую)
  185. // $mouse = 8  RUP         (Отпустить правую)
  186. // $mouse = 9  MDOWN       (Зажать среднюю)
  187. // $mouse = 10 MUP         (Отпустить среднюю)
  188. // $mouse = 11 WHEELDOWN   (Колесико вниз)
  189. // $mouse = 12 WHEELUP     (Колесико вверх)
  190.  
  191. //  Функции при  $mouse от 1 до 10
  192. // 4: $Razb_X - разброс х
  193. // 5: $Razb_Y - разброс Y
  194.  
  195. //  Функции при $mouse = 11 или 12
  196. // 4: $Razb_X - число строк колесиком
  197. // 5: $Razb_Y - разброс х  и  разброс Y
  198.  
  199. //------------------    ТЭСТ    --------------------
  200. //                Рисуем в Паинте
  201.  
  202. //GOTO(mous) // Пропускаем зачистку холста
  203.  
  204. // Очищаем холст
  205.  
  206. mouse(140,110,1,8,8) // кликаем на выделение
  207. mouse(10,200,5,0,0) // Верхний угол рамки выделения
  208. mouse(1000,970,6,0,0) // Нижний угол рамки выделения
  209. mouse(500,250,2,0,0)  // Открываем меню
  210. WAITMS(100)
  211. mouse(560,267,1,0,0) // стираем  старое
  212. WAITMS(100)
  213.  
  214. mous:
  215. mouse(290,96,1,5,5)   // включаем карандаш
  216.  
  217. FOR($i=0, $i < 5)     // Рисуем 5 раз
  218.  
  219. // рисуем треугольник
  220.  
  221. mouse(100,300,5,5,8)   // точка 1 c зажимом
  222. mouse(920,300,0,5,8)   // точка 2  
  223. mouse(510,900,0,100,5) // точка 3
  224. WAITMS(100)
  225. mouse(100,300,6,5,8)   // точка 1 c отпуском
  226.  
  227. // рисуем прямоугольник
  228.  
  229. mouse(300,350,5,5,8)  // точка 4 c зажимом
  230. mouse(720,350,0,5,8)  // точка 5  
  231. mouse(720,530,0,5,8)  // точка 6
  232. mouse(300,530,0,5,8)  // точка 7
  233. mouse(300,350,6,5,8)  // точка 4 c отпуском
  234. WAIT(1)
  235. END_CYC
  236.  
  237. HALT