Microcontroller turning off

I am having a confusion regarding the connection of the two microcontrollers. I am creating a development board that will have a programmer based on atmega8 with a microcontroller ATmega328p. I am using a switch to change between the programming mode and application running mode but the problem is that in the application my second IC is turned off, but since the MOSI, MISO, and SCK are the same therefore the IC might get shorted. I fear that this could damage my IC. How to solve this problem. I am wondering how the big systems with multiple chips work then if they need to turn that off completely, as some pins might be connected to the other pins of the IC that can power it up and cause issues.


This is a rough sketch of the schematic. I have used a transistor to turn the IC on and Off. In some ICs, I have seen them saying if Vcc is zero then no more than 5V is provided to the pins. My reset pin can power the system and since it has pullups activated in the code I can get 5V at the output or can get 5V from the MOSI, MISO, etc. How to solve this problem. Kindly help.

Most development boards that feature an on-board programmer just keep it powered together with the Target - why not just do that?

Or, if you really want to be able to disconnect it, provide a set of jumper links.

They take great care to ensure that they don't drive signals to chips that are off.
This could be as simple as just ensuring that connecting lines are taken to "safe" levels (pulled low, set to Hi-Z), or might involve inserting isolation switches.

Part of the design would be to carefully consider the different power domains, and what connections are needed between them.

Okk ill try by leaving it ON and hope the signals dont effect the program inside. Altough I know they wount beacause programmer is useless until i give a command to it.

What's the desire for having the programmer integrated?

Usually, for your own design, you wouldn't do that.

It's a convenience for things like Arduino but, by the time you're into your own custom board, you'd expect to be passed that ...

I want the programmer just to program the atmega with any software, avr dude etc. Thus I have directly put a programmer in the board so that I don't have to put pins and do the stuff again and again

And, ended up creating a new problem for yourself.

1 Like

I am not sure what you mean. Could you explain. I know Arduino does almost the same but my board would be able to work with the atmel studio ,avrdude,Arduino IDE etc.

Any AVR-based Arduino will work with Atmel Studio, avrdude, Arduino IDE, etc. usually without modification.

1 Like

* Microchip Studio

But every time you want to program you have to use jumpers and again and again have to join them. This is just the problem that's why I'm using it inside.

I don't. I use the programming header, cleverly designed to avoid jumpers or other changes.

The jumpers were only suggested if you wanted to turn the debugger part off.

If, as suggested, you just leave it permanently powered then you don't need any of this!

Yes that's a way. But I just want to embedd that so I could even avoid that connector:)

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.