Სარჩევი:

5V LCD დისპლეი Arduino Due 3.3V I2C: 5 ნაბიჯი
5V LCD დისპლეი Arduino Due 3.3V I2C: 5 ნაბიჯი

ვიდეო: 5V LCD დისპლეი Arduino Due 3.3V I2C: 5 ნაბიჯი

ვიდეო: 5V LCD დისპლეი Arduino Due 3.3V I2C: 5 ნაბიჯი
ვიდეო: Lesson 07: Getting Additional 5V and GND from Arduino 2024, ნოემბერი
Anonim
5V LCD დისპლეი Arduino Due 3.3V I2C
5V LCD დისპლეი Arduino Due 3.3V I2C

ეს პოსტი მიზნად ისახავს 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: საბოლოო მოსაზრებები

ვიმედოვნებ, რომ ეს გაკვეთილი ნათელს ჰფენს ამ თავსებადობის საკითხს და მის შესაძლო გადაწყვეტილებებს.

თუ თქვენ გაქვთ რაიმე გაუმჯობესების იდეა, უკეთესი ახსნა, ახალი გადაწყვეტილებები, ან პოსტში რაიმე შეცდომა იპოვეთ, გთხოვთ მითხრათ კომენტარებში!:)

გირჩევთ: