Indholdsfortegnelse:
- Trin 1: Om ADC og I2C
- Trin 2: Forbrugsvarer
- Trin 3: Ledningsføring
- Trin 4: Installation af UPyCraft IDE Windows PC
- Trin 5: Etablering af en kommunikation med bestyrelsen
- Trin 6: Oprettelse af Main.py -filen på dit bord
- Trin 7: Tilføj driverfil
- Trin 8: Hovedfunktionen
- Trin 9: De eksperimentelle resultater
Video: MicroPython -program: Vis cirkelens størrelse: 9 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
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
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
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
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
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
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
- 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
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
Drej potentiometeret langsomt, med uret, og cirklen på skærmen bliver større, mindre mod uret.
Anbefalede:
Retro Arcade - (fuld størrelse drevet af Raspberry Pi): 8 trin
Retro Arcade - (Fuld størrelse drevet af Raspberry Pi): Først ville jeg takke dig for at have kigget på byggeguiden til dette Retro Arcade -system. Jeg tager en ældre arkadeboks og placerer den i et selvstændigt skab med en 24-tommer widescreen-skærm. Målinger på denne vejledning er grove at give dig
Menneskelig størrelse telepresence -robot med griberarm: 5 trin (med billeder)
Human Sized Telepresence Robot With Gripper Arm: MANIFESTO En frenemy af mig inviterede mig til en Halloween-fest (30+ mennesker) under en pandemi, så jeg fortalte ham, at jeg ville deltage og gik i gang med at designe en telepresence-robot for at forårsage kaos på festen i min placere. Hvis du ikke er bekendt med hvilken telep
Jumbo-størrelse teleskopisk lysmaler fremstillet af EMT (elektrisk) ledning: 4 trin (med billeder)
Jumbo-størrelse teleskopisk lysmaler fremstillet af EMT (elektrisk) ledning: Lysmaleri (lysskrivning) fotografering udføres ved at tage et fotografi med lang eksponering, holde kameraet stille og flytte en lyskilde, mens kameraets blænde er åben. Når blænden lukker, ser lysstierne ud til at være frosne
Minecraft malmlampe - tilpasselig størrelse og pixeltæthed: 4 trin
Minecraft Ore Lamp-tilpasselig størrelse og pixeltæthed: Min syv-årige knægt er besat af Minecraft, så jeg besluttede at bygge noget relateret til ham. På udkig efter muligheder er der et fedt lampeprojekt fra Dan J Hamer i Thingiverse, men efter at have justeret det lidt besluttede jeg mig for at starte mit eget projekt (du
Sådan laver du en BB8 i naturlig størrelse med Arduino: 12 trin
Sådan laver du en BB8 i naturlig størrelse med Arduino: Hej alle sammen, vi er to italienske studerende, der har bygget en BB8-klon med billige materialer, og med denne vejledning vil vi dele vores erfaring med dig! Vi har brugt billige materialer på grund af vores begrænsede budget, men det endelige resultat er meget godt