สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
เมื่อไม่นานมานี้ ฉันคิดว่าการมีกราฟสำหรับเอาต์พุตแอนะล็อกน่าจะสะดวกดี มันจะช่วยดีบักเอาต์พุตของฉัน ให้แนวคิดทั่วไปเกี่ยวกับขีดจำกัดของเซ็นเซอร์และอะไรก็ตาม และจะเป็นอินเทอร์เฟซที่ยอดเยี่ยมสำหรับเซ็นเซอร์ใดๆ ก็ตาม ดังนั้น ด้วย Arduino, oled และเซ็นเซอร์ที่คุณเลือก เรามาเริ่มใช้งานกันเลย
ขั้นตอนที่ 1: สิ่งที่คุณต้องการ:
- Arduino
- จอแสดงผล (โปรเจ็กต์ของฉันใช้ OLED ขนาด 0.96" และภาพสเก็ตช์ก็เหมาะสำหรับสิ่งเดียวกัน แต่อย่าลังเลที่จะใช้จอแสดงผลใดๆ ที่คุณต้องการ คุณจะต้องปรับแต่งโค้ด a it (อธิบายไว้ในส่วนโค้ด))
- เขียงหั่นขนม (ฉันใช้โล่เขียงหั่นขนมที่กำหนดเอง แต่ไม่สำคัญว่าคุณจะใช้อะไร)
- สายจัมเปอร์
- ไม่ค่อยมีเวลา
ขั้นตอนที่ 2: ฮาร์ดแวร์
การเชื่อมต่อ OLED: (ดูภาพด้านบนสำหรับสี)
- สายสีแดง (VCC):5v ของ Arduino
- Green Wire (GND):กราวด์ของ Arduino
- Purple Wire (SCL):SCL ของ Arduino (ตรวจสอบด้านล่างของบอร์ดเพื่อติดฉลาก หากไม่มีพิน SCL เฉพาะ ปกติจะเป็น A5)
- Orange Wire (SDA):SDA ของ Arduino (ตรวจสอบด้านล่างของบอร์ดเพื่อติดฉลาก ถ้าไม่มีพิน SDA เฉพาะ ปกติจะเป็น A4)
การเชื่อมต่อเซ็นเซอร์: (ดูภาพด้านบนสำหรับสี)
- จ่ายไฟให้เซ็นเซอร์ตามพินเอาต์เฉพาะ
- เอาต์พุตของเซ็นเซอร์ควรไปที่ A0
ขั้นตอนที่ 3: รหัส
มันเป็นสิ่งง่ายๆ ที่โปรแกรมทำ โดยนำอินพุตแบบอะนาล็อก จับคู่กับพิกัด y ของกราฟ และลากเส้นไปยังพิกัด y จากพิกัด y ก่อนหน้า ในขณะที่พิกัด x เพิ่มขึ้นอย่างต่อเนื่อง
โค้ดไม่ซับซ้อนมากนักและได้รับการแสดงความคิดเห็นเป็นอย่างดี ดังนั้นหากคุณรู้สึกว่าคุณเข้าใจดีพอที่จะปรับแต่ง ให้ทำเช่นนั้น อย่างไรก็ตาม มันถูกออกแบบให้ปรับแต่งได้สูงสุดด้วยการปรับแต่งเพียงเล็กน้อย ในการเปลี่ยนขนาดกราฟ ตำแหน่งกราฟ หรือขนาดแท่งการอ่าน (ขนาดแท่งถูกตั้งค่าอย่างเหมาะสมที่สุดแล้วและตั้งค่าตามการตอบสนอง) คุณเพียงแค่เปลี่ยน
- GRAPH_HEIGHT
- GRAPH_WIDTH
- GRAPH_BOX_X
- GRAPH_BOX_Y
- BAR_WIDTH
ค่าคงที่ ตามความต้องการของคุณ ในส่วนคำจำกัดความของค่าคงที่
นอกจากนี้ เอาต์พุตเซ็นเซอร์ของคุณอาจกลับด้าน (อินพุตสูง -> เอาต์พุตต่ำ และในทางกลับกัน) ในกรณีนี้ ให้เปลี่ยนค่าคงที่ INVERTED เป็น 'true'
รหัส Arduino:
ขั้นตอนที่ 4: บทสรุป
เท่านี้ก็เรียบร้อยสำหรับโปรเจ็กต์ง่ายๆ นี้ หวังว่าจะเป็นประโยชน์กับคนอื่นๆ หากคุณพบจุดบกพร่องในโค้ด การปรับปรุงที่อาจเกิดขึ้น หรือแม้แต่การใช้งานใหม่สำหรับโครงการ โปรดแจ้งให้เราทราบในความคิดเห็น นอกจากนี้ หากคุณชอบโปรเจ็กต์นี้ ให้พิจารณาโหวตในการประกวด "สร้างเครื่องมือ"