Სარჩევი:
- ნაბიჯი 1: კომპონენტები
- ნაბიჯი 2: პირველი პროტოტიპები
- ნაბიჯი 3: PCB დიზაინი
- ნაბიჯი 4: პროგრამირება
- ნაბიჯი 5: ტესტირება
- ნაბიჯი 6: დასკვნა და შემდეგი ნაბიჯები
ვიდეო: მრავალჯერადი LED ჩვენების მოდული: 6 ნაბიჯი (სურათებით)
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:18
გამარჯობა ყველას, მე მომწონს LED ეკრანებთან მუშაობა 7 სეგმენტით ან წერტილოვანი მატრიქსით და მე უკვე გავაკეთე ბევრი განსხვავებული პროექტი მათთან.
ყოველ ჯერზე ისინი საინტერესოა, რადგან არსებობს რაღაც მაგია, თუ როგორ შეუძლიათ მათ იმუშაონ, რადგან რასაც თქვენ ხედავთ არის ოპტიკური ილუზია!
ეკრანებს აქვთ ბევრი ქინძისთავები Arduino– სთან (ან სხვა მიკროკონტროლერთან) დასაკავშირებლად და საუკეთესო გამოსავალია მონაცემთა მულტიპლექსირების ტექნიკის გამოყენება მათი პორტების გამოყენების შესამცირებლად.
როდესაც ამას აკეთებთ, თითოეული სეგმენტი ან თითოეული LED ჩართულია რამდენიმე წამით (მილიწამი ან ნაკლები), მაგრამ ამის გამეორება იმდენჯერ წამში ქმნის იმ სურათის ილუზიას, რომლის ჩვენებაც გსურთ.
ჩემთვის ყველაზე საინტერესოა ლოგიკის, პროგრამის განვითარება, რათა გაირკვეს, თუ როგორ შეუძლიათ მათ აჩვენონ სწორი ინფორმაცია თქვენი პროექტის მიხედვით.
ეკრანების გამოყენებით ერთ პროექტში ბევრი დროა საჭირო ყველა კომპონენტის აწყობა პურის დაფაზე, მრავალი მავთულის დასაკავშირებლად.
მე ვიცი, რომ არსებობს მრავალი განსხვავებული ჩვენება I2C– ით, გამარტივებული გზებით (თუ არა), მათი პროგრამირებისათვის და მეც გამოვიყენე ისინი, მაგრამ მირჩევნია ვიმუშაო სტანდარტულ კომპონენტებთან, როგორიცაა 74HC595 (მულტიპლექსერული IC) და ULN2803 (მძღოლები), რადგან ისინი გაძლევთ უფრო მეტ კონტროლს თქვენს პროგრამაში და ასევე უფრო გამძლეობას და საიმედოობას თქვენს გამოყენებაში.
შეკრების პროცესის გასამარტივებლად მე შევიმუშავე LED Dipslay მოდული მრავალი მიზნისთვის, არდუინოს სამყაროში მარტივი და გავრცელებული კომპონენტების გამოყენებით.
ამ მოდულის საშუალებით თქვენ შეგიძლიათ იმუშაოთ წერტილოვანი მატრიქსით ორმაგი ფერის LED- ებით ორი სტანდარტული ზომით (უფრო დიდი და პატარა) და ასევე შეგიძლიათ გააკონტროლოთ 7 Seg x 4 ციფრის ეკრანი, რომლებიც ძალიან გავრცელებული და ადვილია მათი პოვნა ბაზარზე.
თქვენ ასევე შეგიძლიათ იმუშაოთ ამ მოდულებთან კასკადში სერიული გზით (სხვადასხვა მონაცემები ეკრანებზე) ან პარალელური გზით (იგივე მონაცემები ეკრანებზე).
მოდით ვნახოთ, როგორ მუშაობს ეს მოდული და დაგეხმარებათ თქვენს განვითარებაში!
ვიდეო (LED ჩვენების მოდული)
ვიდეო (წერტილოვანი მატრიცის ტესტი)
პატივისცემით, ლაგსილვა
ნაბიჯი 1: კომპონენტები
PCB (დაბეჭდილი მიკროსქემის დაფა)
- 74HC595 (03 x)
- ULN2803 (02 x)
- ტრანზისტორი PNP - BC327 (08 x)
- რეზისტორი 150 Ohms (16 x)
- რეზისტორი 470 Ohms (08 x)
კონდენსატორი 100 nF (03 x)
- IC სოკეტი 16 ქინძისთავით (03 x)
- IC სოკეტი 18 ქინძისთავით (02 x)
- pin კონექტორი ქალი - 6 ქინძისთავი (8 x)
- მიამაგრეთ სათაურები 90º (01 x)
- ჩაწერეთ სათაურები 180º (01 x)
- Conector Borne KRE 02 ქინძისთავები (02 x)
- PCB (01 x) - წარმოებულია
სხვა
- Arduino Uno R3 / Nano / მსგავსი
- LED ჩვენება 04 ციფრი x 7 სეგმენტი - (საერთო ანოდი)
- LED Dot Matrix ორმაგი ფერი (მწვანე და წითელი) - (საერთო ანოდი)
მნიშვნელოვანი შენიშვნები:
- ყველა უმნიშვნელოვანესი კომპონენტის მონაცემთა ცხრილი მხოლოდ მითითების სახით დავდე, მაგრამ მათ გამოყენებამდე უნდა შეამოწმოთ თქვენი საკუთარი კომპონენტების მონაცემთა ფურცელი.
- ეს დაფა შექმნილია მხოლოდ საერთო ანოდის ჩვენებების გამოსაყენებლად.
ნაბიჯი 2: პირველი პროტოტიპები
ჩემი პირველი პროტოტიპი გაკეთდა პურის დაფაზე, რათა შემოწმებულიყო წრე.
ამის შემდეგ მე გავაკეთე სხვა პროტოტიპი უნივერსალური დაფის გამოყენებით, როგორც სურათებში ხედავთ.
ამ ტიპის დაფა საინტერესოა სწრაფი პროტოტიპის შესაქმნელად, მაგრამ ხვდები, რომ ის მაინც ინახავს უამრავ მავთულს.
ეს არის ფუნქციური გადაწყვეტა, მაგრამ არც ისე ელეგანტური შედარებით საბოლოო წარმოებული PCB (ლურჯი).
მე არ ვარ კარგად შედუღების, რადგან მე არ მაქვს საკმარისი გამოცდილება ამ პროცესში, მაგრამ მაინც მივიღე კარგი შედეგები როგორც გამოცდილებით, ასევე უფრო მნიშვნელოვანი: მე არ დავწვი არცერთი კომპონენტი და არც ჩემი ხელები!
ალბათ, ჩემი შემდეგი დაფის შედეგები უკეთესი იქნება პრაქტიკის გამო.
ამის გამო მე გირჩევთ სცადოთ ასეთი გამოცდილება, რადგან ეს იქნება შესანიშნავი თქვენთვის.
უბრალოდ დაიმახსოვრე ზრუნვა ცხელ უთოზე და ეცადე რამდენიმე წამზე მეტი არ დახარჯო კომპონენტზე, რომ არ დაწვა !!
დაბოლოს, Youtube– ზე შეგიძლიათ იპოვოთ ბევრი ვიდეო შედუღების შესახებ, რომელთა სწავლა შეგიძლიათ რეალურ სამყაროში წასვლამდე.
ნაბიჯი 3: PCB დიზაინი
მე შევქმენი ეს PCB სპეციალური პროგრამის გამოყენებით, ორმაგი ფენის დაფის შესაქმნელად და იგი შემუშავდა რამდენიმე განსხვავებული ვერსიით ამ უკანასკნელამდე.
დასაწყისში მე მქონდა ერთი ვერსია თითოეული სახის ჩვენებისთვის და ყოველივე ამის შემდეგ მე გადავწყვიტე ყველაფერი გაერთიანებულიყო მხოლოდ ერთ ვერსიაში.
დიზაინის მიზნები:
- მარტივი და სასარგებლოა პროტოტიპებისთვის.
- მარტივი დაყენება და გაფართოება.
- შეუძლია გამოიყენოს 3 განსხვავებული სახის ჩვენება.
- LED- ის დიდი წერტილოვანი მატრიცის მაქსიმალური სიგანე.
- მაქსიმალური სიგრძე 100 მმ -მდე, რათა შეამციროს დაფის წარმოების ხარჯები.
- გამოიყენეთ ტრადიციული კომპონენტები SMD– ის ნაცვლად, რათა თავიდან აიცილოთ მეტი სირთულე ხელით შედუღების პროცესში.
- დაფა უნდა იყოს მოდულური, რათა კასკადში სხვა დაფებთან იყოს დაკავშირებული.
- სერიული ან პარალელური გამომავალი სხვა დაფებისთვის.
- რამდენიმე დაფა უნდა კონტროლდებოდეს მხოლოდ არდუინოს მიერ.
- არდუინოს კავშირის მონაცემების მხოლოდ 3 მავთული.
- გარე 5V დენის კავშირი.
- გაზარდეთ ელექტრული სიმტკიცე ტრანზისტორებისა და დრაივერების გამოყენებით LEDS- ის გასაკონტროლებლად.
შენიშვნა:
ამ ბოლო პუნქტთან დაკავშირებით გირჩევთ წაიკითხოთ ჩემი სხვა ინსტრუქცია ამ კომპონენტების შესახებ:
Shift Register 74HC595 გამოყენებით ULN2803, UDN2981 და BC327
PCB წარმოება:
დიზაინის დასრულების შემდეგ, მე გავუგზავნე იგი ჩინეთში PCB მწარმოებელს სხვადასხვა ადგილობრივ მომწოდებლებთან და სხვადასხვა ქვეყნებში ბევრი ძებნის შემდეგ.
მთავარი საკითხი იყო დაფების ოდენობა და ღირებულება, რადგან მე მჭირდება მხოლოდ რამდენიმე მათგანი.
საბოლოოდ, მე გადავწყვიტე ჩინეთში მდებარე კომპანიასთან გამეკეთებინა რეგულარული შეკვეთა (არა ექსპრეს შეკვეთა უფრო მაღალი ხარჯების გამო).
მხოლოდ 3 დღის შემდეგ დაფები დამზადდა და გამომიგზავნეს მსოფლიოს გავლით 4 დღეში.
შედეგები შესანიშნავი იყო !!
შესყიდვის შეკვეთიდან ერთ კვირაში დაფები ჩემს ხელში იყო და მე ნამდვილად მოხიბლული ვიყავი მათი მაღალი ხარისხით და სწრაფი სიჩქარით!
ნაბიჯი 4: პროგრამირება
პროგრამირებისთვის თქვენ უნდა გაითვალისწინოთ რამდენიმე მნიშვნელოვანი კონცეფცია აპარატურის დიზაინისა და 74HC595 ცვლის რეგისტრატორის შესახებ.
74HC595– ის მთავარი ფუნქციაა 8 – ბიტიანი სერიული ინ – ის გარდაქმნა 8 პარალელურ – გასავლელად ცვლაში.
ყველა სერიული მონაცემი შედის პინ #14-ში და თითოეული საათის სიგნალზე ბიტი გადადის მის შესაბამის პარალელურ ქინძისთავებზე (Qa to Qh).
თუ თქვენ განაგრძობთ მეტი მონაცემების გაგზავნას, ბიტები სათითაოდ გადავა Pin #9 -ში (Qh '), როგორც სერიული გამომავალი და ამ ფუნქციურობის გამო თქვენ შეგიძლიათ მოათავსოთ კიდევ ერთი ჩიპი კასკადში.
Მნიშვნელოვანი:
ამ პროექტში ჩვენ გვაქვს სამი ICS 74HC595. პირველი ორი მუშაობს სვეტების გასაკონტროლებლად (პოზიტიური ლოგიკით) და ბოლო ერთი ხაზების გასაკონტროლებლად (უარყოფითი ლოგიკით PNP ტრანზისტორების მუშაობის გამო).
პოზიტიური ლოგიკა ნიშნავს იმას, რომ თქვენ უნდა გაგზავნოთ მაღალი დონის სიგნალი (+5V) არდუინოდან და უარყოფითი ლოგიკა ნიშნავს, რომ თქვენ უნდა გამოაგზავნოთ დაბალი დონის სიგნალი (0V).
LED- ების წერტილოვანი მატრიცა
- პირველი არის წითელი LED- ების კათოდების (8 x) >> სვეტი წითელი (1 -დან 8 -მდე) გამოყვანისთვის.
- მეორე არის მწვანე LED- ების კათოდების გამომავალი ლ (8 x) >> მწვანე სვეტი (1 -დან 8 -მდე).
- ბოლო არის ყველა LED- ების (08 x წითელი და მწვანე) ანოდების გამომავალი >> ხაზები (1 -დან 8 -მდე).
მაგალითად, თუ გსურთ ჩართოთ მხოლოდ მწვანე სვეტი 1 და სტრიქონი 1 თქვენ უნდა გამოაგზავნოთ სერიული მონაცემების შემდეგი თანმიმდევრობა:
1º) ხაზები
~ 10000000 (ჩართულია მხოლოდ პირველი ხაზი) - სიმბოლო ~ არის ყველა ბიტის 1 -დან 0 -მდე გადაბრუნება და პირიქით.
2º) სვეტი მწვანე
10000000 (მწვანე LED- ის მხოლოდ პირველი სვეტი არის ჩართული)
3º) წითელი სვეტი
00000000 (წითელი LED- ების ყველა სვეტი გამორთულია)
არდუინოს განცხადებები:
shiftOut (dataPin, clockPin, LSBFIRST, B10000000); // ხაზების უარყოფითი ლოგიკა
shiftOut (dataPin, clockPin, LSBFIRST, B10000000); // მწვანე სვეტების პოზიტიური ლოგიკა
shiftOut (dataPin, clockPin, LSBFIRST, B00000000); // წითელი სვეტების პოზიტიური ლოგიკა
შენიშვნა:
თქვენ ასევე შეგიძლიათ დააკავშიროთ ორივე LED (მწვანე და წითელი), რომ მიიღოთ ყვითელი ფერი შემდეგნაირად:
shiftOut (dataPin, clockPin, LSBFIRST, B10000000);
shiftOut (dataPin, clockPin, LSBFIRST, B10000000);
shiftOut (dataPin, clockPin, LSBFIRST, B10000000);
7 სეგმენტის ჩვენება
ამგვარი ჩვენებისთვის თანმიმდევრობა იგივეა. ერთადერთი განსხვავება ისაა, რომ თქვენ არ გჭირდებათ მწვანე LED- ების გამოყენება.
1º) ციფრი (1 -დან 4 -დან მარცხნიდან მარჯვნივ) ~ 10000000 (მითითებული ციფრი #1)
00 01000000 (მითითებული ციფრი #2)
1 00100000 (მითითებული ციფრი #3)
1 00010000 (მითითებული ციფრი #4)
2º) არ გამოიყენება
00000000 (ყველა ბიტი ნულოვანია)
3º) SEGMENTS (A to F და DP - შეამოწმეთ თქვენი ჩვენების მონაცემთა ფურცელი)
10000000 (მითითებული სეგმენტი A)
01000000 (მითითებული სეგმენტი B)
00100000 (მითითებული სეგმენტი C)
00010000 (მითითებული სეგმენტი D)
00001000 (მითითებული სეგმენტი E)
00000100 (მითითებული სეგმენტი F)
00000010 (მითითებული სეგმენტი G)
00000001 (მითითებული DP)
არდუინოს მაგალითი ეკრანის #2 3 ნომრით დასაყენებლად:
shiftOut (dataPin, clockPin, LSBFIRST, B01000000); // დისპლეის დაყენება 2 (უარყოფითი ლოგიკა)
shiftOut (dataPin, clockPin, LSBFIRST, 0); // მონაცემების დაყენება ნულზე (არ გამოიყენება)
shiftOut (dataPin, clockPin, LSBFIRST, B11110010); // დააყენეთ სეგმენტები A, B, C, D, G)
დაბოლოს, ამ პროცესის გამოყენებით თქვენ შეგიძლიათ აკონტროლოთ თქვენი ეკრანის ნებისმიერი LED და ასევე შეგიძლიათ შექმნათ თქვენთვის საჭირო ნებისმიერი სპეციალური სიმბოლო.
ნაბიჯი 5: ტესტირება
აქ არის ორი პროგრამა, როგორც ეკრანის მოდულის ფუნქციონირების მაგალითი.
1) Countdown ჩვენება (999.9 წამიდან ნულამდე)
2) წერტილოვანი მატრიცა (ციფრი 0 -დან 9 -მდე და ანბანი A- დან Z- მდე)
3) ციფრული საათი RTC 4 ციფრისა და 7 სეგმენტის LED ჩვენებით
ეს უკანასკნელი არის ციფრული საათის ჩემი პირველი ვერსიის განახლება.
ნაბიჯი 6: დასკვნა და შემდეგი ნაბიჯები
ეს მოდული გამოდგება ყველა მომავალ პროექტში, რომელიც მოითხოვს LED დისპლეას.
მომდევნო ნაბიჯებისათვის მე შევიკრიბებ რამდენიმე დაფას, რომ ვიმუშაო მათთან კასკადურ რეჟიმში და ასევე განვავითარებ ბიბლიოთეკას პროგრამირების კიდევ უფრო გასამარტივებლად.
ვიმედოვნებ, რომ მოგეწონათ ეს პროექტი.
გთხოვთ, გამომიგზავნოთ თქვენი კომენტარები, რადგან ეს მნიშვნელოვანია პროექტის და ამ ინსტრუქციის ინფორმაციის გასაუმჯობესებლად.
პატივისცემით, ლაგსილვა
26.მაი 2016 წ
გირჩევთ:
ინტერფეისის TM1637 ჩვენების მოდული Arduino– სთან ერთად: 3 ნაბიჯი
ინტერფეისის TM1637 ჩვენების მოდული Arduino– სთან ერთად: As-Salam-O-Aleykum! ჩემი ეს ინსტრუქცია ეხება TM1637 ჩვენების მოდულის Arduino– სთან დაკავშირებას. ეს არის ოთხნიშნა ციფრის შვიდი სეგმენტის ჩვენების მოდული. იგი მოდის სხვადასხვა ფერებში. ჩემი არის წითელი ფერი. იგი იყენებს Tm1637 Ic
მრავალჯერადი LED- ების კონტროლი Python– ით და თქვენი Raspberry Pi– ს GPIO ქინძისთავებით: 4 ნაბიჯი (სურათებით)
მრავალი LED- ის კონტროლი Python– ით და თქვენი Raspberry Pi– ს GPIO ქინძისთავებით: ეს ინსტრუქცია გვიჩვენებს, თუ როგორ უნდა აკონტროლოთ თქვენი RaspberryPi– ს მრავალჯერადი GPIO ქინძისთავები 4 LED- ების გასაძლიერებლად. ის ასევე გაგაცნობთ პარამეტრებს და პირობით განცხადებებს პითონში. ჩვენი წინა ინსტრუქცია თქვენი ჟოლოს პიპის GPIO ქინძისთავების გამოყენებით
RASPBERRY PI– ს მრავალჯერადი სენსორების დაკავშირება: 6 ნაბიჯი (სურათებით)
RASPBERRY PI– ს მრავალჯერადი სენსორების დაკავშირება: ამ პროექტში ჩვენ დავაკავშირებთ Atlas Scientific– ის სამ EZO სენსორს (pH, გახსნილი ჟანგბადი და ტემპერატურა) ჟოლოს Pi 3B+ - თან. ნაცვლად იმისა, რომ სქემები Raspberry Pi- ს გავუერთოთ, ჩვენ ვიყენებთ Whitebox Labs Tentacle T3 ფარს. ტ
მრავალჯერადი 7 სეგმენტის ჩვენების მრიცხველი CloudX მიკროკონტროლით: 4 ნაბიჯი
მრავალჯერადი 7 სეგმენტის ჩვენების მრიცხველი CloudX მიკროკონტროლით: ეს პროექტი განმარტავს როგორ აჩვენებს მონაცემებს ორ 7-სეგმენტზე CloudX მიკროკონტროლერის გამოყენებით
ჩვენების ტემპერატურა P10 LED ჩვენების მოდულზე Arduino– ს გამოყენებით: 3 ნაბიჯი (სურათებით)
ტემპერატურის ჩვენება P10 LED ჩვენების მოდულზე Arduino– ს გამოყენებით: წინა გაკვეთილში ნათქვამია, თუ როგორ უნდა აჩვენოთ ტექსტი Dot Matrix LED Display P10 მოდულში Arduino და DMD კონექტორის გამოყენებით, რომლის შემოწმება შეგიძლიათ აქ. ამ გაკვეთილში ჩვენ მოგცემთ მარტივ პროექტის გაკვეთილს P10 მოდულის გამოყენებით, როგორც ჩვენების მედიცინა