Სარჩევი:

Charlieplexing LED- ები- თეორია: 7 ნაბიჯი (სურათებით)
Charlieplexing LED- ები- თეორია: 7 ნაბიჯი (სურათებით)

ვიდეო: Charlieplexing LED- ები- თეორია: 7 ნაბიჯი (სურათებით)

ვიდეო: Charlieplexing LED- ები- თეორია: 7 ნაბიჯი (სურათებით)
ვიდეო: Charlieplexing LED Matrix 5x6 2024, ივნისი
Anonim
Charlieplexing LED- ები- თეორია
Charlieplexing LED- ები- თეორია
Charlieplexing LED- ები- თეორია
Charlieplexing LED- ები- თეორია

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

რა არის "შარლიპლექსი"? ის მართავს უამრავ LED- ს მხოლოდ რამდენიმე ქინძისთავით. თუ თქვენ გაინტერესებთ, Charlieplexing დაერქვა ჩარლზ ალენის სახელს მაქსიმში, რომელმაც შეიმუშავა ტექნიკა. ეს შეიძლება სასარგებლო იყოს ბევრი რამისთვის. შეიძლება დაგჭირდეთ სტატუსის ინფორმაციის ჩვენება მცირე მიკროკონტროლერზე, მაგრამ მხოლოდ რამდენიმე ქინძისთავის სათადარიგო გაქვთ. თქვენ შეიძლება გინდათ აჩვენოთ ლამაზი წერტილოვანი მატრიცა ან საათის ჩვენება, მაგრამ არ გსურთ გამოიყენოთ ბევრი კომპონენტი. ზოგიერთი სხვა პროექტი, რომელიც აჩვენებს Charlieplexing– ს, რომლის ნახვაც გსურთ: Westfw:- https://www.instructables.com/id/ED0NCY0UVWEP287ISO/ და ჩემი რამდენიმე პროექტი, Microdot watch:- https://www.instructables.com/id/EWM2OIT78OERWHR38Z/ The Minidot 2 საათი: - https://www.instructables.com/id/E11GKKELKAEZ7BFZAK/ charlieplexing– ის გამოყენების კიდევ ერთი მაგარი მაგალითია: https://www.jsdesign.co.uk/charlie/ Minidot 2 საათი შემოგვთავაზებს მოწინავე ჩარლიპლექსირების სქემას გაქრობა/დაბინდვა, რომელიც აქ არ იქნება განხილული. განახლება 2008 წლის 19 აგვისტო: მე დავამატე zip ფაილი წრიული საშუალებით, რომელსაც შეუძლია გამოიყენოს მატრიცის ჩარლიპლექსი მაღალი სიმძლავრის LED- ებისთვის, განხილული (ხანგრძლივობით:)) კომენტარების განყოფილებაში. მას აქვს ღილაკი + პოზიციის კოდირებით მომხმარებლის ინტერფეისის გასაკეთებლად, ასევე მიკროსქემები USB ან RS232 კომპიუტერის კონტროლისთვის. თითოეული მაღალი ძაბვის რელსის დაყენება შესაძლებელია ორიდან ერთზე, ვთქვათ 2.2V RED LED- ებზე და 3.4V მწვანე/ლურჯ/თეთრებზე. მაღალი გვერდითი რელსებისთვის ძაბვის დადგენა შესაძლებელია ტრიმპოტით. მე ვგეგმავდი, რომ დაფაზე შედიოდეს 20 მავთულის IDC ლენტის კაბელი, ხოლო ლენტის სიგრძის გასწვრივ დაემატოს 20 პინიანი IDC კონექტორები, თითოეული LED დაფის მქონე ბმულები მატრიქსის ნებისმიერ მავთულზე. წრე არის Eagle Cad– ში და გამოსახულია ქვე -სურათში. მაღალი გვერდითი წრე ხორციელდება ოპტოწყვილების გამოყენებით, რაც მე ვფიქრობ, რომ შეიძლება შესაფერისი იყოს. მე რეალურად არ გამომიცდია ეს წრე და არც დამიწერია რაიმე პროგრამული უზრუნველყოფა დროის სიმცირის გამო, მაგრამ გამოვაქვეყნე კომენტარისთვის, მე განსაკუთრებით დაინტერესებული ვარ ოპტოქუპლერის განხორციელებით. ვინც საკმარისად მამაცი იქნება იმისათვის, რომ გაუშვას … გთხოვთ გამოაქვეყნოთ თქვენი შედეგები. განახლება 2008 წლის 27 აგვისტო: მათთვის, ვინც არ იყენებს EagleCad…. ქვემოთ დამატებულია სქემატური pdf

ნაბიჯი 1: ზოგიერთი LED თეორია

ზოგიერთი LED თეორია
ზოგიერთი LED თეორია
ზოგიერთი LED თეორია
ზოგიერთი LED თეორია

Charlieplexing ეყრდნობა LED- ების და თანამედროვე მიკროკონტროლერების უამრავ სასარგებლო ასპექტს.

უპირველეს ყოვლისა, რა ხდება LED- ს ელექტროენერგიასთან შეერთებისას. ქვემოთ მოყვანილი მთავარი დიაგრამა გვიჩვენებს იმას, რასაც ეწოდება ტიპიური 5 მმ დაბალი სიმძლავრის LED- ის If v Vf მრუდი. თუ ნიშნავს "წინამორბედ მიმდინარეობას" Vf ნიშნავს "წინ ძაბვას" სხვა სიტყვებში ვერტიკალური ღერძი აჩვენებს მიმდინარეობას, რომელიც შემოვა LED- ის საშუალებით, თუკი მის ტერმინალებზე ჰორიზონტალური ღერძის ძაბვას დააყენებთ. ის პირიქითაც მუშაობს, თუ გავზომოთ, რომ დენი არის რაღაც ღირებულების, შეგიძლიათ გადახედოთ ჰორიზონტალურ ღერძს და დაინახოთ ძაბვა, რომელსაც LED აჩვენებს მის ტერმინალებზე. მეორე დიაგრამა გვიჩვენებს LED- ის სქემატურ წარმოდგენას If და Vf მარკირებით. მთავარი დიაგრამადან მე ასევე შევაფასე გრაფიკის ის სფეროები, რომლებიც საინტერესოა. - პირველი ტერიტორია არის იქ, სადაც LED არის "გამორთული". უფრო ზუსტად, LED ასხივებს სინათლეს იმდენად მკრთალად, რომ თქვენ ვერ შეძლებთ მის დანახვას, თუკი არ გექნებათ რაიმე სახის სუპერ დუპერი გამოსახულების გამაძლიერებელი. - მეორე არე აქვს LED, რომელიც ოდნავ ასხივებს მკრთალ ბზინვარებას. - მესამე სფერო, სადაც ჩვეულებრივ მუშაობს LED და ასხივებს შუქს მწარმოებლების რეიტინგში. - მეოთხე ადგილი, სადაც LED მუშაობს მისი მოქმედების ლიმიტის მიღმა, ალბათ ბრწყინავს ძალიან კაშკაშად, მაგრამ სამწუხაროდ მხოლოდ მცირე ხნით ადრე, სანამ შიგნით ჯადოსნური კვამლი გაქრება და ის აღარ იმოქმედებს …… ანუ ამ მხარეში იწვის, რადგან ძალიან ბევრი დენი გადის მასში. გაითვალისწინეთ, რომ LED/If/Vf მრუდი ან მოქმედი მრუდი არის "არაწრფივი" მრუდი. ანუ, ეს არ არის სწორი ხაზი… მას აქვს მოსახვევი ან დახრილობა. დაბოლოს, ეს დიაგრამა არის ტიპიური 5 მმ წითელი LED, რომელიც შექმნილია 20 mA– ზე მუშაობისთვის. სხვადასხვა მწარმოებლების LED- ებს აქვთ განსხვავებული ოპერაციული მოსახვევები. მაგალითად ამ დიაგრამაზე 20mA- ზე LED- ის წინა ძაბვა იქნება დაახლოებით 1.9V. ლურჯი 5 მმ LED– ისთვის 20 mA– ზე, წინა ძაბვა შეიძლება იყოს 3.4V. მაღალი სიმძლავრის თეთრი ძვირადღირებული LED- ისთვის 350mA- ზე, წინამორბედი ძაბვა შეიძლება იყოს დაახლოებით 3.2V. ზოგიერთი LED პაკეტი შეიძლება იყოს რამდენიმე LED სერიულად ან პარალელურად, ისევ შეცვლის Vf/If მოსახვევს. როგორც წესი მწარმოებელი ადგენს საოპერაციო დენს, რომლის საშუალებითაც უსაფრთხოა LED- ის გამოყენება და წინამორბედი ძაბვა ამ დენზე. ჩვეულებრივ (მაგრამ არა ყოველთვის) თქვენ მიიღებთ ქვემოთ მოცემულ გრაფიკს მონაცემთა ცხრილში. თქვენ უნდა დაათვალიეროთ LED- ის მონაცემთა ცხრილი, რათა დადგინდეს რა არის ძაბვა სხვადასხვა საოპერაციო დენებზე. რატომ არის ეს გრაფიკი ასე მნიშვნელოვანი? რადგან ის გვიჩვენებს, რომ როდესაც ძაბვა არის LED- ზე, დენი, რომელიც შემოვა დიაგრამის მიხედვით იქნება. შეამცირეთ ძაბვა და ნაკლები დენი შემოვა ….. და LED იქნება "გამორთული". ეს არის ჩარლიპლექსის თეორიის ნაწილი, რომელსაც ჩვენ მივიღებთ შემდეგ ეტაპზე.

ნაბიჯი 2: კანონები (ელექტრონიკის)

კანონები (ელექტრონიკის)
კანონები (ელექტრონიკის)
კანონები (ელექტრონიკის)
კანონები (ელექტრონიკის)
კანონები (ელექტრონიკის)
კანონები (ელექტრონიკის)

ჯერჯერობით ჯერ კიდევ არ არის ჩარლიპლექსის მაგია…. ჩვენ გვჭირდება ელექტრონული კანონების საფუძვლებზე გადასვლა. ინტერესის პირველი კანონი აცხადებს, რომ ელექტრული წრეში დაკავშირებული კომპონენტების სერიის მთლიანი ძაბვა უდრის ინდივიდის ჯამს ძაბვები კომპონენტებზე. ეს ნაჩვენებია ქვემოთ მოცემულ მთავარ დიაგრამაში. ეს გამოსადეგია LED- ების გამოყენებისას, რადგან თქვენი საშუალო ბატარეა ან მიკროკონტროლერის გამომავალი პინი არასოდეს იქნება ზუსტად სწორი ძაბვა თქვენი LED- ის რეკომენდებული დენის დროს. მაგალითად, მიკროკონტროლი, როგორც წესი, იმუშავებს 5 ვ -ზე და მისი გამომავალი ქინძისთავები იქნება 5 ვ -ზე, როდესაც ჩართულია. თუ თქვენ უბრალოდ დაუკავშირებთ LED- ს მიკრო გამომავალ პინს, წინა გვერდზე მოქმედი მრუდიდან დაინახავთ, რომ LED- ში ძალიან ბევრი დენი შემოვა და ის ცხელდება და იწვის (ალბათ მიკროსაც აზიანებს).თუმცა თუ LED– ს სერიაში შემოვიღებთ მეორე კომპონენტს, ჩვენ შეგვიძლია გამოვაკლოთ 5V– ს ნაწილი ისე, რომ მარცხენა ძაბვა იყოს მარჯვნივ, რომ LED- ი აწარმოოს სათანადო საოპერაციო დენზე. ეს არის, როგორც წესი, რეზისტორი და ამგვარად გამოყენებისას ეწოდება მიმდინარე შემზღუდველი რეზისტორი. ეს მეთოდი ძალიან ხშირად გამოიყენება და იწვევს იმას რასაც ეწოდება "ოჰმის კანონი"…. ასე დაერქვა ბატონი ომი. ოჰმსის კანონი მიჰყვება განტოლებას V = I * R, სადაც V არის ძაბვა, რომელიც გამოჩნდება წინააღმდეგობის დროს R მიედინება რეზისტორის მეშვეობით. V არის ვოლტებში, მე არის amps და R არის ohms. ასე რომ, თუ ჩვენ გვაქვს 5V დახარჯვა, და ჩვენ გვინდა 1.9V LED- ზე გასასვლელად, რომ ის იმუშაოს 20mA- ზე, მაშინ ჩვენ გვინდა, რომ რეზისტორს ჰქონდეს 5-1.9 = 3.1 V მის გასწვრივ. ჩვენ ამას ვხედავთ მეორე დიაგრამაში. იმის გამო, რომ რეზისტორი არის LED- ის სერიაში, იგივე დენი გადის რეზისტორში, როგორც LED, ანუ 20mA. ასე რომ, განტოლების გადაკეთება ჩვენ შეგვიძლია ვიპოვოთ წინააღმდეგობა, რომელიც გვჭირდება ამ სამუშაოს შესასრულებლად. V = I * RsoR = V / ჩვენს მაგალითში მნიშვნელობების შემცვლელი ვიღებთ: R = 3.1 / 0.02 = 155 ოჰმს (შენიშვნა 20mA = 0.02Amps) ჯერ კიდევ ჩემთან ერთად ჯერჯერობით … მაგარია. ახლა შეხედეთ დიაგრამა 3. მას აქვს LED მოთავსებული ორ რეზისტორს შორის. ზემოთ ნახსენები პირველი კანონის თანახმად, მეორე დიაგრამაზე იგივე სიტუაცია გვაქვს. ჩვენ გვაქვს 1.9V LED- ზე, ასე რომ ის მუშაობს მისი სპეციფიკაციის მიხედვით. ჩვენ ასევე გვაქვს თითოეული რეზისტორი გამოკლება 1.55V თითოეულს (სულ 3.1). ძაბვების ერთად დამატებით ჩვენ გვაქვს 5V (მიკროკონტროლის პინი) = 1.55V (R1) + 1.9V (LED) + 1.55V (R2) და ყველაფერი დაბალანსებულია. Ohms კანონის გამოყენებით ვხვდებით, რომ რეზისტორები უნდა იყოს 77.5 ohms თითოეული, ეს არის მეორე დიაგრამაზე გამოთვლილი თანხის ნახევარი. რა თქმა უნდა, პრაქტიკაში თქვენ გაგიძნელდებათ 77.5 ოჰმ რეზისტორის პოვნა, ასე რომ თქვენ უბრალოდ ჩაანაცვლებთ უახლოეს ხელმისაწვდომ მნიშვნელობას, ვთქვათ 75 ოჰმს და დასრულდება ცოტა მეტი მიმდინარეობით LED ან 82ohms იყოს უსაფრთხო და ცოტა ნაკლები. რატომ უნდა ვაკეთოთ დედამიწაზე ეს სენდვიჩი, რომელიც უბრალო LED- ს მართავს….. კარგი თუ ერთი LED გაქვთ ეს ყველაფერი სულელურია, მაგრამ ეს არის ჩარლიპლექსინგის ინსტრუქცია და ეს გამოდგება მომდევნო ეტაპზე.

ნაბიჯი 3: დანერგვა "დამატებითი Drive"

წარმოგიდგენთ "დამატებით დისკს"
წარმოგიდგენთ "დამატებით დისკს"

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

თქვენს საშუალო მიკროკონტროლერში შეგიძლიათ firmware- ში უთხრათ მიკროს დააყენოს გამომავალი პინი ან იყოს '0' ან '1', ან წარმოადგინოს 0V ძაბვა გამომავალზე ან 5V ძაბვა გამომავალზე. ქვემოთ მოყვანილი დიაგრამა გვიჩვენებს დაბლოკილ LED- ს უკუქცეულ პარტნიორთან ერთად…. ან დამატებითი LED- ით, შესაბამისად დამატებით დისკზე. დიაგრამის პირველ ნახევარში მიკრო გამოდის 5V პინზე A, ხოლო 0V ბ. B. დენი ამგვარად შემოვა A– დან B. რადგან LED2 ორიენტირებულია უკან LED1– ზე, მასში დენი არ შემოვა და ის არ გაივლის ბრწყინვალება ეს არის ის, რასაც ჰქვია საპირისპირო მიკერძოებული. ჩვენ გვაქვს სიტუაციის ექვივალენტი წინა გვერდზე. ჩვენ შეგვიძლია უგულებელვყოთ LED2. ისრები აჩვენებენ მიმდინარე ნაკადს. LED არის დიოდი (აქედან გამომდინარე სინათლის დიოდი). დიოდი არის მოწყობილობა, რომელიც საშუალებას აძლევს დენს მიედინება ერთი მიმართულებით, მაგრამ არა მეორეში. LED- ის სქემა გვიჩვენებს ამას, დენი მიედინება ისრის მიმართულებით ……, მაგრამ იკეტება სხვა გზით. თუ ჩვენ დავავალებთ მიკროს, რომ ახლა გამოუშვას 5V, რომ დააჭიროს B და 0V pin P- ზე, ჩვენ გვაქვს პირიქით. ახლა LED1 არის საპირისპირო მიკერძოებული, LED2 არის წინდახედული და დაუშვებს მიმდინარე ნაკადს. LED2 ანათებს და LED1 იქნება მუქი. ახლა შეიძლება კარგი იდეა იყოს გადახედოთ შესავალში ნახსენები სხვადასხვა პროექტის სქემატებს. თქვენ უნდა ნახოთ ამ დამატებითი წყვილების მთელი რაოდენობა მატრიცაში. რა თქმა უნდა, ქვემოთ მოცემულ მაგალითში ჩვენ ვმართავთ ორ LED- ს ორი მიკროკონტროლის ქინძისთავით….თქვენ შეგიძლიათ თქვათ რატომ აწუხებთ. მომდევნო სექცია არის ის, თუ სად მივდივართ ჩარლიპლექსის ნაწლავებში და როგორ ხდება მიკროკონტროლერების გამომუშავების ქინძისთავების ეფექტური გამოყენება.

ნაბიჯი 4: საბოლოოდ…. Charlieplex Matrix

საბოლოოდ…. Charlieplex Matrix
საბოლოოდ…. Charlieplex Matrix
საბოლოოდ ….ჩარლიპლექსის მატრიცა
საბოლოოდ ….ჩარლიპლექსის მატრიცა

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

ჩვენ შეგვიძლია განვავრცოთ ჩარლიპლექსის მატრიცაში დამატებითი დისკის იდეა. ქვემოთ მოყვანილი დიაგრამა გვიჩვენებს ჩარლიპლექსის მინიმალურ მატრიცას, რომელიც შედგება სამი რეზისტორისა და ექვსი LED- ისგან და იყენებს მხოლოდ სამ მიკროკონტროლერის ქინძისთავს. ახლა ხედავთ, რამდენად მოსახერხებელია ეს მეთოდი? თუ თქვენ გინდათ ექვსი LED- ების მართვა ნორმალური გზით … თქვენ დაგჭირდებათ ექვსი მიკროკონტროლის ქინძისთავი. ფაქტობრივად, მიკროკონტროლერის N ქინძისთავებით შეგიძლიათ პოტენციურად მართოთ N * (N - 1) ები. 3 ქინძისთავისთვის ეს არის 3 * (3-1) = 3 * 2 = 6 LED. საგნები სწრაფად გროვდება მეტი ქინძისთავებით. 6 ქინძისთავით შეგიძლიათ მართოთ 6 * (6 - 1) = 6 * 5 = 30 LED…. ვაი! ახლა ჩარლიპლექსიზე. შეხედეთ ქვემოთ მოცემულ დიაგრამას. ჩვენ გვაქვს სამი დამატებითი წყვილი, ერთი წყვილი მიკრო გამომავალი ქინძის თითოეულ კომბინაციას შორის. ერთი წყვილი A-B- ს შორის, ერთი წყვილი B-C- ს შორის და ერთი წყვილი A-C შორის. თუ თქვენ გათიშავთ პინ C– ს ახლა ჩვენ გვექნება იგივე სიტუაცია, როგორც ადრე. 5V პინზე A და 0V პინზე B, LED1 ანათებს, LED2 არის საპირისპირო მიკერძოებული და არ ჩაატარებს მიმდინარეობას. 5V პინზე B და 0V პინზე A LED2 ანათებს და LED1 არის საპირისპირო მიკერძოებული. ეს მოყვება სხვა მიკრო ქინძისთავებს. თუ ჩვენ გავთიშავთ პინ B- ს და დავაყენებთ პინ A- ს 5V- ზე და C- ს 0V- ზე, მაშინ LED5 ანათებს. შებრუნება ისე, რომ pin A არის 0V და pin C არის 5V, მაშინ LED6 ანათებს. იგივეა დამატებით წყვილს B-C ქინძისთავებს შორის. მოითმინე, მესმის შენი ნათქვამი. მოდით შევხედოთ მეორე შემთხვევას ცოტა უფრო მჭიდროდ. ჩვენ გვყავს 5V პინ A- ზე და 0V პინ C. ჩვენ გათიშული გვაქვს pin B (შუა). კარგი, ასე რომ დენი მიედინება LED5– ში, დენი არ მიედინება LED6– ში, რადგან ის არის საპირისპირო მიკერძოებული (და ასევე LED2 და LED4)….მაგრამ ასევე არის გზა, რომელიც უნდა გაიაროს დენისგან A– დან, LED1– დან და LED3– ით იქ არ არის? რატომ არ ანათებენ ეს LED- ებიც. აქ არის ჩარლიპლექსის სქემის გული. მართლაც, დენი მიედინება როგორც LED1, ასევე LED3, თუმცა ძაბვა ორივე მათგანზე კომბინირებული იქნება მხოლოდ LED5– ზე ძაბვის ტოლი. როგორც წესი, მათ ექნებათ იმ ძაბვის ნახევარი, რაც LED5 აქვს. ასე რომ, თუ ჩვენ გვაქვს 1.9V LED5– ზე, მაშინ მხოლოდ 0.95V იქნება LED1– ზე და 0.95V LED3– ზე. ამ სტატიის დასაწყისში ნახსენები If/Vf მრუდიდან ჩვენ ვხედავთ, რომ ამ ნახევარ ძაბვაში დენი გაცილებით დაბალია ვიდრე 20 mA….. და ეს LED- ები არ გამოჩნდება ნათლად. ეს ცნობილია როგორც მიმდინარე ქურდობა. ამრიგად, მიმდინარეობის უმეტესი ნაწილი შემოვა, თუმცა ჩვენ გვინდა LED, ყველაზე პირდაპირი გზა LED– ების უმცირესი რაოდენობის (ანუ ერთი LED) საშუალებით, ვიდრე LED– ების სერიული კომბინაცია. თუ თქვენ დაათვალიერებთ მიმდინარე ნაკადს 5V და 0V ჩარლიპლექსის მატრიცის ნებისმიერ ორ საკინძზე, თქვენ დაინახავთ იგივეს. მხოლოდ ერთი LED ანათებს ერთდროულად. როგორც ვარჯიში, შეხედეთ პირველ სიტუაციას. 5V პინზე A და 0V პინ B- ზე, გათიშეთ pin C. LED1 არის უმოკლესი მარშრუტი დენის გასავლელად და LED 1 ანათებს. მცირე დენი ასევე გაივლის LED5– ს, შემდეგ დააბრუნებს LED4– ს B B– ზე ….. მაგრამ ისევ და ისევ, ეს ორი LED ები სერიაში ვერ შეძლებენ საკმარისი რაოდენობის დენთან შედარებით LED 1 – თან შედარებით, რათა ნათლად ანათებდეს. ამრიგად, ჩარლიპლექსის ძალა რეალიზებულია. იხილეთ მეორე დიაგრამა, რომელიც სქემატურია ჩემი Microdot საათისათვის…..30 LED- ები, მხოლოდ 6 ქინძისთავით. ჩემი Minidot 2 საათი ძირითადად არის Microdot– ის გაფართოებული ვერსია….იგი 30 LED არის მასივში მოწყობილი. მასივში შაბლონის შესაქმნელად, თითოეული განათებული LED მოკლედ არის ჩართული, შემდეგ მიკრო გადადის შემდეგზე. თუ მისი განათება დაგეგმილია, ის კვლავ ჩართულია მცირე ხნით. LED- ების სწრაფი სკანირებით, პრინციპი სახელწოდებით "მხედველობის გამძლეობა" საშუალებას მისცემს LED- ების მასივს აჩვენოს სტატიკური ნიმუში. Minidot 2 სტატიას აქვს ცოტა ახსნა ამ პრინციპზე. მაგრამ დაელოდეთ ….. მე თითქოს გარეგნულად ოდნავ აღვნიშნე ზემოთ აღწერილი. რა არის ეს "გათიშვა pin B", "გათიშეთ pin C" ბიზნესი. შემდეგი განყოფილება გთხოვთ.

ნაბიჯი 5: სამ სახელმწიფოები (არა ტრიციკლები)

სამ სახელმწიფოები (არა ტრიციკლები)
სამ სახელმწიფოები (არა ტრიციკლები)
სამ სახელმწიფოები (არა ტრიციკლები)
სამ სახელმწიფოები (არა ტრიციკლები)

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

რა თქმა უნდა, ქინძისთავების ხელით გათიშვა ცოტა რთულია, განსაკუთრებით მაშინ, როდესაც ჩვენ ვამოწმებთ ნივთებს ძალიან სწრაფად, რათა გამოვიყენოთ მხედველობის ეფექტის გამძლეობა ნიმუშის საჩვენებლად. ამასთან, მიკროკონტროლერის გამომავალი ქინძისთავები ასევე შეიძლება დაპროგრამდეს, რომ იყოს შეყვანის ქინძისთავებიც. როდესაც მიკრო პინი დაპროგრამებულია შეყვანის სახით, ის გადადის რა ეწოდება "მაღალი წინაღობა" ან "სამ-მდგომარეობა". ანუ, ის წარმოაჩენს ძალიან მაღალ წინააღმდეგობას (მეგაჰომების, ან მილიონობით ომის) ქინძისთავის მიმართ. თუ არსებობს ძალიან მაღალი წინააღმდეგობა (იხ. დიაგრამა), მაშინ ჩვენ შეგვიძლია არსებითად ჩავთვალოთ რომ პინი გათიშულია და ასე მუშაობს შარლიპლექსის სქემა. მეორე დიაგრამა გვიჩვენებს მატრიცის ქინძისთავებს თითოეული კომბინაციისათვის, რომელიც შესაძლებელია ჩვენს მაგალითში თითოეული 6 LED- ის გასანათებლად. როგორც წესი, სამ მდგომარეობა აღინიშნება "X"-ით, 5V ნაჩვენებია როგორც "1" (ლოგიკური 1) და 0V როგორც "0". მიკრო firmware- ში '0' ან '1' ნება დართეთ, რომ ქინძისთავები იყოს გამომავალი და მისი მდგომარეობა კარგად არის განსაზღვრული. სამ სახელმწიფოსთვის თქვენ პროგრამირებთ მას შეყვანისთვის და რადგან ეს არის შეყვანა ჩვენ რეალურად არ ვიცით რა მდგომარეობა შეიძლება იყოს ….აქედან უცნობია 'X'. მიუხედავად იმისა, რომ ჩვენ შეგვიძლია გამოვყოთ პინი სამმხრივი ან შესასვლელი, ჩვენ არ გვჭირდება მისი წაკითხვა. ჩვენ მხოლოდ ისარგებლეთ იმით, რომ მიკროკონტროლერის შეყვანის პინი არის მაღალი წინაღობა.

ნაბიჯი 6: რამდენიმე პრაქტიკული საკითხი

Charlieplexing– ის მაგია ემყარება იმ ფაქტს, რომ სერიული რამოდენიმე LED- ზე წარმოდგენილი ინდივიდუალური ძაბვა ყოველთვის ნაკლები იქნება ვიდრე ერთ LED– ზე, როდესაც ერთი LED არის სერიული კომბინაციის პარალელურად. თუ ძაბვა ნაკლებია, მაშინ დენი ნაკლებია და ვიმედოვნებთ, რომ სერიის კომბინაცია იმდენად დაბალი იქნება, რომ LED არ ანათებს. ეს ყოველთვის ასე არ არის. ვთქვათ, თქვენ გქონდათ ორი წითელი LED ტიპიური თქვენს ძაბვაზე 1.9V თქვენს მატრიცაში და ლურჯი LED წინამორბედი ძაბვით 3.5V (ვთქვათ LED1 = წითელი, LED3 = წითელი, LED5 = ლურჯი ჩვენს 6 LED მაგალითში). თუ თქვენ აანთებთ ლურჯ LED- ს, თქვენ მიიღებთ 3.5/2 = 1.75V თითოეულ წითელ LED- ებს. ეს შეიძლება იყოს ძალიან ახლოს LED– ის დაბნელებულ სამუშაო ფართობთან. თქვენ შეიძლება აღმოაჩინოთ, რომ წითელი ები მკრთალად ანათებს, როდესაც ლურჯი ანათებს. ამიტომ კარგი იდეაა, რომ დარწმუნდეთ, რომ თქვენს მატრიცაში არსებული სხვადასხვა ფერის LED- ების წინამორბედი ძაბვა დაახლოებით ერთნაირია საოპერაციო დენზე, ან სხვაგვარად გამოიყენოთ იგივე ფერი LED- ები მატრიცაში. ჩემს Microdot/Minidot პროექტებში მე არ მინდოდა ამაზე ფიქრი, მე გამოვიყენე მაღალი ეფექტურობის ლურჯი/მწვანე SMD LED- ები, რომლებსაც საბედნიეროდ აქვთ იგივე წინსვლას, როგორც წითელი/ყვითელი. თუმცა, თუკი იგივეს განვახორციელებდი 5 მმ LED- ებით, შედეგი უფრო პრობლემატური იქნებოდა. ამ შემთხვევაში მე განვახორციელებდი ლურჯ/მწვანე შარლიპლექსის მატრიცას და წითელ/ყვითელ მატიქსს ცალკე. მე დამჭირდებოდა მეტი ქინძისთავების გამოყენება….მაგრამ წადი. კიდევ ერთი საკითხია შეხედო თქვენს ამჟამინდელ გათამაშებას მიკროდან და რამდენად ნათელია LED. თუ თქვენ გაქვთ დიდი მატრიცა და სწრაფად ახდენთ მის სკანირებას, მაშინ თითოეული LED ჩართულია მხოლოდ მცირე ხნით. ეს შედარებით სტაბილურად გამოჩნდება სტატიკურ ჩვენებასთან შედარებით. თქვენ შეგიძლიათ მოატყუოთ LED- ის საშუალებით დენის გაზრდით მიმდინარე შემზღუდველი რეზისტორების შემცირებით, მაგრამ მხოლოდ წერტილამდე. თუ ძალიან დიდხანს ამოიღებთ მიკროდან ძალიან დიდხანს, თქვენ დააზიანებთ გამომავალ ქინძისთავებს. თუ თქვენ გაქვთ ნელა მოძრავი მატრიცა, ვთქვათ სტატუსის ან ციკლონის ჩვენება, შეგიძლიათ შეინარჩუნოთ დენი უსაფრთხო დონეზე, მაგრამ მაინც გქონდეთ ნათელი LED ეკრანი, რადგან თითოეული LED ჩართულია უფრო დიდი ხნის განმავლობაში, შესაძლოა სტატიკური (იმ შემთხვევაში, თუ სტატუსის მაჩვენებელი). Charlieplexing– ის ზოგიერთი უპირატესობა:- იყენებს მხოლოდ რამდენიმე ქინძისთავს მიკროკონტროლერზე მრავალი LED- ის გასაკონტროლებლად- ამცირებს კომპონენტის რაოდენობას, რადგან თქვენ არ გჭირდებათ ბევრი დრაივერის ჩიპი/რეზისტორი და ა. ზოგიერთი უარყოფითი მხარე: ძაბვის მდგომარეობა და ქინძისთავების შეყვანა/გამომავალი მდგომარეობა- ფრთხილად უნდა იყოთ სხვადასხვა ფერის შერევით- PCB განლაგება რთულია, რადგან LED მატრიცა უფრო რთულია.

ნაბიჯი 7: მითითებები

ინტერნეტში არსებობს უამრავი მითითება ჩარლიპლექსის შესახებ. სტატიის წინა ნაწილში არსებული ბმულების გარდა, ზოგიერთი მათგანია: მაქსიმის ორიგინალური სტატია, ამას ბევრი რამის თქმა შეუძლია 7 სეგმენტის ჩვენების მართვის შესახებ, რაც ასევე შესაძლებელია. https://www.maxim-ic.com/appnotes.cfm/appnote_number/1880 ვიკის შესვლა

გირჩევთ: