You could use two transistors in a darlington configuration or add a diode and a resistor to the base of the transistor. Either would cause an effective 1.4V VBE needed to turn the transistor on. OTOH with a Germanium or Schottky diode you should be OK as long as EXT_BOOT0 is a CMOS output because it'll go to almost 0V if the current is low. Not sure what the levels might be. Even a nominally TTL output should go much lower than 0.7V at low current.
On 08/22/2015 10:21 AM, Luke Kenneth Casson Leighton wrote:
hi folks could someone please help analyse this circuit to see if it is correct?
http://hands.com/~lkcl/ttl_logic_circuit.png
the requirement:
- an STM32F's "BOOT0" is, by default "pulled to GND" in order that
"normal" operation happens
- the boot operation needs to be selectable by a GPIO from a main CPU
(TTL, with a different voltage)
- if however the main CPU's GPIO is *DISCONNECTED*, "normal" operation
of the STM32F is required.
so, the main things here are:
the STM32F is run from a 3.3v supply
the CPU can be a totally different TTL voltage level from the
STM32F. it could be 5.0V, it could be 3.3v, it could be 3.0v, it could be even 1.8v.
- the default behaviour needs to be "pull to GND", even if the input
is floating.
R28 ensures that the transistor is, by default, ON, so that R2 is connected to GND and thus BOOT0 operates in "normal" mode.
however current will flow from EXT_BOOT0 if it is "high", which would start fighting with VCC_SYS_3V3 if EXT_BOOT0 is over 3.3v, so D1 stops that from happening.
i think i'm stuck though when it comes to pulling EXT_BOOT0 down to "GND" because actually it will be TTL 0.7v (or so), which, when the diode is taken into account (another 0.7v), i don't think it's enough to switch off the transistor.
... so.... help! what do i do?
tia,
l.
arm-netbook mailing list arm-netbook@lists.phcomp.co.uk http://lists.phcomp.co.uk/mailman/listinfo/arm-netbook Send large attachments to arm-netbook@files.phcomp.co.uk