Author Topic: Slave chip not resetting on initialization.  (Read 1497 times)

0 Members and 1 Guest are viewing this topic.

Offline Ryu417Topic starter

  • Newbie
  • Posts: 2
  • Country: ca
Slave chip not resetting on initialization.
« on: September 17, 2016, 04:41:29 pm »
Been stuck on this initialization problem for a while...

I have a master MCU and a slave chip. The MCU pulls a /RESET GPIO pin low on the slave for a full second, then pulls it high, then waits for a ready signal from the slave. My problem is on first power up, the MCU never receives the ready signal - it's waiting for the slave to be properly reset. I know the /RESET pin is going low and then high as it should by measuring the pin's voltage during the initialization...

However, if I manually jump the salve's /RESET pin to a ground trace on the board for a moment, and release the jumper, then the slave will boot and send the ready signal! And the slave will continue to be reset fine from the MCU thereafter until power is removed from the system again, and another initial boot is required.

I have tried tying the /RESET trace to ground via 100k ohm resistor, as well as to VCC.

I don't know where to start diagnosing this, so thanks in advance for any comments.

Context: Board is a two-layer PCB I designed myself. SMT components. I am in no way a professional at circuit design..

 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: Slave chip not resetting on initialization.
« Reply #1 on: September 17, 2016, 05:02:07 pm »
Which MCU?  MCU code? Which peripheral?  Schematic?
 

Offline Connoiseur

  • Regular Contributor
  • *
  • Posts: 104
  • Country: in
Re: Slave chip not resetting on initialization.
« Reply #2 on: September 17, 2016, 05:04:40 pm »
What voltages did you get when you measured the two states (viz high, low) of the pin?

As pointed out by rstofer, schematic of your project will be greatly useful for any suggestions.
 

Offline Ryu417Topic starter

  • Newbie
  • Posts: 2
  • Country: ca
Re: Slave chip not resetting on initialization.
« Reply #3 on: September 17, 2016, 07:07:21 pm »
Quote
Which MCU?  MCU code? Which peripheral?  Schematic?

The slave chip is a vs1063 audio decoder. Schematic attached. It interfaces with an SD card connector along with the MCU over SPI. It's the "MP3-RST" pin that is in question here. If I jump it to ground, it seems to reset the chip fine.

The MCU is a Atmel 1284p in a "minimalistic Arduino" configuration. Basically just crystal and supporting capacitors and such. Using SPI for communication with the slave chip and SD card.

In the schematic attached, R16 and R17 are not used together... I just made the footprints to use either one or the other for trial and error, but never both at once. I have tried each configuration now without luck.

Quote
What voltages did you get when you measured the two states (viz high, low) of the pin?

With reference to a ground trace on the board, I've measured a solid 3.3V as well as 0.00V on the /MP3-RST pin

 

Offline rstofer

  • Super Contributor
  • ***
  • Posts: 9890
  • Country: us
Re: Slave chip not resetting on initialization.
« Reply #4 on: September 17, 2016, 09:59:38 pm »
Darned if I know...

OK, you pull RESET low which floats DREQ (probably goes high).  Then you pull RESET high and DREQ will then go low for 22,000 cycles (1.8 ms).  Finally DREQ should go high.  Don't test DREQ until after RESET has been high for at least 1 ms.  Maybe wait 2 ms...

I might use the pull-down resistor on DREQ but I might not.  If the code is working properly, the fact that DREQ floats around during reset wouldn't make any difference because I wouldn't be looking at it for quite some time after RESET returns high.
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf