INHOUDSOPGAWE:
- Stap 1: Modules
- Stap 2: STM32 NUCLEO-L432KC
- Stap 3: Demonstrasie
- Stap 4: Montering
- Stap 5: Programmeer
- Stap 6: Biblioteke
- Stap 7: Bronkode
- Stap 8: lêers
Video: RPM -meter met STM32: 8 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
Alhoewel dit 'n oorlas is om te koop (omdat dit nie in baie internetwinkels beskikbaar is nie), vind ek dit nodig om STM32 L432KC te bespreek. Hierdie chip verdien spesiale liefde, want dit is ULTRA LOW POWER. Vir diegene wat nie die STM32 besit nie, kan dit in hierdie projek vervang word deur die Arduino Uno. Om dit te doen, verander eenvoudig die pen van die Interrupt -invoer.
Kom ons maak dan 'n RPM -meter met behulp van die STM32 L432KC en 'n infrarooi sensor. Dieselfde program kan ook gebruik word om windspoed te meet. Die lae-krag funksie van hierdie mikrobeheerder is perfek vir IOT.
Stap 1: Modules
Vir ons projek vandag gebruik ons die 8-syfer MAX7219CWG, sowel as die infrarooi module.
Stap 2: STM32 NUCLEO-L432KC
Stap 3: Demonstrasie
In ons vergadering het ons die STM32, die 8-syfer-skerm en die polsinvoer. Die infrarooi kaart het 'n fototransistor en 'n LED wat die lig vang deur 'n wit lint af te weerkaats. Hierdie band word aan 'n wiel vasgemaak en sal by elke draai 'n pols genereer wat deur die STM32 -onderbreking vasgelê word.
Ons het 'n diode en 'n kapasitor in die samestelling wat gebruik is om te verhoed dat die geraas van die bandleessignaal die STM32 bereik, wat dit die aan- en afskakeling kan laat interpreteer.
Die demonstrasie toon ons projek, sowel as die Minipa -meter (albei in werking).
Stap 4: Montering
Stap 5: Programmeer
Ons sal 'n program doen waarin die infrarooi module elke "draai" 'n onderbreking in die STM32 L432KC sal veroorsaak, en ons sal die berekeninge doen om die RPM op die skerm te vertoon.
Stap 6: Biblioteke
Voeg die volgende "DigitLedDisplay" -biblioteek by.
Gaan eenvoudig na "Skets >> Sluit biblioteke in >> Beheer biblioteke …"
Stap 7: Bronkode
Biblioteke en veranderlikes
Kom ons begin die bronkode, insluitend die DigitLedDisplay -biblioteek. Ons sal die vertoonvoorwerp wys. Ek stel die onderbrekingspen in, wat 12 sal wees. Ek betree 'n onbestendige operateur vir beide die toerusting en die tyd om botsings te voorkom.
/ * Sluit DigitLedDisplay -biblioteek in */#sluit in "DigitLedDisplay.h"/ * Arduino Pin to Display Pin 7 to DIN, 6 to CS, 5 to CLK */// DigitLedDisplay ld = DigitLedDisplay (7, 6, 5); // arduino DigitLedDisplay ld = DigitLedDisplay (4, 2, 3); // STM32 L432KC int pin = 12; // pino de interrupção (IR IR) vlugtige ongetekende int rpm; // contador de rpm vlugtige ongetekende lang tyd; // tempo
Stel op
In die opstelling stel ons die skermbewerking op, sowel as die onderbreking as stygend.
ongeldige opstelling () {Serial.begin (115200); / * Stel die helderheid min: 1, maks: 15 */ ld.setBright (10); / * Stel die syfergetal in */ ld.setDigitLimit (8); ld.printDigit (0); attachInterrupt (digitalPinToInterrupt (pin), interruptPin, RISING); rpm = 0; tydsaam = millis (); }
Lus
Uiteindelik bepaal ons die interval van 1 in 1 minuut om die skerm op te dateer. Nadat ons die skerm skoongemaak het, druk ons die RPM af. Ons voer die funksie uit wat die onderbreking sal noem. Ons bereken RPM en opdateringstyd.
leemte lus () {vertraging (1000); ld.clear (); ld.printDigit (rpm); } leegte interruptPin () {rpm = 60*1000/(millis () - tydoud); tydsaam = millis (); }
Stap 8: lêers
Laai die lêers af:
EK NEE
Aanbeveel:
PWM -seinopwekking met hoë resolusie vir RC -servo's met STM32 -toestelle: 3 stappe
PWM -seinopwekking met hoë resolusie vir RC -servo's met STM32 -toestelle: Tans bou ek 'n RC -sender/ontvanger gebaseer op die SX1280 RF -chip. Een van die doelwitte vir die projek is dat ek 'n 12 -bits servo -resolusie van die stokkies tot by die servo's wil hê. Deels omdat moderne digitale servo's 12 -bits reso het
Aan die gang met Stm32 met behulp van Arduino IDE: 3 stappe
Aan die slag met Stm32 Met behulp van Arduino IDE: STM32 Is 'n redelik kragtige en gewilde bord wat deur Arduino IDE ondersteun word, maar om dit te kan gebruik, moet u die borde vir stm32 in Arduino IDE installeer, dus in hierdie instruksies sal ek vertel hoe u stm32 -borde moet installeer en hoe om dit te programmeer
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino - Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter - Rc Helikopter - Rc -vliegtuig met Arduino: 5 stappe (met foto's)
Draadlose afstandsbediening met 2,4 GHz NRF24L01 -module met Arduino | Nrf24l01 4 -kanaals / 6 -kanaals sender -ontvanger voor quadcopter | Rc Helikopter | Rc -vliegtuig met Arduino: om 'n Rc -motor te bestuur | Quadcopter | Drone | RC -vliegtuig | RC -boot, ons het altyd 'n ontvanger en sender nodig, veronderstel dat ons vir RC QUADCOPTER 'n 6 -kanaals sender en ontvanger nodig het en dat die tipe TX en RX te duur is, so ons maak een op ons
RPM -kontroleerder vir mini -motor DC: 11 stappe (met foto's)
RPM -kontroleerder vir mini -motor gelykstroom: omwenteling per minuut, kortliks 'n rotasiesnelheid uitgedruk in minuut omwentelinge. die toerusting vir die meting van RPM gebruik gewoonlik toerenteller. Verlede jaar gelede het ek 'n interessante projek gevind wat deur electro18 gemaak is, en dit is my inspirasie om te leer, hy was mal
Kragtige bestuurbare 15k rpm -HDD -grinder met voortdurende rotasie: 4 stappe
Kragtige bestuurbare 15k RPM HDD Grinder met voortgesette rotasie: vandag sal ons 'n kragtige, hanteerbare 15k RPM -slypmasjien met voortgesette rotasie vir minder as 5 euro skep;