Სარჩევი:
- მარაგები
- ნაბიჯი 1: გადაწყვეტის წარმოშობა
- ნაბიჯი 2: ახსნა
- ნაბიჯი 3: იდენტიფიცირება და ამოღება რეზისტორების
- ნაბიჯი 4: შედარება გადაწყვეტილებებს შორის
- ნაბიჯი 5: საბოლოო მოსაზრებები
ვიდეო: 5V LCD დისპლეი Arduino Due 3.3V I2C: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:15
ეს პოსტი მიზნად ისახავს Arduino Due- ს (ან სხვა 3.3V დაფის) გამოყენების უფრო მარტივ გზას, პოპულარული LCD 16x2 დისპლეით I2C ადაპტერის მოდულით.
პირველადი პრობლემა ის არის, რომ LCD– ს სჭირდება 5V, რომ მისი განათება სწორად იმუშაოს, მაგრამ SCL და SDA ქინძისთავები უნდა მუშაობდეს 3.3V– ზე, რათა დაუკავშირდეს Arduino Due– ს ზიანის გარეშე. ამის გადასაჭრელად, მე ვიპოვე ორი ვარიანტი:
ყველაზე ნახსენები გამოსავალია გამოიყენოთ ორმხრივი ლოგიკური დონის კონვერტორი, რომელიც მართლაც გადაჭრის პრობლემას. მაგრამ ის ასევე დაამატებს კიდევ ერთ კომპონენტს თქვენს სიას და დამატებით გაყვანილობას თქვენს წრეზე
სხვა გზა მე აღმოვაჩინე არის უბრალოდ desolder 2 pullup რეზისტორების "I2C ადაპტერი backpack" საწყისი LCD. გარდა იმისა, რომ ბევრად უფრო ადვილია, მას აქვს სხვა უპირატესობები, რომლებიც განმარტებულია შედარებით ბოლოს. ეს მეთოდი არის ამ პოსტის მთავარი ყურადღება
მარაგები
არდუინო დუე
LCD 16x2 ჩვენება I2C ადაპტერის მოდულით
გასაყიდი რკინა
შედუღების ტუმბო ან შედუღების ფითილი
პინცეტი
ნაბიჯი 1: გადაწყვეტის წარმოშობა
გამოსავალი ჩემ მიერ არ არის გამოგონილი, მე ვნახე საკმაოდ კარგი წინადადება და ახსნა არდუინოს ფორუმზე ქვემოთ მოცემულ ბმულზე, რომელსაც ამ პოსტში განვახორციელებ.
forum.arduino.cc/index.php?topic=553725.0.0
პასუხი: david_prentice- ისგან
ინტერნეტში ვერ ვიპოვე სრული გაკვეთილი და, რადგან ეს ძალიან გავრცელებული პრობლემაა, ვცდილობ აქ დეტალურად წარმოვადგინო გამოსავალი, ვნახო რომ ის რეალურად მუშაობს და დავამატო ინფორმაცია, რამაც შეიძლება შეამციროს სკეპტიციზმი მის შედეგებთან დაკავშირებით.
ნაბიჯი 2: ახსნა
მოწყობილობები
იმისათვის, რომ I2C კომუნიკაციამ იმუშაოს, ის მოითხოვს გამყვანი რეზისტორებს, რომლებიც დაკავშირებულია SDA და SCL ქინძისთავებთან. ეს იმიტომ ხდება, რომ მოწყობილობები კომუნიკაციის დროს ამ პინებს მხოლოდ დაბალ რეჟიმში აქცევს. HIGH- ის წარმოსადგენად, მას მხოლოდ LOW არ უნდა გამოეგზავნოს, ხოლო pullups- ის წყალობით ის მიდის HIGH- ზე. (ეს გაგება იქნება საკმაოდ მნიშვნელოვანი მოგვიანებით)
LCD "I2C ზურგჩანთა" აქვს ორი 4K7 გამყვანი რეზისტორი, რომელიც ემსახურება I2C მოთხოვნას. მაგრამ ვინაიდან ისინი დაკავშირებულია Vcc– სთან, თუ იყენებთ 5 V– ს, ისინი SDA და SCL– ს გაიყვანენ 5 V– მდე.
თუ გადახედავთ მონაცემთა ფურცელს, ხედავთ, რომ სხვა დაფებისგან განსხვავებით, Due– ს უკვე აქვს 1K5 გამყვანი რეზისტორები მის მთავარ SDA– ს, SCL ქინძისთავებზე, რომელიც მათ უწევს 3.3 ვ-მდე.
ტესტები
- ეკრანის ჩვენება -> Arduino
- Gnd -> Gnd
- Vcc -> 5V
- SDA -> SDA
- SCL -> SCL
თუ თქვენ უბრალოდ აერთებთ LCD– ს იმის გამო (ზემოთ გაყვანილობის შემდეგ), 1k5 (ან 1k0) due pullups დაკავშირებული 3.3V და 4K7 LCD pullups დაკავშირებული 5 V გამოიწვევს უმოქმედო I2C ხაზებს 3.7 V (3.6 V) 1k0– ით). ეს არ არის კარგი, ვინაიდან Due მონაცემთა ფურცელი ადგენს მაქსიმალურ ძაბვას 3.6 V მის I/O ხაზებზე.
ამ სცენარის შესამოწმებლად, მხოლოდ LCD– ით, მივიღე 3, 56 ვ. EEPROM მოდულის დამატებით იმავე SDA და SCL– ში, იგი გაიზარდა 3.606 ვ – მდე. ორივე შემთხვევაში ყველაფერი ნორმალურად მუშაობდა, მაგრამ ეს შორს არის იდეალური ძაბვისგან დონეები გათვალისწინებული 3.6 V განსაზღვრული მაქსიმალური.
ასე რომ, დიახ, არსებობს შანსი, რომ ის იმუშაოს ისევე, როგორც ჩემმა, როდესაც არ ვცვლი რაიმე ცვლილებას. მაგრამ ძაბვის დონე ჯერ კიდევ შორსაა იდეალურიდან და Due ან LCD- ის გაყვანის ზოგიერთმა შეუსაბამობამ შეიძლება გამოიწვიოს მისი 3.6 V ლიმიტზე მაღლა დაწევა. (მიზანშეწონილი იქნება მინიმუმ 20K ან 100K პოტენომეტრით ფრთხილად შემოწმება, თუ რა არის ყველაზე დაბალი წინააღმდეგობა 5 V და SCL/SDA ქინძისთავებს შორის 3.6 V- მდე, თუმცა დანარჩენი ხსნარი გაცილებით უსაფრთხო და ალბათ ადვილია)
გადაწყვეტა
წარმოდგენილი გამოსავალი არის უბრალოდ ამოიღოთ გამწევი რეზისტორები LCD ზურგჩანთიდან, რომლებიც ცდილობენ გაიყვანონ ხაზი 5 ვ-მდე, შემდეგ კი დარჩება მხოლოდ Due საბორტო გამწევ რეზისტორები, რომლებიც გაიყვანს SCL და SDA ხაზებს 3.3 ვ-მდე რა ის მშვენივრად მუშაობდა, ინარჩუნებდა უსაქმურ ქინძისთავებს დაახლოებით 3.262 ვ!
კავშირები უცვლელი რჩება:
- LCD ეკრანი -> Arduino
- Gnd -> Gnd
- Vcc -> 5V
- SDA -> SDA
- SCL -> SCL
თუ გაინტერესებთ, თუ LCD არ გაიყვანს ხაზს 5 ვ -მდე, რომ წარმოადგინოს მაღალი კომუნიკაციისას, გახსოვდეთ, რომ I2C– ზე მოწყობილობები მხოლოდ ქვევით ხაზებს იზიდავს, ეს არის მაღალი სიგნალი, რომელიც წარმოდგენილია ჩარევისას, რომელიც იქნება 3.3 V due- ს საბორტო აზიდვები.
ასევე, 3.3 V საკმარისია I2C ზურგჩანთა განიხილოს როგორც მაღალი სიგნალი.
ნაბიჯი 3: იდენტიფიცირება და ამოღება რეზისტორების
ზემოთ მოყვანილი სურათი წითლად აჩვენებს გამწევ რეზისტორებს, რომლებიც მე ვიპოვე ჩემს მოდულში.
იდენტიფიცირება
რადგან LCD I2C ადაპტერის ზურგჩანთა შეიძლება განსხვავდებოდეს, რეზისტორები შეიძლება არ იყოს ერთნაირ კონფიგურაციაში. გამყვანი რეზისტორების დასადგენად, შეგიძლიათ გამოიყენოთ მულტიმეტრი უწყვეტობის ტესტით. თითოეულ გამწევ რეზისტორს უნდა ჰქონდეს ერთი ბოლო დაკავშირებული SCL ან SDA პინთან და მეორე ბოლო Vcc– თან.
ჩემს შემთხვევაში, დაფაზე იყო 4K7 (SMD კოდში 472) სამი რეზისტორი. მხოლოდ ორმა მათგანმა დააკმაყოფილა ზემოთ მოყვანილი მოთხოვნები და აღნიშნა, რომ ეს არის ის პულპები, რომელსაც ჩვენ ვეძებდით!
დამატებითი სიფრთხილისთვის (თუ რაიმე მიზეზით ისინი არ იყვნენ 4K7), მე ასევე გამოვცადე სხვა რეზისტორები და დავამტკიცე, რომ არცერთი მათგანი არ აკმაყოფილებს გაყვანის მოთხოვნებს.
ამოღება
ახლა, ყველაფერი რაც თქვენ უნდა გააკეთოთ, არის მათი გამყინვარება! ეს უფრო ადვილია, თუ თქვენ გაქვთ soldering ტუმბო ან soldering wick და tweezers დასახმარებლად.
ნაბიჯი 4: შედარება გადაწყვეტილებებს შორის
ორმხრივი ლოგიკური დონის კონვერტორი (შპს)
Დადებითი:
არ საჭიროებს შედუღების მოწყობილობას ან უნარს
მინუსები:
რეკლამას უკეთებს კაბელებსა და შპს -ს თქვენი სიის კომპონენტების სიაში
მესიეს კავშირები დამატებით კომპონენტებთან
ოდნავ უფრო ძვირი
მოათავსეთ LCD გამწევ რეზისტორები
Დადებითი:
სუფთა საბოლოო შედეგი
თქვენ ალბათ ამის გაკეთება შეგიძლიათ დაუყოვნებლივ, არ უნდა დაელოდოთ შპს -ს
განსაკუთრებით კარგია, თუ გსურთ შეამციროთ კომპონენტების მრავალფეროვნება და შეკრების სირთულე რთულ პროექტში, ან რომლის გამეორება გსურთ
მინუსები:
ცვლის LCD მიკროსქემს (თუ გსურთ ის "გამოსაყენებლად" Uno– სთან ერთად, უკვე აქვს 4K7 გამყვანი, შეგიძლიათ გააუქმოთ მათი გადაყიდვის ცვლილებები)
ნაბიჯი 5: საბოლოო მოსაზრებები
ვიმედოვნებ, რომ ეს გაკვეთილი ნათელს ჰფენს ამ თავსებადობის საკითხს და მის შესაძლო გადაწყვეტილებებს.
თუ თქვენ გაქვთ რაიმე გაუმჯობესების იდეა, უკეთესი ახსნა, ახალი გადაწყვეტილებები, ან პოსტში რაიმე შეცდომა იპოვეთ, გთხოვთ მითხრათ კომენტარებში!:)
გირჩევთ:
ESP32 და ST7789 135x240 LCD დისპლეი: 3 ნაბიჯი
ESP32 და ST7789 135x240 LCD ეკრანი: როგორ შევაერთოთ ST7789 დისპლეი ESP32 დაფაზე. მე ექსპერიმენტი გავაკეთე სხვა ეკრანებზე და ეს ერთგვარი ძნელი გასაგები აღმოჩნდა. იმედია ეს გაყვანილობის დიაგრამა და კოდი დაეხმარება სხვებს
HX1 -DM - Upcycled Arduino DUE Powered DIY Drum Machine (დამზადებულია Dead Maschine MK2– ით): 4 ნაბიჯი
HX1 -DM - Upcycled Arduino DUE Powered DIY Drum Machine (დამზადებულია მკვდარი მანქანით MK2): სპეციფიკაცია. ჰიბრიდული Midi კონტროლერი / დრამის მანქანა: Arduino DUE იკვებება! 16 სიჩქარის მგრძნობიარე ბალიშები ძალიან დაბალი შეფერხებით 1 > ms 8 ღილაკით, რომელიც მომხმარებელს ენიჭება ნებისმიერი Midi #CC ბრძანებისთვის 16ch ჩამონტაჟებული მიმდევრი (არ საჭიროებს კომპიუტერს !!) MIDI in/out/thru functio
I2C / IIC LCD ეკრანი - გამოიყენეთ SPI LCD I2C LCD ეკრანზე SPI to IIC მოდულის გამოყენებით Arduino– ით: 5 ნაბიჯი
I2C / IIC LCD ეკრანი | გამოიყენეთ SPI LCD I2C LCD ეკრანზე SPI to IIC მოდულის გამოყენებით Arduino: გამარჯობა ბიჭებო, რადგან ჩვეულებრივ SPI LCD 1602 -ს აქვს ძალიან ბევრი მავთული დასაკავშირებლად, ამიტომ არდუინოსთან დაკავშირება ძალიან რთულია, მაგრამ არსებობს ერთი მოდული ბაზარზე, რომელსაც შეუძლია გადააკეთეთ SPI დისპლეი IIC ეკრანად, ასე რომ თქვენ გჭირდებათ მხოლოდ 4 მავთულის დაკავშირება
I2C / IIC LCD ეკრანი - გადააკეთეთ SPI LCD I2C LCD ეკრანზე: 5 ნაბიჯი
I2C / IIC LCD ეკრანი | გადააკეთეთ SPI LCD I2C LCD ეკრანზე: spi LCD ეკრანის გამოყენებას ძალიან ბევრი კავშირი სჭირდება, რის გაკეთებაც ძნელია, ასე რომ ვიპოვე მოდული, რომელსაც შეუძლია i2c LCD– ის spi LCD– ზე გადაყვანა, ასე რომ დავიწყოთ
პერსონაჟის LCD I2c ადაპტერი (I2c კავშირის მაგალითი): 12 ნაბიჯი (სურათებით)
ხასიათი LCD I2c ადაპტერი (I2c კავშირის მაგალითი): მე ვაკეთებ კავშირის სქემას პერსონაჟის ჩვენების i2c ადაპტერისთვის. შეამოწმეთ განახლებები ჩემს საიტზე. ახლა მე დავამატებ ასევე გაყვანილობის კავშირის სქემას, რომ გამოვიყენო ორიგინალური ბიბლიოთეკა და არა ჩემი ჩანგალი. LiquidCrystal Arduino ბიბლიოთეკა პერსონაჟებისათვის LCD მონიტორები, ჩანგალი პროექტი