Logo

Cлучайные товары

ЖК-дисплей 1602 16x2 с I2C модулем
Ходовой винт с гайкой 8 мм
Посмотреть товар в Магазине »

Мы в соц сетях


Подпишись на канал
Мы на facebook

Как сделать самодельный пистолет из Digispark и сломанной игрушки

.Как сделать самодельный пистолет из Digispark и сломанной игрушки

При большом изобилии пластиковых игрушек, современные дети не ценят их. В следствии чего игрушки очень быстро надоедают или их просто ломают. У моего ребенка есть с пяток пистолетов из которых он играет одним.
Взял я один из таких пистолетов и решил его переделать. Для переделки мне понадобились:


1. Digispark
2. Светодиоды
3. резисторы 220 Ом
4. бокс под батарейки
5. Выключатель
6. конечный выключатель от старого принтера можно использовать и такой
7. компьютерный спикер
8. батарейки
9. провода


В общим из старых вещей и недорогих комплектующих из Китая на сумму 120 руб. (это мои затраты ваши могут быть другими) получилась интерактивная игрушка.

Корпус пистолета пришлось доработать. Удалил все лишние перегородки и выпилил отверстие для выключателя. Выключатель нужен для выключения пистолета когда ребенок не будет играть. Это сэкономит заряд батареек. Можно конечно выпоят с Digispark светодиод питания и при бездействии переводит в режим ожидания. Но я пока не очень хорошо освоил данную отладочную плату.

Все собрал по схеме:

Схема подключения пистолета на DS



Скетч для пистолета на Digispark

int led_0 = 0; // пин подключения Led1
int led_1 = 1; // пин подключения Led2
int led_2 = 2; // пин подключения Led3
const int buttonPin = 3;      // номер входа, подключенный к кнопке
int soundPin = 4; // объявляем переменную с номером пина спикера 
// переменные 
int flag = 0; // флаг Led
boolean open = true; // флаг, включения
int interval[6]={50, 120, 90, 240, 150, 50};    // интервал включения/выключения LED
void setup()  { 
  //выводs на выход
  pinMode(led_0, OUTPUT);
  pinMode(led_1, OUTPUT);
  pinMode(led_2, OUTPUT);
    // инициализируем пин, подключенный к кнопке, как вход
  pinMode(buttonPin, INPUT_PULLUP); 
  pinMode(soundPin, OUTPUT); //объявляем пин как выход.  
} 
void loop()  { 
 boolean current = digitalRead (buttonPin); // считываем данные с кнопки
 if(current)
 {
   for (int x=0; x<6; x++) { // цикл 6 проходов
    if(flag > 3)
      flag = 0;
    if (open) // если true
        digitalWrite(flag, HIGH); 
    else // иначе
      digitalWrite(flag, LOW); 
    delay(interval[x]); // Ждем 
     if (x == 5) // если последний проход по циклу
        flag++; // передаем слово (меняем текущий пин) 
    open = !open; //меняем false на true и наоборот;
   if(open)
    tone(soundPin, 500); // включаем звук частотой 500 Гц 
    else
    tone(soundPin, 100); // включаем звук частотой 100 Гц  
   }  
 }
 else
 noTone(soundPin); // выключаем звук                    
}

Ребенок радостно играл примерно дней 5, не выпуская пистолет из рук. И тут он решил взять его в детский садик. И всего один день в садике превратил его вот в это:

И тут он решил взять его в детский садик. И всего один день в садике превратил его вот в это

Что в садике с ним сделали? Как там играют?


Что в садике с ним сделали? Как там играют? Вроде бы в садике игрушки тоже пластиковые и при этом целые.
По просьбе ребенка пистолет я восстановил. И он продолжает радовать ребенка.


Минутка программирования в Arduino IDE

А вы используете конструкцию:

if (условие 1)
{
  // выполнять действие A
}
else if (условие 2)
{
  // выполнять действие B
}
else
{
  // выполнять действие  C
}

Минутка программирования в Arduino IDE

Пишите ваши примеры.
Мой ответ будет в следующей статье.

Подписывайтесь на мой канал на Youtube и вступайте в группы в Вконтакте и Facebook.

Спасибо за внимание!

Вернуться в раздел: Проекты на Arduino Дата публикации 31 января , 2018

Яндекс.Метрика

Portal-PK (Портал ПК) © 2015 - 2018 MiniYiiCMS Заказать сайт: f-studio.biz
Обратная связь
Вопрос-Ответ