สารบัญ:
- ขั้นตอนที่ 1: โมดูล
- ขั้นตอนที่ 2: STM32 NUCLEO-L432KC
- ขั้นตอนที่ 3: การสาธิต
- ขั้นตอนที่ 4: การประกอบ
- ขั้นตอนที่ 5: โปรแกรม
- ขั้นตอนที่ 6: ห้องสมุด
- ขั้นตอนที่ 7: รหัสที่มา
- ขั้นตอนที่ 8: ไฟล์
วีดีโอ: RPM Meter พร้อม STM32: 8 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
แม้ว่าจะค่อนข้างน่ารำคาญที่จะซื้อ (เพราะไม่มีร้านอินเทอร์เน็ตหลายแห่ง) ฉันพบว่าจำเป็นต้องหารือเกี่ยวกับ STM32 L432KC ชิปนี้สมควรได้รับความรักเป็นพิเศษ เนื่องจากเป็นชิปที่ใช้พลังงานต่ำมาก อย่างไรก็ตาม สำหรับผู้ที่ไม่ได้เป็นเจ้าของ STM32 Arduino Uno สามารถแทนที่ได้ในโปรเจ็กต์นี้ เมื่อต้องการทำสิ่งนี้ เพียงแค่เปลี่ยนพินของอินพุตขัดจังหวะ
มาสร้างเครื่องวัด RPM โดยใช้ STM32 L432KC และเซ็นเซอร์อินฟราเรดกัน โปรแกรมเดียวกันนี้สามารถใช้วัดความเร็วลมได้เช่นกัน คุณลักษณะพลังงานต่ำของไมโครคอนโทรลเลอร์นี้เหมาะสำหรับ IOT
ขั้นตอนที่ 1: โมดูล
สำหรับโครงการของเราวันนี้ เราใช้ MAX7219CWG 8 หลัก เช่นเดียวกับโมดูลอินฟราเรด
ขั้นตอนที่ 2: STM32 NUCLEO-L432KC
ขั้นตอนที่ 3: การสาธิต
ในชุดประกอบของเรา เรามี STM32 จอแสดงผล 8 หลัก และอินพุตพัลส์ การ์ดอินฟราเรดมีโฟโตทรานซิสเตอร์และไฟ LED ที่รับแสงโดยการสะท้อนริบบิ้นสีขาว เทปนี้ติดอยู่กับวงล้อและในแต่ละเทิร์นจะสร้างพัลส์ซึ่งจะถูกดักจับโดย STM32 ขัดจังหวะ
เรามีไดโอดและตัวเก็บประจุในแอสเซมบลีซึ่งใช้กันเสียงของสัญญาณการอ่านเทปไม่ให้ไปถึง STM32 ซึ่งจะทำให้มันตีความการเปิดและปิด
การสาธิตแสดงให้เห็นโครงการของเรา เช่นเดียวกับมิเตอร์ Minipa (ทั้งที่กำลังทำงานอยู่)
ขั้นตอนที่ 4: การประกอบ
ขั้นตอนที่ 5: โปรแกรม
เราจะทำโปรแกรมที่โมดูลอินฟราเรดจะทริกเกอร์การขัดจังหวะใน STM32 L432KC ทุกๆ "เทิร์น" และเราจะทำการคำนวณเพื่อแสดง RPM บนจอแสดงผล
ขั้นตอนที่ 6: ห้องสมุด
เพิ่มไลบรารี "DigitLedDisplay" ต่อไปนี้
เพียงเข้าไปที่ "Sketch >> Include Libraries >> Manage Libraries …"
ขั้นตอนที่ 7: รหัสที่มา
ไลบรารีและตัวแปร
เริ่มต้นซอร์สโค้ดรวมถึงไลบรารี DigitLedDisplay เราจะแสดงวัตถุที่แสดง ฉันตั้งค่าพินอินเทอร์รัปต์ ซึ่งจะเป็น 12 นอกจากนี้ ฉันป้อนโอเปอเรเตอร์ผันผวนสำหรับทั้งตัวนับ RPM และเวลาเพื่อหลีกเลี่ยงปัญหาการชนกัน
/* รวมไลบรารี DigitLedDisplay */#include "DigitLedDisplay.h" /* Arduino Pin to Display Pin 7 ถึง DIN, 6 ถึง CS, 5 ถึง CLK */ // DigitLedDisplay ld = DigitLedDisplay (7, 6, 5); //arduino DigitLedDisplay ld = DigitLedDisplay (4, 2, 3); //STM32 L432KC int pin = 12; //pino de interrupção (módulo IR) int rpm ที่ไม่ได้ลงนามแบบระเหยได้; //contador de rpm ระเหย unsigned นาน timeold; //จังหวะ
ติดตั้ง
ในการตั้งค่า เรากำหนดค่าการดำเนินการแสดงผล รวมทั้งกำหนดค่าการหยุดชะงักเป็น Rising
การตั้งค่าเป็นโมฆะ () {Serial.begin (115200); /* ตั้งค่าความสว่าง min:1, max:15 */ ld.setBright(10); /* กำหนดจำนวนหลัก */ ld.setDigitLimit(8); ld.printDigit(0); AttachInterrupt(digitalPinToInterrupt(pin), interruptPin, RISING); รอบต่อนาที = 0; หมดเวลา = มิลลิวินาที (); }
ห่วง
สุดท้าย เรากำหนดช่วงเวลา 1 ใน 1 นาทีเพื่ออัปเดตการแสดงผล หลังจากทำความสะอาดหน้าจอ เราจะพิมพ์ RPM เราทำหน้าที่ที่ขัดจังหวะจะเรียก เราคำนวณ RPM และอัปเดตเวลา
วงเป็นโมฆะ () { ล่าช้า (1000); ld.clear(); ld.printDigit (รอบต่อนาที); } โมฆะ interruptPin() { รอบต่อนาที = 60*1000/(มิลลิวินาที () - หมดเวลา); หมดเวลา = มิลลิวินาที (); }
ขั้นตอนที่ 8: ไฟล์
ดาวน์โหลดไฟล์:
ไฟล์ PDF
ฉันไม่
แนะนำ:
All Band Receiver พร้อม SI4732 / SI4735 (FM / RDS, AM และ SSB) พร้อม Arduino: 3 ขั้นตอน
All Band Receiver พร้อม SI4732 / SI4735 (FM / RDS, AM และ SSB) พร้อม Arduino: เป็นโปรเจ็กต์เครื่องรับย่านความถี่ทั้งหมด ใช้ห้องสมุด Arduino Si4734 ห้องสมุดนี้มีตัวอย่างมากกว่า 20 ตัวอย่าง คุณสามารถฟัง FM ด้วย RDS สถานี AM (MW) ในพื้นที่ SW และสถานีวิทยุสมัครเล่น (SSB) เอกสารทั้งหมดที่นี่
อินเทอร์เฟซ ESP32 พร้อม SSD1306 Oled พร้อม MicroPython: 5 ขั้นตอน
อินเทอร์เฟซ ESP32 พร้อม SSD1306 Oled พร้อม MicroPython: Micropython เป็นการเพิ่มประสิทธิภาพของ python และมีขนาดเล็กของ python ซึ่งหมายถึงการสร้างสำหรับอุปกรณ์ฝังตัวซึ่งมีข้อจำกัดด้านหน่วยความจำและใช้พลังงานต่ำ Micropython สามารถใช้ได้กับคอนโทรลเลอร์หลายตระกูล ซึ่งรวมถึง ESP8266, ESP32, Ardui
PWM พร้อม ESP32 - Dimming LED พร้อม PWM บน ESP 32 พร้อม Arduino IDE: 6 ขั้นตอน
PWM พร้อม ESP32 | Dimming LED พร้อม PWM บน ESP 32 พร้อม Arduino IDE: ในคำแนะนำนี้เราจะดูวิธีสร้างสัญญาณ PWM ด้วย ESP32 โดยใช้ Arduino IDE & โดยทั่วไปแล้ว PWM จะใช้เพื่อสร้างเอาต์พุตแอนะล็อกจาก MCU ใดๆ และเอาต์พุตแอนะล็อกนั้นอาจเป็นอะไรก็ได้ระหว่าง 0V ถึง 3.3V (ในกรณีของ esp32) & จาก
บอร์ด STM32 พร้อม Arduino IDE STM32F103C8T6: 5 ขั้นตอน
บอร์ด STM32 พร้อม Arduino IDE STM32F103C8T6: สวัสดีทุกคน เนื่องจากผู้คนจำนวนมากใช้บอร์ด Arduino แต่อย่างที่เราทราบดีว่าพวกเขามีข้อ จำกัด บางประการ ดังนั้นบอร์ดอื่น ๆ เพียงไม่กี่ตัวจึงเข้ามาเป็นทางเลือกของ Arduino ซึ่งสามารถให้ประสิทธิภาพที่ดีขึ้นและคุณสมบัติที่ดีกว่า Arduino และหนึ่งในนั้น พวกเขาคือ STM3
วิทยุ LoRa Ra-01 พร้อม STM32 และ ESP32: 11 ขั้นตอน
Radio LoRa Ra-01 พร้อม STM32 และ ESP32: เนื่องจากหัวข้อนี้เป็นที่นิยมในหมู่ผู้ที่ติดตามโพสต์ของฉัน ฉันจึงตัดสินใจพูดถึง LoRa วันนี้ อย่างไรก็ตาม ฉันจะพูดถึงเรื่องนี้ด้วยองค์ประกอบใหม่: คราวนี้โดยไม่ต้องใช้ ESP32 แต่ใช้ STM32 แทน ฉันอยากจะโพสท่า