Professional Documents
Culture Documents
გაკვეთილი N5
გაკვეთილი N5
გაკვეთილი N5
იმის შემდეგ რაც თინქერკადში გავხსნით კოდის დასაწერ არეს და ავირჩევთ ტექსტს
დავინახავთ შემდეგ სურათს.
რაც შეეხება void loop() ეს არის კოდი ის ნაწილი რომელიც მეორდება მუდმივად,
მეორენაირად მას ციკლს უწოდებენ. void loop()-ის ფიგურულ ფრჩხილებში უნდა ჩავწეროთ
ისეთი ბრძანებები რომლებიც უნდა განმეორდნენ.
რა არის საჭირო იმისათვის რომ ნათურა აინთოს? ეს არის კვების წყარო. გაკვეთილზე
ვნახეთ, რომ არდუინო შეგვიძლია გამოვიყენოთ, როგორც მუდმივი 5 ვოლტის კვების წყარო,
ნათურას ანოდს ვაერთებდით 5 ვოლტის პინზე, ხოლო კათოდს შემზღუდავი რეზისტორიოს
გავლით GND პინზე (რეზისტორი შეგვიძლია დავაყენბოთ როგროც 5 ვოლტის ასევე GND
მხარეს, ამით წრედი არ შეიცვლება,
მთავარია შუქდიოდს მიმდევრობით
ჰქონდეს შემზღუდავი რეზისტორი). რა
ხდება იმ შემთხვევაში, თუ გვინდა, რომ
არდუინო არა უბრალოდ 5 ვოლტიან
კვების წყაროდ ვიხამროთ, არამედ
როგორც მიკროკონტროლერი და კოდის
საშუალებით ავანთოთ ნათურა. პირველ
რიგში დაგვჭირდება, რომ ნათურას
ანოდი მივუერთოთ ციფრული
პინებიდან რომელიმეს, მოდით ეს იყოს
მე-12 პინი.
სურათზე ნაჩვენებია ლოგიკური დონეები. შუა საზღვრებს არდუინო ვერ აღიქვამს სწორად,
შეიძლება აღიქვას 1 ან 0, ყოველ ჯერზე სხვადასხვაგვარად.
იმისთვის, რომ ნათურა აინთოს მოდით digitalWrite() ბრძანებაში ჩავწეროთ პინის ნომერი და
ლოგიკური მაღალი დონე.
მოდით ახლა ჩავაქროთ ნათურა, ამისათვის digitalWrite() ბრძანებაში მაღალი დონე
შევცვალოთ დაბლით (ან ლოგიკური 1 შევცვალოთ 0-ით).
კოდის მიხედვით ნათურა ჯერ უნდა ინთებოდეს და შემდგომ ქრებოდეს, მაგრამ რატომღაც
ნათურა მუდამ ჩამქრალია, ეს იმის ბრალია, რომ არდუინო ერთი ბრძანებიდან მეორე
ბრძანების შესრულებაზე გადადის ძალიან სწრაფად და ადამიანის თვალი ვერ ახერხებს
ცვლილების დანახვას. იმისათვის, რომ დავინახოთ ცვლილება გვჭირდება რაღაც დროით
დავაყოვნოთ არდუინო. გამოვიყენოთ დაყოვნების ბრძანება delay(), მოცემული ბრძანება
გააჩერებს არდუინოს გარკვეული დროით. delay() ბრძანების ფრჩხილებში ვუთითებთ
მილიწამებს, ანუ თუ გვინდა 1 წამიანი დაყოვნება ჩავწერთ 1000: delay(1000);
როგორც ვხედავთ ნათურა ინთება და 1 წამის შემდეგ ქრება, დაყოვნებას ვწერთ იმ ორ
ბრძანებას შორის სადაც გინდა, რომ მიკროკონტროლერი გაჩერდეს.
ახლა გვინდა, რომ ნათურამ დაიწყოს ციმციმი. ამისათვის მოდით გამოვიყენოთ void loop(),
როგორც ვიცით აქ იწერება კოდის ის ნაწილი რომელიც მუდმივად უნდა განმეორდეს. ჩვენ
შემთხვევაში void loop()-ის ფიგურულ ბრჭალებს შორის დაიწერება ნათურას ანთება,
დაყოვნება და ჩაქრობა, pinMode() ბრძანება დარჩება void setup()-ში, რადგან პინის
მდგომარეობის განმარტვა მხოლოდ ერთხელ გვჭირდება.
როგორც ვხედვათ ამ კოდში ჩვენ დავამატეთ კიდევ ერთი დაყოვნება. ვინაიდან void loop() ში
მოთავსებული კოდი მუდმივად სრულება, არდუინო ჯერ შეასრულებს მე-12 ხაზზე კოდს,
შემდგომ 13, 14 და იმ შემთხვევაში თუ მე-15 ხაზზე არ გვეწერება დაყოვნება მე-14 დან
პირდაპირ გადავა მე-12 ხაზზე და ისევ არდუინოს სწრაფი გადასვლის გამო ჩვენი თვალი ვერ
დაინახავს განსხვავებას. მეორე დაყოვნება ჩვენ ასევე შეგვეძლო დაგვეწერა digitalWrite(12,
HIGH); ბრძანებამდე, ამით კოდის შესრულება არ შეიცვლება.
რეალური პროექტების ასაწყობად მოხერხებულია სამაკეტო დაფის გამოყენება, მისი
აგებულება გვაძლევს საშუალებას, მარტივად, დარჩილვის გარეშე შევქმნათ სხვადასხვა
პროექტები, მასზე მარტივად შეიძლება ელექტრონული კომპონენტების გადაადგილება,
მონტაჟი და პროექტის დემონტაჟი.
სამაკეტე დაფაზე დატანილია პატარა ხვრელები, როგორც ვერტიკალურად ასევე
ჰორიზონტალურად, ისინი სურათის მიხედვით დაკავშირებულნი არისნ ერთმანეთთან
შემდეგნაირად
როგორც პლიუსით „+“ ასევე მინუს „-“ ნიშნით აღნიშნული ნახვრეტები მთელ სიგრძეზე
გაერთიანებულია საერთო სადენებით. ამ ხაზებს ვიყენებთ კვების მისაწოდებლად, თუ +
ერთ ხვრელში მაინც მივაწოდეთ კვების წყაროს დადებით პოტენციალს სადენით, მთელ
ხაზზე მიწოდებული გვექნება პლუსი და ანალოგიურად, მინუსზეც იგივე შეიძლება ვთქვათ.
რაც შეეხება დანარჩენ ხაზებს, მათი 5 ხვრელი გაერთიანებულია საერთო სადენით .