Go Down

Topic: Burning Bootloader with other SPI device attached (Read 77 times) previous topic - next topic


May 20, 2017, 04:03 am Last Edit: May 20, 2017, 04:03 am by SouthernAtHeart
In the pdf file attached, you can see I have an Atmega328P and an NRF24L01+ transceiver in the project.  I need to burn the boot loader on the Atmega328P.  Can I do it directly on my custom PCB, with the NRF24L01 installed.  It uses SPI.  Along with the MOSI, MISO, & SCK pins, it has 2 other pins connect to the Atmega328P. CE & CSN, are connected to D7 & D8. CSN on the NRF24L01+ is the chip select pin. This shouldn't be a problem, should it?

Coding Badly

May 20, 2017, 04:31 am Last Edit: May 20, 2017, 04:32 am by Coding Badly

Maybe.  :)  SPI devices are supposed to be high-impedance when their chip-select line is not active.  Some don't do too well with that (e.g. the TLC5940).  Some do.  The datasheet sometimes spells out what the device does when chip-select is not active.

So, if the NRF24L01+ transceiver really does set its SPI pins to high-impedance then you are good-to-go.

However, in your schematic there is no pullup resistor on CE.  If there is not a pullup somewhere on that line (e.g. internal to the NRF24L01+ transceiver) then you will have to add one.

Series resistors (220 ohm is a good choice) on the three SPI lines will protect all parties in the event of a mistake.


I guess I'll just play it safe and get a TQFP32 socket adapter, and burn the boot loader before populating the PCB, then.

Go Up