INHOUDSOPGAWE:

MicroPython -program: vertoon die grootte van die sirkel: 9 stappe
MicroPython -program: vertoon die grootte van die sirkel: 9 stappe

Video: MicroPython -program: vertoon die grootte van die sirkel: 9 stappe

Video: MicroPython -program: vertoon die grootte van die sirkel: 9 stappe
Video: Вводный урок по программированию ESP32, ESP8266 на MicroPython 2024, November
Anonim

Hierdie eksperiment gebruik die MakePython ESP8266 -module, waarmee ons MicroPython -programmering op ESP8266 kan leer. Die eksperiment het die grootte van die sirkel op die skerm beheer deur die potensiometer te draai. In die proses leer ons meer oor die gebruik van ADC, SSD1306 OLED -skerm en die uPyCraft IDE.

Stap 1: Oor ADC en I2C

Oor ADC en I2C
Oor ADC en I2C

ADC: ADC is 'n analoog/digitale omskakelaar wat analoog seine omskakel in digitaal. In die voorste bedienings -LED aan, PWM binne, ken ons die verskil tussen digitale sein en analoog sein. Die seine wat ons in die alledaagse lewe gebruik, soos ligintensiteit, klankgolwe en batteryspanning, is almal analoogwaardes. As ons die analoog sein (spanning, ligintensiteit, klankgolf) deur die enkel-chip mikrorekenaar wil meet en dit met 'n digitale sein wil uitdruk, benodig ons 'n analoog digitale analoog-omskakelaar

I2C -kommunikasie: I2C word wyd gebruik vir die beheer van kommunikasie met ingeboude komponente soos sensors/ skerms. Data -oordrag kan voltooi word deur slegs twee seinlyne, onderskeidelik kloklyn SCL en seinlyn SDA. Daar is slegs een hoofapparaat Master en verskeie Slave -toestelle op die I2C -lyn. Om te verseker dat beide busse op 'n hoë vlak is as hulle nie werk nie, moet SDA en SCL met die trekweerstand verbind word. Die klassieke waarde van die trekweerstand is 10K.

Stap 2: Voorrade

Voorrade
Voorrade

Hardeware:

  • Maak Python ESP8266
  • Potensiometer
  • Broodbord
  • Spring lyn
  • USB kabel

MakePython ESP8266: Daar is 'n ingeboude OLED 1.3 'OLED-module op MakePython-bord, met 128x64 pixel … Een pixel van 'n monochrome skerm is 'n liguitstralende diode. OLED is 'selfbeligting', die pixel self is die ligbron, dus die kontras is baie hoog. OLED -skerms het I2C- en SPI -kommunikasieprotokolle, wat as gevolg van verskillende protokolle heeltemal onversoenbaar is. In ons les is die OLED gekonfigureer om verenigbaar te wees met die I2C -protokol. Module-aankoopskakel:

Potentiometer: Potentiometer is 'n verstelbare weerstand met drie voorpunte en weerstandswaardes wat volgens 'n sekere variasiewet aangepas kan word. 'N Potensiometer bestaan gewoonlik uit 'n weerstandsliggaam en 'n beweegbare kwas. As die kwas langs die weerstandsliggaam beweeg, word die weerstandswaarde of spanning in verhouding tot die verplasing aan die uitgangspunt verkry.

Sagteware:

uPyCraft IDE

Daar is baie kodes en programmeermetodes met MicroPython. Vir hierdie tutoriaal gebruik ons uPyCraft IDE, wat die eenvoudigste en maklikste manier is om na MicroPython te spring.

Stap 3: Bedrading

Bedrading
Bedrading
Bedrading
Bedrading
Bedrading
Bedrading

Dit is 'n baie eenvoudige stroombaan wat baie min drade benodig, slegs drie. Koppel net die VCC -pen van die potensiometer aan 3.3v van MakePython ESP8266, en die OUT -pen (middel) aan A0, en koppel die GND aan mekaar. Die OLED -skerm gebruik I2C -kommunikasie en die bord is bedraad, sodat u nie daaroor hoef te bekommer nie.

Stap 4: Installeer UPyCraft IDE Windows PC

Installeer UPyCraft IDE Windows PC
Installeer UPyCraft IDE Windows PC
Installeer UPyCraft IDE Windows PC
Installeer UPyCraft IDE Windows PC

Klik op hierdie skakel om uPyCraft IDE vir Windows af te laai:

randomnerdtutorials.com/uPyCraftWindows.

Na 'n paar sekondes moet u 'n soortgelyke lêer (uPyCraft_VX.exe) in u gids Downloads sien

Dubbelklik op die lêer. 'N Nuwe venster word oopgemaak met die uPyCraft IDE -sagteware.

Stap 5: Die vestiging van 'n kommunikasie met die raad

Die vestiging van 'n kommunikasie met die raad
Die vestiging van 'n kommunikasie met die raad

Nadat u die MicroPython -firmware geïnstalleer het (MicroPython -firmware reeds geïnstalleer wanneer u Makerfabs MakePython ESP8266 kry), moet u dit via 'n USB -kabel aan u rekenaar koppel:

  • Gaan na Tools> Board en kies die bord wat u gebruik. Kies die esp8266
  • Gaan na Tools> Serial en kies die com -poort waarmee u ESP gekoppel is (laai die USB -bestuurder af by:

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

Druk die Connect -knoppie om 'n seriële kommunikasie met u kaart te bewerkstellig.

U sal '>>>' in die Shell -venster verskyn na 'n suksesvolle verbinding met u bord.

Stap 6: Skep die Main.py -lêer op u bord

Die skep van die Main.py -lêer op u bord
Die skep van die Main.py -lêer op u bord
Die skep van die Main.py -lêer op u bord
Die skep van die Main.py -lêer op u bord
  • Druk die knoppie "Nuwe lêer" om 'n nuwe lêer te skep.
  • Druk die knoppie "Stoor lêer" om die lêer op u rekenaar te stoor.
  • 'N Nuwe venster word oopgemaak, noem die lêer main.py en stoor dit op u rekenaar.
  • Daarna moet u die boot.py -lêer op u toestel sien en 'n nuwe oortjie met die main.py -lêer.
  • Klik op die knoppie "Laai af en hardloop" om die lêer na u ESP -bord op te laai.
  • Die apparaatgids moet nou die main.py -lêer laai. Die lêer main.py is gestoor in u ESP.

Stap 7: Voeg bestuurderlêer by

Aangesien die OLED -skerm die SSD1306 -bestuurderskyfie gebruik, moet ons die bestuurder van SSD1306 aflaai. U kan na die GitHub -webwerf gaan om die biblioteek van SSD1306 te soek en af te laai, of klik om ons ssd1306.py -bestuurderlêer af te laai.

Stoor ssd1306.py na die aflaai in die lêergids van die workSpace. Klik dan op die ssd1306.py -lêer en klik op run, en die biblioteeklêer kan in die apparaatgids gelaai word. Op die oomblik is die biblioteeklêer van ssd1306.py suksesvol in MakePython ESP8266 gelaai, wat met die invoer ssd1306 -verklaring genoem kan word.

*let wel: die werkSpace -pad bestaan nie die eerste keer dat u die uPyCraft IDE oopmaak nie. As u klik, verskyn die dialoogkassie werkruimte. U kan 'n workSpace -gids skep om die lêers van die gebruiker te stoor deur die gids te kies wat u wil stoor.

Stap 8: Die hooffunksie

Die hooffunksie
Die hooffunksie
Die hooffunksie
Die hooffunksie

Grammatika verduideliking:

  • i2c: stel die SCL- en SDA -penne op
  • oled: skep OLED -voorwerp
  • adc.read (): Lees ADC -steekproefdata
  • sirkel (): pasgemaakte teken sirkelfunksie wat die funksie sqrt () GEBRUIK om die radius van die sirkel te bereken
  • math.sqrt (r): Wys die vierkantswortel van die getal
  • pixel (x, y, c): Trek die punt by (x, y)
  • hline (x, y, w, c): Trek 'n horisontale lyn, begin met (x, y), lengte w
  • vline (x, y, w, c): Trek 'n vertikale lyn, begin by (x, y), met 'n hoogte van w
  • oled.fill (n): Maak die skerm leeg wanneer n = 0, en vul die skerm wanneer n> 0 is
  • oled.show (): Skakel die vertoningsfunksie aan

U kan hierdie lêer direk byvoeg of die inhoud daarvan na die nuutgeskepte hooflêer kopieer.

Stap 9: Die eksperimentele resultate

Die eksperimentele resultate
Die eksperimentele resultate

Draai die potensiometer stadig, met die kloksgewys, en die sirkel op die skerm word groter, teen die kloksgewys kleiner.

Aanbeveel: