Სარჩევი:
- Ნაბიჯი 1:
- ნაბიჯი 2:
- ნაბიჯი 3: დაწყება - აპარატურა
- ნაბიჯი 4: დაწყება - პროგრამული უზრუნველყოფა
- ნაბიჯი 5: ორფერიანი LED- ები
- ნაბიჯი 6: 7 სეგმენტიანი ჩვენება
- ნაბიჯი 7:
- ნაბიჯი 8:
- ნაბიჯი 9:
- ნაბიჯი 10: ღილაკები
ვიდეო: Arduino და TM1638 LED ჩვენების მოდულები: 11 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:18
თუ თქვენ გჭირდებათ სწრაფი და მარტივი გზა პროექტში მომხმარებლის შეყვანისა და გამომავლის დასამატებლად, ჩვენების ეს მოდულები საინტერესო და სახალისოა.
ისინი შეიცავს რვა 7-სეგმენტის წითელ LED ციფრს, რვა წითელ/მწვანე LED- ს და ასევე რვა ღილაკს მომხმარებლის შეყვანისთვის. ერთეულები ასევე შეიძლება იყოს მიჯაჭვული ჯაჭვით, რაც საშუალებას იძლევა ერთდროულად ხუთამდე, ხოლო თითოეულ მოდულს მოყვება მოკლე კაბელი, ასევე რამდენიმე მოკლე გამყოფი და ჭანჭიკი, როგორც ეს მოცემულია სურათზე.
Ნაბიჯი 1:
შუასადებები საკმარისად გრძელია PCB ზედაპირზე მაღლა ასამაღლებლად, თუმცა დაფების დასაყენებლად ნებისმიერ ადგილას დაგჭირდებათ უფრო გრძელი. თქვენ ასევე გსურთ მოხსნათ IDC სოკეტები, თუ გსურთ მოდულის დამონტაჟება პანელის ზედაპირთან ახლოს. ეს იქნება მარტივი ჩამოსხმის ამოცანა, რადგან ისინი ხვრელიანი ბუდეებია.
ნაბიჯი 2:
დაფა კონტროლდება TM1638 IC- ით.
ეს არის LED და ინტერფეისის დრაივერის IC "Titan Micro Electronics" - დან. თქვენ ასევე შეგიძლიათ შეიძინოთ ეს ICs PMD Way– დან. თქვენ ასევე შეგიძლიათ ჩამოტვირთოთ მონაცემთა ფურცელი დამატებითი ინფორმაციისთვის.
ნაბიჯი 3: დაწყება - აპარატურა
აპარატურა-Arduino- თან თავსებადი დაფის (ან სხვა MCU) დაკავშირება საკმაოდ მარტივია. პინუტები ნაჩვენებია PCB– ის უკანა ნაწილზე და ემთხვევა ლენტი კაბელის ფიტინგს. თუ შეხედავთ კაბელის ბოლოს, როგორც ასეთს.
ზედა მარჯვენა ხვრელი არის პინი ერთი, ზედა მარცხენა არის პინი ორი, ქვედა მარჯვენა პინი ცხრა და ქვედა მარცხენა პინ ათი. ამიტომ პინუტებია:
- Vcc (5V)
- GND
- CLK
- DIO
- STB1
- STB2
- STB3
- STB4
- STB5
- არ არის დაკავშირებული.
არდუინოს გამოყენებისთვის, ქინძისთავები 1 ~ 4 არის მინიმალური, რაც საჭიროა ერთი მოდულის გამოსაყენებლად. თითოეულ დამატებით მოდულს დასჭირდება სხვა ციფრული პინი, რომელიც დაკავშირებულია STB2, STB3 და ა.შ. ამის შესახებ მოგვიანებით. გთხოვთ გაითვალისწინოთ, რომ თითოეული მოდული დაყენებულია სრულ სიკაშკაშესთან ერთად თითოეული LED- ი მოიხმარს 127 mA- ს, ამიტომ გონივრული იქნება გარე ენერგიის გამოყენება ერთზე მეტი მოდულით და სხვა კავშირები Arduino დაფებთან.
ნაბიჯი 4: დაწყება - პროგრამული უზრუნველყოფა
პროგრამული უზრუნველყოფა - გადმოწერეთ და დააინსტალირეთ T1638 ბიბლიოთეკა აქედან. მადლობა და დიდება rjbatista at gmail dot com ბიბლიოთეკისთვის. ესკიზში მოდულების ინიციალიზაცია მარტივია. ჩართეთ ბიბლიოთეკა:
#ჩართეთ
შემდეგ გამოიყენეთ თითოეული შემდეგი მოდულისთვის:
TM1638 მოდული (x, y, z);
x არის Arduino ციფრული პინი, რომელიც დაკავშირებულია მოდულის კაბელის პინ 4 -თან, y არის Arduino ციფრული პინი, რომელიც დაკავშირებულია მოდულის კაბელის პინ 3 -თან, ხოლო z არის სტრობის პინი. ასე რომ, თუ გქონდათ ერთი მოდული მონაცემებით, საათით და სტრობით, რომლებიც დაკავშირებულია 8, 7 და 6 ქინძისთავებთან, თქვენ გამოიყენებდით:
TM1638 მოდული (8, 7, 6);
თუ გქონდათ ორი მოდული, ერთი მოდულის სტრობი დაკავშირებული Arduino digital 6 -თან და მოდულის ორი სტრობი ციფრულ 5 -თან, თქვენ გამოიყენებდით:
TM1638 მოდული (8, 7, 6); TM1638 მოდული (8, 7, 5);
და ასე შემდეგ მეტი მოდულისთვის. ახლა ეკრანის გასაკონტროლებლად …
ნაბიჯი 5: ორფერიანი LED- ები
წითელი/მწვანე LED- ების კონტროლი ადვილია. ცნობისთვის ისინი დანომრილია ნულიდან შვიდამდე მარცხნიდან მარჯვნივ. ერთი LED- ის ჩართვის ან გამორთვისთვის გამოიყენეთ შემდეგი:
module.setLED (TM1638_COLOR_RED, x); // დააყენეთ LED ნომერი x redmodule.setLED (TM1638_COLOR_GREEN, x); // დააყენეთ LED ნომერი x მწვანე მოდულზე. setLED (TM1638_COLOR_RED+TM1638_COLOR_GREEN, 0); // დააყენეთ LED ნომერი x წითელი და მწვანე
ზემოთ მოყვანილი მეთოდის გამოყენება შეიძლება მარტივი იყოს, ის გარკვეულწილად არაეფექტურია. უკეთესი გზაა მიმართოთ ყველა LED- ს ერთ განცხადებაში. ამისათვის ჩვენ ვგზავნით ეკრანზე თექვსმეტობით მონაცემის ორ ბაიტს. MSB (ყველაზე მნიშვნელოვანი ბაიტი) შედგება რვა ბიტისგან, თითოეული წარმოადგენს ერთ მწვანე LED- ს (1) ან გამორთვას (0). LSB (ყველაზე ნაკლებად მნიშვნელოვანი ბაიტი) წარმოადგენს წითელ LED- ებს.
LED- ების გასაკონტროლებლად თექვსმეტობითი მნიშვნელობის დადგენის მარტივი გზა მარტივია, გამოსახულება გაქვთ ერთი მწკრივი LED- ები - პირველი რვა მწვანეა, ხოლო მეორე რვა წითელი. თითოეული ციფრი დააყენეთ 1 ჩართვისთვის და 0 გამორთვისთვის. გადააკეთეთ ორი ორობითი რიცხვი თექვსმეტობით და გამოიყენეთ ეს ფუნქცია:
module.setLEDs (0xgreenred);
სადაც მწვანე არის მწვანე LED- ების თექვსმეტობითი რიცხვი და წითელი არის წითელი LED- ების თექვსმეტობითი რიცხვი. მაგალითად, პირველი სამი LED- ები რომ იყოს წითელი და ბოლო სამი როგორც მწვანე, ორობითი გამოსახულება იქნება:
00000111 11100000 რაც თექვსმეტობით არის E007.
ასე რომ, ჩვენ გამოვიყენებთ:
module.setLEDs (0xE007);
რომელიც აწარმოებს სურათს, როგორც ეს ნაჩვენებია ზემოთ.
ნაბიჯი 6: 7 სეგმენტიანი ჩვენება
ციფრული ეკრანის გასასუფთავებლად (მაგრამ არა LED- ები ქვემოთ), უბრალოდ გამოიყენეთ:
module.clearDisplay ();
ან ყველა სეგმენტის და ყველა LED- ის ჩასართავად გამოიყენეთ შემდეგი
module.setupDisplay (ჭეშმარიტი, 7); // სადაც 7 არის ინტენსივობა (0 ~ 7 -დან)
ათობითი რიცხვების საჩვენებლად გამოიყენეთ ფუნქცია:
module.setDisplayToDecNumber (a, b, false);
სადაც a არის მთელი რიცხვი, b არის პოზიცია ათწილადისათვის (0 არავისთვის, 1 ციფრისთვის 8, 2, ციფრისთვის 7, 4 ციფრისთვის 6, ციფრისთვის 4 და ა.შ.) და ბოლო პარამეტრი (ჭეშმარიტი/ ყალბი) ჩართავს ან გამორთავს წამყვან ნულებს. შემდეგი ესკიზი აჩვენებს ამ ფუნქციის გამოყენებას:
#მოიცავს // განსაზღვრეთ მოდული მონაცემთა პინ 8 -ზე, საათის პინ 9 და სტრობი პინ 7 TM1638 მოდული (8, 9, 7); ხელმოუწერელი გრძელი a = 1; void setup () {} void loop () {for (a = 10000; a <11000; a ++) {module.setDisplayToDecNumber (a, 4, false); დაგვიანება (1); } for (a = 10000; a <11000; a ++) {module.setDisplayToDecNumber (a, 0, true); დაგვიანება (1); }}
… ვიდეოში ნაჩვენები შედეგებით.
ნაბიჯი 7:
ერთ -ერთი ყველაზე საინტერესო მახასიათებელია ტექსტის გადახვევის შესაძლებლობა ერთ ან მეტ ეკრანზე. ამის გაკეთება ნამდვილად არ სჭირდება ახსნას, რადგან მოყვება სადემონსტრაციო ესკიზი:
tm_1638_scrolling_modules_example.pde
TM1638 ბიბლიოთეკასთან ერთად ადვილად მოყვება. უბრალოდ ჩაწერეთ თქვენი ტექსტი const char სტრიქონში , დარწმუნდით, რომ მოდული (ები) მავთულხლართულია მოდულის განსაზღვრის მიხედვით ესკიზის დასაწყისში და თქვენ დაყენებული ხართ. არსებული სიმბოლოების სანახავად ეწვიეთ ფუნქციის გვერდს. გაითვალისწინეთ, რომ ეკრანი მხოლოდ შვიდი სეგმენტია, ამიტომ ზოგიერთი პერსონაჟი შეიძლება არ გამოიყურებოდეს სრულყოფილად, მაგრამ კონტექსტში მოგცემთ კარგ იდეას-იხილეთ ვიდეო ამ ნაბიჯში.
ნაბიჯი 8:
დაბოლოს, თქვენ ასევე შეგიძლიათ ინდივიდუალურად მიმართოთ თითოეული ციფრის თითოეულ სეგმენტს. განვიხილოთ ამ მასივის შინაარსი:
ბაიტის მნიშვნელობები = {1, 2, 4, 8, 16, 32, 64, 128};
თითოეული ელემენტი წარმოადგენს ციფრებს 1 ~ 8. თითოეული ელემენტის მნიშვნელობა განსაზღვრავს ციფრის რომელ სეგმენტს ჩართავს. სეგმენტების a ~ f, dp მნიშვნელობებია 1, 2, 4, 6, 16, 32, 64, 128. ამრიგად, ზემოთ მასივის გამოყენების შედეგები შემდეგ ფუნქციაში:
module.setDisplay (ღირებულებები);
იქნება სურათზე
ნაბიჯი 9:
ბუნებრივია, თქვენ შეგიძლიათ დააკავშიროთ მნიშვნელობები თითოეული ციფრისთვის, შექმნათ თქვენი საკუთარი სიმბოლოები, სიმბოლოები და სხვა. მაგალითად, შემდეგი მნიშვნელობების გამოყენებით:
ბაიტის მნიშვნელობები = {99, 99, 99, 99, 99, 99, 99, 99, 99};
ჩვენ შევქმენით სურათის მიხედვით ამ ნაბიჯში.
ნაბიჯი 10: ღილაკები
ღილაკების მნიშვნელობები ბრუნდება როგორც ბაიტის მნიშვნელობა ფუნქციიდან:
module.getButtons ();
რვა ღილაკი არსებობს, თითოეული წარმოადგენს ორობითი რიცხვის ერთ ბიტს, რომელიც ბაიტის სახით ბრუნდება. ღილაკი მარცხნივ აბრუნებს ათწილადს, ხოლო მარჯვნივ 128. მას ასევე შეუძლია ერთდროული დაჭერის დაბრუნება, ამიტომ ღილაკებზე ერთი და რვა დაჭერით ბრუნდება 129. განვიხილოთ შემდეგი ესკიზი, რომელიც აბრუნებს ღილაკების დაჭერის მნიშვნელობებს ათწილადში, შემდეგ აჩვენებს ღირებულება:
#მოიცავს // განსაზღვრეთ მოდული მონაცემთა პინ 8 -ზე, საათის პინ 9 და სტრობი პინ 7 TM1638 მოდული (8, 9, 7); ბაიტის ღილაკები; void setup () {} void loop () {buttons = module.getButtons (); module.setDisplayToDecNumber (ღილაკები, 0, ყალბი); }
და შედეგები ვიდეოში.
ეს ჩვენების დაფები სასარგებლოა და ვიმედოვნებთ, რომ იპოვით სახლს თქვენს პროექტებში. ეს პოსტი მოგიტანათ pmdway.com– ით - გთავაზობთ ყველაფერს მწარმოებლებისთვის და ელექტრონიკის მოყვარულთათვის, უფასო მიწოდებით მთელს მსოფლიოში.
გირჩევთ:
DIY Fitness Tracker Smart Watch ოქსიმეტრითა და გულისცემის მაჩვენებლით - მოდულური ელექტრონული მოდულები TinyCircuits– დან - ყველაზე პატარა არკადული: 6 ნაბიჯი
DIY Fitness Tracker Smart Watch ოქსიმეტრითა და გულისცემის მაჩვენებლით | მოდულური ელექტრონული მოდულები TinyCircuits– დან | ყველაზე პატარა არკადული: ჰეი, რა ხდება, ბიჭებო! აქარში აქ არის CETech– დან. დღეს ჩვენ გვაქვს რამდენიმე სენსორული მოდული, რომლებიც ძალიან სასარგებლოა ყოველდღიურ ცხოვრებაში, მაგრამ საკუთარი თავის პატარა ვერსიაში. სენსორები, რომლებიც დღეს გვაქვს, ძალიან მცირე ზომისაა, ვიდრე ტრე
NIXIE TUBE მძღოლის მოდულები - ნაწილი II: 11 ნაბიჯი
NIXIE TUBE DRIVER MODULES - ნაწილი II: ეს ინსტრუქცია არის nixie tube დრაივერის მოდულის შემდგომი გაგრძელება (ნაწილი I), რომელიც მე აქ გამოვაქვეყნე. Nixie მძღოლის დაფა შექმნილია გარე მიკროკონტროლერის სერიული შეყვანის მისაღებად (არდუინო და ა.შ.) და გამოაქვს ათობითი ინფორმაცია და მარშრუტის სიმძლავრე
როგორ დააინსტალიროთ მოდულები WordPress– ში 3 ნაბიჯში: 3 ნაბიჯი
როგორ დააინსტალიროთ მოდულები WordPress– ში 3 ნაბიჯში: ამ გაკვეთილში მე გაჩვენებთ ძირითად ნაბიჯებს თქვენს ვებ – გვერდზე wordpress მოდულის დაყენების მიზნით. ძირითადად თქვენ შეგიძლიათ დააინსტალიროთ მოდული ორი განსხვავებული გზით. პირველი მეთოდი არის ftp ან cpanel საშუალებით. მაგრამ მე არ ჩამოვთვლი მას, რადგან ის მართლაც კომპლექსია
მაგარი განათება უფასოდ (LED მოდულები): 9 ნაბიჯი
მაგარი განათება უფასოდ (LED მოდულები): ამ სასწავლო ინსტრუქციაში მე გავაკეთე პატარა LED განათება რამდენიმე ლამაზი განათების ეფექტისთვის, ვიყენებდი გადამუშავებულ ბატარეებს, რადგან ის უფასო იყო, მაგრამ თქვენ შეგიძლიათ გამოიყენოთ ნებისმიერი ბატარეა
ჩვენების ტემპერატურა P10 LED ჩვენების მოდულზე Arduino– ს გამოყენებით: 3 ნაბიჯი (სურათებით)
ტემპერატურის ჩვენება P10 LED ჩვენების მოდულზე Arduino– ს გამოყენებით: წინა გაკვეთილში ნათქვამია, თუ როგორ უნდა აჩვენოთ ტექსტი Dot Matrix LED Display P10 მოდულში Arduino და DMD კონექტორის გამოყენებით, რომლის შემოწმება შეგიძლიათ აქ. ამ გაკვეთილში ჩვენ მოგცემთ მარტივ პროექტის გაკვეთილს P10 მოდულის გამოყენებით, როგორც ჩვენების მედიცინა