Sisällysluettelo:
- Vaihe 1: Käytetyt resurssit
- Vaihe 2: Kokoonpano
- Vaihe 3: Uusi ohjelma MBED: ssä
- Vaihe 4: DS18b20 -kirjaston tuominen
- Vaihe 5: Uusi ohjelma MBED: ssä
- Vaihe 6: Lähdekoodi
- Vaihe 7: Vastaanotetut tiedot
- Vaihe 8: Lisää antureita
- Vaihe 9: Näytä lähde
- Vaihe 10: Tiedostot
Video: Uskomattoman helppo ohjelmoida !: 10 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
Tänään puhun STM32 -ytimestä, L476RG: stä, joka on Ultra Low Powerin kasvot. Näet sen kuvan vasemmalla puolella. Tässä laitteessa on kaksi naarastappia, yksi kummallakin puolella, jotka ovat vain arduino -suojan liittimet. Tämä on hienoa, eikö?
Mielestäni STMicroelectronics teki tämän kehityspaketissaan, koska se tietää ammattilaisten käyttävän tätä sirua. Tämä yritys on menossa yhä enemmän kohti arduinoa. Tämä pätee myös useisiin muihin ammattimaisiin STMicroelectronics -sarjoihin.
Lopuksi, mitä tulee hankkeeseen tänään, käytämme L476RG: n lisäksi kahta DS18b20 -anturia. Joten teemme yksinkertaisen kokoonpanon L476RG: n avulla, tuomme kirjaston MBED -ympäristöön, luomme ohjelman MBED -ympäristössä ja keräämme tietoja L476RG: stä USB- / sarjaportin kautta.
Olen jo puhunut hieman L476RG: stä tässä videossa: HELPPO TAPA OHJELMOIDA MIKROKONTROLLERIA, jossa näytän kuinka määrittää verkossa oleva MBED -ympäristö.
Jotkut videoitani seuraavat ihmiset kysyvät minulta, korvaako STM32 ESP32: n. Sanon yhden asian: se ei korvaa eikä voinut, koska ne ovat kaksi täysin eri asiaa.
Tämä STM32 -siru on mikro -ohjain, tai pikemminkin; se ei ole "asiakokonaisuus" kuten ESP32. Joten nimi voi näyttää samalta, mutta ne ovat täysin erilaisia. STM32 on yleiskäyttöinen mikro -ohjain, kuten PIC, esimerkiksi Atmel.
Vaihe 1: Käytetyt resurssit
1 ydin L476RG
2 DS18b20 -anturia (käytämme markkinoilla olevia yleisiä vedenpitäviä moduuleja)
1 4k7 vastus
Mini protoboard
Puserot liittämistä varten
Vaihe 2: Kokoonpano
Suoritamme aluksi asennuksen jollakin lämpötila -antureista.
Sen teho on 5 V.
4k7-vastusta käytetään datalinjan vetämiseen (1-johdin).
Luemme tiedot A0 -nastalla.
Vaihe 3: Uusi ohjelma MBED: ssä
Kun olet määrittänyt tilisi MBED -palveluun ja käytät sitä, luomme uuden ohjelman. Voit tehdä tämän napsauttamalla hiiren kakkospainikkeella "Omat ohjelmat" ja valitsemalla "Uusi ohjelma …"
Varmista, että "alusta" on käyttämäsi levyn mukainen.
Napsauta nyt "Malli".
Luomme ohjelman esimerkin "Näytä viesti PC: llä UART: lla" perusteella.
Kirjoita ohjelman nimi kohtaan "Ohjelman nimi".
Valitse "Päivitä tämä ohjelma ja kirjastot uusimpaan versioon".
Ohjelmalle luodaan uusi kansio, joka sisältää oletus -MBED -kirjaston ja main.cpp -tiedoston.
Sen avulla voit testata, toimiiko kaikki hyvin. Voit tehdä tämän yksinkertaisesti kääntämällä sen ja kopioimalla sen alustalle.
Käyttämällä valitsemaasi sarjapäätettä voit vastaanottaa seuraavat viestit.
Vaihe 4: DS18b20 -kirjaston tuominen
Koska Ds18b20: n kirjastoista on useita versioita, tuomme URL -osoitteen avulla, jotta esimerkissäsi käytetään samaa kirjastoa.
Vaihe 5: Uusi ohjelma MBED: ssä
Täytä Lähde -URL -kenttään: https://os.mbed.com/users/Sissors/code/DS1820/ ja valitse Tuo.
DS1820 -kirjastosi pitäisi näkyä ohjelmakansiossasi.
Vaihe 6: Lähdekoodi
Sisältää
Aloitimme sisällyttämällä tarvittavat kirjastot.
#include "mbed.h" // inclusão da biblioteca padrão do MBED#include "DS1820.h" // inclusão da biblioteca do sensor DS1820
Määritämme vakioita, jotka edustavat käytettyjä nastoja.
Huomaa, että DS18b20 on anturi, jossa on 1-WIRE-tiedonsiirto. Tästä syystä käytämme kirjastoa, joka käsittelee koko viestintäprotokollan laitteiden kanssa. Tämä sisältää jokaisen laitteen tunnistamisen lukukomentoihin asti.
#define PINO_DE_DADOS A0 // define o pino para leitura dos dados#define MAX_SENSORES 16 // define o número máximo para o vetor de sensores
Luomme vektorin, joka osoittaa jokaisen 16 datalinjaan yhdistetyn mahdollisen laitteen kohdalle.
DS1820* -anturi [MAX_SENSORES]; // cria um vetor com 16 posições para os sensores
Aloitamme main () -menetelmän, jossa etsimme DS1820 -kirjaston sisältämää "unassignedProbe ()" -menetelmää käyttäen kaikki käytettävissä olevat laitteet tietoliikennelinjalla.
Täytämme anturivektorin tapauksilla, jotka edustavat kutakin käytettävissä olevaa anturia.
Teemme tätä kunnes viimeinen on löydetty tai kunnes saavutamme enintään 16 anturia.
int main () {int encontrados = 0; while (DS1820:: unassignedProbe (PINO_DE_DADOS)) {// aloitetaan hankinta sensores sensor [encontrados] = uusi DS1820 (PINO_DE_DADOS); // cria uma instancia para tai sensori encontrado encontrados ++; if (encontrados == MAX_SENSORES) // verifica se atingiu o máximo de sensores break; }
Lähetämme riviltä löydettyjen antureiden määrän.
printf ("Dispositivos encontrado (s): %d / r / n / n", encontrados);
Aloitamme äärettömän silmukan pyytämällä, että kaikki käytettävissä olevat anturit laskevat vastaavat lämpötilansa ja toistavat sitten anturivektorin läpi lähettämällä saadut lukemat.
printf ("Dispositivos encontrado (s): %d / r / n / n", encontrados); while (1) {sensor [0]-> convertTemperature (totta, DS1820:: kaikki_laitteet); // solicita a leitura de temperatura para todos os dispositivos encontrados for (int i = 0; itemperature ()); //… e retorna a temperatura printf ("\ r / n"); odota (1); }
Vaihe 7: Vastaanotetut tiedot
Yhdellä anturilla saadaan seuraava sarjalähtö.
Vaihe 8: Lisää antureita
Koodin testaamiseksi tuomme tietoliikennelinjaan toisen anturin yksinkertaisesti kytkemällä sen rinnakkain ensimmäisen anturin kanssa.
Muista sammuttaa kokoonpano ennen uusien antureiden liittämistä.
Kun kokoonpano käynnistettiin uudelleen, saimme seuraavan tuloksen ilman muutoksia lähdekoodiin.
Vaihe 9: Näytä lähde
#include "mbed.h" // inclusão da biblioteca padrão do MBED #include "DS1820.h" // inclusão da biblioteca do sensor DS1820 #define PINO_DE_DADOS A0 // define o pino para leitura dos dados #define MAX_SENSORES 16 // define o número máximo para tai vetor de sensores DS1820* anturi [MAX_SENSORES]; // cria um vetor com 16 posições para os sensores int main () {int encontrados = 0; while (DS1820:: unassignedProbe (PINO_DE_DADOS)) {// aloitetaan hankinta sensores sensor [encontrados] = uusi DS1820 (PINO_DE_DADOS); // cria uma instancia para tai sensori encontrado encontrados ++; if (encontrados == MAX_SENSORES) // verifica se atingiu o máximo de sensores break; } printf ("Dispositivos encontrado (s): %d / r / n / n", encontrados); while (1) {sensor [0]-> convertTemperature (totta, DS1820:: kaikki_laitteet); // solicita a leitura de temperatura para todos os dispositivos encontrados for (int i = 0; itemperature ()); //… e retorna a temperatura printf ("\ r / n"); odota (1); }}
Vaihe 10: Tiedostot
Muut
Suositeltava:
Kuinka ohjelmoida Arduino Mega 2560 Core ?: 3 vaihetta
Kuinka ohjelmoida Arduino Mega 2560 Core ?: Löysin tämän suuren pienikokoisen Arduino -megalevyn ebaysta. Se on pienempi versio Arduino mega 2560: sta ja sitä kutsutaan ilmeisesti Arduinon megaydinksi … Yksi ongelma kuitenkin oli! Se ei sisällä usb -liitäntää, eikä siinä ole paljon
Pieni ja halpa taskutietokone, joka voidaan ohjelmoida mihin tahansa: 5 vaihetta
Pieni ja halpa taskutietokone, joka voidaan ohjelmoida mihin tahansa: Voit muuttaa CardKB: n taskutietokoneeksi! Koska BASIC käyttää ArduinoBasicia (https://github.com/robinhedwards/ArduinoBASIC), se tukee lähes kaikkia normaalitoimintoja, kuten
Kuinka ohjelmoida PIC MCU PICkit -ohjelmoijalla käyttämällä leipätaulua: 3 vaihetta
Kuinka ohjelmoida PIC MCU PICkit -ohjelmoijalla Breadboardin avulla: Et tarvitse kalliita ja kehittyneitä työkaluja pelataksesi PIC (tai mikään muu) mikro -ohjaimella. Tarvitset vain leipälevyn, jossa voit testata piiriäsi ja ohjelmointia. Tietenkin tarvitaan jonkinlainen ohjelmoija ja IDE. Tässä ohjeessa
DIY MusiLED, musiikin synkronoidut LEDit yhdellä napsautuksella Windows- ja Linux-sovelluksella (32- ja 64-bittinen). Helppo luoda, helppo käyttää, helppo siirtää: 3 vaihetta
DIY MusiLED, musiikin synkronoidut LEDit yhdellä napsautuksella Windows- ja Linux-sovelluksella (32- ja 64-bittinen). Helppo luoda, Helppo käyttää, Helppo siirtää: Tämä projekti auttaa sinua liittämään 18 LEDiä (6 punaista + 6 sinistä + 6 keltaista) Arduino-korttiin ja analysoimaan tietokoneen äänikortin reaaliaikaisia signaaleja ja välittämään ne LEDit sytyttävät ne beat -tehosteiden mukaan (virveli, korkea hattu, potku)
Uskomattoman vahva USB -hiiri: 9 vaihetta
Uskomattoman vahva USB -hiiri: Olin todella kyllästynyt töissä, joten tein tämän. Käytin hiirtä, jonka johto oli rikki ja altoidipurkki. Tämä on melko huolimatonta. Minulla ei ollut paljon tavallisille tarvikkeilleni, enkä todellakaan ottanut aikani leikkaamiseen. Tämä toimii kuitenkin hyvin ja näyttää