Satura rādītājs:
- 1. darbība. Izmantotie resursi
- 2. solis: montāža
- 3. darbība. Jauna programma MBED
- 4. darbība. DS18b20 bibliotēkas importēšana
- 5. darbība. Jauna programma MBED
- 6. darbība: avota kods
- 7. darbība: saņemtie dati
- 8. solis: vairāk sensoru iekļaušana
- 9. darbība. Skatīt avotu
- 10. darbība: faili
Video: Neticami viegli programmēt!: 10 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Šodien es runāšu par STM32 Core, L476RG, kas ir īpaši mazjaudas seja. To var redzēt attēla kreisajā pusē. Šai ierīcei ir divi sieviešu tapu stieņi, viens katrā pusē, kas ir nekas vairāk kā savienotāji arduino vairogam. Tas ir lieliski, vai ne?
Manuprāt, STMicroelectronics to darīja savā izstrādes komplektā, jo zina, ka profesionāļi izmanto šo mikroshēmu. Šis uzņēmums arvien vairāk dodas uz arduino. Un tas attiecas arī uz vairākiem citiem profesionāliem STMicroelectronics komplektiem.
Visbeidzot, attiecībā uz projektu šodien, papildus L476RG mēs izmantosim divus DS18b20 sensorus. Tāpēc mēs veiksim vienkāršu montāžu, izmantojot L476RG, importēsim bibliotēku MBED vidē, izveidosim programmu MBED vidē un iegūsim datus no L476RG, izmantojot USB / sērijas.
Šajā videoklipā es jau esmu nedaudz runājis par L476RG: VIEGLĀKĀKS VEIDS PROGRAMMĒT MIKROKONTROLLERU, kur es parādīšu, kā konfigurēt MBED vidi, kas ir tiešsaistē.
Daži cilvēki, kas seko maniem videoklipiem, man jautā, vai STM32 aizstāj ESP32. Es saku vienu: tas neaizstāj un nevarēja, jo tās ir divas pilnīgi atšķirīgas lietas.
Šī STM32 mikroshēma ir mikrokontrolleris, pareizāk sakot; tas nav "lietu kopums", kā tas ir ESP32. Tātad nosaukums var izskatīties līdzīgs, taču tie ir pilnīgi atšķirīgi. STM32 ir universāls mikrokontrolleris, piemēram, PIC, piemēram, Atmel.
1. darbība. Izmantotie resursi
1 kodols L476RG
2 DS18b20 sensori (mēs izmantojam tirgū izplatītos ūdensnecaurlaidīgos moduļus)
1 4k7 rezistors
Mini protoboards
Džemperi savienošanai
2. solis: montāža
Sākumā mēs veiksim montāžu, izmantojot vienu no temperatūras sensoriem.
Tās jauda būs 5 V.
4k7 rezistors tiks izmantots, lai veiktu datu līnijas (1-Wire) savilkšanu.
Mēs nolasīsim datus, izmantojot A0 tapu.
3. darbība. Jauna programma MBED
Kad esat izveidojis savu kontu MBED un piekļūstat tam, mēs izveidosim jaunu programmu. Lai to izdarītu, ar peles labo pogu noklikšķiniet uz "Manas programmas" un atlasiet "Jauna programma …"
Pārliecinieties, vai “platforma” atbilst jūsu izmantotajai plāksnei.
Tagad mēs noklikšķiniet uz "Veidne".
Mēs izveidosim programmu, pamatojoties uz piemēru "Parādīt ziņojumu datorā, izmantojot UART".
Ievadiet programmas nosaukumu sadaļā "Programmas nosaukums".
Atzīmējiet opciju "Atjaunināt šo programmu un bibliotēkas uz jaunāko versiju".
Tiks izveidota jauna mape jūsu programmai, ieskaitot noklusējuma MBED bibliotēku un failu main.cpp.
To var izmantot, lai pārbaudītu, vai viss darbojas labi. Lai to izdarītu, vienkārši apkopojiet to un nokopējiet to platformā.
Izmantojot jūsu izvēlēto seriālo termināli, varat saņemt šādus ziņojumus.
4. darbība. DS18b20 bibliotēkas importēšana
Tā kā Ds18b20 ir vairākas bibliotēku versijas, mēs importēsim, izmantojot URL, lai jūsu piemērā tiktu izmantota tā pati bibliotēka.
5. darbība. Jauna programma MBED
Laukā "Avota URL" aizpildiet: https://os.mbed.com/users/Sissors/code/DS1820/ un noklikšķiniet uz importēt.
Jūsu DS1820 bibliotēkai vajadzētu parādīties jūsu programmas mapē.
6. darbība: avota kods
Ietilpst
Mēs sākām, iekļaujot nepieciešamās bibliotēkas.
#include "mbed.h" // inclusão da biblioteca padrão do MBED#include "DS1820.h" // inclusão da biblioteca do sensor DS1820
Mēs definējam konstantes, kas attēlo izmantotās tapas.
Ņemiet vērā, ka DS18b20 ir sensors ar 1-WIRE komunikāciju. Šī iemesla dēļ mēs izmantojam bibliotēku, kas apstrādās visu saziņas protokolu ar ierīcēm. Tas ietver katras ierīces identificēšanu līdz lasīšanas komandām.
#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
Mēs izveidojam vektoru, kas norādīs uz katru no 16 iespējamām ierīcēm, kas savienotas ar datu līniju.
DS1820* sensors [MAX_SENSORES]; // cria um vetor com 16 posições para os sensores
Mēs sākam galveno () metodi, kur, izmantojot DS1820 bibliotēkā esošo metodi "unassignedProbe ()", mēs meklējam visas pieejamās ierīces sakaru līnijā.
Mēs piepildām sensora vektoru ar gadījumiem, kas attēlo katru no pieejamajiem sensoriem.
Mēs to darām, līdz tiek atrasts pēdējais vai līdz sasniedzam maksimālo 16 sensoru skaitu.
int main () {int encontrados = 0; while (DS1820:: unassignedProbe (PINO_DE_DADOS)) {// inicia a a processura por sensores sensor [encontrados] = jauns DS1820 (PINO_DE_DADOS); // cria uma instancia para o sensor encontrado encontrados ++; if (encontrados == MAX_SENSORES) // verifica se atingiu o máximo de sensores break; }
Mēs nosūtām līnijā atrasto sensoru skaitu.
printf ("Dispositivos encontrado (s): %d / r / n / n", encontrados);
Mēs sākam bezgalīgu cilpu, pieprasot, lai visi pieejamie sensori aprēķinātu atbilstošo temperatūru un pēc tam atkārtotu caur sensora vektoru, nosūtot iegūtos rādījumus.
printf ("Dispositivos encontrado (s): %d / r / n / n", encontrados); while (1) {sensors [0]-> convertTemperature (taisnība, DS1820:: visas_ierīces); // solicita a leitura de temperatura para todos os dispositivos encontrados for (int i = 0; itemperature ()); //… e retorna a temperatura printf ("\ r / n"); pagaidiet (1); }
7. darbība: saņemtie dati
Izmantojot vienu sensoru, mēs iegūstam šādu sērijas izvadi.
8. solis: vairāk sensoru iekļaušana
Lai pārbaudītu kodu, mēs ieviešam citu sensoru sakaru līnijā, vienkārši savienojot to paralēli pirmajam sensoram.
Pirms jaunu sensoru pievienošanas neaizmirstiet izslēgt montāžu.
Restartējot montāžu, mēs ieguvām šādu izvadi, bez izmaiņām avota kodā.
9. darbība. Skatīt avotu
#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 vai vetor de sensores DS1820* sensors [MAX_SENSORES]; // cria um vetor com 16 posições para os sensores int main () {int encontrados = 0; while (DS1820:: unassignedProbe (PINO_DE_DADOS)) {// inicia a a processura por sensores sensor [encontrados] = jauns DS1820 (PINO_DE_DADOS); // cria uma instancia para o sensor 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) {sensors [0]-> convertTemperature (true, DS1820:: visas_ierīces); // solicita a leitura de temperatura para todos os dispositivos encontrados for (int i = 0; itemperature ()); //… e retorna a temperatura printf ("\ r / n"); pagaidiet (1); }}
10. darbība: faili
Citi
Ieteicams:
Kā programmēt Arduino Mega 2560 Core?: 3 soļi
Kā programmēt Arduino Mega 2560 Core?: Es atradu šo lielisko mazo formu Arduino mega dēli ebay. Tā ir mazāka Arduino mega 2560 versija, un to acīmredzot sauc par Arduino mega kodolu … Tomēr bija viena problēma! Tas neietver USB savienojumu, un tajā nav daudz
Kā flash vai programmēt ESP8266 AT programmaparatūru, izmantojot ESP8266 zibspuldzi un programmētāju, IOT Wifi moduli: 6 soļi
Kā zibināt vai programmēt programmaparatūru ESP8266 AT, izmantojot ESP8266 zibspuldzi un programmētāju, IOT Wifi moduli: Apraksts: Šis modulis ir USB adapteris /programmētājs ESP-8266 ESP-01 vai ESP-01S moduļiem. Tas ir ērti aprīkots ar 2x4P 2,54 mm sieviešu galviņu, lai pievienotu ESP01. Tas arī izjauc visas ESP-01 tapas, izmantojot 2x4P 2,54 mm tēviņu
DIY MusiLED, mūzikas sinhronizētas gaismas diodes ar viena klikšķa Windows un Linux lietojumprogrammu (32 bitu un 64 bitu). Viegli atjaunot, ērti lietot, viegli pārvietot: 3 soļi
DIY MusiLED, mūzikas sinhronizētas gaismas diodes ar viena klikšķa Windows un Linux lietojumprogrammu (32 bitu un 64 bitu). Viegli atjaunojams, ērti lietojams, viegli pārvietojams: Šis projekts palīdzēs jums savienot 18 gaismas diodes (6 sarkanas + 6 zilas + 6 dzeltenas) ar Arduino plati un analizēt datora skaņas kartes reāllaika signālus un pārsūtīt tos uz gaismas diodes, lai tās iedegtos saskaņā ar sitienu efektiem (Snare, High Hat, Kick)
Kā viegli modificēt zīmi "Gaisma/LED", lai viegli programmētu Arduino: 7 soļi (ar attēliem)
Kā viegli modificēt zīmi "Gaisma/LED" vieglai Arduino programmēšanai: šajā pamācībā es parādīšu, kā ikviens var pārvērst kaut ko ar gaismām par programmējamām arduino mirgojošām gaismām vai "Kustīgām gaismām"
Neticami HULK Nintendo Wii W/ papildu USB: 6 soļi (ar attēliem)
Neticami HULK Nintendo Wii W/ Extra USB: Nu es BEIDZOT pabeidzu savu otro Wii Mod !!! Neticamais HULK pielāgotais Wii. Es ņēmu vērā jūsu puišu padomu un caur šo jau e-bay! Cerams, ka no manis izveidosies mīkla! Šis Instructable būs ļoti līdzīgs manam Super Mario Wii, izņemot to