2011-08-26 4 views
0

J'ai un SPI pour MSP430 écrit. Si j'envoie WRSR (01h) ou RDSR (05h) au flash M25P64.
La réponse que j'obtiens du Flash SPI_MISO est FFh.MSP430 SPI à M25P64

Donc, ma question est "Est-ce que la réponse que j'ai obtenue est-elle exacte?" Comment puis-je comprendre que la liaison entre mon SPI et Flash est correcte?

Merci

AK

Répondre

1

est la réponse que je l'ai obtenu est-il juste?

La réponse est erronée. 30 secondes sur Google et dans la fiche technique vous le dira. Choses à vérifier (puisque vous n'avez fourni aucune information):

Comment puis-je comprendre que la liaison entre mon SPI et Flash est correcte?

  • Est-ce un nouveau morceau de code SPI? Si oui avez-vous vérifié avec un oscilloscope pour voir ce que vous envoyez (horloge et MOSI) est ce que vous attendez et correspond à ce que la fiche technique dit le périphérique attend? C'est la manière définitive d'être sûr.
  • Votre code SPI fonctionne-t-il avec d'autres appareils?
  • Vos broches E/S sont-elles configurées correctement sur le MSP430?
  • Avez-vous configuré le module SPI correctement pour la phase et la polarité?
  • Avez-vous oublié d'affirmer la ligne de sélection de puce?
  • Qu'en est-il de HOLD? Avez-vous pensé à envoyer un octet fictif après la commande RDSR afin que le périphérique envoie la valeur de registre d'état?
  • Voyez-vous une réponse de l'appareil sur un oscilloscope? Est-ce que le MSP430 lit cette valeur ou une valeur différente?

Il est parfois préférable d'essayer d'abord de lire l'ID de périphérique plutôt que le registre d'état d'un nouveau code. La raison en est que l'ID de l'appareil ne changera jamais, alors que le registre d'état peut changer (bien que cela dépend de l'appareil).

Questions connexes