Სარჩევი:

ორმაგი Pushbutton LED Circuit: 5 ნაბიჯი
ორმაგი Pushbutton LED Circuit: 5 ნაბიჯი

ვიდეო: ორმაგი Pushbutton LED Circuit: 5 ნაბიჯი

ვიდეო: ორმაგი Pushbutton LED Circuit: 5 ნაბიჯი
ვიდეო: Control 10 output pins or relay using 10 push button switch with 1 Arduino input pin ANPB-V2 2024, ნოემბერი
Anonim
ორმაგი Pushbutton LED Circuit
ორმაგი Pushbutton LED Circuit

მე ყველანაირად შევეცდები ძველებურად ჟღერდეს პროგრამირებასა და არდუინოსთან მუშაობისას, მაგრამ, სიმართლე გითხრათ, სინამდვილეში მე ეს მხოლოდ რამოდენიმე დღის წინ გამაცნო, შესაბამისად ჩემი უსაზღვრო სიხარული ჩემი წარმატებით შექმნისა და პროგრამირების საქმეში. საკუთარი პროექტი ასე მალე.

ეს პროექტი ფაქტობრივად დაიწყო ჩემი მშობლების ინჟინერი მეგობრის გაბედავიდან, რომლითაც მე ვიყავი სტაჟიორი რამდენიმე დღის განმავლობაში. მე მიყვარს გამოწვევები, არის რაღაც გამოწვევისას, რაც მე მაღელვებს და მაძლევს და უდიდეს კმაყოფილებას მაძლევს, როდესაც წარმატებას მივაღწევ, და იმედი მაქვს თქვენც.

ამ სასწავლო, ჩემი პირველი: D, მე გაჩვენებთ თუ როგორ უნდა დააკავშიროთ წრე, რასაც მე ვუწოდებ ჩემს მარკ ერთ პროექტს, წრე სადაც ორი ღილაკი აკონტროლებს LED სიკაშკაშეს (ერთი გაზრდის სიკაშკაშეს და მეორე შეამცირებს მას) ასევე იმას, თუ როგორ უნდა დაპროგრამდეს და გამოაქვეყნოს თქვენი შედეგები სერიული მონიტორის ინსტრუმენტზე. მე გაჩვენებთ ზუსტად იმას, რაც გჭირდებათ, ასევე ნაბიჯ ნაბიჯ ინსტრუქციას, თუ როგორ უნდა ავაშენოთ იგი. ჩემი პროექტი მოიცავს როგორც ღილაკზე, ასევე გაცვეთილ გაკვეთილს ინსტრუქციულ ვებგვერდზე და მძიმედ არის განმარტებული როგორც ჩემი, ასევე თქვენი მოხერხებულობისთვის. თუ თქვენ ჯერ კიდევ არ იცნობთ პროგრამირების ენას, გთხოვთ დრო დაუთმოთ, ღირს.

ისიამოვნეთ!

ნაბიჯი 1: მასალები + ინსტრუმენტები:

მასალები + ინსტრუმენტები
მასალები + ინსტრუმენტები

მასალები:

1. Arduino დაფა (მე მეგა 2560 გამოვიყენე)

2. პურის დაფა (მინიმუმ 60 რიგით)

3. ერთი LED (ნებისმიერი ფერი, მე წითელი გამოვიყენე)

4. ორი სტანდარტული ღილაკი

5. ხუთი ცისფერი მავთული (უარყოფითი მიმდინარეობის მითითებისათვის)

6. სამი წითელი მავთული (პოზიტიური მიმდინარეობის აღსაწერად)

7. ერთი ნარინჯისფერი, მწვანე და ყვითელი მავთული (PWM საკონტროლო მავთულები განასხვავებს 3 მთავარ კომპონენტს შორის)

8. ოთხი თეთრი მავთული (სქემის დასაკავშირებლად)

9. სამი 10K ohm რეზისტორი (ყავისფერი, შავი, ნარინჯისფერი, ოქრო)

ინსტრუმენტები:

1. ლეპტოპი

2. Arduino IDE აპლიკაცია (გადმოწერილი Microsoft Play მაღაზიიდან

ან

2. Arduino ქმნის ონლაინ ვებსაიტს (თუ ეს გირჩევნიათ)

3. მოხერხებული ხელები

4. Google (სასწავლო ინსტრუქციის ვებ გვერდი ძალიან დამეხმარა)

5. იტვირთება მოთმინება; დ

ნაბიჯი 2: დააყენეთ თქვენი ანალოგური წრე:

დააყენეთ თქვენი ანალოგური წრე
დააყენეთ თქვენი ანალოგური წრე

განსხვავება ანალოგურ და ციფრულ სისტემებს შორის არის ის, რომ ანალოგური სისტემები კოდირებენ სხვადასხვა მდგომარეობებზე, როგორიცაა LED- ის განსხვავებული სიკაშკაშე, ხოლო ციფრული მხოლოდ ორი მდგომარეობისათვის (ჩართული ან გამორთული).

ეს წრე არის ანალოგი, რადგან მიზანი იყო სინათლის შეცვლა და არა მხოლოდ ჩართვა ან გამორთვა.

მისი დასაყენებლად:

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

2. აიღეთ ერთი წითელი (პოზიტიური) მავთული და შეაერთეთ იგი (არდუინოზე) 5V პორტთან დენის პორტებში და დააკავშირეთ იგი მწკრივზე წითელი პოზიტიური მიწის ხაზის მიმდებარე პურის დაფაზე [გაეცანით როგორ მუშაობს პურის დაფა განლაგება დაყენებულია და რა რიგები უკავშირდება და ა.შ. ინსტრუქციებსა და არდუინოს ვებსაიტს აქვს ძალიან სუფთა გაკვეთილები ამის გასაკეთებლად]

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

4. შემდეგ გამოიყენეთ ოთხი თეთრი მავთული, რომ დააკავშიროთ ორივე პოზიტიური და უარყოფითი გრუნტის რიგები შუა 30 რიგის ორივე მხარეს (მათ უნდა გადალახონ მცირე უფსკრული)

ნაბიჯი 3: დააყენეთ ღილაკები:

დააყენეთ ღილაკები
დააყენეთ ღილაკები

1. ახლა აიღეთ ღილაკები და დააკავშირეთ ისინი ისე, რომ ის ნებისმიერ ადგილას გადააჭარბოს პურის დაფის შუა უფსკრული (მე მომწონს ცოტაოდენი საგნების გაშლა, რათა უფრო ადვილად შევცვალო და გამოვასწორო რამე.

2. აიღეთ ორი წითელი მავთული და დააკავშირეთ ღილაკის მარჯვენა ფეხი თქვენს წინაშე, პოზიტიური მიწის ხაზით.

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

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

[ყოველივე ეს ჯერ კიდევ დაკავშირებულია პურის დაფის შუაგულში გაყოფის ერთ მხარეს, გარდა ღილაკებისა, რომლებიც განლაგებულია გამყოფზე და თეთრი, წითელი და ლურჯი მავთულები ანალოგური წყობისთვის]

5. ახლა აიღეთ ყვითელი და მწვანე მავთული და დააკავშირეთ მარცხენა ფეხი ცენტრის გაყოფის მოპირდაპირე მხარეს 9 და 11 ქინძისთავებით [შენიშვნა: ანალოგი მუშაობს მხოლოდ პინ 3, 5, 6, 9, 10 და 11]. ეს მავთულები არის არდუინოსთან კომუნიკაციისთვის.

ნაბიჯი 4: დააყენეთ LED:

დააყენეთ LED
დააყენეთ LED

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

2. აიღეთ ერთი ცისფერი მავთული და დააკავშირეთ უარყოფითი ლურჯი გრუნტის ხაზი იმავე რიგთან, როგორც LED- ის მოკლე ფეხი (ანოდი) [წრე იმუშავებს მხოლოდ იმ შემთხვევაში, თუ უარყოფითი ლურჯი ხაზი უკავშირდება LED i.o.w.- ის მარჯვენა ფეხს. ანოდი

3. აიღეთ კიდევ 10K ohm რეზისტორი და შეაერთეთ მწკრივი, რომელშიც კათოდი (LED- ის დადებითი გრძელი ფეხი) ჩართულია ახლომდებარე რიგით ცენტრის გაყოფის იმავე მხარეს.

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

თქვენი წრე ახლა დასრულებულია, ახლა რჩება მხოლოდ ყველაფრის დაპროგრამება

ნაბიჯი 5: წრის დაპროგრამება:

მე ცოტათი ახალი ვარ ამ ყველაფერში, ასე რომ გთხოვთ მაპატიეთ მხოლოდ კოდის კოპირება და არა ვიდეოს შექმნა …

აქ არის სქემის კოდი:

// ჩემი (Altus Lourens) პირველი საკუთარი პროექტი: // შეიქმნა 2018 წლის 29 და 30 ივნისს შორის

// შენიშვნა ჩემთვის: AnalogWrite მუშაობს მხოლოდ 3, 5, 6, 9, 10 და 11

// NB: ანალოგი დაკავშირებულია სხვადასხვა მდგომარეობასთან, ციფრული მუშაობს მხოლოდ (HIGH) ან off (LOW)

// LED გამოვა

// ღილაკები იქნება შეყვანა

// pushButton1 გაზრდის სიკაშკაშეს ერთი fadeAmount ყოველი დაჭერით

// pushButton2 შეამცირებს სიკაშკაშეს ერთი fadeAmount ყოველი დაჭერით

// მუდმივები არ შეიცვლება, დააყენეთ PWM პინის ნომრები

const int ledPin = 3; // PWM LED პინის ნომერი

const int fadeAmount = 50; // სიკაშკაშის შეცვლა ღილაკის ყოველი დაჭერით

const int buttonPin1 = 11;

const int buttonPin2 = 9; // ღილაკზე დაჭერილი პინის ნომერი

// ცვლადი, რომელიც შეიცვლება:

int სიკაშკაშე = 5; // დაწყებული სიკაშკაშე LED- ების

int ღილაკი სახელმწიფო 1 = 0; // მიუთითეთ ღილაკი, რომელიც იწყება როგორც დაბალი

int ღილაკი სახელმწიფო 2 = 0; // მიუთითეთ ღილაკი, რომელიც იწყება როგორც დაბალი

void setup () {

// განათავსეთ თქვენი დაყენების კოდი აქ, ერთხელ გასაშვებად:

// ინიციალიზაცია LED pin როგორც გამომავალი:

pinMode (ledPin, OUTPUT);

// ღილაკების ინიციალიზაცია შეყვანის სახით:

pinMode (buttonPin1, INPUT);

pinMode (buttonPin2, INPUT);

სერიული.დაწყება (9600); // წრეში კომუნიკაციის სიჩქარე

}

// buttonPin1 გაზრდის LED- ის სიკაშკაშეს

// buttonPin2 შეამცირებს LED სიკაშკაშეს

ბათილი მარყუჟი () {

// განათავსეთ თქვენი მთავარი კოდი აქ განმეორებით გასაშვებად:

// დააყენეთ პინ 9 -ის სიკაშკაშე:

analogWrite (ledPin, სიკაშკაშე); // სიკაშკაშე = 5, LED ჩართულია

სიკაშკაშე = შეზღუდვა (სიკაშკაშე, 0, 255); // შეზღუდოს სიკაშკაშე 0 -დან 255 -მდე

// წაიკითხეთ ღილაკის მნიშვნელობის მდგომარეობა:

buttonState1 = digitalRead (ღილაკი Pin1);

buttonState2 = digitalRead (ღილაკი Pin2);

// შეამოწმეთ ღილაკები დაჭერილია თუ არა:

// თუ ეს არის -> ღილაკი სახელმწიფო = მაღალი:

// ღილაკი 1:

თუ (buttonState1 == HIGH) {

brightness = brightness + fadeAmount; // გაზრდის სიკაშკაშეს:

analogWrite (ledPin, brightness + fadeAmount);

}

else {// სიკაშკაშე რჩება იმავე დონეზე და LED კვლავ გამორთულია:

analogWrite (ledPin, სიკაშკაშე);

}

// ღილაკი 2:

თუ (buttonState2 == HIGH) {

brightness = brightness - fadeAmount; // შეამცირეთ სიკაშკაშე:

analogWrite (ledPin, brightness - fadeAmount);

}

სხვა {

// სიკაშკაშე რჩება იმავე დონეზე, არანაირი ცვლილება არ ხდება:

analogWrite (ledPin, სიკაშკაშე);

}

Serial.print ("სიკაშკაშე");

Serial.println (სიკაშკაშე); }

ახლა თქვენ შეგიძლიათ შეცვალოთ კომუნიკაციის სიჩქარე და ცოტათი ითამაშოთ, სანამ არ იპოვით სიჩქარეს, რომელიც მშვენივრად მუშაობს სერიული მონიტორის ინსტრუმენტზე [9600 ბაუდი მხოლოდ სტანდარტული სიჩქარეა]

გირჩევთ: