Автокликер своими руками на базе Digispark Attiny85. С рандомной задержкой между кликами.

При подключении платы Digispark к USB компьютера, она определяется как компьютерная мышь.

Автокликер своими руками на базе Digispark Attiny85

Принцип работы заключается в том, что при нажатии на кнопку эмитируется нажатие левой кнопки мыши в бесконечном цикле с рандомной задержкой между кликами. За задержку отвечает переменная “j” и она имеет два параметра, это значения 200 и 3000. В нашем случае величина задержки будет генерироваться в пределах от 200 миллисекунд до 3000 миллисекунд.

Остановить цикл можно повторным нажатием на кнопку, или отсоединением платы от компьютера.

Переменная “j” помечена комментарием //НАСТРОЙКА! Настройте её на свое усмотрение и загрузите скетч на плату.

Как прошить плату Digispark на базе микроконтроллера ATtiny 85 смотрите по этой ссылке www.kolotushkin.com/Как прошить плату Digispark на базе микроконтроллера ATtiny 85

или по этой www.youtube.com/Как прошить плату Digispark на базе микроконтроллера ATtiny 85


//Начало скетча



#include "DigiMouse.h"
const int buttonPin = 1;
int buttonState = 0;
int i = 0;//переменная для цикла while
int j = random (200, 3000);//НАСТРОЙКА!

void setup() {
  pinMode(buttonPin, INPUT);//определяем переменную buttonPin как вход
  DigiMouse.begin();
}

void loop() {
  buttonState = digitalRead(buttonPin);//проверка состояния кнопки
  if (buttonState == HIGH) {
    delay(500);
    //если кнопка нажата, то сделать паузу на 500 мс и перейти к while
    while (i < 1) {
      unsigned long currentTime; //Переменная текущего времени
      if (millis() - currentTime > j)
      { currentTime = millis();
        j = random (200, 3000);//НАСТРОЙКА!
        DigiMouse.setButtons(1 << 0); //нажать на левую кнопку мыши
        //DigiMouse.setButtons(2<<0);//нажать на правую кнопку мыши
        DigiMouse.delay(50);//Задержка 50 миллисекунд
        DigiMouse.setButtons(0);//отпустить все кнопки
        DigiMouse.delay(50);//Задержка 50 миллисекунд
      }
      buttonState = digitalRead(buttonPin); //проверка состояния кнопки
      if (buttonState == HIGH) {
        delay(500); // Если кнопка нажата, то сделать паузу на 500 мс и выйти из цикла
        break;
      }
    }
  }
}



//Конец скетча


//Дополнительные команды



    DigiMouse.moveX(20); //переместить курсор вправо на 20 пикселей
    DigiMouse.moveX(-20); //переместить курсор влево на 20 пикселей
    DigiMouse.moveY(20); //переместить курсор вниз на 20 пикселей
    DigiMouse.moveY(-20); //переместить курсор вверх на 20 пикселей
    DigiMouse.scroll(10); //крутить колесико вперед на 10
    DigiMouse.scroll(10); //крутить колесико назад на 10



В конце скетча имеются Дополнительные команды! На тот случай если вы захотите добавить функции к устройству.

После загрузки припаяйте кнопку к контактам P1 и 5V, как показано на этой схеме.

Схема автокликера своими руками на базе Digispark Attiny85

О том как сделать такую же кнопку смотрите статью “Кнопка Лентяйка для World of Tanks” по этой ссылке www.kolotushkin.com/Кнопка Лентяйка для World of Tanks

Проект для Digispark Attiny85

Видео версия проекта "Автокликер своими руками на базе Digispark Attiny85."


Автокликер своими руками на базе Digispark Attiny85