Johdanto
Ensimmäinen tapaaminen M5Stack Core2:n kanssa
M5Stack Core2 tukee useita ohjelmointialustoja, kuten Arduino, MicroPython ja M5Stack UIFlow, mikä tekee siitä monipuolisen erilaisiin IoT-projekteihin, mukaan lukien älykotilaitteet, opetustyökalut ja nopea prototypointi. Sen modulaarinen rakenne mahdollistaa helpon laajennuksen muilla M5Stack-moduuleilla, mikä parantaa sen toiminnallisuutta monipuolisissa sovelluksissa.
Tärkeimmät ominaisuudet ja kyvyt
Suoritin
Kaksoisydin ESP32-D0WDQ6-V3, toimii jopa 240 MHz:n taajuudella.
Muisti
-
16 Mt Flash-muistia
-
8MB PSRAM
Langaton yhteys
-
WiFi 802.11 b/g/n
-
Bluetooth 4.2 BLE
Käyttöliittymä
-
6 ohjelmoitavaa kosketuspainiketta
-
Tärinämoottori haptiseen palautteeseen
Anturit
-
6-akselinen IMU (MPU6886) kiihtyvyys- ja gyroskooppitietoja varten
Ääni
-
Integroitu kaiutin
-
I2S digitaalinen ääniliitäntä
Virranhallinta
-
AXP192 PMU akun hallintaan
-
Tukee USB Type-C -latausta
-
Sisäänrakennettu LiPo-akku
RTC
-
Reaaliaikakello tarkkaan ajanmittaukseen
Tämän artikkelin pääsisältö
Tämän artikkelin päätavoitteena on tarjota kattava yleiskatsaus M5Stack Core2:sta, innovatiivisesta IoT-kehityspaketista, joka perustuu ESP32-mikrokontrolleriin. Tavoitteenamme on:
-
Kouluta lukijoita laitteiston teknisistä tiedoista, mukaan lukien sen suorituskyky, muisti, liitäntämahdollisuudet ja integroidut anturit.
-
Korosta ainutlaatuisia ominaisuuksia, kuten kosketusnäyttöliittymää, haptista palautetta ja modulaarista rakennetta, joka mahdollistaa projektin laajentamisen.
-
Opasta käyttäjiä M5Stack Core2:n tukemien eri ohjelmointiympäristöjen (Arduino, MicroPython, UIFlow) läpi ja tarjoa näkemyksiä siitä, mikä niistä sopii parhaiten erilaisiin projekteihin.
-
Esittele mahdollisia käyttötarkoituksia näyttämällä todellisia esimerkkejä, joissa M5Stack Core2:ta voidaan hyödyntää, koulutustyökaluista älykotilaitteisiin.
-
Auttaa harrastajia, opettajia ja ammattilaisia päätöksenteossa, kun he harkitsevat tätä laitetta IoT-projekteihinsa, käsittelemällä sen vahvuuksia, rajoituksia ja vertaamalla sitä muihin vastaaviin alustoihin.
Tämän artikkelin lopussa lukijoilla on perusteellinen ymmärrys siitä, mitä M5Stack Core2 tarjoaa, miten sen ominaisuuksia voi hyödyntää ja sopiiko se heidän erityistarpeisiinsa IoT-kehityksen alalla.
Mikä on M5Stack Core2?
Yksityiskohtainen selitys M5Stack Core2:sta
M5Stack Core2 on edistynyt ESP32-pohjainen IoT-kehityspaketti, joka on suunniteltu sekä aloittelijoille että kokeneille kehittäjille. Siinä on kaksiytiminen ESP32-D0WDQ6-V3 -prosessori, joka toimii jopa 240 MHz:n taajuudella, ja siinä on sisäänrakennettu WiFi- ja Bluetooth-toiminnallisuus. Tämä paketti sisältää 16 Mt Flash-muistia ja 8 Mt PSRAM-muistia suorituskyvyn parantamiseksi.
Core2:n keskeisiä ominaisuuksia ovat 2-tuumainen kapasitiivinen kosketusnäyttö, joka mahdollistaa intuitiivisen käyttäjävuorovaikutuksen, ohjelmoitavat kosketuspainikkeet ja sisäänrakennettu värinämoottori haptiseen palautteeseen. Siinä on myös integroitu RTC (reaaliaikakello) tarkkaa ajan seurantaa varten, ja virranhallinnasta vastaa AXP192-piiri, joka säätelee akun kulutusta tehokkaasti. Lisäominaisuuksiin kuuluvat kaiutin, I2S-digitaalinen ääniliitäntä selkeää äänen toistoa varten sekä takana sijaitseva 6-akselinen IMU-anturi liikkeen tunnistukseen.
Soveltuvat ryhmät
Harrastajille ja tee-se-itse-innostuneille
Elektroniikasta, robotiikasta ja IoT-projekteista innostuneet henkilöt, jotka etsivät kaiken kattavaa ratkaisua kokeiluihin.
Kasvattajat ja opiskelijat
Opettajat, jotka etsivät kiinnostavia työkaluja ohjelmoinnin, elektroniikan ja IoT:n opettamiseen, sekä opiskelijat, jotka opiskelevat näitä aiheita.
IoT-kehittäjät
Ammattilaiset tai harrastajat, jotka kehittävät IoT-ratkaisuja ja tarvitsevat kompaktin, tehokkaan alustan laajoilla liitäntämahdollisuuksilla.
Tekijät ja hackkeritilat
Yhteisöt tai yksilöt, jotka osallistuvat maker-tapahtumiin, hackathoneihin tai yhteisiin tiloihin, joissa nopea prototyyppien tekeminen on olennaista.
Tuotesuunnittelijat
Ne, jotka prototyyppaavat uusia älylaitteita tai integroivat IoT:tä olemassa oleviin tuotteisiin ja tarvitsevat monipuolisen alustan kehitykseen ja testaukseen.
Taiteilijat ja interaktiiviset installaatiot
Luovat tekniikkaa hyödyntäen taideinstallaatioiden tai interaktiivisten näyttelyiden parantamiseen antureiden, näyttöjen ja yhteyksien avulla.
Ero M5Stack Core2:n ja M5Stack Core2 V1.1:n välillä
Ominaisuus | M5Stack Core2 | M5Stack Core2 V1.1 |
Virranhallinta | AXP192-piiri | AXP2101 + INA3221 (päivitetty Virta-IC) |
Virran merkkivalon väri | Vihreä | Sininen |
RTC (reaaliaikakello) | Sisäänrakennettu, mutta ilman erillistä akkua RTC:lle |
Sisältää erillisen akun RTC ajan ylläpitämiseksi, kun sammutettu |
USB-piiri | CH9102F | Sama, mutta ohjaimen asennus saattaa eroavat laitteistoversion mukaan |
Yleinen suunnittelu | Klassinen Core2-suunnittelu | Iteratiivinen versio samalla tavalla muoto, mutta päivitetyt sisäosat |
Yhteensopivuus | Yhteensopiva M5GO Bottomin kanssa lisäominaisuuksia varten | Yhteensopivuus moduulien kanssa saattaa vaatii poistamista tai tietyn käytön Bottom2 täyteen toiminnallisuuteen |
Ohjelmointiympäristö | Tukee Arduinoa, MicroPythonia, UIFlow'ta | Sama tuki, ei muutoksia ohjelmointiympäristö |
Kosketusnäyttö | 2-tuumainen kapasitiivinen kosketusnäyttö | Sama, näyttöön ei muutoksia määrittelyt |
Tärinämoottori | Sisältyy haptiseen palautteeseen | Sisältyy, ei muutoksia |
Muisti ja prosessori | ESP32-D0WDQ6-V3, 16MB Flash, 8MB PSRAM |
Samat tekniset tiedot |
M5Stack Core2 laitteisto
M5Stack Core2 näytön koko ja resoluutio
-
Näytön koko: 2 tuumaa
-
Resoluutio: 320 x 240 pikseliä
M5Stack Core2 -suoritin, muisti ja tallennustila
-
Suoritin: Kaksiytiminen ESP32-D0WDQ6-V3, toimii jopa 240MHz:n taajuudella.
-
Muisti:RAM: 8MB PSRAM (Pseudo Static RAM)
-
Tallennustila:Flash-muisti: 16MB
Yhteysvaihtoehdot
-
WiFi: 802.11 b/g/n, mahdollistaa langattoman verkottumisen IoT-projekteissa.
-
Bluetooth: Versio 4.2 BLE (Bluetooth Low Energy), vähävirtaiseen, lyhyen kantaman langattomaan tiedonsiirtoon.
Anturit ja oheislaitteet
Anturit
-
6-akselinen IMU (Inertiaalimittausyksikkö):Yhdistää 3-akselisen kiihtyvyysanturin ja 3-akselisen gyroskoopin liikkeen havaitsemiseksi. Se käyttää MPU6886-anturia, joka tarjoaa tietoa orientaatiosta, kiihtyvyydestä ja pyörimisestä.
Nämä sensorit ovat M5Stack Core2:n pääasialliset sisäänrakennetut anturit. Laitteen suunnittelu kuitenkin mahdollistaa laajennukset eri M5Stack-moduulien ja GROVE-porttien kautta, jotka voivat lisätä lisäantureita, kuten:
Lämpötila-anturit
Kosteusanturit
Valoanturit
Läheisyysanturit
Paineanturit
Magneettikenttäsensorit (kompassi)
jne.
Lisälaitteet
-
Ohjelmoitavat kosketuspainikkeet:Näytössä on kolme kapasitiivista kosketuspainiketta, jotka voidaan ohjelmoida erilaisiin toimintoihin tai käyttäjän syötteisiin.
-
Mikrofoni:Sisäinen mikrofoni mahdollistaa äänen havaitsemisen tai äänikomentojen käytön.
-
Kaiutin:Integroitu äänentoistoa varten, hyödyllinen hälytyksiin, ilmoituksiin tai musiikin toistoon.
-
Tärinämoottori:Tarjoaa haptista palautetta, parantaen käyttäjäkokemusta sovelluksissa kuten peleissä tai ilmoituksissa.
-
RTC (reaaliaikakello):Sisäänrakennettu RTC-moduuli ajan seuraamiseen, myös laitteen ollessa sammutettuna, varmistaen tarkan ajanpidon aikataulutusta tai aikaohjattuja toimintoja varten.
-
Virranhallintapiiri (PMIC):AXP192-piiri hallitsee virran jakelua, akun latausta ja jännitteen säätöä, mikä on tärkeää tehokkuuden ylläpitämiseksi ja akun käyttöiän pidentämiseksi.
-
USB Type-C -portti:Virtaa, ohjelmointia ja tiedonsiirtoa varten. Tukee USB OTG:tä, jolloin joissakin kokoonpanoissa voi liittää ulkoisia laitteita, kuten näppäimistöjä tai hiiriä.
-
MicroSD-korttipaikka:Mahdollistaa lisämuistin käytön, ihanteellinen datan tallennukseen, laiteohjelmiston päivittämiseen tai median säilytykseen.
Virtalähde ja akun kesto
Virtalähde
-
Tulojännite: 5 V USB-C-portin kautta lataukseen ja laitteen virransyöttöön.
-
Virranhallinta: Virransyöttöä hallitsee alkuperäisessä Core2:ssa AXP192-piiri ja Core2 V1.1:ssä AXP2101 + INA3221, mikä mahdollistaa tehokkaan virrankulutuksen hallinnan.
-
Akun lataus: Tukee latausta USB-C-portin kautta, ja tietyissä asetuksissa on mahdollisuus käyttää ulkoisia virtalähteitä tiettyjen nastojen kautta.
Akku
-
Sisäänrakennettu akku: Core2:ssa on 390 mAh LiPo-akku, joka tarjoaa virtaa, kun laite on irrotettu ulkoisista virtalähteistä.
-
Akun keston pidentäminen: Pidemmän akun keston saavuttamiseksi käyttäjät voivat lisätä ulkoisia akkuyksiköitä, kuten M5GO Bottom2 (jossa on lisäakku 500mAh), tai pinota useita akkuyksiköitä, koska ne ovat rinnankytkettäviä.
Akun kesto
-
Käyttöaika: Akun kesto vaihtelee merkittävästi käytön mukaan.Lepotila tai matalan virran tilat: Näytön ollessa pois päältä ja matalan virran tiloissa, akku voi kestää tunteja tai jopa päiviä, riippuen heräämistiheydestä tai käytetyn lepotilan syvyydestä.Aktiivinen käyttö: Näytön ollessa päällä ja ohjelmien käydessä aktiivisesti, erityisesti WiFi:n tai Bluetoothin käytön aikana, akun kesto voi olla muutamasta tunnista noin 5-6 tuntiin, riippuen näytön kirkkaudesta, anturien käytöstä ja prosessointikuormasta.
-
Lepotilat: ESP32:n syväuni voi pidentää akun kestoa merkittävästi, mahdollisesti viikkoihin tai kuukausiin, jos laite tarvitsee herätä vain satunnaisesti, esimerkiksi datan tallennusta tai ajoittaisia WiFi-tarkistuksia varten.
-
Parannukset: Käyttäjät raportoivat usein, että akun kestoa voi pidentää ohjelmiston optimoinneilla, kuten näytön himmentämisellä, anturien kyselytaajuuden vähentämisellä tai tehokkailla virranhallintastrategioilla, kuten syväuni ei-aktiivisina aikoina.
Lisähuomiot
-
Virran merkkivalo: Sisäänrakennettu LED (vihreä alkuperäisessä, sininen V1.1:ssä) ilmaisee virran tilan ja sitä voi ohjelmoida mukautettuihin ilmoituksiin.
-
RTC-paristo: V1.1-mallissa on lisätty pieni paristo RTC:lle, joka varmistaa ajanpidon, vaikka pääparisto olisi tyhjä tai poistettu.
Ohjelmisto ja kehitys
Tuetut ohjelmointikielet
-
C/C++ (käytetään Arduino IDE:n kanssa)
-
Python (MicroPython-versio ESP32:lle)
-
JavaScript (tietyille web-pohjaisille sovelluksille, ei suoraa laiteohjelmointia, mutta voi olla vuorovaikutuksessa web-käyttöliittymien tai node-redin kautta).
Tuetut ohjelmointialustat
-
Arduino: Tämä on yksi suosituimmista alustoista ESP32:lle. Arduino IDE, jossa on ESP32-tuki, mahdollistaa koodin kirjoittamisen ja lataamisen M5Stack Core2:lle käyttäen C/C++:aa.
-
MicroPython: Python 3:n toteutus mikrokontrollereille, MicroPython sopii hyvin niille, jotka suosivat Pythonin syntaksia. Se tarjoaa interaktiivisen REPLin (Read-Eval-Print Loop) välittömään koodin testaamiseen, mikä tekee siitä erityisen opetuksellisesti ystävällisen.
-
UIFlow: Tämä on M5Stackin oma visuaalinen ohjelmointikieli tai lohkopohjainen ohjelmointiympäristö, joka muistuttaa Scratchia tai Blocklyä. Se on suunniteltu erittäin käyttäjäystävälliseksi, jolloin voit ohjelmoida Core2:n yhdistämällä koodifunktioita edustavia lohkoja. UIFlow voi taustalla generoida MicroPython- tai Arduino-koodia, jota voi sitten muokata tai käyttää suoraan.
Jokainen näistä ympäristöistä tarjoaa erilaisia etuja:
-
Arduino tarjoaa perinteisemmän mikrokontrolleriohjelmoinnin kokemuksen pääsyn laajaan kirjastojen ekosysteemiin.
-
MicroPython helpottaa aloittelijoita tai Python-harrastajia aloittamaan laitteistojen ohjelmoinnin tarjoamalla luettavamman ja interaktiivisemman koodauskokemuksen.
-
UIFlow on erinomainen nopeaan prototyyppien tekoon, opetukseen tai niille, joilla ei ole laajaa koodauskokemusta mutta jotka haluavat luoda toimivia IoT-laitteita.
Nämä alustat eivät ole toisiaan poissulkevia; voit aloittaa yhdellä ja siirtyä toiseen tai käyttää eri alustoja projektisi eri osa-alueisiin hyödyntäen niiden ainutlaatuisia ominaisuuksia kehitystarpeidesi mukaan.
Kehitysympäristön asennus
Arduino IDE:n asentaminen
Vieraile Arduino.cc-sivustolla ja klikkaa ohjelmistoa, tai voit klikata TÄSTÄ.
Lataa Arduino IDE ja asenna se.
Korttien hallinnan asennus
Board Managerin URL-osoitetta käytetään kehitysalustan tietojen indeksointiin tietylle alustalle. Arduino IDE:n valikossa valitse Tiedosto -> Asetukset

Kopioi M5Stack-laudan hallinta-URL alla oleva kenttään Lisälauta Managerin URL-osoitteet: ja tallenna.

Sivupalkissa valitse Lauta Manager, etsi M5Stack ja klikkaa Asenna

Kehityslaudan valinta
Käytetyn tuotteen mukaan valitse vastaava kehityslauta valikosta Työkalut -> Lauta -> M5Stack -> {Tuotteen nimi}.

Pikaopas M5Stack UIFlow 2.0 Web IDE:lle
Mikä on M5Stack UIFlow
UIFlow2 on käyttäjäystävällinen graafinen ohjelmointi-IDE, joka tarjoaa saumattoman langattoman ja langallisen ohjelman siirron, ohjelman klikkauksen ja suoritusominaisuuden ilman tarvetta toistuviin käännöksiin. Se integroituu saumattomasti yli 100 M5-laitteiston lisälaitteen ja anturin kanssa, mahdollistaen vaivattoman lisäyksen ja laajennuksen yhdellä klikkauksella. Tämä ominaisuus mahdollistaa tuotteen prototyypin rakentamisen ja nopeuttaa kehitysprosessia, mikä lopulta johtaa parantuneeseen tuottavuuteen ja tehokkuuteen. Tässä opetusohjelmassa näytämme, kuinka poltetaan UIFlow 2.x version laiteohjelmisto M5Stack-laitteeseesi ja käytetään UIFlow Web IDE:tä tuotteen toissijaiseen kehitykseen.
Ennen ohjelmointia UIFlow'lla on tehtävä muutamia valmistelutoimia:
-
Asenna M5Burner-laiteohjelmiston poltto-ohjelma.
-
Käytä M5Burneria polttaaksesi laiteohjelmiston vastaavalle laitteelle, kirjaudu tilillesi ja määritä laitteen Wi-Fi-yhteys.
-
Avaa UIFlow Web IDE 2.0 -versio, valitse sopiva online-laitteen vaihtoehto ja klikkaa yhdistääksesi.
-
Vedä ja pudota lohkoja muokataksesi ohjelmaa ja klikkaa Suorita-painiketta ohjelman virheenkorjaukseen.
Lisätietoja:
M5Burner on M5Stackin kehittämä yhtenäinen laiteohjelmiston poltto-ohjelma. Sen avulla käyttäjät voivat helposti polttaa UIFlow-laiteohjelmiston ja kirjoittaa konfiguraatiotietoja, kuten Wi-Fi-asetuksia, polton aikana.
Asenna M5Burner
M5Stack Community -tili
Jotta voit käyttää M5Burneria ja UIFlow 2.0/1.0 -ohjelmistoa, sinun tulee rekisteröityä M5Stack Community -tilille. Huomioithan, että tätä tiliä voi käyttää myös kirjautumiseen M5Burnerin ja UIFlow 2.0/1.0 kirjautumissivulle. Rekisteröityäksesi M5Stack Community -tilille, klikkaa 'Register'-painiketta M5Burner-ohjelmistossa, UIFlow 2.0/1.0 -ohjelmistossa tai verkkoversiossa.
Laiteohjelmiston poltto ja ohjelmien suorittaminen
USB-ajurin asennus
Portin valinta
Yhdistääksesi laitteen tietokoneeseen, käytä USB-kaapelia. Napsauta sitten M5Burnerissa asianmukaisen laiteohjelmiston Burn-painiketta. Sinun tulee syöttää Wi-Fi-tiedot ja valita oikea laiteportti.

Laiteohjelmiston poltto
Yhdistä laite tietokoneeseen USB-kaapelilla, valitse M5Burnerissa vastaavan laiteohjelmiston Burn-painike ja täytä Wi-Fi-asetukset, joihin laite on esiyhdistetty, mukaan lukien Wi-Fi SSD ja Wi-Fi-salasana sekä muut lisättävät tai muutettavat laiteasetukset.


Avaa UIFlow
Napsauta https://uiflow2.m5stack.com, avaa M5Stack UIFlow 2.0
Napsauta laitteen palkkia oikeassa alakulmassa, löydät uuden laitteesi näin:


Voit nyt käyttää M5Stack UIFlow'ta normaalisti.
Kirjastot ja SDK:t
Kirjastot
SDK
Kuinka yhdistää M5Stack Arduino IDE:hen
Yhdistä M5Stack Core2 ja tietokoneesi.
Avaa Arduino IDE, napsauta Työkalut-Levy-M5Stack-M5Core2

Valitse oikea portti, vaihda latausnopeudeksi 1500000

Perusohjelmointiesimerkit
Napsauta Tiedosto-Esimerkit-M5Core2, löydät perusohjelmointiesimerkit.
Kun olet valmis tarkistamaan, voit ladata koodin M5Stack Core2 -laitteeseesi.

Pakkauksen avaaminen ja käyttöönotto
Paketin sisältö
-
1x Core2 V1.1
-
1x Type-C USB (20 cm)
-
1x kuusiokoloavain

M5Stack Core2 -laitteen takapuolella on seuraavat keskeiset komponentit:
-
ESP32-pohjainen, sisäänrakennetulla Wi-Fillä
-
16M Flash ja 8M PSRAM
-
-
Sisäänrakennettu kaiutin, virtavalo, tärinämootori, RTC, I2S-vahvistin, virtapainike.
-
TF-korttipaikka (enintään 16GB)
-
Sisäänrakennettu litiumakku ja virtahallintapiiri
-
Itsenäinen pieni kortti, jossa on 6-akselinen IMU ja PDM-mikrofoni
-
M-Bus-liitin ja nastat
Kun avaat vasemmalla puolella olevan takakannen, jossa lukee ‘Core2’, löydät MIC-piirin (SPM1423), IMU-piirin (MPU6886, joka sisältää 3-akselisen gyroskoopin ja 3-akselisen kiihtyvyysanturin) sekä liitäntänastat.
M5Stack Core2 Tehdaslaiteohjelmisto
M5Stack Core2:n Tehdaslaiteohjelmiston sivu tarjoaa kattavan yleiskatsauksen laitteen ominaisuuksiin. Se näyttää keskeiset tiedot, kuten MPU6886-sirun, reaaliaikakellon, akun tason ja erilaiset asetukset. Sivulla on myös ominaisuuksia, kuten virran päälle/pois kytkeminen, Wi-Fi-yhteyden tila ja ajastintoiminto. Lisäksi se mahdollistaa SD-kortille tallennettujen kuvien ja musiikin näyttämisen sekä tarjoaa visuaalisen esityksen nykyisestä äänenvoimakkuustasosta. Tämä sivu toimii intuitiivisena käyttöliittymänä laitteen keskeisten toimintojen hallintaan ja suorituskyvyn seurantaan.
Järjestelmän toiminnallisuuden testaus
Järjestelmä tukee I/O-liitäntätestausta, älykästä moottoritestausta, summerin testausta ja TFT-näytön toiminnallisuuden testausta. Nämä testit auttavat varmistamaan, että kaikki komponentit toimivat oikein, jolloin käyttäjät voivat tarkistaa laitteen keskeiset ominaisuudet ja toiminnallisuuden.
Tuki Wi-Fi:lle
Wi-Fi-sivulla M5Stack Core2 näyttää lähellä olevat saatavilla olevat Wi-Fi-verkot, jotka on lajiteltu signaalin vahvuuden mukaan. Käyttäjät voivat helposti tarkastella ja valita parhaan verkon yhteyttä varten, varmistaen optimaalisen signaalin laadun ja vakavuuden. Tämä ominaisuus mahdollistaa laitteen nopean yhteyden verkkoon, tarjoten luotettavan tuen IoT-sovelluksille ja etätoiminnoille.
M5Stack Core2 Esimerkit
UIFlow-projektit
Tänään käytän M5Stack 8ENCODERiä ja M5Stack Core2:ta näyttääkseni, miten M5Stack UIFlow'ta käytetään
Yhdistä
Ensinnäkin yhdistä M5Stack Core2 ja tietokone Type-C-kaapelilla, ja yhdistä M5Stack Core2 ja 8ENCODER Grove-kaapelilla
Koska 8ENCODER-yksikössä on 8 kanavaa, saimme M5Stack Core2 -näytölle 9 tunnistetta näin:
Lisää yksikkö
Seuraavaksi lisää yksikkö, etsi 8Encoder ja valitse Bus arvoksi I2C
Asetukset
Alustetaan I2C SCL:ksi 33, SDA:ksi 32, taajuudeksi 100K
Alustetaan encoder8_0 I2C-osoitteeksi 0x41
Silmukka
M5Stack 8Encoder-kanavan arvon asetus
M5Stack 8Encoder-kanavan RGB-LED-värin asetus

Tehdään prototyyppi soivasta yhdistelmälukosta

Jos kanava 1 arvo = kanava 2 arvo, kanava 3 arvo = kanava 4 arvo
Aseta label8 teksti 'Oikein', ja summeri muistuttaa kovaa
Muuten, label8 teksti 'Väärin', summeri hiljaa
Ladataan koodi ja katsotaan, mitä tapahtuu


Ja voimme käsitellä monimutkaisempaa logiikkaa. Pidä hauskaa M5Stack Core2:si kanssa.
Siistejä tee-se-itse-projekteja M5Stack Core2:lle
M5Stack Core2 ja Home Assistant
Integrointi Home Assistantin kanssa
Koska M5Stack Core2 käyttää ESP32-sirua, voimme käyttää ESPHomea yhdistämään M5Stackin ja Home Assistantin.


M5Stack Core2:n määrittäminen kodin automaatiokontrolleriksi
Asenna ESPHome Home Assistantiin
-
Jos sitä ei ole vielä asennettu, siirry Home Assistantin Asetukset > Lisäosat > Lisäosakauppa.
-
Etsi 'ESPHome' ja asenna se. Asennuksen jälkeen käynnistä lisäosa.
Luo uusi laite ESPHomeen
-
Kun ESPHome-lisäosa on käynnissä, siirry ESPHome-sivulle Home Assistant -instanssissasi.
-
Napsauta oikeassa alakulmassa Uusi laite ja sitten Jatka.
-
Nimeä laitteesi, esim. 'm5stack-core2', ja valitse alustaksi ESP32, sitten valitse M5Stack Core tai M5Stack Core2, jos ne ovat listattuna (tarkka nimitys voi vaihdella ESPHome-version mukaan).
Määritä ESPHome M5Stack Core2:lle
-
Tässä on esimerkki YAML-konfiguraatiosta, jota voit käyttää M5Stack Core2:lle:
esphome: nimi: m5stack-core2 alusta: ESP32 levy: m5stack-core-esp32 wifi: ssid: "Your_WiFi_SSID" salasana: "Your_WiFi_Password" # Ota varayhteyspiste (captiven portaalin) käyttöön, jos wifi-yhteys epäonnistuu ap: ssid: "M5Stack-Core2 Fallback Hotspot" salasana: "Your_AP_Password" lokikirja: api: ota: anturi: - alusta: axp192 osoite: 0x34 i2c_id: bus_a päivitysväli: 30s akku_taso: nimi: "M5Stack Core2 Akun Taso" # Esimerkki näytön käytöstä (jos ESPHome-versiosi tukee) näyttö: - alusta: ili9341 malli: M5STACK_CORE2 cs_nasta: GPIO5 dc_nasta: GPIO15 nollaus_nasta: GPIO33 taustavalo_nasta: GPIO32 lambda: |- it.print(0, 0, id(my_text_sensor).state.c_str()); # Jos haluat käyttää painikkeita tai muita ominaisuuksia painike: - alusta: gpio nimi: "Painike A" pin: number: GPIO39 inverted: true id: button_a
✔ Kopioitu!
Huom: Näytön tarkka konfiguraatio ei välttämättä ole täysin tuettu tai saattaa vaatia lisäasetuksia, sillä ESPHome:ssa on mainintoja Core2-näytön rajoitetusta tuesta. Saatat joutua etsimään yhteisön panoksia tai ulkoisia kirjastoja täydelliseen toiminnallisuuteen.
Käännä ja lataa laiteohjelmisto
-
Napsauta Asenna ESPHome-käyttöliittymässä kääntääksesi YAML-konfiguraation laiteohjelmistoksi ja ladataksesi sen M5Stack Core2:een. Varmista, että laite on lataustilassa (usein pitämällä virtapainiketta tai reset-painiketta pohjassa käynnistyksen aikana).
Integroi Home Assistantiin
-
Kun laite yhdistyy WiFi-verkkoosi, Home Assistant löytää sen automaattisesti, jos käytät natiivista API:a. Muussa tapauksessa voit lisätä sen manuaalisesti kohdassa Asetukset > Integraatiot > Lisää integraatio, etsimällä ’ESPHome’ ja syöttämällä laitteen isäntänimen tai IP-osoitteen.
Vianmääritys ja lisäominaisuudet
-
Jos näyttö ei toimi tai muut komponentit, kuten anturit tai painikkeet, eivät tunnistu, sinun kannattaa tarkistaa yhteisöfoorumit tai GitHub päivitysten tai mukautettujen asetusten varalta. On keskusteluja siitä, että Core2:n joidenkin komponenttien, kuten virranhallintapiirin (AXP192) tai näytön, tuki täytyy lisätä manuaalisesti.
Akun hallinta
M5Stack Core2:ssa on sisäänrakennettu virranhallintajärjestelmä; varmista, että konfiguroit sen oikein akun valvontaa ja virransäästöominaisuuksia varten.
Mukautetut komponentit
Ominaisuuksien, joita ei tueta natiivisti, osalta saatat joutua luomaan tai käyttämään mukautettuja komponentteja tai harkitsemaan vaihtoehtoja, kuten OpenHASP-näytön ohjaukseen.
Muista, että ESPHome-tuki M5Stack Core2:lle, erityisesti näytön osalta, saattaa kehittyä, joten ESPHome- ja Home Assistant -ohjelmistojen päivittäminen voi auttaa yhteensopivuudessa ja ominaisuuksien saatavuudessa.
Vianmääritys ja usein kysytyt kysymykset
Yleiset ongelmat ja ratkaisut
Kysymys 1: Mikä on määrittely M5Stack Core2:n
V1:
M5Stack Core2 on monipuolinen ESP32-kehityskortti, joka on suunniteltu IoT- ja upotettuihin sovelluksiin. Se käyttää ESP32 D0WDQ6-V3 kaksiytimistä MCU:ta, jossa on 16 Mt Flash-muistia ja 8 Mt PSRAM-muistia. Siinä on 2,0 tuuman kapasitiivinen kosketusnäyttö, Wi-Fi-yhteys ja 390 mAh ladattava akku, jota hallitsee AXP192-virtapiiri varmistaen tehokkaan virranhallinnan. Lisäominaisuuksiin kuuluvat USB Type-C-liitäntä, TF-korttipaikka, sisäänrakennettu RTC-moduuli, tärinämootori, I2S-digitaalinen ääniliitäntä ja ohjelmoitavat kapasitiiviset kosketuspainikkeet, jotka tekevät M5Stack Core2:sta ihanteellisen valinnan kehittäjille, jotka työskentelevät älylaitteiden, kodin automaation ja interaktiivisten elektroniikkaprojektien parissa.
Kysymys 2: Mikä on M5Stack Core2:n näytön resoluutio?
A2:
M5Stack Core2 sisältää 2,0 tuuman kapasitiivisen kosketusnäytön resoluutiolla 320x240 pikseliä.
Kysymys 3: Mikä on siirtonopeus M5Stack Core2:n siirtonopeus?
A3:
Oletusarvoinen siirtonopeus M5Stack Core2:lle on tyypillisesti asetettu 115200 bps sarjaviestintään. Koodissa sitä voidaan kuitenkin säätää muihin arvoihin projektisi vaatimusten mukaan.
Kysymys 4: Miksi muistikorttini ei lue M5Stack Core2:ssa, ja miten voin korjata sen?
A4:
Parantaaksesi muistikortin lukemiskykyä M5Stack Core2:ssa, voit käyttää seuraavaa koodia GPIO-nastojen konfigurointiin ja muisti-liitännän parantamiseen:
for (auto gpio : (const uint8_t[]){18, 19, 23}) { *(volatile uint32_t*)(GPIO_PIN_MUX_REG[gpio]) |= FUN_DRV_M; gpio_pulldown_dis((gpio_num_t)gpio); gpio_pullup_en((gpio_num_t)gpio); }
✔ Kopioitu!

Tämä koodi määrittää tietyt GPIO-nastat (18, 19, 23) ottamalla käyttöön tarvittavat pull-up-vastukset ja säätämällä ajotehoa, mikä voi parantaa muistikortin lukunopeutta.
K5: Kuinka havaitsemme Core2:n virran tason?
A5:
M5Stack Core2:n virran tason havaitsemiseksi voit käyttää seuraavaa koodia, joka hyödyntää Core2 API:a akun jännitteen hakemiseen:
#include void setup() { M5.begin(); } void loop() { Serial.printf("Battery Voltage: %f\n", M5.Axp.GetBatVoltage()); delay(500); }
✔ Kopioitu!
Tämä koodi lukee akun jännitteen ja tulostaa sen sarjamonitoriin joka 500 millisekunti. Varmista, että tutustut M5Core2 API-dokumentaatioon saadaksesi tarkempia toimintoja ja asetuksia virranhallintaan liittyen.
K6: Kuinka voin näyttää kuvia M5Stack Core2:ssa käyttäen C-kieltä?
A6:
Näyttääksesi 320x240 pikselin JPG-kuvan nimeltä
logo.jpg
M5Stack Core2:ssa, toimi seuraavasti:-
Luo kuva: Valmistele 320x240 pikselin JPG-kuva nimeltä
logo.jpg
. -
Muunna kuva: Lataa lähdetiedostot, pura ne ja avaa kansio. Suorita terminaalissa
.\conver.ps1
-skripti muuntaaksesi kuvan Core2-yhteensopivaan binäärimuotoon. -
Korvaa kuvatiedot: Muunnoksen jälkeen ota syntynyt binääridata ja korvaa sillä taulukon sisältö annetussa lähdetiedostossa.
-
Lataa ohjelma: Avaa
drawImageData_core2_Pure.ino
-tiedosto ja lisää muunnetut binääridatat taulukkoon. Lataa ohjelma M5Stack Core2:lle.



Kun ohjelma on ladattu, kuva näytetään näytöllä esimerkin mukaisesti.
Muista viitata viralliseen dokumentaatioon lisäohjeita varten kuvien ja niiden binäärimuotojen käsittelyssä.
Vinkkejä ja niksejä M5Stack Core2:n käyttöön
Yleisiä vinkkejä
Akun hallinta
Käytä AXP192-sirua virranhallintaan. Seuraa akun tasoa M5Stack Core2 -kirjaston tai ESPHome-konfiguraatioiden kautta hallitaksesi virrankulutusta tehokkaasti.
Laiteohjelmistopäivitykset
Tarkista säännöllisesti M5Stack Core2 -laitteesi laiteohjelmiston päivitykset hyötyäksesi uusista ominaisuuksista, suorituskyvyn parannuksista ja tietoturvakorjauksista. Käytä tähän M5Burner-työkalua.
Mukautettu käynnistyslogo
Personoi laitteesi asettamalla mukautettu käynnistyslogo M5Burner-työkalulla. Tämä voi tehdä laitteestasi ainutlaatuisen tai heijastaa projektin teemaa.
Laitteiston hyödyntäminen
Näytön kirkkaus
Säädä näytön kirkkautta ohjelmallisesti AXP192-piirin avulla virran säästämiseksi. Alenna kirkkautta vähemmän kriittisissä toiminnoissa tai kun laite on valmiustilassa.
Kosketusnäytön käyttö
Interaktiivisemmissa projekteissa hyödynnä kosketusnäytön ominaisuuksia. Käytä M5.Touch-luokkaa kosketuksen tunnistukseen. Muista, että näyttö tukee monikosketusta, jota voi käyttää monimutkaisempiin käyttöliittymiin.
IMU (Inertial Measurement Unit) -anturi
Sisäänrakennettua MPU6886:ta voi käyttää liikkeentunnistukseen, eleohjaukseen tai kameran vakautussovelluksiin. Huomioi sen vaikutus pariston kestoon, jos sitä käytetään jatkuvasti.
MicroSD-kortti
Hyödynnä microSD-paikkaa datan tallennukseen, suurempien tiedostojen säilytykseen tai muistin laajentamiseen sovelluksissa, jotka tarvitsevat enemmän tallennustilaa kuin sisäinen flash tarjoaa.
Ohjelmistovinkkejä
Arduino IDE
Kun käytät Arduino IDE:tä, varmista, että asennat M5Stack Core2 -kortin tukipaketin M5Stack-kirjastonhallinnan kautta täydellistä laitteistotukea varten.
ESPHome-integraatio
Jos integroituu Home Assistantin kanssa ESPHomen kautta, käytä esimerkkikonfiguraatioita, mutta varaudu säätämään niitä, erityisesti näytön tai virranhallinnan osalta.
Virransäästötilat
Ota käyttöön syvälepotila-tila paristokäyttöisissä projekteissa. M5Stack Core2 voi herätä erilaisista laukaisimista, kuten kosketuksesta, painikkeen painalluksesta tai ajastimesta.
Bluetooth ja WiFi
ESP32 tukee sekä Bluetoothia että WiFiä. Käytä Bluetoothia vähävirtaiseen, lyhyen kantaman viestintään tai WiFiä vaativampiin verkkotarpeisiin, mutta hallitse niiden virrankulutusta huolellisesti.
Projektiehdotuksia
Älykodin ohjain
Muuta Core2 kannettavaksi älykodin ohjaimeksi kosketuspohjaisilla käyttöliittymillä valojen, ilmastoinnin ym. hallintaan.
Pukeutuva teknologia
Käytä IMU:ta kuntoilun seurantalaitteissa tai VR-ohjaimissa hyödyntäen sisäänrakennettuja antureita liikkeen analysointiin.
Opetusvälineet
Luo vuorovaikutteisia oppimislaitteita opetustarkoituksiin, joissa opiskelijat voivat käsitellä tietoja visuaalisesti.
Vianmääritys
Resetointimenetelmät
Jos laitteesi jumittuu, muista, että takana on reset-painike ja myös virtapainikkeen reset-toiminto pitämällä sitä painettuna noin 10 sekuntia.
Vianmääritys
Käytä sarjaportin ulostuloa virheenkorjaukseen. Yhdistä USB:n kautta ja käytä työkaluja kuten Arduino Serial Monitor tai terminaaliemulaattori saadaksesi reaaliaikaista palautetta koodistasi.
Yhteisön resurssit
M5Stack-yhteisö on melko aktiivinen; foorumit, GitHub ja sosiaalisen median ryhmät ovat erinomaisia paikkoja vianmääritykseen ja inspiraatioon.
Johtopäätös
M5Stack Core2 V1.1 -arvostelun tärkeimmät ominaisuudet ja edut
Avainominaisuudet
2,0 tuuman kapasitiivinen kosketusnäyttö
Varustettu 320x240 IPS LCD -näytöllä, jossa kolme ohjelmoitavaa virtuaalipainiketta kuumavyöhykekartoituksella (FT6336U, I2C-osoite 0x38), mahdollistaen räätälöidyn ihmisen ja koneen vuorovaikutuksen.
Parannetut aistimistoiminnot ja palauteominaisuudet
Sisäänrakennettu värinämoottori haptiseen palautteeseen ja hälytyksiin.
6-akselinen IMU (MPU6886) liikkeentunnistukseen ja PDM-mikrofoni äänen sisäänottoa varten.
Integroitu kaiutin I2S-vahvistimella (NS4168) korkealaatuista ääntä varten.
Virran- ja ajan hallinta
AXP2101-virtahallintapiiri (yhdistettynä INA3221:een) optimoi virrankulutuksen, sininen virtailmaisin näyttää tilan tai mukautetut toiminnot.
Reaaliaikakello (RTC, BM8563) omalla varavirralla takaa tarkan ajan myös virran ollessa pois päältä.
500mAh litiumakku kannettavaa käyttöä varten.
Yhteydet ja tallennus
ESP32-D0WDQ6-V3, jossa kaksiytiminen 240MHz-prosessori, Wi-Fi, 16MB Flash ja 8MB PSRAM.
MicroSD-korttipaikka (jopa 16GB) laajennettuun tallennustilaan.
USB Type-C, GROVE-portit (I2C, UART, GPIO) ja M-Bus-liitin laajennettavuutta varten.
Kehityksen joustavuus
Yhteensopiva useiden alustojen kanssa: UIFlow, MicroPython, Arduino, .NET nanoFramework ja Zephyr RTOS.
Sisältää fyysiset ohjaimet, kuten virtapainikkeen ja reset-painikkeen, sekä CH9102F USB-sarjamuunninpiirin luotettavaan ohjelmointiin.
Lisälaitteet
Sininen virtavalo-LED, tärinämoottori ja kompakti muotoilu (54 x 54 x 16,5 mm) muovikuorella.
Käyttölämpötila-alue 0 °C – 60 °C, sopii erilaisiin ympäristöihin.
Edut
-
Monipuolisuus: Ihanteellinen IoT-päätelaitteiden ohjaimiin, tee-se-itse-projekteihin, STEM-koulutukseen ja älykotilaitteisiin rikkaan ominaisuusvalikoimansa ja laajennettavuutensa ansiosta.
-
Käyttäjäystävällinen vuorovaikutus: Kosketusnäyttö ja virtuaaliset painikkeet yhdistettynä haptiseen palautteeseen luovat intuitiivisen käyttöliittymän monipuolisiin sovelluksiin.
-
Luotettava suorituskyky: RTC varavirralla ja energiatehokas AXP2101 takaavat tasaisen toiminnan, myös kannettavissa tai vähävirtaisissa tilanteissa.
-
Laajennettavuus: Laajat liitäntämahdollisuudet (Wi-Fi, I2C, UART) ja yhteensopivuus M5Stack-moduulien kanssa (huomioiden alustan yhteensopivuus) mahdollistavat räätälöidyt laajennukset.
-
Kehittäjäystävällinen: Monialustatuki ja vahva ekosysteemi (kuten M5Unified-kirjastot) helpottavat kehitystä, ja MicroSD-korttipaikka sekä äänitoiminnot lisäävät projektien mahdollisuuksia.
Käytännön huomioita
-
Akkualustan poistaminen vaaditaan pinottaessa M5-moduulien kanssa; M5GO Bottom2 suositellaan täyden toiminnallisuuden säilyttämiseksi.
-
Tärinämoottori saattaa häiritä M5 Base -sarjan alustoja, joten vältä pinottamista niiden kanssa.
-
Reunatunnistuksen epälineaarisuus voidaan korjata laiteohjelmistopäivityksillä M5Toolin kautta.
M5Stack Core2 V1.1 erottuu kompaktina, ominaisuuksiltaan rikkaana alustana, joka tasapainottaa tehoa, vuorovaikutteisuutta ja joustavuutta, tehden siitä erinomaisen valinnan harrastajille, opettajille ja kehittäjille.