Sisällysluettelo:
- Tarvikkeet
- Vaihe 1: Materiaalit
- Vaihe 2: Liitäntäkaavio
- Vaihe 3: Määritä SPI
- Vaihe 4: Koodi
- Vaihe 5: Tulos
- Vaihe 6: CrowPi2-materiaalien käyttö
- Vaihe 7: CrowPi2-yhteyskaavion käyttäminen
- Vaihe 8: CrowPi2- Configure for SPI -ohjelman käyttö
- Vaihe 9: CrowPi2-koodin käyttäminen
- Vaihe 10: CrowPi2-the Resultin käyttö
- Vaihe 11: CrowPi2: n käyttö- Siirry eteenpäin
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 08:59
Eilen näin 8-vuotiaan veljenpoikani leikkivän Minecraftia Raspberry Pi: n kanssa, jonka annoin hänelle aiemmin, ja sitten sain idean, joka käyttää koodia räätälöidyn ja jännittävän Minecraft-pi LED-lohkoprojektin luomiseen. Minecraft Pi on loistava tapa päästä alkuun Raspberry Pi -mikrotietokoneen kanssa, Minecraft Pi on erityinen mittatilaustyönä valmistettu Minecraft -versio, jonka avulla voimme olla vuorovaikutuksessa pelin kanssa tappavan yksinkertaisen Python -sovellusliittymän avulla pelikokemuksen ja rekvisiittien mukauttamiseksi!
Raspberry Pi: llä voi tehdä monia projekteja Minecraft -maailmassa, mutta erityisesti meille se ei riittänyt, etsimme jotain haastavaa ja vilkkua samanaikaisesti. Tässä projektissa astumme useiden Minecraft -lohkojen päälle, tunnistamme lohkon tunnuksen ja havaitsemme tietyn lohkon värin, jonka päälle astuimme, sen värin perusteella, jonka sytytämme RGB -LED -valomme interaktiivisen askelpelin luomiseksi!
Käytän kahta tapaa saavuttaa vaikutus, ensimmäinen on lisävarusteiden käyttö, joka voi olla hyvin kaoottista…; toinen käyttää CrowPi2: ta (oppimistietokone, jossa on monia antureita, tällä hetkellä joukkorahoitettu Kickstarterilla: CrowPi2)
Aloitetaan ja katsotaan kuinka arkistoida tällainen hämmästyttävä projekti!
Tarvikkeet
CrowPi2 on nyt käynnissä kickstarterilla, CrowPi2 -projekti on kerännyt lähes 250 000 dollaria.
Napsauta linkkiä:
Menetelmä 1 Lisävarusteiden käyttö
Vaihe 1: Materiaalit
● 1 x Raspberry Pi 4 -malli B
● 1 x TF -kortti, jossa on kuva
● 1 x Raspberry Pi -virtalähde
● 1 x 10,1 tuuman näyttö
● 1 x näytön virtalähde
● 1 x HDMI -kaapeli
● 1 x näppäimistö ja hiiri
● 1 x RGB -led (yhteinen katodi)
● 4 x puseroita (naaras - nainen)
Vaihe 2: Liitäntäkaavio
RGB -värin LED -valossa on kolme valoa, jotka ovat punainen valo, vihreä valo ja sininen valo. Ohjaa näitä kolmea valoa säteilemään eri voimakkuutta, ja sekoitettuna ne voivat säteillä eri värejä. LED -valon neljä nastaa ovat GND, R, G ja B. Käytetty RGB -LED on yleinen katodi, ja yhteys Raspberry Pi: hen on seuraava:
RaspberryPi 4B (toiminnon nimessä) RGB -LED
GPIO0 1 PUNAINEN
GPIO1 3 VIHREÄ
GPIO2 4 SININEN
GND 2 GND
Toinen kuva on laitteistoyhteys
Vaihe 3: Määritä SPI
Koska meidän on käytettävä SPI: tä RGB: n ohjaamiseen, meidän on ensin otettava käyttöön SPI -rajapinta, joka on oletusarvoisesti poissa käytöstä. Voit ottaa SPI -käyttöliittymän käyttöön seuraavasti:
Ensinnäkin voit käyttää työpöydän käyttöliittymää siirtymällä Pi -aloitusvalikkoonRaspberry Pi Configuration, kuten se näkyy ensimmäisessä kuvassa.
Siirry toiseksi kohtaan "Liitännät" ja ota SPI käyttöön ja napsauta OK (toinen kuva).
Käynnistä lopuksi Pi uudelleen, jotta muutokset tulevat voimaan. Napsauta Pi Käynnistä -valikko AsetuksetSulje. Koska meidän on vain käynnistettävä uudelleen, napsauta Käynnistä uudelleen -painiketta.
Vaihe 4: Koodi
Aloitamme kirjoittamalla python -koodimme. Ensinnäkin tuomme muutamia kirjastoja, joita tarvitsemme integroidaksemme koodimme Minecraft -maailmaan. Tuomme sitten aikakirjaston, erityisesti lepotilan. Unitoiminnon avulla voimme odottaa tietyn ajan ennen toiminnon suorittamista. Viimeisenä mutta ei vähäisimpänä, tuomme RPi. GPIO -kirjaston, jonka avulla voimme hallita Raspberry Pi: n GPIO: ta.
osoitteesta mcpi.minecraft tuonti Minecraft aikatuonnista tuonti tuonti RPi. GPIO GPIO: na
Ja siinä se, olemme tuoneet kirjastot, nyt on aika käyttää niitä! Ensimmäinen asia on käyttää Minecraft -kirjastoa, haluamme yhdistää python -skriptimme Minecraft -maailmaan, voimme tehdä tämän kutsumalla MCPI -kirjaston init () -toiminnon ja asettamalla sitten GPIO -tilan ja poistamalla varoituksen käytöstä.
mc = Minecraft.create () GPIO.setmode (GPIO. BCM) GPIO.setwarnings (0)
Nyt määritämme joitain sateenkaaren värejä heksadesimaaleina, jotta voimme muuttaa RGB -värejä.
VALKOINEN = 0xFFFFFF PUNAINEN = 0xFF0000 ORANSSI = 0xFF7F00 KELTAINEN = 0xFFFF00 GREEN = 0x00FF00 CYAN = 0x00FFFF BLUE = 0x0000FF PURPLE = 0xFF00FF MAGENTA = 0xFF0000
Seuraavaksi meidän on määritettävä muuttujia villalohkon värin tallentamiseksi, joka on jo määritelty Minecraft -lohko -luettelossa.
W_WHITE = 0 W_RED = 14 W_ORANGE = 1 W_YELLOW = 4 W_GREEN = 5 W_CYAN = 9 W_BLUE = 11 W_PURPLE = 10 W_MAGENTA = 2
Me Minecraftin villalohkon tunnus on 35. Nyt meidän on konfiguroitava RGB -ledin pin ja asetettava ne.
red_pin = 17 green_pin = 18 blue_pin = 27
GPIO.setup (red_pin, GPIO. OUT, initial = 1) GPIO.setup (green_pin, GPIO. OUT, initial = 1) GPIO.setup (blue_pin, GPIO. OUT, initial = 1)
Määritä sitten PWM kullekin tapille ja huomaa, että PWM-arvoalue on 0-100. Tässä asetimme ensin RGB -ledin värin valkoiseksi (100, 100, 100).
punainen = GPIO. PWM (red_pin, 100)
vihreä = GPIO. PWM (vihreä_nasta, 100) sininen = GPIO. PWM (sininen_pin, 100) punainen. aloitus (100) vihreä. aloitus (100) sininen. aloitus (100)
Seuraavassa luodaan kaksi toimintoa, joita voidaan käyttää dekoodaamaan värit ja sytyttämään RGB -LED! Huomaa, että map2hundred () -toiminnon tarkoituksena on kartoittaa arvot välillä 255-100, kuten aiemmin mainitsimme, PWM-arvon tulisi olla 0-100.
def map2hundred (arvo): return int (arvo * 100/255)
def set_color (color_code): # Decode red_value = color_code >> 16 & 0xFF green_value = color_code >> 8 & 0xFF blue_value = color_code >> 0 & 0xFF
# Kartta -arvot red_value = map2hundred (red_value) green_value = map2hundred (green_value) blue_value = map2hundred (blue_value)
# Sytyttää! red. ChangeDutyCycle (punainen_arvo) vihreä. ChangeDutyCycle (vihreä_arvo) sininen. ChangeDutyCycle (sininen_arvo)
Hyvin tehty! On aika aloittaa pääohjelmamme, odota, toinen muuttuja on määritettävä villan lohkon värikoodin tallentamiseksi ennen pääohjelmaa:
last_data = 0 try: x, y, z = mc.player.getPos () mc.setBlocks (x, y, z, x+1, y, z+2, 35, 14) mc.setBlocks (x+2, y+1, z, x+3, y+1, z+2, 35, 11) mc.set Lohkot (x+4, y+2, z, x+5, y+2, z+2, 35, 2) mc.setBlocks (x+6, y+3, z, x+7, y+3, z+2, 35, 5) mc.setBlocks (x+8, y+4, z, x+9, y+4, z+2, 35, 4) mc.setBlocks (x+10, y+5, z, x+11, y+5, z+2, 35, 10) mc.setBlocks (x+12, y+6, z, x+13, y+6, z+2, 35, 1) mc.set Lohkot (x+14, y+5, z, x+15, y+5, z+2, 35, 10) mc.setBlocks (x+16, y+4, z, x+17, y+4, z+2, 35, 4) mc.setBlocks (x+18, y+3, z, x+19, y+3, z+2, 35, 5) mc.setBlocks (x+20, y+2, z, x+21, y+2, z+2, 35, 2) mc.setBlocks (x+22, y+1, z, x+23, y+1, z+2, 35, 11) mc.set Lohkot (x+24, y, z, x+25, y, z+2, 35, 14) kun taas True: x, y, z = mc.player.getPos () # pelaajan sijainti (x, y, z) block = mc.getBlockWithData (x, y-1, z) # block ID #print (block) if block.id == WOOL ja last_data! = Block.data: if block.data == W_RED: print ("Red!") Set_color (RED) if block.data == W_ORANGE: print ("Orange!") Set_color (ORANGE) jos block.data == W_ KELTAINEN: tulosta ("Keltainen!") Set_color (KELTAINEN), jos block.data == W_GREEN: print ("Green!") Set_color (GREEN) if block.data == W_CYAN: print ("Cyan!") Set_color (CYAN)) if block.data == W_BLUE: print ("Blue!") set_color (BLUE) if block.data == W_PURPLE: print ("Purple!") set_color (PURPLE) if block.data == W_MAGENTA: print (" Magenta! ") Set_color (MAGENTA) if block.data == W_WHITE: print (" White! ") Set_color (WHITE) last_data = block.data sleep (0.05) paitsi KeyboardInterrupt: pass GPIO.cleanup ()
Kuten pääohjelma on esitetty yllä, on ensin muodostettava värikkäitä villalohkoja joidenkin komentojen avulla, sitten meidän on selvitettävä pelaajan sijainti, jotta voimme saada lohkojen tunnuksen ja sen värikoodin. Kun olemme saaneet lohkotiedot, käytämme lausetta selvittääksemme, onko soittimen alla oleva lohko villalohko ja onko siinä värikoodi. Jos kyllä, arvioi, minkä värinen villalohko on ja kutsu set_color () -toimintoa muuttaaksesi RGB -ledin värin samaksi kuin villalohko.
Lisäksi lisäämme kokeilu/poikkeus -lausekkeen, jotta saamme poikkeuksen käyttäjän keskeytyksestä, kun haluamme sulkea ohjelman, jotta GPIO -nastat poistuvat.
Liitteenä on täydellinen koodi.
Hyvin tehty, niin paljon lisävarusteita ja liian monimutkaista? Älä huoli, katsotaan toinen tapa saavuttaa projekti, joka saa sinut tuntemaan olosi joustavammaksi ja kätevämmäksi, joka käyttää CrowPi2: ta!
Vaihe 5: Tulos
Avaa peli ja suorita komentosarja, näet tuloksen yllä olevassa videossa
Sitten rakennamme CrowPi2: n avulla Rainbow -interaktiivisen sillan seuraavaksi
Vaihe 6: CrowPi2-materiaalien käyttö
● 1 x CrowPi2
Vaihe 7: CrowPi2-yhteyskaavion käyttäminen
Ei tarvetta. CrowPi2: ssa on monia hyödyllisiä antureita ja komponentteja (yli 20), kaikki yhdessä vadelmapi -kannettavassa ja STEM -koulutusalusta, jonka avulla voimme tehdä useita projekteja helposti ja ilman hikeä! Tässä tapauksessa käytämme houkuttelevaa ja värikästä moduulia CrowPi2: ssa, joka on 8x8 RGB -matriisimoduuli, jonka avulla voimme ohjata 64 RGB -lediä samanaikaisesti!
Vaihe 8: CrowPi2- Configure for SPI -ohjelman käyttö
Ei tarvetta. CrowPi2: n mukana tulee sisäänrakennettu kuva ja oppimisjärjestelmä! Kaikki on valmisteltu, mikä tarkoittaa, että voit ohjelmoida ja oppia suoraan. Lisäksi CrowPi2: n avulla se on helppoa ja jo integroitu levyyn STEAM -alustana valmiina käyttöön.
Vaihe 9: CrowPi2-koodin käyttäminen
Nyt on aika aloittaa ohjelmamme! Tuo ensin muutamia kirjastoja, kuten MCPI -kirjasto, joka on Minecraft Pi Python -kirjasto, jonka avulla voimme käyttää hyvin yksinkertaista sovellusliittymää integroimiseksi Minecraft -maailmaan. aikakirjasto, jonka avulla voimme unitoiminnon odottaa tietyn ajan ennen toiminnon suorittamista; RPi. GPIO -kirjasto, jonka avulla voimme hallita Raspberry Pi GPIO -nastoja.
osoitteesta mcpi.minecraft tuonti Minecraft aikatuonnista tuonti tuonti RPi. GPIO GPIO: na
Lopuksi tuomme kirjaston rpi_ws281x -nimisen kirjaston, joka on RGB -matriisikirjasto, kirjaston sisällä on useita toimintoja, kuten PixelStrip -asetuksia LED -nauhaobjektin asettamiseen ja Color -asetuksia RGB -väriobjektin sytyttämiseksi. meidän RGB -merkkivalot
alkaen rpi_ws281x tuonti PixelStrip, väri
Ja siinä kaikki, olemme tuoneet kirjastot, nyt on aika käyttää niitä! Samoin ensimmäinen asia on käyttää Minecraft -kirjastoa, haluamme yhdistää python -skriptimme Minecraft -maailmaan, jonka voimme tehdä kutsumalla MCPI -kirjaston init -toiminnon:
mc = Minecraft.create ()
Nyt kun haluamme suorittaa operaatioita minecrat -maailmassa, voimme käyttää mc -objektia.
Seuraava askel on määritellä RGB -LED -matriisiluokka, jota käytämme hallitsemaan RGB -LED -valojamme, alustamme luokan peruskokoonpanolla, kuten ledien määrä, nastat, kirkkaus jne.
luomme funktion nimeltä puhdas, joka "puhdistaa" vähemmän tietyllä värillä ja myös toiminnon nimeltä run, joka alustaa todellisen RGB -LED -objektin ensimmäistä kertaa, kun haluamme käyttää sitä.
luokka RGB_Matrix:
def _init _ (itse):
# LED -nauhan kokoonpano:
self. LED_COUNT = 64 # LED -pikselien määrä.
self. LED_PIN = 12 # GPIO -nasta, joka on kytketty pikseleihin (18 käyttää PWM -tekniikkaa!).
self. LED_FREQ_HZ = 800000 # LED -signaalin taajuus hertseinä (yleensä 800 kHz)
self. LED_DMA = 10 # DMA -kanava signaalin tuottamiseen (kokeile 10)
self. LED_BRIGHTNESS = 10 # Aseta 0 tummimmaksi ja 255 kirkkaimmaksi
self. LED_INVERT = False # Tosi, jos haluat kääntää signaalin
self. LED_CHANNEL = 0 # asetettu arvoon 1 GPIO: ille 13, 19, 41, 45 tai 53
# Määritä toiminnot, jotka animoivat LED -valoja eri tavoin. puhdas (itse, nauha, väri):
# pyyhi kaikki LEDit kerralla
i alueella (strip.numPixels ()):
strip.setPixelColor (i, väri)
strip.show ()
def run (itse):
# Luo NeoPixel -objekti sopivalla kokoonpanolla.
nauha = PixelStrip (itse. LED_COUNT, self. LED_PIN, self. LED_FREQ_HZ, self. LED_DMA, self. LED_INVERT, self. LED_BRIGHTNESS, itse. LED_CHANNEL)
yrittää:
palautusliuska
paitsi näppäimistö Keskeytys:
# puhdista matriisin LED ennen keskeytystä
itsepuhdas (nauha)
Kun olemme tehneet edellä mainitun, on aika kutsua nämä luokat ja luoda objekteja, joita voimme käyttää koodissamme, luodaan ensin RGB -LED -matriisiobjekti, jota voimme käyttää aiemmin luomamme luokan avulla:
matrixObject = RGB_Matrix ()
Käytämme nyt tätä objektia aktiivisen LED -nauhaobjektin luomiseen, jota käytämme yksittäisten LED -valojen ohjaamiseen RGB -matriisissa:
nauha = matrixObject.run ()
Lopuksi, jotta voimme aktivoida tämän nauhan, meidän on suoritettava viimeinen toiminto:
strip.begin ()
Minecraft -sovellusliittymä sisältää paljon lohkoja, jokaisella Minecraft -lohkolla on oma tunnus. Esimerkissämme olemme ottaneet jonkin verran Minecraft -lohkoja ja yrittäneet arvata, mikä väri sopii heille parhaiten.
RGB tarkoittaa punaista, vihreää ja sinistä, joten tarvitsemme 3 eri arvoa välillä 0 - 255 kullekin, värit voivat olla HEX- tai RGB -muotoisia, käytämme esimerkissämme RGB -muotoa.
Minecraft Pi -maailmassa on normaaleja lohkotunnuksia ja erityisiä villalohkojen tunnuksia, erikoisvilla kuuluu tunnistenumeron 35 alle, mutta alinumerot vaihtelevat monista eri tunnuksista … Ratkaisemme tämän ongelman luomalla kaksi erillistä luetteloa, yksi normaaleille lohkoille ja yksi luettelo erityisistä villalohkoista:
Ensimmäinen luettelo on normaaleille lohkoille, esimerkiksi 0 edustaa ilmalohkoa, asetamme sille värin 0, 0, 0, joka on tyhjä tai täysin valkoinen, kun pelaaja hyppää tai lentää pelissä, jonka RGB sammuu, 1 on eri lohko RGB -väreillä 128, 128, 128 ja niin edelleen …
#Sateenkaaren värit
sateenkaari_värit = {
"0": Väri (0, 0, 0), "1": väri (128, 128, 128), "2": väri (0, 255, 0), "3": väri (160, 82, 45), "4": väri (128, 128, 128), "22": väri (0, 0, 255)
}
Villalohkojen kohdalla teemme samoin, mutta on tärkeää muistaa, että kaikilla lohkoilla on tunnus 35, tässä luettelossa määritellään villalohkon lohkon alatyypit. Eri villa -alatyypeillä on eri värejä, mutta ne kaikki ovat villalohkoja.
villa_värit = {
"6": väri (255, 105, 180), "5": väri (0, 255, 0), "4": väri (255, 255, 0), "14": väri (255, 0, 0), "2": väri (255, 0, 255)
}
Kun pääohjelmamme, luokat ja toiminnot on määritelty, on aika integroida CrowPi2 RGB LED -anturimme.
Pääohjelma ottaa aiemmin määrittämämme parametrit ja vaikuttaa laitteistoon.
Aiomme käyttää CrowPi2 RGB LEDiä valaisemaan ne sen perusteella, mitä teemme Minecraft Pi: n sisällä jokaisessa lohkossa, aloitetaan!
Ensimmäinen asia, jonka teemme, on luoda joitain villalohkoja komennoilla ja luoda while -silmukka, jotta ohjelma pysyy käynnissä niin kauan kuin pelaamme peliä.
Meidän on saatava tietoja soittimelta, ensin käytämme player.getPos () -komentoa saadaksemme pelaajan aseman, sitten käytämme getBlockWithData () saadaksemme lohkon, jolla olemme tällä hetkellä (y -koordinaatti on -1, joka tarkoittaa pelaajan alla)
x, y, z = mc.player.getPos ()
mc.setBlocks (x, y, z, x+1, y, z+2, 35, 14)
mc.setBlocks (x+2, y+1, z, x+3, y+1, z+2, 35, 11)
mc.setBlocks (x+4, y+2, z, x+5, y+2, z+2, 35, 2)
mc.setBlocks (x+6, y+3, z, x+7, y+3, z+2, 35, 5)
mc.setBlocks (x+8, y+4, z, x+9, y+4, z+2, 35, 4)
mc.setBlocks (x+10, y+5, z, x+11, y+5, z+2, 35, 10)
mc.setBlocks (x+12, y+6, z, x+13, y+6, z+2, 35, 1)
mc.setBlocks (x+14, y+5, z, x+15, y+5, z+2, 35, 10)
mc.setBlocks (x+16, y+4, z, x+17, y+4, z+2, 35, 4)
mc.setBlocks (x+18, y+3, z, x+19, y+3, z+2, 35, 5)
mc.setBlocks (x+20, y+2, z, x+21, y+2, z+2, 35, 2)
mc.setBlocks (x+22, y+1, z, x+23, y+1, z+2, 35, 11)
mc.setBlocks (x+24, y, z, x+25, y, z+2, 35, 14)
vaikka totta:
x, y, z = mc.player.getPos () # pelaajan sijainti (x, y, z)
blockType, data = mc.getBlockWithData (x, y-1, z) # lohkon tunnus
tulosta (blockType)
Sitten tarkistamme, onko lohko villalohko, lohkon tunnusnumero 35, jos se on, viittaamme villa_väreihin, joissa on lohkon väri sanakirjan tunnuksen perusteella, ja sytytämme oikean värin vastaavasti.
jos blockType == 35:
# mukautetut villavärit
matrixObject.clean (nauha, villavärit [str (data)])
Jos se ei ole villalohko, tarkistamme, onko lohko tällä hetkellä rainbow_colors -sanakirjassa, jotta vältetään poikkeukset. Jos se on, jatkamme ottamalla väri ja muuttamalla RGB.
jos str (blockType) in rainbow_colors:
tulosta (sateenkaaren_värit [str (blockType)])
matrixObject.clean (nauha, sateenkaaren_värit [str (blockType)])
nukkua (0,5)
Voit aina yrittää lisätä lisää lohkoja rainbow_coloriin lisätäksesi värejä ja lisää lohkojen tukea!
Täydellinen! Projektien tekeminen lisävarusteilla on monimutkaista, mutta CrowPi2 -integroidun piirin avulla asiat helpottuvat! Lisäksi CrowPi2: ssa on yli 20 tunnistinta ja komponenttia, joiden avulla voit saavuttaa ihanteelliset projektit ja jopa tekoälyprojektit!
Alla on täydellinen koodi:
Vaihe 10: CrowPi2-the Resultin käyttö
Avaa peli ja suorita komentosarja, näet tuloksen yllä olevassa videossa:
Vaihe 11: CrowPi2: n käyttö- Siirry eteenpäin
Nyt olemme saaneet päätökseen värikkään projektimme Minecraft -pelissä CrowPi2: n avulla. Miksi et yrittäisi käyttää muita CrowPi2: n antureita ja komponentteja pelaamiseen, kuten ohjaussauvaa pelaajan liikkeen hallintaan, RFID: ää lohkojen luomiseen eri NFC -korttien perusteella jne. Pidä hauskaa pelistäsi CrowPi2: lla lisää uskomattomia projekteja CrowPi2: n avulla!
Nyt CrowPi2 on Kickstarterissa, voit myös nauttia houkuttelevasta hinnasta.
Liitä Kickstarter -sivulinkki CrowPi2
Suositeltava:
Rakenna Internet-ohjattu videon suoratoistorobotti Arduinon ja Raspberry Pi: n avulla: 15 vaihetta (kuvilla)
Rakenna Internet-ohjattu videostriimausrobotti Arduinon ja Raspberry Pi: n kanssa: Olen @RedPhantom (alias LiquidCrystalDisplay / Itay), 14-vuotias israelilainen opiskelija, joka opiskelee Max Shein Junior High School for Advanced Science and Mathematics -koulussa. Teen tämän projektin kaikkien opittavaksi ja jaettaviksi! Sinulla saattaa olla
Interaktiivinen Minecraft Älä anna miekkaa/merkkiä (ESP32-CAM): 15 vaihetta (kuvilla)
Interaktiivinen Minecraft Älä anna miekkaa/merkkiä (ESP32-CAM): Tämän projektin syntymiseen on todella useita syitä: 1. Yhteistyöyhteistyön monitehtokirjaston TaskScheduler kirjoittajana olin aina utelias, miten yhdistää yhteistyöhön liittyvän moniajon edut ennaltaehkäisevän edun kanssa
Rakenna Stephen Hawkingin tietokoneen käyttöliittymä vain 1000 ruplaan (15 dollaria) Arduinon avulla: 5 vaihetta
Rakenna Stephen Hawkingin tietokonerajapinta vain 1000 ruplaan (15 dollaria) Arduinon avulla: Kaikki alkoi kysymyksellä "Kuinka Stephen Hawking puhuu?" järjestelmän versio vaarantamatta liikaa ominaisuuksia. Tämä laite
Rakenna säähallintapaneeli Dark Sky -sovellusliittymän avulla: 5 vaihetta (kuvilla)
Rakenna säähallintapaneeli Dark Sky -sovellusliittymän avulla: Dark Sky on erikoistunut sääennusteisiin ja visualisointiin. Dark Skyn hienoin osa on niiden sääsovellusliittymä, jonka avulla voimme hakea säätiedot lähes mistä tahansa maailmasta. Sää ei ole vain sateinen tai aurinkoinen, mutta lämpötila on
Western Digital MyBook World Editionin purkaminen: 6 vaihetta
Western Digital MyBook World Editionin purkaminen: Oletko koskaan valittanut, että MyBook World Editionin tuuletin on liian kova tai asema siirtyy liian hitaasti, joten haluat poistaa kiintolevyt ulkoisen USB -kiintolevyn koteloon? Jos vastasit kyllä molempiin kysymyksiin tai molempiin, näytän sinulle