need solution on soft button

Status
Not open for further replies.

vishu489

Advanced Member level 4
Joined
Aug 28, 2011
Messages
116
Helped
3
Reputation
6
Reaction score
3
Trophy points
1,298
Visit site
Activity points
2,120
Hello friends,

my device has programmable button which is controlled by controller atmega8 and i'm also having usbasp programmer on board. Now my problem is that when i connect usb plug to program device my controller get reset to enter in boot-loader mode but by that time it also looses the control over the software button and my device gets turn-off. So my device remains unprogrammed. I don't want to provide supply from external source. Here is my circuit of switch button


When TPS_EN pin will get high my supply section gets on and controller pull the LATCH_TPS line high which makes supply permanently high till i press button next time.

To solve the problem i'm thinking to sense controller reset pin by using PNP transistor or P channel mosfet. So whenever my controller reset pin will be pull low my Transistor or mosfet will take control of soft button and it will make supply enable till the controller is in booting mode as follow



Is this logic will work? also can you suggest me which diode and transistor/FET will be suitable for high speed switching?

My power supply section contains TI' TPS61200.
 

Could you not use a delay on the power supply? Only adding One capacitor could do the trick

Adding a capacitor on the TPS_EN pin to ground, after the 2 diodes should do the trick.
Depending on the internal resistance of the TPS_EN pin, you could also want to add an discharge resistor parrallell to the capacitor.

The capacitor would be charged true the diodes, and keep the PSU on for a while if the LATCH_TPS-signal goes down for a while.
Then just modify the software and bootloader code to turn on the LATCH_TPS as quickely as possible after reset.

Kind regards,
Hans
 

Status
Not open for further replies.

Similar threads

Cookies are required to use this site. You must accept them to continue using the site. Learn more…