Indholdsfortegnelse:

MicroPython -program: Vis cirkelens størrelse: 9 trin
MicroPython -program: Vis cirkelens størrelse: 9 trin

Video: MicroPython -program: Vis cirkelens størrelse: 9 trin

Video: MicroPython -program: Vis cirkelens størrelse: 9 trin
Video: Réalisation de feux tricolores avec la Raspberry pi Pico et micropython 2024, November
Anonim

Dette eksperiment bruger MakePython ESP8266 -modulet, som giver os mulighed for at lære MicroPython -programmering på ESP8266. Eksperimentet kontrollerede cirklens størrelse på skærmen ved at dreje potentiometeret. I processen lærer vi om brugen af ADC, SSD1306 OLED -skærm og uPyCraft IDE.

Trin 1: Om ADC og I2C

Om ADC og I2C
Om ADC og I2C

ADC: ADC er en analog/digital konverter, der konverterer analoge signaler til digital. I den forreste kontrol -LED tændt, PWM indeni, kender vi forskellen mellem digitalt signal og analogt signal. De signaler, vi bruger i hverdagen, såsom lysintensitet, lydbølger og batterispændinger, er alle analoge værdier. Hvis vi vil måle det analoge signal (spænding, lysintensitet, lydbølge) gennem single-chip mikrocomputeren og udtrykke det med et digitalt signal, så har vi brug for ADC analog digital signal converter

I2C -kommunikation: I2C bruges i vid udstrækning til controllerkommunikation med indbyggede komponenter såsom sensorer/ displays. Dataoverførsel kan kun afsluttes med to signallinjer, henholdsvis urlinje SCL og signallinje SDA. Der er kun en hovedenhed Master og flere Slave -enheder på I2C -linjen. For at sikre, at begge busser er på et højt niveau, når de er inaktive, skal SDA og SCL forbindes med trækmodstanden. Den klassiske værdi af trækmodstanden er 10K.

Trin 2: Forbrugsvarer

Forbrugsvarer
Forbrugsvarer

Hardware:

  • MakePython ESP8266
  • Potentiometer
  • Brødbræt
  • Spring linje
  • USB -kabel

MakePython ESP8266: Der er et indbygget OLED 1.3 'OLED-modul på MakePython-kortet med 128x64 pixel … En pixel på en monokrom skærm er en lysemitterende diode. OLED er "selvbelysning", selve pixelen er lyskilden, så kontrasten er meget høj. OLED -skærme har I2C- og SPI -kommunikationsprotokoller, som er fuldstændig inkompatible på grund af forskellige protokoller. I vores lektion er OLED konfigureret til at være kompatibel med I2C -protokollen. Modulkøbslink:

Potentiometer: Potentiometer er en justerbar modstand med tre forende ender og modstandsværdier, der kan justeres i henhold til en bestemt variationlov. Et potentiometer består normalt af en modstandsdel og en bevægelig børste. Når børsten bevæger sig langs modstandskroppen, opnås modstandsværdien eller spændingen i forhold til forskydningen ved udgangsenden.

Software:

uPyCraft IDE

Der er mange koder og programmeringsmetoder med MicroPython. Til denne vejledning bruger vi uPyCraft IDE, som er den mest enkle og lette måde at starte med at springe over til MicroPython.

Trin 3: Ledningsføring

Ledninger
Ledninger
Ledninger
Ledninger
Ledninger
Ledninger

Dette er et meget simpelt kredsløb, der kræver meget få ledninger, kun tre. Tilslut bare VCC -stiften på potentiometeret til 3,3v MakePython ESP8266 og OUT -stiften (midten) til A0, og tilslut GND til hinanden. OLED -skærmen bruger I2C -kommunikation, og kortet er tilsluttet, så du ikke behøver at bekymre dig om det.

Trin 4: Installation af UPyCraft IDE Windows PC

Installation af UPyCraft IDE Windows -pc
Installation af UPyCraft IDE Windows -pc
Installation af UPyCraft IDE Windows -pc
Installation af UPyCraft IDE Windows -pc

Klik på dette link for at downloade uPyCraft IDE til Windows:

randomnerdtutorials.com/uPyCraftWindows.

Efter et par sekunder skal du se en lignende fil (uPyCraft_VX.exe) i mappen Downloads

Dobbeltklik på den fil. Et nyt vindue åbnes med uPyCraft IDE -softwaren.

Trin 5: Etablering af en kommunikation med bestyrelsen

Etablering af kommunikation med bestyrelsen
Etablering af kommunikation med bestyrelsen

Efter at have installeret MicroPython -firmwaren (MicroPython -firmware allerede installeret, når du får Makerfabs MakePython ESP8266), skal du slutte den til din computer via et USB -kabel, følg trinene:

  • Gå til Værktøjer> Board, og vælg det board, du bruger. Vælg esp8266
  • Gå til Værktøjer> Seriel, og vælg den comport, din ESP er tilsluttet (download USB -driveren på:

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

Tryk på knappen Tilslut for at oprette seriel kommunikation med dit kort.

Du vil se ">>>" vises i Shell -vinduet efter en vellykket forbindelse med dit board.

Trin 6: Oprettelse af Main.py -filen på dit bord

Oprettelse af Main.py -filen på dit bord
Oprettelse af Main.py -filen på dit bord
Oprettelse af Main.py -filen på dit bord
Oprettelse af Main.py -filen på dit bord
  • Tryk på knappen "Ny fil" for at oprette en ny fil.
  • Tryk på knappen "Gem fil" for at gemme filen på din computer.
  • Et nyt vindue åbnes, navngiv din fil main.py og gem den på din computer.
  • Derefter skal du se boot.py -filen på din enhed og en ny fane med main.py -filen.
  • Klik på knappen "Download og kør" for at uploade filen til dit ESP -kort.
  • Enhedskataloget skal nu indlæse main.py -filen. Din ESP har filen main.py gemt.

Trin 7: Tilføj driverfil

Da OLED -skærmen bruger SSD1306 -driverchippen, skal vi downloade driveren til SSD1306. Du kan gå til GitHub -webstedet for at søge og downloade biblioteket til SSD1306 eller klikke for at downloade vores ssd1306.py -driverfil.

Efter download, gem ssd1306.py i workSpace -filmappen. Klik derefter på Åbn ssd1306.py -filen, og klik på Kør, og biblioteksfilen kan indlæses i enhedsmappen. På dette tidspunkt er biblioteksfilen for ssd1306.py indlæst korrekt i MakePython ESP8266, som kan kaldes med importen ssd1306 -sætning.

*Bemærk: Første gang du åbner uPyCraft IDE, eksisterer workSpace -stien ikke. Når du klikker, vises dialogboksen workSpace. Du kan oprette et workSpace -bibliotek for at gemme brugerens filer ved at vælge det bibliotek, du vil gemme.

Trin 8: Hovedfunktionen

Hovedfunktionen
Hovedfunktionen
Hovedfunktionen
Hovedfunktionen

Grammatik forklaring:

  • i2c: konfigurer SCL- og SDA -benene
  • oled: opret OLED -objekt
  • adc.read (): Læs ADC -stikprøvedata
  • cirkel (): Brugerdefineret tegne cirkelfunktion, der BRUGER sqrt () funktion til at beregne cirkelens radius
  • math.sqrt (r): Returnerer kvadratroden af tallet
  • pixel (x, y, c): Tegn punktet på (x, y)
  • hline (x, y, w, c): Tegn en vandret linje, startende med (x, y), længde w
  • vline (x, y, w, c): Tegn en lodret linje, der starter med (x, y), med en højde på w
  • oled.fill (n): Tøm skærmen, når n = 0, og fyld skærmen, når n> er 0
  • oled.show (): Slå displayfunktionen til

Du kan enten direkte tilføje denne fil eller kopiere dens indhold til den nyoprettede hovedfil.

Trin 9: De eksperimentelle resultater

De eksperimentelle resultater
De eksperimentelle resultater

Drej potentiometeret langsomt, med uret, og cirklen på skærmen bliver større, mindre mod uret.

Anbefalede: