ฉันต้องการออกแบบวงจรที่ไมโครคอนโทรลเลอร์สามารถสลับพิน GPIO และปิดระบบทั้งหมด (รวมถึงไมโครคอนโทรลเลอร์ด้วยตัวเอง) ลง และเมื่อผู้ใช้กดปุ่มชั่วขณะพลังจะกลับมาอีกครั้ง
เป็นไปได้ไหม
ฉันต้องการออกแบบวงจรที่ไมโครคอนโทรลเลอร์สามารถสลับพิน GPIO และปิดระบบทั้งหมด (รวมถึงไมโครคอนโทรลเลอร์ด้วยตัวเอง) ลง และเมื่อผู้ใช้กดปุ่มชั่วขณะพลังจะกลับมาอีกครั้ง
เป็นไปได้ไหม
คำตอบ:
ตัวอย่างนี้ใช้ตัวควบคุมขั้นตอนMaxim MAX1835แต่สามารถนำไปใช้กับผู้อื่นเช่นกันที่มีพินการปิดระบบ
โดยปกติวงจรจะถูกปิดลง เมื่อผู้ใช้กดปุ่มกดแบตเตอรี่จะถูกป้อนเข้าไปในขา -SHDN ทำให้สามารถใช้งานเครื่องควบคุมและเปิด 3.3V ไปยังไมโครคอนโทรลเลอร์ จากนั้นไมโครคอนโทรลเลอร์จะวางลอจิกที่ 1 บนตะกั่ว POWER เปิดค้างไว้เปิดเครื่องหลังจากที่ผู้ใช้ปล่อยปุ่มกด เมื่อไมโครคอนโทรลเลอร์ต้องการปิดตัวเองมันจะตั้งค่าเปิด POWER เป็น 0
วิธีหนึ่งในการทำเช่นนี้คือเข้าสู่โหมดสลีปลึกบนไมโครคอนโทรลเลอร์
ไมโครคอนโทรลเลอร์หลายตัวรองรับการทำงานของอินเทอร์รัปต์ภายนอกเช่นขอบบนพิน IO
ใช่มันเป็นไปได้อย่างแน่นอน แต่วิธีการที่คุณประสบความสำเร็จขึ้นอยู่กับว่าคุณจะเปิดและปิดการโหลดแบบไหน
มันอาจจะง่ายเหมือนการใช้รีเลย์ที่เชื่อมต่อกับเอาท์พุท PIN ของไมโครคอนโทรลเลอร์ (ผ่านทรานซิสเตอร์และไดโอดป้องกัน) และสวิตช์ปุ่มกดที่เชื่อมต่อกับพินที่กำหนดค่าเป็นอินพุต
นี่คือแผนภาพวงจรตัวอย่างง่ายๆ:
เมื่อใช้สวิตช์ปุ่มกดชั่วขณะโปรดระวังการหักล้างแต่คุณจะต้องใช้ความล่าช้าในรหัสไมโครคอนโทรลเลอร์ของคุณเพื่อให้แน่ใจว่าคุณตรวจสอบสถานะของปุ่มกดในช่วงระยะเวลาหนึ่ง (เช่น 1ms) ก่อนที่จะสลับรีเลย์ของคุณ กลับมา หากคุณไม่ทำเช่นนั้นไมโครคอนโทรลเลอร์อาจรับสัญญาณหลาย ๆ ตัวและสลับรีเลย์ของคุณหลายครั้งในระยะเวลาสั้น ๆ และคุณจะพบว่าปุ่มของคุณทำงานเป็นระยะ ๆ
อัปเดต ฉันเพิ่งเห็นการแก้ไขของคุณเกี่ยวกับการเปิดไมโครคอนโทรลเลอร์ลง คุณสามารถให้ข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่คุณพยายามทำจริง ๆ ได้หรือไม่? เป็นการยากที่จะตอบคำถามของคุณโดยไม่เข้าใจระบบทั้งหมด
หากคุณต้องการปิดไมโครคอนโทรลเลอร์ลงด้วยเช่นกันคุณต้องใช้พลังงานกลับไปยังไมโครคอนโทรลเลอร์ บางทีคุณอาจใช้รีเลย์เพื่อจ่ายไฟทุกอย่างรวมถึงไมโครคอนโทรลเลอร์ด้วยวิธีนี้ไมโครคอนโทรลเลอร์สามารถปิดเองได้ แต่ไม่สามารถเปิดได้ จากนั้นกดปุ่มของคุณสามารถเชื่อมต่อผ่านสวิทช์รีเลย์เพื่อให้มันสั้นได้อย่างมีประสิทธิภาพให้เวลาพอที่จะเปิดและเปิดรีเลย์