Სარჩევი:

ბავშვთა ქცევის მოდიფიკატორი: 5 ნაბიჯი (სურათებით)
ბავშვთა ქცევის მოდიფიკატორი: 5 ნაბიჯი (სურათებით)

ვიდეო: ბავშვთა ქცევის მოდიფიკატორი: 5 ნაბიჯი (სურათებით)

ვიდეო: ბავშვთა ქცევის მოდიფიკატორი: 5 ნაბიჯი (სურათებით)
ვიდეო: Vegan Since 1978: Adama Alaji the Heraldess of The Establishment of the Eternal Order 2024, ნოემბერი
Anonim
ბავშვთა ქცევის მოდიფიკატორი
ბავშვთა ქცევის მოდიფიკატორი

ბავშვთა ქცევის მოდიფიკატორი აღწერს რამდენჯერ შეექმნა თქვენს შვილს უბედურება (იგივე დარტყმები) და როდესაც სამს მიაღწევს, ზარი ჩაქრება და LCD ეკრანი აცხადებს, რომ ის დასაბუთებულია.

ნაბიჯი 1: დაიწყეთ მარტივი: დაამატეთ ღილაკი

დაიწყეთ მარტივი: დაამატეთ ღილაკი
დაიწყეთ მარტივი: დაამატეთ ღილაკი

ამ პროექტის პირველი ნაბიჯი მარტივია. დაამატეთ 1 ღილაკი. ამ ნაბიჯში თქვენ გჭირდებათ, 4 Male to Male Wires, 1 220 Resisitor და დააჭირეთ ღილაკს.

  1. შეაერთეთ 5V დენის მხარეს პოზიტიურ რიგზე პურის დაფაზე
  2. შეაერთეთ GND პურის დაფის უარყოფით მხარეს

  3. ჩასვით ღილაკი პურის დაფაზე
  4. შეაერთეთ პოსტივის მწკრივზე დენის ღილაკი მარცხენა ქვედა ნაწილში

  5. დააწკაპუნეთ ღილაკზე რეზისტორის გამოყენებით ღილაკის ქვედა მარჯვენა ქვედა ნაწილში პურის დაფის უარყოფით რიგში.
  6. დააკავშირეთ #13 არდუინოს ციფრული მხარეს ღილაკის ზედა მარჯვენა მხარეს.

დაადასტურეთ თქვენი კოდით, რომ ღილაკი რეგისტრირდება:

int child1ButtonPin = 13; // ეს არის პინი, რომელთანაც დაკავშირებულია ჩვენი ღილაკი

int child1ButtonState = 0; // კითხულობს ღილაკის მდგომარეობას (ჩართვა/გამორთვა)

int child1Strike = 0; // რამდენი დარტყმა აქვს ბავშვს

// კონფიგურაციის ფუნქცია გადის ერთხელ, როდესაც დააჭირეთ ღილაკს გადატვირთვა ან ჩართვა დაფაზე

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); } // მარყუჟის ფუნქცია გადის ისევ და ისევ სამუდამოდ void loop () {// ღილაკის მდგომარეობის წაკითხვა (ჩართვა ან გამორთვა) child1ButtonState = digitalRead (child1ButtonPin); if (child1ButtonState == HIGH) // ღილაკზე დაჭერილია {Serial.println ("HIGH"); დაგვიანება (5000); }

თუ (child1ButtonState == LOW)

{Serial.println ("LOW"); დაგვიანება (5000); }}

ნაბიჯი 2: შეცვალეთ კოდი ღილაკების დაჭერის რეგისტრაციისთვის

შეცვალეთ კოდი ღილაკების დაჭერის რეგისტრაციისთვის
შეცვალეთ კოდი ღილაკების დაჭერის რეგისტრაციისთვის
შეცვალეთ კოდი ღილაკების დაჭერის რეგისტრაციისთვის
შეცვალეთ კოდი ღილაკების დაჭერის რეგისტრაციისთვის

შეცვალეთ კოდი ღილაკის დარეგისტრირებისთვის:

int child1ButtonPin = 13; // ეს არის პინი, რომელსაც ჩვენი ღილაკი უკავშირდება child1ButtonState = 0; // კითხულობს ღილაკის მდგომარეობას (ჩართვა/გამორთვა) int child1PreviousState = 0; // წინა ღილაკის მდგომარეობა int child1Strike = 0;

// კონფიგურაციის ფუნქცია გადის ერთხელ, როდესაც დააჭირეთ ღილაკს გადატვირთვა ან ჩართვა დაფაზე

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); } // მარყუჟის ფუნქცია გადის ისევ და ისევ სამუდამოდ void loop () {// ღილაკის მდგომარეობის წაკითხვა (ჩართვა ან გამორთვა) child1ButtonState = digitalRead (child1ButtonPin); if (child1ButtonState! = child1PreviousState) {if (child1ButtonState == HIGH) // ღილაკზე დაჭერილია {child1Strike ++; Serial.println (child1Strike); დაგვიანება (1000); }}

}

შემდეგი შეცვალეთ კოდი ისე, რომ ბავშვმა მიიღოს 3 დარტყმა, რის შემდეგაც მიიღებს შეტყობინებას, რომ ის დასაბუთებულია:

int child1ButtonPin = 13; // ეს არის პინი, რომელსაც ჩვენი ღილაკი უკავშირდება child1ButtonState = 0; // კითხულობს ღილაკის მდგომარეობას (ჩართვა/გამორთვა) int child1PreviousState = 0; int child1Strike = 0;

// კონფიგურაციის ფუნქცია გადის ერთხელ, როდესაც დააჭირეთ ღილაკს გადატვირთვა ან ჩართვა დაფაზე

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); } // მარყუჟის ფუნქცია გადის ისევ და ისევ სამუდამოდ void loop () {// ღილაკის მდგომარეობის წაკითხვა (ჩართვა ან გამორთვა) child1ButtonState = digitalRead (child1ButtonPin); if (child1ButtonState! = child1PreviousState) {if (child1ButtonState == HIGH) // ღილაკზე დაჭერილია {child1Strike ++; Serial.println (child1Strike);

თუ (child1Strike> = 3)

{Serial.println ("ბავშვი 1 დასაბუთებულია!"); } დაყოვნება (3000); }}

}

სერიული მონიტორი უნდა გამოიყურებოდეს ზემოთ მოცემულ სურათზე.

შენიშვნა: დარწმუნდით, რომ კომფორტულად გრძნობთ დაგვიანებით. მცირე დაგვიანებით და დაარეგისტრირებს 1 ღილაკს, როგორც ერთზე მეტს!

ნაბიჯი 3: დაამატეთ იმდენი ღილაკი, რამდენიც გყავთ შვილები

დაამატეთ იმდენი ღილაკი, რამდენიც გყავთ შვილები
დაამატეთ იმდენი ღილაკი, რამდენიც გყავთ შვილები
დაამატეთ იმდენი ღილაკი, რამდენიც გყავთ შვილები
დაამატეთ იმდენი ღილაკი, რამდენიც გყავთ შვილები

ამ ეტაპზე, ჩვენ უბრალოდ ვაკოპირებთ ბოლო რამდენიმე ნაბიჯს. დაამატეთ იმდენი ღილაკი, რამდენიც ბავშვებს. ჩემს შემთხვევაში, მე დავამატებ ოთხს. დარწმუნდით, რომ შეცვალეთ თქვენი კოდი ციფრული პინი, რომელზედაც ღილაკი არის დაკავშირებული. ჩემს შემთხვევაში, მე გამოვიყენე პინები 12 -დან 10 -მდე, რომ დავამატო ჩემი ღილაკები. თუ თქვენ გჭირდებათ შეხსენება, აქ არის ნაბიჯი 1:

  1. შეაერთეთ 5V დენის მხარეს პოზიტიურ რიგზე პურის დაფაზე
  2. შეაერთეთ GND პურის დაფის უარყოფით მხარეს

  3. ჩასვით ღილაკი დაფაზე
  4. დააწკაპუნეთ ღილაკზე რეზისტორის გამოყენებით ღილაკის ქვედა მარჯვენა ქვედა ნაწილში პურის დაფის უარყოფით რიგში.

  5. შეაერთეთ (თქვენი პინის ნომერი) არდუინოს ციფრულ მხარეს ღილაკის ზედა მარჯვენა მხარეს.

თქვენ ასევე დაგჭირდებათ კოდის შეცვლა თქვენი ყველა ღილაკის დასამუშავებლად. გთხოვთ, გახსოვდეთ, რომ თუ თქვენ გჭირდებათ ფრთხილად იყოთ თქვენს მიერ გამოყენებული სიმები. თქვენ არ შეგიძლიათ დაამატოთ მცირე ასოები ერთად. უმჯობესია გამოცხადდეს 1 სიმებიანი ობიექტის სახით.

int child1ButtonPin = 13; // ეს არის ის პინი, რომელსაც ჩვენი ღილაკი უკავშირდება ბავშვზე 2 ButtonPin = 12; int child3ButtonPin = 11; int child4ButtonPin = 10; int child1ButtonState = 0; // კითხულობს ღილაკის მდგომარეობას (ჩართვა/გამორთვა) int child2ButtonState = 0; int child3ButtonState = 0; int child4ButtonState = 0; int child1PreviousState = 0; int child2PreviousState = 0; int child3PreviousState = 0; int child4PreviousState = 0; int child1Strike = 0; int child2Strike = 0; int child3Strike = 0; int child4Strike = 0;

// კონფიგურაციის ფუნქცია გადის ერთხელ, როდესაც დააჭირეთ ღილაკს გადატვირთვა ან ჩართვა დაფაზე

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); pinMode (child2ButtonPin, INPUT); pinMode (child3ButtonPin, INPUT); pinMode (child4ButtonPin, INPUT); } // მარყუჟის ფუნქცია გადის ისევ და ისევ სამუდამოდ void loop () {// წაიკითხეთ ღილაკის მდგომარეობა (ჩართული ან გამორთული) child1ButtonState = digitalRead (child1ButtonPin);

child2ButtonState = digitalRead (child2ButtonPin);

child3ButtonState = digitalRead (child3ButtonPin);

child4ButtonState = digitalRead (child4ButtonPin);

if (child1ButtonState! = child1PreviousState)

{if (child1ButtonState == HIGH) // ღილაკზე დაჭერილია {child1Strike ++; Serial.println (სიმებიანი ("ბავშვს 1 ჰყავს:") + child1Strike + "დარტყმები");

თუ (child1Strike> = 3)

{Serial.println ("ბავშვი 1 დასაბუთებულია!"); } დაყოვნება (3000); }} if (child2ButtonState! = child2PreviousState) {if (child2ButtonState == HIGH) // ღილაკზე დაჭერილია {child2Strike ++; Serial.println (სიმებიანი ("ბავშვს 2 აქვს:") + child2Strike + "დარტყმები");

თუ (child2Strike> = 3)

{Serial.println ("ბავშვი 2 დასაბუთებულია!"); } დაყოვნება (3000); }}

if (child3ButtonState! = child3PreviousState)

{if (child3ButtonState == HIGH) // ღილაკზე დაჭერილია {child3Strike ++; Serial.println (სიმებიანი ("ბავშვს 3 აქვს:") + child3Strike + "დარტყმები");

თუ (child3Strike> = 3)

{Serial.println ("ბავშვი 3 დასაბუთებულია!"); } დაყოვნება (3000); }}

თუ (child4ButtonState! = child4PreviousState)

{if (child4ButtonState == HIGH) // ღილაკზე დაჭერილია {child4Strike ++; Serial.println (სიმებიანი ("ბავშვს 4 აქვს:") + child4Strike + "დარტყმები");

თუ (child4Strike> = 3)

{Serial.println ("ბავშვი 4 დასაბუთებულია!"); } დაყოვნება (3000); }}}

ნაბიჯი 4: დაამატეთ ბუზერი

დაამატეთ ბუზერი
დაამატეთ ბუზერი
დაამატეთ ბუზერი
დაამატეთ ბუზერი

ახლა მოდით დავრწმუნდეთ, რომ თქვენმა შვილებმა იციან, რომ ისინი დასაბუთებულები არიან. დავამატოთ ზუზუნი. ზუზერის დასაკავშირებლად მიჰყევით ამ მარტივ ნაბიჯებს.

  1. დაამატეთ ბუზერი თქვენს დაფაზე, დაგეგმეთ სივრცე, რადგან LCD ეკრანი ჩნდება.
  2. შეაერთეთ პოსტივის მხარე (ზუმერს უნდა ჰქონდეს + პოსტივირის მხარეს) თქვენი არჩევანის პინთან. მე გავაკეთე 9.
  3. შეაერთეთ მეორე მხარე თქვენი დაფის დაფუძნებულ სარკინიგზო ხაზთან.

შემდეგი, შეცვალეთ თქვენი კოდი, რომ ზარი გამორთოთ, როდესაც ბავშვი დამიწებდება. თქვენი ზუზერის კოდირების რამდენიმე განსხვავებული გზა არსებობს, მაგრამ მე მომწონს ტონი (buzzerName, hertz, ხანგრძლივობა) მისი სიმარტივისთვის. ამის მაგალითი იქნება ტონი (ზარი, 4000, 300).

int child1ButtonPin = 13; // ეს არის ის პინი, რომელიც დაკავშირებულია ჩვენს ღილაკზე, child2ButtonPin = 12; int child3ButtonPin = 11; int child4ButtonPin = 10; int child1ButtonState = 0; // კითხულობს ღილაკის მდგომარეობას (ჩართვა/გამორთვა) int child2ButtonState = 0; int child3ButtonState = 0; int child4ButtonState = 0; int child1PreviousState = 0; int child2PreviousState = 0; int child3PreviousState = 0; int child4PreviousState = 0; int child1Strike = 0; int child2Strike = 0; int child3Strike = 0; int child4Strike = 0; const int buzzer = 2;

// კონფიგურაციის ფუნქცია გადის ერთხელ, როდესაც დააჭირეთ ღილაკს გადატვირთვა ან ჩართვა დაფაზე

void setup () {Serial.begin (9600); pinMode (child1ButtonPin, INPUT); pinMode (child2ButtonPin, INPUT); pinMode (child3ButtonPin, INPUT); pinMode (child4ButtonPin, INPUT); pinMode (ზუზერი, OUTPUT); } // მარყუჟის ფუნქცია გადის ისევ და ისევ სამუდამოდ void loop () {// ღილაკის მდგომარეობის წაკითხვა (ჩართვა ან გამორთვა) child1ButtonState = digitalRead (child1ButtonPin);

child2ButtonState = digitalRead (child2ButtonPin);

child3ButtonState = digitalRead (child3ButtonPin);

child4ButtonState = digitalRead (child4ButtonPin);

if (child1ButtonState! = child1PreviousState)

{if (child1ButtonState == HIGH) // ღილაკზე დაჭერილია {child1Strike ++; Serial.println (სიმებიანი ("ბავშვს 1 ჰყავს:") + child1Strike + "დარტყმები");

თუ (child1Strike> = 3)

{Serial.println ("ბავშვი 1 დასაბუთებულია!"); ტონი (ზუზუნი, 5000, 500); // აგზავნის 5 ჰერცის ბგერას 5 მილიწამი

}

დაგვიანება (3000); }} if (child2ButtonState! = child2PreviousState) {if (child2ButtonState == HIGH) // ღილაკზე დაჭერილია {child2Strike ++; Serial.println (სიმებიანი ("ბავშვს 2 აქვს:") + child2Strike + "დარტყმები");

თუ (child2Strike> = 3)

{Serial.println ("ბავშვი 2 დასაბუთებულია!"); ტონი (ზუზუნი, 5000, 500); } დაყოვნება (3000); }}

if (child3ButtonState! = child3PreviousState)

{if (child3ButtonState == HIGH) // ღილაკზე დაჭერილია {child3Strike ++; Serial.println (სიმებიანი ("ბავშვს 3 აქვს:") + child3Strike + "დარტყმები");

თუ (child3Strike> = 3)

{Serial.println ("ბავშვი 3 დასაბუთებულია!"); ტონი (ზუზუნი, 5000, 500); } დაყოვნება (3000); }}

თუ (child4ButtonState! = child4PreviousState)

{if (child4ButtonState == HIGH) // ღილაკზე დაჭერილია {child4Strike ++; Serial.println (სიმებიანი ("ბავშვს 4 აქვს:") + child4Strike + "დარტყმები");

თუ (child4Strike> = 3)

{Serial.println ("ბავშვი 4 დასაბუთებულია!"); ტონი (ზუზუნი, 5000, 500); } დაყოვნება (3000); }}}

ნაბიჯი 5: დაამატეთ LCD ეკრანი

Image
Image
დაამატეთ LCD ეკრანი
დაამატეთ LCD ეკრანი

ახლა მოდით LCD ეკრანი მკაფიო და მარტივი წასაკითხად.

  1. პირველი, დაამატეთ პოტენომეტრი თქვენს დაფაზე, რომ გააკონტროლოთ LCD ეკრანი. ფრთხილად იყავით, სად განათავსებთ მას, რადგან თქვენ ალბათ უკვე ამოწურავთ თქვენს ადგილს.
  2. გამოიყენეთ წინა მარცხენა მხარე თქვენი პოტენომეტრის ელექტროგადამცემი ხაზის დასაკავშირებლად
  3. გამოიყენეთ წინა მარჯვენა მხარე თქვენი პოტენომეტრი.
  4. უკანა ნაწილი იქნება დაკავშირებული LCD ეკრანზე.
  5. დაამატეთ LCD ეკრანი თქვენს დაფაზე
  6. მიამაგრეთ პირველი ეკრანის პინი დამიწების რელსზე
  7. მავთულის მეორე პინი ელექტროგადამცემი ხაზისთვის.
  8. მესამე LCD პინი მიდის პინ 8 -ზე Arduino– ზე
  9. მეოთხე LCD პინი მიდის პინ 7 -ზე Arduino– ზე
  10. მეხუთე მიდის პინ 6 არდუინოზე
  11. მეექვსე პინი გადადის Arduino– ზე მე –5 პინზე
  12. LCD ეკრანზე 7 -დან 10 -მდე პინები ცარიელია
  13. პინ 11 მიდის პინ 5 არდუინოში
  14. პინ 12 მიდის დასაბუთებულ რკინიგზაზე
  15. პინ 13 მიდის მე –4 პუნქტზე არდუინოში
  16. პინ 14 მიდის პოტენციომეტრის უკანა მხარეს
  17. პინ 15 მიდის დენის რკინიგზაზე
  18. პინ 16 მიდის სახმელეთო რკინიგზაზე.

ახლა თქვენ მოგიწევთ კოდის განახლება LCD ეკრანის გამოსაყენებლად. ამისათვის თქვენ გამოიყენებთ ლიბერალურ თხევად ბროლს. ფრთხილად იყავით თქვენი LCD დაბეჭდილი განცხადებებით. დაიმახსოვრეთ ეკრანის გასუფთავება, როდესაც ახალი შეტყობინება გჭირდებათ. ასევე გახსოვდეთ კურსორის დაყენება, როდესაც გსურთ გამოიყენოთ ორი ხაზი.

#ჩართეთ

LiquidCrystal LCD (3, 4, 5, 6, 7, 8); // ადგენს LCD ეკრანს

int child1ButtonPin = 13; // ეს არის პინი, რომელსაც ჩვენი ღილაკი უკავშირდება int child2ButtonPin = 12; int child3ButtonPin = 11; int child4ButtonPin = 10; int child1ButtonState = 0; // კითხულობს ღილაკის მდგომარეობას (ჩართვა/გამორთვა) int child2ButtonState = 0; int child3ButtonState = 0; int child4ButtonState = 0; int child1PreviousState = 0; // ღილაკი წინა მდგომარეობა დაჭერილი int child2PreviousState = 0; int child3PreviousState = 0; int child4PreviousState = 0; int child1Strike = 0; // რამდენი დარტყმა აქვს ბავშვს int child2Strike = 0; int child3Strike = 0; int child4Strike = 0; const int buzzer = 9; // ბუზერი

// კონფიგურაციის ფუნქცია გადის ერთხელ, როდესაც დააჭირეთ ღილაკს გადატვირთვა ან ჩართვა დაფაზე

void setup () {Serial.begin (9600); lcd. დასაწყისი (16, 2); lcd.print ("ბავშვი"); lcd.setCursor (0, 1); lcd.print ("ქცევის მოდიფერი"); pinMode (child1ButtonPin, INPUT); pinMode (child2ButtonPin, INPUT); pinMode (child3ButtonPin, INPUT); pinMode (child4ButtonPin, INPUT); pinMode (ზუზერი, OUTPUT); } // მარყუჟის ფუნქცია გადის ისევ და ისევ სამუდამოდ void loop () {lcd.setCursor (0, 0); // ღილაკის მდგომარეობის წაკითხვა (ჩართვა ან გამორთვა) child1ButtonState = digitalRead (child1ButtonPin);

child2ButtonState = digitalRead (child2ButtonPin);

child3ButtonState = digitalRead (child3ButtonPin);

child4ButtonState = digitalRead (child4ButtonPin);

if (child1ButtonState! = child1PreviousState)

{if (child1ButtonState == HIGH) // ღილაკზე დაჭერილია {lcd.clear (); child1Strike ++; Serial.println (სიმებიანი ("ბავშვს 1 ჰყავს:") + child1Strike + "დარტყმები"); lcd.print ("ბავშვს 1 ჰყავს:"); lcd.setCursor (0, 1); lcd.print (child1Strike); lcd.print ("დარტყმები!");

თუ (child1Strike> = 3)

{Serial.println ("ბავშვი 1 დასაბუთებულია!"); lcd. წმინდა (); lcd.setCursor (0, 0); lcd.print ("ბავშვი 1 არის"); lcd.setCursor (0, 1); lcd.print ("დასაბუთებული!");

ტონი (ზუზუნი, 5000, 500); // აგზავნის 5 ჰერცის ბგერას 5 მილიწამი

}

დაგვიანება (3000); }} if (child2ButtonState! = child2PreviousState) {lcd.clear (); if (child2ButtonState == HIGH) // ღილაკზე დაჭერილია {child2Strike ++; Serial.println (სიმებიანი ("ბავშვს 2 აქვს:") + child2Strike + "დარტყმები"); lcd.print ("ბავშვს 2 ჰყავს:"); lcd.setCursor (0, 1); lcd.print (child2Strike); lcd.print ("დარტყმები!"); if (child2Strike> = 3) {Serial.println ("ბავშვი 2 დასაბუთებულია!"); lcd. წმინდა (); lcd.setCursor (0, 0); lcd.print ("ბავშვი 2 არის"); lcd.setCursor (0, 1); lcd.print ("დასაბუთებული!"); ტონი (ზუზუნი, 5000, 500); } დაყოვნება (3000); }}

if (child3ButtonState! = child3PreviousState)

{lcd.clear (); if (child3ButtonState == HIGH) // ღილაკზე დაჭერილია {child3Strike ++; Serial.println (სიმებიანი ("ბავშვს 3 აქვს:") + child3Strike + "დარტყმები"); lcd.print ("ბავშვს 3 ჰყავს:"); lcd.setCursor (0, 1); lcd.print (child3Strike); lcd.print ("დარტყმები!"); if (child3Strike> = 3) {Serial.println ("ბავშვი 3 დასაბუთებულია!"); lcd. წმინდა (); lcd.setCursor (0, 0); lcd.print ("ბავშვი 3 არის"); lcd.setCursor (0, 1); lcd.print ("დასაბუთებული!"); ტონი (ზუზუნი, 5000, 500); } დაყოვნება (3000); }}

თუ (child4ButtonState! = child4PreviousState)

{lcd.clear (); if (child4ButtonState == HIGH) // ღილაკზე დაჭერილია {child4Strike ++; Serial.println (სიმებიანი ("ბავშვს 4 აქვს:") + child4Strike + "დარტყმები"); lcd.print ("ბავშვს 4 ჰყავს:"); lcd.setCursor (0, 1); lcd.print (child4Strike); lcd.print ("დარტყმები!");

თუ (child4Strike> = 3)

{Serial.println ("ბავშვი 4 დასაბუთებულია!"); lcd. წმინდა (); lcd.setCursor (0, 0); lcd.print ("ბავშვი 4 არის"); lcd.setCursor (0, 1); lcd.print ("დასაბუთებული!"); ტონი (ზუზუნი, 5000, 500); } დაყოვნება (3000); }}} და ეს არის ის, რაც თქვენ გჭირდებათ იმისათვის, რომ შექმნათ თქვენი საკუთარი ბავშვის ქცევის მოდიფერი

გირჩევთ: