SPI wil niet meewerken

Arco

Special Member

Ik doe dat nog wel eens als ik tijd over heb (en dat heb ik momenteel niet echt... ;) )

Er is nergens iets gespecificeerd over het #HOLD signaal, ook niet bij het opstarten. #HOLD hangt ook samen met de status van de SCLK pin.
Feit is dat het vertragen van de #HOLD het probleem 100% oplost. Ik kan het probleem eens bij ISSI voorleggen, wat zij daarover kunnen zeggen...

(ik heb ook liever een oplossing die technisch uit te leggen en te verklaren is...)

@fatbeard: Beide printen hebben een gnd plane aan de onderzijde en een 3v3 plane boven.

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

8.3 HOLD OPERATION
HOLD# is used in conjunction with CE# to select the device. When the device is selected and a serial sequence is
underway, HOLD# can be used to pause the serial communication with the master device without resetting the
serial sequence. To pause, HOLD# is brought low while the SCK signal is low. To resume serial communication,
HOLD# is brought high while the SCK signal is low (SCK may still toggle during HOLD). Inputs to SI will be ignored
while SO is in the high impedance state, during HOLD.

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/
Arco

Special Member

Daar staat niets over de opstart van de chip, alleen van het normaal gebruik van de pin ...
Ik wacht het antwoord van Issi af...

Een simpel applicatieschema en/of timing diagram bij power-on zou een hoop onduidelijkheid uitsparen...

[Bericht gewijzigd door Arco op zondag 21 juli 2019 21:59:21 (29%)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Shiptronic

Overleden

Low active, dus permanet aan de voeding zou voldoende moeten zijn, je kan toch een 0Ω (pull-up)weerstandje plaatsen?

Wie de vraag stelt, zal met het antwoord moeten leren leven.
Arco

Special Member

Dat had ik, dat werkt dus juist niet... :(

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com
Shiptronic

Overleden

Vreemd,

HOLD# or RESET#/Serial Data IO (IO3): When the QE bit of Status Register is set
to “1”, HOLD# pin or RESET# is not available since it becomes IO3. When QE=0, the
pin acts as HOLD# or RESET# and either one can be selected by the P7 bit setting
in Read Register. HOLD# will be selected if P7=0 (Default) and RESET# will be
selected if P7=1.
The HOLD# pin allows the device to be paused while it is selected. It pauses serial
communication by the master device without resetting the serial sequence. The
HOLD# pin is active low. When HOLD# is in a low state and CE# is low, the SO pin
will be at high impedance. Device operation can resume when HOLD# pin is brought
to a high state.
RESET# pin is a hardware RESET signal. When RESET# is driven HIGH, the
memory is in the normal operating mode. When RESET# is driven LOW, the memory
enters reset mode and output is High-Z. If RESET# is driven LOW while an internal
WRITE, PROGRAM, or ERASE operation is in progress, data may be lost

wat heb je met het QE bit in het status register gedaan ?

[EDIT} maakt eigelijk niet uit, de chip van het werkende bord deed het ook niet, dus het kan ook niet aan de batch liggen.

Wie de vraag stelt, zal met het antwoord moeten leren leven.
Arco

Special Member

wat heb je met het QE bit in het status register gedaan ?

Weinig uiteraard, want de chip reageert nergens op :)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

In de datasheet hebben ze het ook over een flank op de hold pin die "tegelijk" komt met een clock flank, zonder te specificeren wat de tolerantie op "tegelijk" dan is. Een femtoseconde?

Slecht verhaal, die datasheet, en wellicht ook de chip zelf. Daarbij zie ik ook niet echt in wat het doel van die functionaliteit moet zijn, duurt het opzetten van een transactie zo lang dat dit loont?

Een manager is iemand die denkt dat negen vrouwen in één maand een kind kunnen maken
Arco

Special Member

Vreemd dat veel fabrikanten niet begrijpen dat het wel of niet succes hebben van een chip veel afhangt van de duidelijkheid en juistheid van de datasheet...

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com

Kortom: Gewoon een andere chip kiezen die hetzelfde doet? "Dat zal ze leren" :(

1-st law of Henri: De wet van behoud van ellende. 2-nd law of Henri: Ellende komt nooit alleen.
EricP

mét CE

Daarbij zie ik ook niet echt in wat het doel van die functionaliteit moet zijn, duurt het opzetten van een transactie zo lang dat dit loont?

Ik kan me nog iets voorstellen van 2 chippies op SPI waarbij je wat van de ene naar de andere copieert. Nu kun je de boel 'on hold' zetten zonder een hele transactie opnieuw te hoeven starten. Als 'de andere kant' dat ook kan... Maar *ik* heb dat nog nooit nodig gehad...

Er staat nog wel iets in de datasheet over hoe snel je tegen die chip aan mag kletsen na power-up. En dat de CS# voor die tijd hoog moet zijn, ze adviseren een pull-up. Zou daar nog ellende kunnen zitten?
Ik kan me zo voorstellen dat de HOLD# wat dingen blokkeert (gewoon wat gates die dingen 'los' halen van de buitenwereld) en dat wanneer je wat later met HOLD# bent, het per ongeluk goed gaat.

Arco

Special Member

Volgens support mag de state van de #HOLD lijn bij opstarten niets uitmaken...

Hi Peter,

The failure cannot be explained logically. Since the HOLD# is not latching mechanism, it shouldn’t be relevant powers-up in #HOLD state.
In addition, you are powering up with the HOLD# hard-tied to Vcc, so the SPI device cannot go into HOLD# state.

Since the cause of the failure is not clear, I cannot answer it is a good 'fix' or not.
Only I can say is that the connection of a pull-up (10k) between #HOLD and Vcc and a 100nF capacitor between #HOLD is OK for our device.
Even hard-tied to Vcc for HOLD# is OK.

To clarify the failure cause, please check the scope signals when you power up including Vcc, CE# HOLD#, SI, SO. You might find the clue of the failure.

Best regards,

KJ Jang (x5137)

Arco - "Simplicity is a prerequisite for reliability" - hard-, firm-, en software ontwikkeling: www.arcovox.com