Բովանդակություն:
- Քայլ 1: Մոդուլներ
- Քայլ 2: STM32 NUCLEO-L432KC
- Քայլ 3: onstուցադրություն
- Քայլ 4: Հավաքում
- Քայլ 5: րագիր
- Քայլ 6: Գրադարաններ
- Քայլ 7: Աղբյուրի կոդ
- Քայլ 8: Ֆայլեր
Video: RPM հաշվիչ STM32- ով `8 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Թեև որոշ չափով անհանգստություն է պատճառում գնելը (քանի որ այն հասանելի չէ բազմաթիվ ինտերնետ խանութներում), անհրաժեշտ եմ համարում քննարկել STM32 L432KC- ը: Այս չիպը հատուկ ջերմության է արժանի, քանի որ այն ULTRA LOW POWER է: Այնուամենայնիվ, նրանց համար, ովքեր չունեն STM32- ը, այն կարող է այս նախագծում փոխարինվել Arduino Uno- ով: Դա անելու համար պարզապես փոխեք ընդհատման մուտքի քորոցը:
Եկեք այնուհետև ստեղծենք RPM հաշվիչ ՝ օգտագործելով STM32 L432KC և ինֆրակարմիր տվիչ: Այս նույն ծրագիրը կարող է օգտագործվել նաև քամու արագությունը չափելու համար: Այս միկրոկառավարիչի ցածր էներգիայի հատկությունը կատարյալ է IOT- ի համար:
Քայլ 1: Մոդուլներ
Այսօրվա մեր նախագծի համար մենք օգտագործում ենք 8-նիշանոց MAX7219CWG, ինչպես նաև ինֆրակարմիր մոդուլը:
Քայլ 2: STM32 NUCLEO-L432KC
Քայլ 3: onstուցադրություն
Մեր հավաքում մենք ունենք STM32, 8-նիշանոց էկրան և զարկերակային մուտք: Ինֆրակարմիր քարտի վրա կա ֆոտոտրանսիստոր և LED, որը գրավում է լույսը ՝ սպիտակ ժապավենից դուրս ցատկելով: Այս ժապավենը ամրացված է անիվի վրա և յուրաքանչյուր պտույտի ժամանակ կստեղծի զարկերակ, որը կգրավի STM32 ընդհատումով:
Մենք ունենք դիոդ և կոնդենսատոր, որոնք օգտագործվել են ժապավենի ընթերցման ազդանշանի աղմուկը STM32- ին չհասնելու համար, ինչը կստիպի այն մեկնաբանել միացումն ու անջատումը:
Ուցադրումը ցույց է տալիս մեր նախագիծը, ինչպես նաև Minipa հաշվիչը (երկուսն էլ գործում են):
Քայլ 4: Հավաքում
Քայլ 5: րագիր
Մենք կանենք մի ծրագիր, որի ընթացքում ինֆրակարմիր մոդուլը STM32 L432KC- ում յուրաքանչյուր «պտույտ» ընդմիջում կհանգեցնի, և մենք կանենք հաշվարկները ՝ RPM- ը էկրանին ցուցադրելու համար:
Քայլ 6: Գրադարաններ
Ավելացրեք հետևյալ «DigitLedDisplay» գրադարանը:
Պարզապես մուտք գործեք «Էսքիզներ >> Ներառեք գրադարաններ >> Կառավարեք գրադարանները …"
Քայլ 7: Աղբյուրի կոդ
Գրադարաններ և փոփոխականներ
Եկեք սկսենք աղբյուրի կոդը, ներառյալ DigitLedDisplay գրադարանը: Մենք ցույց կտանք ցուցադրման օբյեկտը: Ես սահմանեցի ընդհատման քորոցը, որը կլինի 12. Բացի այդ, ես մուտքագրում եմ անկայուն օպերատոր ինչպես RPM հաշվիչի, այնպես էլ ժամանակի համար `բախման խնդիրներից խուսափելու համար:
/ * Ներառել DigitLedDisplay Library */# - ը ներառում է «DigitLedDisplay.h»/ * Arduino Pin- ը ՝ Pin 7 -ը DIN- ին, 6 -ը CS- ին, 5 -ը CLK */// DigitLedDisplay ld = DigitLedDisplay (7, 6, 5); // arduino DigitLedDisplay ld = DigitLedDisplay (4, 2, 3); // STM32 L432KC int քորոց = 12; // pino de interrupção (módulo IR) անկայուն անստորագիր int rpm; // contador de rpm անկայուն անստորագիր երկար ժամանակ; // տեմպ
Կարգավորում
Setup- ում մենք կարգավորում ենք ցուցադրման գործողությունը, ինչպես նաև կարգավորում ենք ընդհատումը որպես Rising:
void setup () {Serial.begin (115200); / * Սահմանեք պայծառության նվազագույնը `1, առավելագույնը` 15 */ ld.setBright (10); / * Սահմանեք թվանշանների քանակը */ ld.setDigitLimit (8); ld.printDigit (0); attachInterrupt (digitalPinToInterrupt (pin), interruptPin, RISING); rpm = 0; timeold = millis (); }
Օղակ
Ի վերջո, մենք որոշում ենք 1 -ի 1 րոպեի ընդմիջումը `էկրանը թարմացնելու համար: Էկրանը մաքրելուց հետո տպում ենք RPM- ը: Մենք կատարում ենք այն գործառույթը, որը կանչելու է ընդհատումը: Մենք հաշվարկում ենք RPM և թարմացման ժամանակը:
void loop () {հետաձգում (1000); ld. հստակ (); ld.printDigit (rpm); } void interruptPin () {rpm = 60*1000/(millis () - timeold); timeold = millis (); }
Քայլ 8: Ֆայլեր
Ներբեռնեք ֆայլերը.
ԻՆՈ
Խորհուրդ ենք տալիս:
Այցելուների հաշվիչ `օգտագործելով 8051 և IR սենսոր LCD- ով` 3 քայլ
Այցելուների հաշվիչ `օգտագործելով 8051 և IR սենսոր LCD- ով. Հարգելի ընկերներ, ես բացատրել եմ, թե ինչպես պատրաստել այցելուների հաշվիչ` օգտագործելով 8051 և IR սենսորներ և ցուցադրել այն LCD- ում: 8051 -ը ամենահայտնի միկրոկառավարիչներից է, որն օգտագործվում է ամբողջ աշխարհում հոբբի, առևտրային ծրագրեր պատրաստելու համար: Ես տեսակցել եմ
Բանկային հաշվի խնայողությունների հաշվիչ `18 քայլ
Բանկային հաշվի խնայողությունների հաշվիչ. Շնորհակալություն իմ խնայողությունների հաշվիչն ընտրելու համար: Այսօր մենք կսովորենք, թե ինչպես ծրագրավորել BankAccount դաս `ձեր անձնական ծախսերն ու խնայողությունները հետևելու համար: Ձեր ծախսերին հետևելու համար բանկային հաշիվ ստեղծելու համար նախ անհրաժեշտ կլինի հիմնական
Ներքին օդի որակի հաշվիչ `5 քայլ (նկարներով)
Ներքին օդի որակի հաշվիչ. Ձեր տանը օդի որակը ստուգելու պարզ նախագիծ: Քանի որ վերջին շրջանում մենք շատ ենք մնում/աշխատում տնից, գուցե լավ գաղափար լինի վերահսկել օդի որակը և հիշեցնել ինքներդ ձեզ, երբ ժամանակն է բացել պատուհանը և մի քիչ մաքուր օդ ներս մտեք
RPM հաշվիչ Arduino Uno- ում ՝ 3 քայլ
RPM հաշվիչ Arduino Uno- ում. Arduino- ն ամենակարողության հարթակ է: Այն թույլ է տալիս ստեղծել պարզ բռնկիչներ, բայց նաև բարդ համակարգեր ՝ առավել առաջադեմ ավտոմատացման համար: Տարբեր ավտոբուսների շնորհիվ Arduino- ն կարող է նաև ընդլայնվել `ներառելով տարբեր ծայրամասային սարքեր: Այսօր մենք կանցնենք
Էժան մոդուլների օգտագործմամբ պարզ RPM հաշվիչ `8 քայլ
Էժան մոդուլների օգտագործմամբ պարզ RPM հաշվիչ. Սա շատ հետաքրքիր նախագիծ է և շատ ավելի քիչ ջանքեր է գործադրում, որը կազմում է շատ պարզ RPM հաշվիչ (իմ դեպքում ՝ մեկ վայրկյանում կլոր)