因为考虑电路的简化,把1.5K的上拉电阻直接连到D+,可以很好运行。 但是调试的时候,MCU更新了Firmwar,PC居然不知道重新枚举,如果手工拔插USB插头,ULINK几乎是立马**。 最后还是决定用三极管来开关上拉电阻,按照常理,PNP的8050,E接3.3V,C经过1.5K到D+,B用10K的限流电阻到STM32的IO口(ST的sample用的是PD9,我用的STM32F103R8T6没有,用了PB的一个IO),一切OK。 这时候去看ST的参考原理图,居然用了2个NPN,还用了5V电源上拉,比我多用一个三极管和3个电阻,不知道是什么考量。这个电路一般用于低压控制高压(比如3.3控制12V,这个案子正好也用了),3.3V控制3.3V为何要搞如此烦琐,应该不会是故意迷惑我们这些菜鸟吧。 |