
Სარჩევი:
- მარაგები
- ნაბიჯი 1: ელექტრონიკის მიმოხილვა
- ნაბიჯი 2: ელექტრონიკა
- ნაბიჯი 3: INA3221 ძაბვა/მიმდინარე შეყვანა
- ნაბიჯი 4: ჩვენების ეკრანი
- ნაბიჯი 5: დააკავშირეთ იგი ერთად
- ნაბიჯი 6: კონსოლიდირებული ლიდერები
- ნაბიჯი 7: Arduino კოდი
- ნაბიჯი 8: არდუინოს ბიბლიოთეკების რედაქტირება
- ნაბიჯი 9: ეკრანის კადრები
- ნაბიჯი 10: ჩატვირთეთ არდუინოს კოდი
- ნაბიჯი 11: საბოლოო შეხება
2025 ავტორი: John Day | day@howwhatproduce.com. ბოლოს შეცვლილი: 2025-01-23 14:50


თუ თქვენ დაათვალიერეთ 1, 2 და 2B ნაწილები, მაშინ ჯერჯერობით არ იყო ბევრი Arduino ამ პროექტში, მაგრამ მხოლოდ რამდენიმე დაფის მავთული და ა. შ. დანარჩენი მუშაობს.
ეს არის ელექტრონიკის და არდუინოს კოდი. წინა 2B ინსტრუქციით ჩამოთვლილია კვების ბლოკის დეტალები.
ეს განყოფილება ადგენს პორტატულ სამუშაო მაგიდას შემდეგი მახასიათებლებით
TFT სენსორული ეკრანი უზრუნველყოფს ეკრანს, რომელსაც მართავს Arduino Mega, რათა უზრუნველყოს შემდეგი
- 8 ციფრული ეკრანი, გამორთული/ჩართული/რხევითი
- 4 ძაბვის ჩვენება
- 3 მიმდინარე/ძაბვის ჩვენება
- E24 წინააღმდეგობის მრიცხველი (რადგან მე აღარ შემიძლია ფერადი ზოლების წაკითხვა)
სხვა რამეს დავამატებ, მაგრამ ეს იყო ჩემი საწყისი სამიზნე. არდუინოს კოდი ასევე ასახავს სერიულ ჩვენებას, I2C ეკრანს, ტევადობის მრიცხველს, ციფრულ კონცენტრატორებს და ოსცილოსკოპს, რომელსაც დროთა განმავლობაში დავამატებ. ასევე, მე ბოლომდე არ მაქვს გადაწყვეტილი, ღირს თუ არა 3V3 დენის წყაროს დამატება, ცვლადი კვების ბლოკი, ან ძაბვის/დენის მონიტორინგის დენის წყარო. ჯერჯერობით ეს აგებულია მეგას გამოყენებით, მაგრამ მე ასევე ვათვალიერებ ზოგიერთი ფუნქციის გადატანას I2C წვდომის სქემების გამოსაყოფად, ან გამოყოფილი ჩიპებით ან დაპროგრამებული Atmel 328– ით, რომელიც უფრო ადვილად იტევს სხვა კონტროლერს.
მარაგები
5 x 16 გზის სათაურის ბუდეები
5 x 8 გზის დუპონტის სოკეტი, რეალურად დამზადებული გრძელი 40 გზაანი ერთჯერადი ხაზის სოკეტებისგან, რომელიც ამოჭრილია საჭირო სიგრძემდე
1 x 3.5”ILI9486 TFT სენსორული ეკრანი
1 x Arduino Mega 2650
ინდივიდუალური კომპონენტები
რაც შეეხება ტექსტს, ზოგიერთი მათგანის მნიშვნელობა არ არის აბსოლუტურად დაფიქსირებული და თუ გამოტოვებთ, ფუნქცია საერთოდ არ იქნება საჭირო:)
ციფრული შეყვანა
16 x 10K რეზისტორები
ანალოგური შეყვანა
1 x TL074 quad jfet opamp, ეს არის ის, რაც მე მქონდა სათადარიგო, მსგავსი რამ გააკეთებს:)
4 x 68K და 4 x 430k რეზისტორები გამოიყენება როგორც ძაბვის გამყოფი.
4 x 1N4001 ან მსგავსი
წინააღმდეგობის მრიცხველი
1 x TL072 ორმაგი jfet opamp, ეს არის ის, რაც მე მქონდა სათადარიგო, მსგავსი რამ გააკეთებს:)
1M0, 300k, 100k, 30k, 10k, 3k, 1k, 300R (თუ ეს მნიშვნელობები შეიცვალა, Arduino კოდი უნდა განახლდეს)
ნაბიჯი 1: ელექტრონიკის მიმოხილვა




ნაცრისფერი კონსოლი დამზადებულია ჩემ მიერ 30 წლის წინ და კვლავ რეგულარულად გამოიყენება, მაგრამ დრო წინ წავიდა. ის უზრუნველყოფს ორმაგი დენის წყაროს მარცხნივ, ცენტრალურ აუდიო გამაძლიერებელს შუაში, შიდა სპიკერით და ოსცილატორს მარცხნივ. ამ დღეებში ჩემს სქემების უმეტესობას მხოლოდ ელექტროენერგიის მიწოდება სჭირდება და, მხოლოდ, დადებითი რკინიგზა. რაღაც განსხვავებული იყო საჭირო, ასევე მარკირება, რომლის გარეშეც მე ვცხოვრობდი, კარგად მოვახერხე.
მთავარი მოთხოვნები პროექტის ყუთის ელექტრონიკისთვის იყო ახალი სქემების ჩართვა Arduino- ს ან Raspberry PI- ს გამოყენებით, ამიტომ 5V აუცილებელი იყო როგორც USB სოკეტები. განათებული ჩამრთველები მეუბნებიან დენი ჩართულია თუ არა და ტესტირებისას რეგულარულად მიწევს პატარა დამხმარე სქემების აგება სტატუსის დროებითი ჩვენებისთვის. მე მაქვს მოცულობითი მეტრიანი ყუთი, რომელიც ბევრ სკამს ხარჯავს და რაც მთავარია, მე მჭირდება ეკრანი, რომელსაც ადვილად ვკითხულობ, რადგან მხედველობა დამიქვეითდება, რაღაც დიდი ნათელი სიმბოლოებით. ასე რომ, მე მჭირდება ციფრული დისპლეი, ძაბვის მრიცხველები, დენის მრიცხველები და ამ შემთხვევაში ცოტა ფუფუნება წინააღმდეგობის მრიცხველის სახით, რათა სწრაფად გამოვყოთ E24 სერიის რეზისტორები, ყველაფერი პროექტის დაფაზე 15 სმ მანძილზე და კომპაქტურ, პორტატულ შემთხვევაში.
მთავარი პსუ, აღწერილი წინა სტატიაში, უზრუნველყოფს სახურავს 40 გრადუსიანი ლენტიანი კაბელის გამოყენებით, რაც შესაძლებელს ხდის ორს დაუკავშირდეს სახურავის დახურვისას. ეს უზრუნველყოფს გადართულ 5 ვ და 12 ვ მარაგს პანელის ელექტრონიკისთვის და პურის დაფის მიწოდებისთვის.
ენერგიისა და სიგნალის ყველა შეყვანა უზრუნველყოფილია 2x8way PCB სათაურის ბუდეებით, პარალელურად 8-გზის დუპონტის სოკეტით. ეს, ალბათ, გადაჭარბებულია, უმეტესობა დაფაზე აქვს დენის რელსები, მაგრამ ამის გაკეთება ადვილი იყო.
დენის სოკეტებზე, კვების ბლოკის მთავარი 0V სარკინიგზო არის საერთო ყველა წყაროსთვის და ხელმისაწვდომია. ამის ზემოთ არის 5V კვების ბლოკი, ჩართულია საბაზო ერთეულზე და ზემოთ არის ორი მოწოდებული +12V და -12V წყაროები, რომლებიც ამჟამად დაფიქსირებულია, თუმცა მე მაქვს იდეა გავტეხო მიწოდება ცვალებადი და უზრუნველყოს 3.3-20V ცვლადი მიწოდება.
ნაბიჯი 2: ელექტრონიკა



მე გამოვაქვეყნე პურის დაფის განლაგების ეკრანის ანაბეჭდები, როგორ გამოიყურება წრე მატრიცის დაფაზე აგებული, სქემატური როგორც PDF და ორიგინალური Fritzing ფაილები. ეს არ არის განსაკუთრებით რთული ელექტრონიკა და არის დამონტაჟებული შემზღუდველი რეზისტორების, ბუფერული გამაძლიერებლებისა და Arduino დაფისთვის დამაკავშირებელი კავშირების დასაყენებლად. მაგრამ არის რამოდენიმე სურათი, რომლითაც ბევრი კავშირი უფრო ნათლად ჩანს. გაყვანილობის უმეტესი ნაწილი შედგენილი იყო წინასწარ შეკუმშული დუპონტის ლენტის კაბელის სტანდარტული სიგრძისაგან, რომელიც ხელახლა იყო აწყობილი მრავალსართულიან კორპუსებში, რათა მათი ხელახლა შერთვა უფრო საიმედო ყოფილიყო.
Arduino Mega 2650 დამონტაჟებულია სახურავზე, USB სოკეტით, რომელიც ხელმისაწვდომია პროგრამირებისთვის. ის მართავს TFT სენსორულ ეკრანს, რომელიც გამოიყენება ყველა გამოსასვლელისა და შეყვანის საჩვენებლად.
8 ციფრული შეყვანა ხელმისაწვდომია 2 x 8 გზა PCB სათაურით და მათი სტატუსი ნაჩვენებია ეკრანზე, თუ ეს ფუნქცია არჩეულია. ეს არის მარტივი ჩართვის/გამორთვის ჩვენება, წითელი გამორთული, მწვანე ჩართული. მე შემიძლია დავამატო რხევა, როგორც მომავალი ცვლილება.
4 ძაბვის შეყვანა ასევე ხელმისაწვდომია PCB სათაურის საშუალებით და ძაბვის გამყოფი, ძაბვა ეკრანზე ნაჩვენები. თითოეული შეყვანის ძაბვა წინა პანელზე, საერთო ნიადაგის მითითებით, გადადის გაყოფაზე 7 ძაბვის გამყოფზე და შემდეგ ბუფერირდება ოთხივე ამპერის ერთ-ერთი TL074 კონფიგურაციით, როგორც კონფიგურაცია გამაძლიერებელი, მხოლოდ უარყოფითი ძაბვის ავარიების თავიდან ასაცილებლად. რა კარგი იქნება პოლარობის მითითების დამატება რაღაც ეტაპზე, მაგრამ არა ამჯერად. თითოეული op-amp– დან გამომავალი არის Arduino– ს ერთ – ერთი ADC შესასვლელი.
PCB– ის შემდგომი სათაური ასახავს როგორც სერიულ, ასევე I2C კავშირებს. ეს გაკეთდა იმისთვის, რომ დაუშვას სერიული ჩვენების კონსოლი და ძირითადი I2C იდენტიფიკაციის ფუნქცია.
ძაბვის/ციფრული შეყვანა შეიძლება აღმოჩნდეს, რომ არ არის ყველა საჭირო, ამიტომ შესაძლებელია მათი ხელახალი კონფიგურაცია ციფრული გადართვის შედეგების უზრუნველსაყოფად.
Arduino აძლიერებს წინააღმდეგობის მასივს ძაბვის გამყოფზე, რათა უზრუნველყოს წინააღმდეგობის მრიცხველის ფუნქციონირება. ამის გამომუშავება არის ბუფერული op-amp (ნახევარი TL072) სანამ არდუინო წაიკითხავს და გამოითვლება წინააღმდეგობა. ამის მიზანი არ არის წინააღმდეგობის ზუსტი გაზომვა, არამედ E24 სერიის მნიშვნელობების სწრაფად იდენტიფიცირება, თუმცა გარკვეული დაკალიბრებით ის შეიძლება გამოყენებულ იქნას როგორც ძირითადი მრიცხველი. მისი მოქმედებაა იმის დადგენა, როდესაც წინა პანელზე დამონტაჟებულ ორ ზამბარზე არის 9M9- ზე ნაკლები წინააღმდეგობა და შემდეგ შერჩევით გადართეთ 5V თითოეულ რეზისტორზე გამყოფი მასივში, სანამ არ გაიზომება 2.5V– მდე უახლოესი მნიშვნელობა ან არ შეირჩევა ბოლო რეზისტორი, a შემდეგ ხდება გამოთვლა და შედარება E24 მნიშვნელობის უახლოეს დასადგენად. 5V არის წყარო Arduino– ს ციფრული ამონაწერიდან 3–10, რომელიც ხელახლა არის კონფიგურირებული, როგორც მაღალი წინაღობის შეყვანა თითოეულ გაზომვას შორის, შეცდომების შესამცირებლად. Arduino ქინძისთავები D3-10 მიზანმიმართულად იქნა გამოყენებული, როგორც მომავალი დამატება, რომელიც შეიძლება იყოს მოცულობის მრიცხველი ამ შედეგების PWM შესაძლებლობების გამოყენებით, რაც შეიძლება იყოს მხოლოდ პროგრამული უზრუნველყოფის ცვლილება.
მოდიფიცირებული INA3221 დაფა უზრუნველყოფს დამატებით ძაბვისა და დენის გაზომვებს I2C ინტერფეისის საშუალებით წინა პანელიდან. ყველაფერი მიერთებულია ჯუმბერის კაბელების გამოყენებით ისე, რომ მომავალში ფუნქციების გადანაწილება ადვილი იქნება.
ნაბიჯი 3: INA3221 ძაბვა/მიმდინარე შეყვანა

ეს იყო გამიზნული, როგორც სწრაფი დაფიქსირება ძაბვის/დენის გაზომვისთვის ყუთში, მაგრამ აღმოჩნდა, რომ როგორც შევიძინე დაფაზე, ის გამიზნული იყო ბატარეის დატენვის მონიტორინგისთვის, ასე რომ ის უნდა შეიცვალოს სამი დამოუკიდებელი გაზომვის უზრუნველსაყოფად. თუ ამ პროექტის შექმნისას შეგიძლიათ მიიღოთ წყარო INA3221 დაფა, რომელიც ახორციელებს ამ ჩიპს მონაცემთა ცხრილის მიხედვით, მაშინ ეს არ არის აუცილებელი.
სურათის დათვალიერებისას, სამი ჭრა უნდა გაკეთდეს PCB კვალში გაზომვის რეზისტორების გამოსაყოფად. ამ სამი რეზისტორის ბალიშები ასევე უნდა მოიჭრას, რათა გამოყოს ისინი დანარჩენი PCB– დან. შემდეგ რეზისტორებს უერთდება ბალიშები, რომლებიც დამატებით მავთულხლართებს ხიდების სახით შეჰყავს. მე ვაფიქსირებ ამას, რადგან ეს არის საერთო დაფა და შეიძლება იყოს ერთადერთი ხელმისაწვდომი.
დაფის კავშირი წინა პანელიდან შემდეგ ხდება გაზომვის რეზისტორების ჯუმბერის საშუალებით.
დაფის სიმძლავრე აღებულია Arduino 5V ქინძისთავებიდან, როგორც არის მიწა, I2C კავშირებით მიდის ელექტრონული PCB.
ნაბიჯი 4: ჩვენების ეკრანი

ეს იყო eBay შესყიდვა და ხელმისაწვდომი იყო მრავალი წყაროდან და არის ILI9486 ეკრანი. აღმოვაჩინე, რომ ის საუკეთესოდ მუშაობდა დავით პრენტისის MCUFRIEND ბიბლიოთეკებით, მაგრამ გამოყენებამდე უნდა დაკალიბრდეს, რაც მხოლოდ იმას მოითხოვდა, რომ დავითის მიერ მოწოდებული ბიბლიოთეკის ერთ -ერთი მაგალითი გაშვებულიყო ეკრანთან დაკავშირებული, მიჰყევით ეკრანზე მითითებებს და ჩამოწერეთ ნაჩვენები პარამეტრები, Arduino_Workstation_v01 კოდის ფაილში ჩასმა სხვადასხვა შემთხვევაში.
ამ პროექტისათვის სენსორული ეკრანი აუცილებელია, ის ტრიალებს არ აქვს გამოყოფილი გადამრთველები და აქვს შესაძლებლობა დაამატოთ მენიუები და ფუნქციები მომავალში ბევრი გადატვირთვის გარეშე.
ნაბიჯი 5: დააკავშირეთ იგი ერთად



Arduino Mega მდებარეობს LHS- ის სახურავზე, მისი USB და დენის პორტებით, გარსაცმის გარედან. RHS– ზე Arduino– ს გვერდით არის ელექტრონიკა, რომელიც დამონტაჟებულია მატრიცის დაფაზე და ამის ზემოთ არის დამონტაჟებული INA3221 დაფა სახურავის უკანა მხარეს.
ასევე სახურავის უკანა მხარეს LHS არდუინოს ზემოთ არის საერთო სახმელეთო კავშირის დაფა, რომელსაც ყველა საფუძველი უკავშირდება.
რაც შეიძლება მეტი ლიდერი გაერთიანდა მრავალმხრივ კონექტორებში. ეს ხდის სქემების ერთმანეთთან შეერთებას ბევრად უფრო ადვილად და საიმედოდ, ხოლო მრავალმხრივ საცხოვრებელში კონექტორების ურთიერთდახმარება უზრუნველყოფს გაუმჯობესებულ წინააღმდეგობას გაფუჭებისადმი. ქვემოთ მოცემულია ამ გაერთიანებების ჩამონათვალი.
ყველა კონექტორი ლოგიკურად დაემატა, რაც ყველაზე დიდ წვდომას იძლეოდა ჩემი მოუხერხებელი თითებით, წინა პანელის კავშირები ბოლომდე დარჩა, ხოლო საბოლოო ჩვენების კავშირები სამონტაჟო ხვრელში გადის ბოლომდე. ეკრანი დაფიქსირდა ადგილზე 3D დაბეჭდილი ჩარჩოთი.
ნაბიჯი 6: კონსოლიდირებული ლიდერები

- Arduino ADC პორტებში ძაბვისა და წინააღმდეგობის შეყვანა, ხუთი ლიდერობს 20 სმ ინდივიდუალური მამრობითი კონექტორებით ერთ ბოლოში კონსოლიდირებულია ექვსგზის საცხოვრებელში, უფსკრული არდუინოს სათაურებში არსებული უფსკრულით.
- 4 გზა 10 სმ კაბელი ოთხმხრივი საცხოვრებელიდან ორ ორმხრივ კორპუსამდე, რათა დააკავშიროთ ძაბვის ქინძისთავები წინა პანელზე მიკროსქემის დაფაზე.
- 8 გზა 10 სმ კაბელი 2x4 გზა მამაკაცის სათაურიდან 8 მიმართულებით ქალი თავით
- 4 გზა 10 სმ კაბელი 4 გზა ქალი საცხოვრებელი 4 გზა ქალი საცხოვრებელი დასაკავშირებლად სერიული და I2C წინა პანელი
- 4 გზა 10 სმ კაბელი 4 გზა საცხოვრებელიდან ოთხ ერთ კონექტორზე INA3221 წინა პანელთან დასაკავშირებლად
- 4 გზა 20 სმ კაბელი, რომელიც აკავშირებს ოთხმხრივ მდედრობითი საცხოვრებელს ოთხმხრივი მამრობითი საცხოვრებლით, რათა მიიღოს Arduino– დან სერიული და I2C მიკროსქემის გამშვები პუნქტი.
- 8 გზა 10 სმ კაბელი 8 გზა ქალი საცხოვრებელი 8 გზა ქალი საცხოვრებელი მიიღოს ციფრული შეყვანის საწყისი პანელი მიკროსქემის დაფაზე.
- 8 გზა 10 სმ კაბელი 8 გზის მდედრობითი საცხოვრებლის გადასაყვანად მამრობითი სამგანზომილებიანი საცხოვრებლისკენ და ერთი 5 გზა მამრობითი საცხოვრებლის დასაკავშირებლად წინააღმდეგობის გამყოფი მიკროსქემის დაფაზე. ორი კორპუსი გამოიყენება არდუინოს დაფაზე სათაურებში არასტანდარტული უფსკრული.
- ორმხრივი 20 სმ -იანი კაბელი, რათა გადავიდეს ორმხრივი მდედრობითი საცხოვრებელი ორი მამრობითი კონექტორისთვის INA3221 კვების ბლოკზე.
- ორმხრივი 10 სმ კაბელი ორმხრივი ქალის საცხოვრებლის გადასაყვანად ორ მარტოხელა ქალის საცხოვრებელში, რათა დააკავშიროთ მესამე INA3221 მონიტორის კავშირი წინა პანელთან.
- ორმხრივი 10 სმ კაბელი, რომ გადაიყვანოს ორმხრივი ქალი საცხოვრებელი ორმხრივი ქალის საცხოვრებელში, რათა დააკავშიროს INA3221 I2C ფანატურ კავშირებთან.
ნაბიჯი 7: Arduino კოდი


ეს პროექტი დაფუძნებულია Arduino Mega 2650 – ზე იმ მარტივი მიზეზის გამო, რომ მინდოდა ბევრი I/O პორტი, რომელიც ეძღვნებოდა ამოცანებს მარტივი ფორმატით. ბიბლიოთეკები TFT სენსორული ეკრანისთვის არის ნაგულისხმევი Arduino Uno– ს მხარდაჭერისთვის და უნდა იყოს რედაქტირებული მეგას მხარდასაჭერად. ბიბლიოთეკების რედაქტირება მხარდაჭერილია ორიგინალური TFT კოდის ავტორის მიერ, მარტივია და აღწერილია შემდეგ ეტაპზე.
სენსორული ეკრანის გამოყენება არის პროექტის ამ ნაწილის საფუძველი, მაგრამ ვინაიდან ვიღაცის გამოყენება შეიძლება იყოს განსხვავებული, რაც მე გამოვიყენე, კოდი მხოლოდ აპარატურის სპეციფიკურ ფუნქციებს ათავსებს ცალკეულ რუტინაში, ასე რომ ყველა საჭირო მოდიფიკაციის იდენტიფიცირება შესაძლებელია.
კოდის სამუშაო ვერსია შედის აქ და განახლდება, მაგრამ უახლესი განახლებები იქნება github– ზე.
კოდის ძირითადი ფუნქცია ტრიალებს ეკრანის ირგვლივ, ეკრანზე თითოეულ ელემენტს აქვს ჩანაწერი ერთ მასივში, რომელიც ინახავს ელემენტის ტიპს, სადაც ეკრანზე გამოჩნდება, ფერი და დამატებითი პარამეტრები, როგორიცაა შეყვანის წყარო. ამ მასივის სკრინშოტი კომენტარებით ნაჩვენებია ზემოთ. მას ასევე აქვს ველი, რომ გააკონტროლოს გამოჩნდება თუ არა ეკრანზე. ამ მასივის რედაქტირებით შესაძლებელია ახალი ფუნქციების დამატება ან ფუნქციების ამოღება. კოდის "მარყუჟის" რუტინა გადის ამ მასივში უწყვეტად, ამუშავებს თითოეულ შესაბამის ელემენტს თანმიმდევრულად და შემდეგ იმეორებს. ამჟამად 6 განსხვავებული ელემენტია.
მენიუს ელემენტები - ეს არ აჩვენებს ინფორმაციას, მაგრამ შეხებისას ასრულებს დაკავშირებულ ქვეგანვითარებას, რომელიც იდენტიფიცირებულია ელემენტის პარამეტრებში
ციფრული ელემენტები - ეკრანზე გამოსახულია როგორც წითელი ან მწვანე ყუთი, რაც დამოკიდებულია ციფრული შეყვანის პინ -ის სტატუსზე. კონსოლის მაგალითი არის ჩართული 8 ციფრული ქინძისთავისთვის, მაგრამ ეს შეიძლება გაიზარდოს ან შემცირდეს სურვილისამებრ.
ანალოგური ელემენტები - აჩვენეთ სავარაუდო ძაბვა, რომელიც იზომება ასოცირებულ ანალოგიურ პინზე. ოთხი თავდაპირველად არის მითითებული.
ზუსტი ელემენტები - აჩვენეთ შეყვანა გარე სიზუსტის ვოლტი/მიმდინარე მეტრის მოდულიდან. მათგან მხოლოდ სამია, მაგრამ მეორე ან მესამე მოდულის დამატება შეიძლება.
წინააღმდეგობის ელემენტი - ეს არის ერთი ელემენტი, რომელიც აჩვენებს შეყვანის წინააღმდეგობის მრიცხველს.
შეხება - ეს არის ერთადერთი რუტინა, რომელიც ყოველთვის სრულდება იმის დასადგენად, შეეხო თუ არა ეკრანს და შემდეგ მიიღე გადაწყვეტილება იმის მიხედვით, თუ რა შეეხო. ანუ, თუ მენიუს ელემენტია, რას ნიშნავს ამის ჩვენება შემდეგში.
ეკრანს აქვს სამი სტატუსის რეჟიმი, ნორმალური, დიდი და სრული ეკრანი და ყველა ელემენტი ცვლის თავის მოქმედებას სტატუსის მიხედვით. სამი რეჟიმი არის შერჩეული მენიუდან ელემენტზე და მასთან დაკავშირებული მენიუს პარამეტრზე შეხებით.
ნორმალური რეჟიმი - აჩვენებს 8 ციფრულ შეყვანას, ოთხი ანალოგური ძაბვის შეყვანას, სამ ზუსტ ელემენტს, წინააღმდეგობის ელემენტს და მენიუს ოთხ ელემენტს. მენიუდან Normal- ის არჩევა ეკრანს ამ რეჟიმში აყენებს.
დიდი რეჟიმი - არჩეულია ეკრანზე რომელიმე ელემენტის შეხებით, რასაც მოყვება დიდი. არჩევისას, ეს ელემენტის ტიპი არის მხოლოდ არჩეული ტიპი და ამ ტიპის ელემენტები გადაწყობილია მთელი ეკრანის შესავსებად.
სრული ეკრანის რეჟიმი - არჩეულია ეკრანზე რომელიმე ელემენტის შეხებით, რასაც მოყვება სრული ეკრანი. არჩევისას, ეს ელემენტი არის ერთადერთი ელემენტი ნაჩვენები და გადაწყობილია მთლიანი ეკრანის შესავსებად, რაც ამ ერთეულის მაქსიმალურ ხილვადობას იძლევა.
დამატებითი ფუნქციონირების დასამატებლად საჭიროა შემდეგი რუტინების დამატება
"დახაზეთ" რუტინა, რომელსაც ეძახიან ამ ელემენტის შესახებ ინფორმაციის მისაღებად, დარეკეთ ეკრანის განახლების შესაბამის რუტინაზე და დაარეგისტრირეთ დაბრუნებული შეხების ინფორმაცია
"ლოგიკური" რუტინა, რომელიც იღებს ინფორმაციას გათამაშების რუტინიდან და იყენებს ეკრანის დრაივერის შესაბამის რუტინას, რომ განათავსოს ინფორმაცია ეკრანზე და დააბრუნოს შეხების სწორი ინფორმაცია დახატული ეკრანის არეზე
"დაყენების" რუტინა, რომელსაც უწოდებენ არდუინოს დაყენების ნაწილს
სხვა რუტინების ჩართვა შესაძლებელია, მაგრამ არ უნდა არსებობდეს ურთიერთდამოკიდებულება ელემენტის კოდს შორის, თუ ელემენტი არ არის ჩართული, მაშინ მისი კოდი არ უნდა შესრულდეს და მარტივი მრავალფუნქციური სტრუქტურა ინარჩუნებს მის მთლიანობას.
ნაბიჯი 8: არდუინოს ბიბლიოთეკების რედაქტირება


ჩვენება, რომელიც მე გამოვიყენე, მშვენივრად მუშაობს Arduino Uno– სთან და მისთვის დაწერილ ძირითად ბიბლიოთეკებთან, მაგრამ მუშაობს ნელა, როდესაც პირდაპირ გადადის Arduino Mega– ზე. ეკრანის სწორად მართვისთვის, საჭიროა გამოიყენოთ მონაცემთა ბალიშების სხვადასხვა ნაკრები და ეს გამოყენების ცვლილება უნდა დაყენდეს ბიბლიოთეკებში. ეს არის მარტივი ცვლილება და გამიზნული იყო ავტორის მიერ. სურათები ხაზს უსვამს განხორციელებულ ცვლილებებს.
ორი ფაილი ინახება MCUFRIEND_kbv / კომუნალური საქაღალდეში mcufriend_shield.h და mcufriend_special.h. საჭირო ცვლილებები არის პირველი "ფარის" სათაურის ფაილში, რათა უზრუნველყოს პირველი სტრიქონის წაკითხვა
#განსაზღვრეთ USE_SPECIAL
რათა უზრუნველყოს "სპეციალური" სათაურის ფაილის ჩატვირთვა.
სათაურის "სპეციალური" ფაილი ასევე უნდა განახლდეს, რათა უზრუნველყოს, რომ ხაზი
#განსაზღვრეთ USE_MEGA_8BIT_PROTOSHIELD
არის კომენტირებული
ეს ორი ცვლილება ნიშნავს, რომ ამ ეკრანის ჩვენების კოდი იმუშავებს Arduino Mega– ზე 20-29 ქინძისთავების ნაცვლად Uno– ზე ნაგულისხმევი 3-10 – ის ნაცვლად.
ნაბიჯი 9: ეკრანის კადრები



აქ დავდე ეკრანის სურათები, ასე რომ ადვილი მისახვედრია რას უნდა აკეთებდეს კონსოლი. შემდეგი ნაწილი ეხება კოდის ჩატვირთვას არდუინოში.
პირველ ეკრანზე ნაჩვენებია "ნორმალური" ეკრანი მენიუების ზედა ნაწილში, ძაბვის გაზომვები LHS- ზე, ძაბვისა და მიმდინარე გაზომვები RHS- ზე და ციფრული პინის სტატუსი ქვედა ნაწილში, წითელი "ყალბი/დაბალი", მწვანე "ჭეშმარიტი/მაღალი" '. საბოლოოდ ცენტრში არის წინააღმდეგობის გაზომვა.
მეორე ეკრანზე ნაჩვენებია დიდი რეჟიმში ჩართული ციფრული შეყვანა, თითოეული შეყვანა ნათლად არის ნაჩვენები.
მესამე ეკრანი აჩვენებს ძაბვის შეყვანას დიდ რეჟიმში.
ნაბიჯი 10: ჩატვირთეთ არდუინოს კოდი
კოდი თან ერთვის, მაგრამ როგორც უკვე აღვნიშნეთ, გარკვეული დროის განმავლობაში დაიდება github– ზე და აქ დაემატება ადგილი. ძირითადი კოდის ფაილი არის Arduino_Workbench_v01.ino და სხვა რუტინებია სხვადასხვა ფუნქციების უზრუნველსაყოფად.
თუ ბიბლიოთეკები კარგად არის შეცვლილი და Arduino Mega2650 დადგენილია როგორც Arduino IDE– ს სამიზნე პლატფორმა, მაშინ კოდი უნდა შედგენილი იყოს პირველად.
ბიბლიოთეკები, რომლებიც უნდა იყოს ჩატვირთული, არის Adafruit GFX და Touchscreen ბიბლიოთეკები, რომლებიც ხელმისაწვდომი უნდა იყოს Arduino ბიბლიოთეკის მენეჯერისგან, MCUFRIEND_kbv– ის ასლი გადმოწერილი github– დან და INA3221– ისთვის, SwitchDocLabs ბიბლიოთეკა SDL_Arduino_INA3221 ასევე გადმოწერილი github– დან google ძებნა
ნაბიჯი 11: საბოლოო შეხება




იდეა ის არის, რომ გამოვიყენოთ პროექტისათვის, ასე რომ, მოსახსნელი პანელი დამზადებულია Arduino- ს დაფებისა და ბორბლის შესაცვლელად, მთლიანად მიმაგრებულია სახურავით velcro- ით, რათა მოხდეს მათი მოხსნა და სხვადასხვა დაფების დამზადება პროექტებისა და რომ ყუთი შეიძლება გამოყენებულ იქნას სხვადასხვა პროექტებისთვის ერთდროულად.
ველოდები, რომ ეს იქნება წყარო რამდენიმე იდეისთვის, რომ შექმნას რაღაც განსხვავებული, უკეთესი ან ორივე. მე დავამატებ ჩემს მიერ ნახსენებ დამატებით ფუნქციებს და დავამატებ მათ, მაგრამ თუ ეს რაიმე სახის დახმარებას მოგცემთ, გთხოვთ აიღოთ ის, რაც გსურთ და ისიამოვნეთ. თუ რაიმე აშკარა საკითხია, გთხოვთ შემატყობინოთ.
ახლავე ვიწყებ და გამოვიყენებ მას, მაქვს რამდენიმე პროექტი სამუშაოდ!
გირჩევთ:
Raspberry Pi დისტანციური სამუშაო მაგიდა Mac– ისთვის: 11 ნაბიჯი

Raspberry Pi დისტანციური დესკტოპი Mac- ისთვის: ეს არის სახელმძღვანელო, თუ როგორ უნდა დააინსტალიროთ tightvnc, რომ გამოიყენოთ Raspberry Pi სამუშაო მაგიდა Mac- ის გამოყენებით, როდესაც Pi მუშაობს უსათაურო რეჟიმში
მოამზადეთ თქვენი სამუშაო მაგიდა: 18 ნაბიჯი

აამუშავეთ თქვენი სამუშაო მაგიდა: ასე რომ თქვენ გაქვთ სამუშაო მაგიდა და იყიდეთ ძირითადი ელექტრონიკის წვრილმანი მასალები (გამათბობელი რკინა, ფანქარი, დიაგონალური საჭრელი, შედუღება, ფითილი და სხვა). Ახლა რა? აქ არის რამოდენიმე პუნქტი, რომელიც შეიძლება ძალიან გამოსადეგი იყოს პროექტებისთვის და მიეცით თქვენს სამუშაო მაგიდას, რომ O.G
Arduino/აპლიკაციის კონტროლირებადი სამუშაო მაგიდა: 6 ნაბიჯი (სურათებით)

Arduino/აპლიკაცია კონტროლირებადი სამაგიდო შუქი: ამ პროექტისთვის მინდოდა ისეთი რამ, რაც საშუალებას მომცემდა მე უფრო მეტი მესწავლა ელექტრონიკის/პროგრამული უზრუნველყოფის შესახებ, რაც მე ჯერჯერობით ნამდვილად არ მოვსულვარ .. მე გადავწყვიტე, რომ სინათლე იქნებოდა ამის კარგი პლატფორმა. დიზაინი, რომელიც მე მივიღე, იყო გამნათებლისთვის
აჩვენეთ სამუშაო მაგიდა Mac Osx– ში (aka დამალვა ყველა): 3 ნაბიჯი

აჩვენეთ დესკტოპი Mac Osx– ში (aka დამალვა ყველა): მას შემდეგ რაც მე მივიღე mac გამოტოვებული მაქვს Windows– ის „დესკტოპის ჩვენების“ფუნქციონირება კლავიატურის მალსახმობით: windows key+D. F11 უბრალოდ არ წყვეტს მას, ქმნის არეულ საზღვრებს ეკრანის პირას. ეს არის ჩემი მიზანი: ყველა ფანჯრის დამალვა
როგორ გახადოთ თქვენი GNOME სამუშაო მაგიდა უფრო მაგარი: 5 ნაბიჯი

როგორ გახადოთ თქვენი GNOME დესკტოპი უფრო მაგარი: ეს არის ჩემი პირველი ინსტრუქცია, ასე რომ გთხოვთ იყავით კეთილი. GNOME უკვე ძალიან მაგარია და აქვს შესანიშნავი თვისებები, მაგრამ შესაძლებელია კიდევ რამდენიმე მაგარი მეტ -ნაკლებად სასარგებლო ფუნქციის დამატება. მინდა გაჩვენოთ როგორ შეგიძლიათ: 1. გამოიყენეთ Nautilus Actions ისეთი ქმედებების დასამატებლად, როგორიცაა