Სარჩევი:

MicroPython პროგრამა: აჩვენეთ წრის ზომა: 9 ნაბიჯი
MicroPython პროგრამა: აჩვენეთ წრის ზომა: 9 ნაბიჯი

ვიდეო: MicroPython პროგრამა: აჩვენეთ წრის ზომა: 9 ნაბიჯი

ვიდეო: MicroPython პროგრამა: აჩვენეთ წრის ზომა: 9 ნაბიჯი
ვიდეო: Using Heltec ESP32 OLED Wifi Kit 2024, ნოემბერი
Anonim

ეს ექსპერიმენტი იყენებს MakePython ESP8266 მოდულს, რომელიც საშუალებას გვაძლევს ვისწავლოთ MicroPython პროგრამირება ESP8266– ზე. ექსპერიმენტი აკონტროლებდა ეკრანის წრის ზომას პოტენომეტრის ბრუნვით. ამ პროცესში ჩვენ შევისწავლით ADC, SSD1306 OLED ეკრანის და uPyCraft IDE გამოყენების შესახებ.

ნაბიჯი 1: ADC და I2C შესახებ

ADC და I2C შესახებ
ADC და I2C შესახებ

ADC: ADC არის ანალოგური/ციფრული გადამყვანი, რომელიც ანალოგურ სიგნალებს ციფრულად გარდაქმნის. წინა კონტროლის LED- ში, PWM შიგნით, ჩვენ ვიცით განსხვავება ციფრულ სიგნალსა და ანალოგურ სიგნალს შორის. სიგნალები, რომელსაც ჩვენ ვიყენებთ ყოველდღიურ ცხოვრებაში, როგორიცაა სინათლის ინტენსივობა, ხმის ტალღები და ბატარეის ძაბვები, ყველა ანალოგიურია. თუ ჩვენ გვინდა გავზომოთ ანალოგური სიგნალი (ძაბვა, სინათლის ინტენსივობა, ხმის ტალღა) ერთი ჩიპიანი მიკროკომპიუტერის საშუალებით და გამოვხატოთ იგი ციფრული სიგნალით, მაშინ ჩვენ გვჭირდება ADC ანალოგური ციფრული სიგნალის გადამყვანი

I2C კომუნიკაცია: I2C ფართოდ გამოიყენება კონტროლერის კომუნიკაციისთვის ბორტ კომპონენტებთან, როგორიცაა სენსორები/ ეკრანები. მონაცემთა გადაცემა შეიძლება დასრულდეს მხოლოდ ორი სიგნალის ხაზით, შესაბამისად საათის ხაზით SCL და სიგნალის ხაზით SDA. I2C ხაზზე არის მხოლოდ ერთი ძირითადი მოწყობილობის Master და რამდენიმე Slave მოწყობილობა. იმის უზრუნველსაყოფად, რომ ორივე ავტობუსი იყოს მაღალ დონეზე უმოქმედოდ, SDA და SCL უნდა იყოს დაკავშირებული გამწევ რეზისტორთან. გაყვანის რეზისტორის კლასიკური მნიშვნელობაა 10K.

ნაბიჯი 2: მარაგი

მარაგები
მარაგები

აპარატურა:

  • MakePython ESP8266
  • პოტენომეტრი
  • პურის დაფა
  • გადასვლის ხაზი
  • USB კაბელი

MakePython ESP8266: არსებობს ჩამონტაჟებული OLED 1.3’OLED მოდული MakePython დაფაზე, 128x64 პიქსელით … მონოქრომული ეკრანის ერთი პიქსელი არის სინათლის გამომტანი დიოდი. OLED არის "თვითგანათება", პიქსელი თავად არის სინათლის წყარო, ამიტომ კონტრასტი ძალიან მაღალია. OLED ეკრანებს აქვთ I2C და SPI საკომუნიკაციო პროტოკოლები, რომლებიც სრულიად შეუთავსებელია სხვადასხვა პროტოკოლის გამო. ჩვენს გაკვეთილზე OLED არის კონფიგურირებული I2C პროტოკოლთან თავსებადი. მოდულის შესყიდვის ბმული:

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

პროგრამული უზრუნველყოფა

uPyCraft IDE

არსებობს მრავალი კოდი და პროგრამირების მეთოდი MicroPython– ით. ამ გაკვეთილისთვის ჩვენ ვიყენებთ uPyCraft IDE- ს, რომელიც არის ყველაზე მარტივი და მარტივი გზა MicroPython– ში გადასვლის დასაწყებად.

ნაბიჯი 3: გაყვანილობა

გაყვანილობა
გაყვანილობა
გაყვანილობა
გაყვანილობა
გაყვანილობა
გაყვანილობა

ეს არის ძალიან მარტივი წრე, რომელიც მოითხოვს ძალიან ცოტა მავთულს, მხოლოდ სამს. უბრალოდ შეაერთეთ პოტენომეტრის VCC პინი MakePython ESP8266- ის 3.3 ვ -თან, ხოლო OUT პინი (შუა) A0- სთან და დაუკავშირეთ GND ერთმანეთს. OLED დისპლეი იყენებს I2C კომუნიკაციას და დაფა არის შეკრული, ასე რომ თქვენ არ ინერვიულოთ ამაზე.

ნაბიჯი 4: დააინსტალირეთ UPyCraft IDE Windows PC

UPyCraft IDE Windows კომპიუტერის დაყენება
UPyCraft IDE Windows კომპიუტერის დაყენება
UPyCraft IDE Windows კომპიუტერის დაყენება
UPyCraft IDE Windows კომპიუტერის დაყენება

დააწკაპუნეთ ამ ბმულზე, რომ ჩამოტვირთოთ uPyCraft IDE Windows- ისთვის:

randomnerdtutorials.com/uPyCraftWindows.

რამდენიმე წამის შემდეგ თქვენ უნდა ნახოთ მსგავსი ფაილი (uPyCraft_VX.exe) თქვენს ჩამოტვირთვების საქაღალდეში

ორჯერ დააწკაპუნეთ ამ ფაილზე. იხსნება ახალი ფანჯარა uPyCraft IDE პროგრამული უზრუნველყოფით.

ნაბიჯი 5: საბჭოსთან კომუნიკაციის დამყარება

საბჭოსთან კომუნიკაციის დამყარება
საბჭოსთან კომუნიკაციის დამყარება

მას შემდეგ რაც დაინსტალირეთ MicroPython firmware (MicroPython Firmware უკვე დაინსტალირებულია Makerfabs MakePython ESP8266– ის მიღებისას), დაუკავშირეთ იგი თქვენს კომპიუტერს USB კაბელის საშუალებით, მიჰყევით ნაბიჯებს:

  • გადადით ინსტრუმენტები> დაფა და შეარჩიეთ დაფა, რომელსაც იყენებთ. აირჩიეთ esp8266
  • გადადით Tools> Serial და შეარჩიეთ იმ პორტი, რომელთანაც დაკავშირებულია ESP (ჩამოტვირთეთ USB დრაივერი აქ:

www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers

დააჭირეთ დაკავშირების ღილაკს, რათა დაამყაროთ სერიული კომუნიკაცია თქვენს დაფასთან.

თქვენ დაინახავთ ">>>", რომელიც გამოჩნდება Shell ფანჯარაში, თქვენს დაფასთან წარმატებული კავშირის შემდეგ.

ნაბიჯი 6: შექმენით Main.py ფაილი თქვენს დაფაზე

შექმენით Main.py ფაილი თქვენს დაფაზე
შექმენით Main.py ფაილი თქვენს დაფაზე
შექმენით Main.py ფაილი თქვენს დაფაზე
შექმენით Main.py ფაილი თქვენს დაფაზე
  • დააჭირეთ ღილაკს "ახალი ფაილი" ახალი ფაილის შესაქმნელად.
  • დააჭირეთ ღილაკს "ფაილის შენახვა", რომ შეინახოთ ფაილი თქვენს კომპიუტერში.
  • იხსნება ახალი ფანჯარა, დაასახელეთ თქვენი ფაილი main.py და შეინახეთ თქვენს კომპიუტერში.
  • ამის შემდეგ, თქვენ უნდა ნახოთ boot.py ფაილი თქვენს მოწყობილობაში და ახალი ჩანართი main.py ფაილით.
  • დააწკაპუნეთ ღილაკზე "გადმოწერა და გაშვება", რომ ატვირთოთ ფაილი თქვენს ESP დაფაზე.
  • მოწყობილობის დირექტორია უნდა ატვირთოს main.py ფაილი. თქვენს ESP– ს აქვს ფაილი main.py შენახული.

ნაბიჯი 7: დაამატეთ მძღოლის ფაილი

ვინაიდან OLED ეკრანი იყენებს SSD1306 დრაივერის ჩიპს, ჩვენ უნდა გადმოვწეროთ SSD1306 დრაივერი. თქვენ შეგიძლიათ გადახვიდეთ GitHub ვებსაიტზე SSD1306 ბიბლიოთეკის მოსაძიებლად და გადმოსატვირთად ან დააწკაპუნოთ ჩამოტვირთოთ ჩვენი ssd1306.py დრაივერის ფაილი.

გადმოტვირთვის შემდეგ შეინახეთ ssd1306.py workSpace ფაილის დირექტორიაში. შემდეგ, დააწკაპუნეთ გახსენით ssd1306.py ფაილი და დააწკაპუნეთ გაშვებაზე და ბიბლიოთეკის ფაილი შეიძლება ჩაიტვირთოს მოწყობილობის დირექტორიაში. ამ დროს, ssd1306.py ბიბლიოთეკის ფაილი წარმატებით ჩაიტვირთა MakePython ESP8266– ში, რომელსაც შეიძლება ვუწოდოთ იმპორტის ssd1306 განცხადებით.

*შენიშვნა: პირველად როდესაც გახსნით uPyCraft IDE- ს, workSpace გზა არ არსებობს. როდესაც დააწკაპუნებთ, გამოჩნდება workSpace დიალოგური ფანჯარა. თქვენ შეგიძლიათ შექმნათ workSpace დირექტორია მომხმარებლის ფაილების შესანახად იმ დირექტორიის არჩევით, რომლის შენახვაც გსურთ.

ნაბიჯი 8: ძირითადი ფუნქცია

მთავარი ფუნქცია
მთავარი ფუნქცია
მთავარი ფუნქცია
მთავარი ფუნქცია

გრამატიკული ახსნა:

  • i2c: დააკონფიგურირეთ SCL და SDA ქინძისთავები
  • oled: შექმენით OLED ობიექტი
  • adc.read (): წაიკითხეთ ADC შერჩეული მონაცემები
  • წრე (): დახაზეთ წრის ფუნქცია, რომელიც იყენებს sqrt () ფუნქციას წრის რადიუსის გამოსათვლელად
  • math.sqrt (r): აბრუნებს რიცხვის კვადრატულ ფესვს
  • პიქსელი (x, y, c): დახაზეთ წერტილი (x, y)
  • hline (x, y, w, c): დახაზეთ ჰორიზონტალური ხაზი, დაწყებული (x, y), სიგრძე w
  • vline (x, y, w, c): დახაზეთ ვერტიკალური ხაზი, დაწყებული (x, y), w სიმაღლით
  • oled.fill (n): ცარიელი ეკრანი როდესაც n = 0 და შეავსეთ ეკრანი როდესაც n> არის 0
  • oled.show (): ჩართეთ ჩვენების ფუნქცია

თქვენ შეგიძლიათ პირდაპირ დაამატოთ ეს ფაილი ან დააკოპიროთ მისი შინაარსი ახლადშექმნილ მთავარ ფაილში.

ნაბიჯი 9: ექსპერიმენტული შედეგები

ექსპერიმენტული შედეგები
ექსპერიმენტული შედეგები

ჩართეთ პოტენომეტრი ნელა, საათის ისრის მიმართულებით და ეკრანზე წრე გაიზრდება უფრო დიდი, საწინააღმდეგო ისრის მიმართულებით.

გირჩევთ: