Innholdsfortegnelse:

MicroPython -program: Vis størrelsen på sirkelen: 9 trinn
MicroPython -program: Vis størrelsen på sirkelen: 9 trinn

Video: MicroPython -program: Vis størrelsen på sirkelen: 9 trinn

Video: MicroPython -program: Vis størrelsen på sirkelen: 9 trinn
Video: Réalisation de feux tricolores avec la Raspberry pi Pico et micropython 2024, November
Anonim

Dette eksperimentet bruker MakePython ESP8266 -modulen, som lar oss lære MicroPython -programmering på ESP8266. Eksperimentet kontrollerte størrelsen på sirkelen på skjermen ved å rotere potensiometeret. I prosessen vil vi lære om bruk av ADC, SSD1306 OLED -skjerm og uPyCraft IDE.

Trinn 1: Om ADC og I2C

Om ADC og I2C
Om ADC og I2C

ADC: ADC er en analog/digital omformer som konverterer analoge signaler til digital. I front -kontroll -LED -en på, PWM inni, kjenner vi forskjellen mellom digitalt signal og analogt signal. Signalene vi bruker i hverdagen, for eksempel lysintensitet, lydbølger og batterispenninger, er alle analoge verdier. Hvis vi ønsker å måle det analoge signalet (spenning, lysintensitet, lydbølge) gjennom enkeltbrikke-mikrodatamaskinen og uttrykke det med et digitalt signal, trenger vi ADC analog digital signalomformer

I2C -kommunikasjon: I2C er mye brukt for kontrollerkommunikasjon med innebygde komponenter som sensorer/ skjermer. Dataoverføring kan fullføres med bare to signallinjer, henholdsvis klokkelinje SCL og signallinje SDA. Det er bare én hovedenhet Master og flere Slave -enheter på I2C -linjen. For å sikre at begge bussene er på et høyt nivå når de er inaktiv, må SDA og SCL kobles til trekkmotstanden. Den klassiske verdien av trekkmotstanden er 10K.

Trinn 2: Rekvisita

Rekvisita
Rekvisita

Maskinvare:

  • MakePython ESP8266
  • Potensiometer
  • Brødbrett
  • Hoppelinje
  • USB-kabel

MakePython ESP8266: Det er en innebygd OLED 1.3 'OLED-modul på MakePython-kortet, med 128x64 piksler … En piksel av en monokrom skjerm er en lysemitterende diode. OLED er "selvbelysning", selve pikselet er lyskilden, så kontrasten er veldig høy. OLED -skjermer har I2C og SPI kommunikasjonsprotokoller, som er helt inkompatible på grunn av forskjellige protokoller. I vår leksjon er OLED konfigurert til å være kompatibel med I2C -protokollen. Modulkjøpskobling:

Potensiometer: Potensiometer er en justerbar motstand med tre ledende ender og motstandsverdier som kan justeres i henhold til en viss variasjonslov. Et potensiometer består vanligvis av en motstandsdel og en bevegelig børste. Når børsten beveger seg langs motstandskroppen, oppnås motstandsverdien eller spenningen i forhold til forskyvningen ved utgangsenden.

Programvare:

uPyCraft IDE

Det er mange koder og programmeringsmetoder med MicroPython. For denne opplæringen bruker vi uPyCraft IDE, som er den enkleste og enkleste måten å begynne å hoppe over til MicroPython.

Trinn 3: Kabling

Kabling
Kabling
Kabling
Kabling
Kabling
Kabling

Dette er en veldig enkel krets som krever svært få ledninger, bare tre. Bare koble VCC -pinnen på potensiometeret til 3,3v av MakePython ESP8266, og OUT -pinnen (midten) til A0, og koble GND til hverandre. OLED -skjermen bruker I2C -kommunikasjon, og kortet er koblet til, slik at du ikke trenger å bekymre deg for det.

Trinn 4: Installere UPyCraft IDE Windows PC

Installere UPyCraft IDE Windows PC
Installere UPyCraft IDE Windows PC
Installere UPyCraft IDE Windows PC
Installere UPyCraft IDE Windows PC

Klikk på denne lenken for å laste ned uPyCraft IDE for Windows:

randomnerdtutorials.com/uPyCraftWindows.

Etter noen sekunder bør du se en lignende fil (uPyCraft_VX.exe) i nedlastingsmappen

Dobbeltklikk på filen. Et nytt vindu åpnes med uPyCraft IDE -programvaren.

Trinn 5: Etablere en kommunikasjon med styret

Etablering av kommunikasjon med styret
Etablering av kommunikasjon med styret

Etter at du har installert MicroPython -fastvaren (MicroPython -fastvare allerede installert når du får Makerfabs MakePython ESP8266), kobler du den til datamaskinen din via en USB -kabel, følg trinnene:

  • Gå til Verktøy> Brett og velg brettet du bruker. Velg esp8266
  • Gå til Verktøy> Seriell og velg com -porten ESP er koblet til (last ned USB -driveren på:

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

  • Trykk på Koble -knappen for å opprette seriell kommunikasjon med kortet ditt.

Du vil se ">>>" vises i Shell -vinduet etter en vellykket tilkobling med kortet ditt.

Trinn 6: Opprette Main.py -filen på brettet ditt

Opprette Main.py -filen på bordet ditt
Opprette Main.py -filen på bordet ditt
Opprette Main.py -filen på bordet ditt
Opprette Main.py -filen på bordet ditt
  • Trykk på "Ny fil" -knappen for å opprette en ny fil.
  • Trykk på "Lagre fil" -knappen for å lagre filen på datamaskinen din.
  • Et nytt vindu åpnes, navngi filen main.py og lagre den på datamaskinen.
  • Etter det bør du se boot.py -filen på enheten din og en ny fane med main.py -filen.
  • Klikk på "Last ned og kjør" -knappen for å laste opp filen til ESP -kortet.
  • Enhetskatalogen skal nå laste inn main.py -filen. ESP har filen main.py lagret.

Trinn 7: Legg til driverfil

Siden OLED -skjermen bruker SSD1306 -driverbrikken, må vi laste ned driveren til SSD1306. Du kan gå til GitHub -nettstedet for å søke og laste ned biblioteket til SSD1306 eller klikke for å laste ned vår ssd1306.py -driverfil.

Etter nedlasting lagrer du ssd1306.py i workSpace -filkatalogen. Klikk deretter på åpne ssd1306.py -filen og klikk på Kjør, og bibliotekfilen kan lastes inn i enhetsmappen. På dette tidspunktet er biblioteksfilen til ssd1306.py lastet inn i MakePython ESP8266, som kan kalles med import ssd1306 -setningen.

*Merk: Første gang du åpner uPyCraft IDE, finnes ikke banen på banen. Når du klikker, vil dialogboksen for arbeidsområdet dukke opp. Du kan opprette en workSpace -katalog for å lagre brukerens filer ved å velge katalogen du vil lagre.

Trinn 8: Hovedfunksjonen

Hovedfunksjonen
Hovedfunksjonen
Hovedfunksjonen
Hovedfunksjonen

Grammatikkforklaring:

  • i2c: konfigurer SCL- og SDA -pinnene
  • oled: lag OLED -objekt
  • adc.read (): Les ADC -samplede data
  • sirkel (): Egendefinert tegne sirkelfunksjon som bruker funksjonen sqrt () for å beregne sirkelen
  • math.sqrt (r): Returnerer kvadratroten til tallet
  • piksel (x, y, c): Tegn punktet på (x, y)
  • hline (x, y, w, c): Tegn en horisontal linje, begynnende på (x, y), lengde w
  • vline (x, y, w, c): Tegn en vertikal linje, som begynner med (x, y), med en høyde på w
  • oled.fill (n): Tøm skjermen når n = 0, og fyll skjermen når n> er 0
  • oled.show (): Slå på skjermfunksjonen

Du kan enten legge til denne filen direkte eller kopiere innholdet til den nyopprettede hovedfilen.

Trinn 9: De eksperimentelle resultatene

De eksperimentelle resultatene
De eksperimentelle resultatene

Drei potensiometeret sakte, med klokken, og sirkelen på skjermen vil vokse seg større, mindre mot klokken.

Anbefalt: