Tôi đã có một thiết bị USB tốc độ đầy đủ mà tôi muốn cung cấp 2 cổng cho - một cổng ở hai đầu đối diện của vỏ. Điều này là để cáp có thể được kết nối bất cứ nơi nào thuận tiện nhất. MCU của tôi (atmega32u4) chỉ có một giao diện, vì vậy các cổng vật lý sẽ được chia sẻ, nhưng chỉ có một cổng nên được cắm cùng một lúc.
Tất nhiên người dùng không thể tin tưởng để không cắm cả hai bên cùng một lúc. Làm thế nào để bảo vệ chống lại điều này?
Ý tưởng tôi đã đưa ra:
- Chỉ cần nối chúng với "nguyên trạng" và hy vọng máy chủ có thể xử lý các chân D + / D- đã tham gia
- Cổng NAND với các chân 5V riêng biệt làm đầu vào, đầu ra cho MOSFET ngắt kết nối Vcc khi cả hai được cắm.
Liệu tùy chọn thứ hai nghe có vẻ hợp lý, hoặc là một giải pháp phức tạp hơn cần thiết?