STM32L476을 중심으로 장치를 설계하고 있습니다. 내 장치는 주로 배터리 전원을 사용하지만 USB 포트가 있는데, 플러그를 꽂으면 배터리 소모를 제한하기 위해 3.3V 레귤레이터를 통해 대체 전원으로 사용하고 싶습니다. 배터리가없는 상태에서 사용자가 USB 포트를 연결할 수도 있습니다.
USB 포트가 언제 연결되는지 감지하고 싶기 때문에 PA9를 OTF_FS_VBUS로 사용하고 있습니다.
좋은 소식 : 데이터 시트에 따르면 PA9 핀은 5V까지 허용됩니다.
나쁜 소식 : 5V 허용 핀은 전원이 공급 될 때만 실제로 5V 허용되는 것 같습니다. 데이터 시트 §6.2 표 18의 내용 :
FT_xxx 핀의 최대 입력 전압 : 최소 (VDD, VDDA, VDDIO2, VDDUSB, VLCD) + 4.0V
필자의 경우 배터리가없고 사용자가 USB 포트를 연결하면 레귤레이터가 시작되기 전에 CPU 공급 핀에 전원이 전혀 공급되지 않고 PA9의 전압이 5V가되는 시간이 있습니다.
더 나쁜 소식 : 현재 주사는 허용되지 않습니다 : 데이터 시트 §6.2, 표 19에 따르면,
FT_xxx에 주입 된 전류 : -5 / + 0 (주 4 참조)
참고 4 : VIN> VDDIOx에 의해 양성 주입이 유도되고 VIN <VSS에 의해 음성 주입이 유도됩니다. IINJ (PIN)를 초과해서는 안됩니다.
따라서 레귤레이터가 시작되는 동안 PA9의 과전류를 제한하기 위해 간단한 저항을 사용할 수없는 것 같습니다. VDD가 상승하기 전에 VBUS에서 PA9로 흐르는 모든 양의 전류는 분명히 금지되어 있습니다.
다른 사람들은 무엇을 했습니까?
VTM 연결을 살펴보면서 STM32 칩 주변의 수많은 디자인을 보았지만 관심이없는 것 같습니다. 그들은 VBUS를 PA9에 직접 연결하거나 결국 저항을 통해 연결하지만 더 복잡한 것을 본 적이 없습니다. 그러나 대부분 개발 보드이므로 견고성이 중요합니다. 그리고 그들은 일반적으로 USB 포트를 통해 전원이 공급되지 않으며, 보드의 전원을 켜기 전에 사용자가 USB 포트를 연결하지 않을 것이라고 가정합니다.
내 계획은 무엇입니까?
USB 포트의 VBUS와 MCU의 PA9 핀 사이에 이것을 넣으십시오.
나는 그것을 간단하게 유지하려고 노력했다. 기본적으로 VUSB_CPU (PA9 핀)는 괜찮 으면 전원을 소비하지 않고 VCPU + 4V (Vz + Vbe)를 초과 할 수 없습니다.
나의 주요 질문은 : 내가 분석에 맞습니까? 이 회로가 좋은 솔루션입니까? 관련없는 것들에 대해 걱정하고 있습니까? 왜 아무도이 잠재적 인 문제에 관심이없는 것 같습니까?
추가 질문 : USB OTG를 사용할 계획입니다. 커넥터와 PA9 핀 사이에 4.7k 저항이 있으면 문제입니까? SRP 중에 VBUS 펄스를 사용해야한다면이 방법이 필요하지만이 방법은 더 이상 사용되지 않습니다. 내 장치의 역할 (장치 / 호스트)이 무엇이든간에 좋습니까?
마지막 : VDDUSB 공급 핀에 의해 소비되는 최대 전류는 얼마입니까? 데이터 시트는 USB 주변 장치에 대해 AHB 클럭 도메인의 경우 16.4µA / MHz + 독립 클럭 도메인의 경우 23.2µA / MHz를 지정하지만 데이터가 어디에서 그려 지는지 (VDD 또는 VDDUSB) 알 수 없습니다.