Hallo, zur Datenspeicherung verwende ich an meiner MCU ein externen Flash Bauteil Typ SST26. Leider kommt es zeitweise vor, dass Unsinn im Flash steht. Ich habe den Eindruck, dass passiert immer nach einem neu Programmieren der MCU. Kann es sein, dass beim Programmieren alle Leitungen zum Speicherbaustein hochohmig werden und dann zu einem zufälligen Schreiben kommt ? In der Original Schaltplan von Microchip (PIC32MZ EF STARTER KIT) sind keinerlei Pull-Up oder Pull-Down Widerstände vorgesehen. Ich plane jetzt, beim nächsten Layout einen 10 K Pull-Up an den _CS Pin zu legen (s.Anlage).
Dirk F. schrieb: > Kann es sein, dass beim Programmieren alle Leitungen zum > Speicherbaustein hochohmig werden und dann zu einem zufälligen Schreiben > kommt ? Ja, das ist so. > Ich plane jetzt, beim nächsten Layout einen 10 K Pull-Up an den _CS Pin > zu legen (s.Anlage). Das ist die Lösung. fchk
Dirk F. schrieb: >> Das ist die Lösung. Warum bauen die Chip Hersteller nicht direkt einen Pull-Up in den Chip ein ?
Dirk F. schrieb: > Dirk F. schrieb: >>> Das ist die Lösung. > > Warum bauen die Chip Hersteller nicht direkt einen Pull-Up in den Chip > ein ? Weil der Pin mehrere Funktionen hat und der User die Wahl haben soll, wie er den Pin benutzt. Ein fester Pullup könnte da stören. Du kannst sehr wahrscheinlich einen internen Pull-Up dazuschalten, aber erst wenn der Prozessor bereits läuft. Vorher ist alles auf Input-HighZ. Und genau für die Zeit, wenn der Prozessor nicht läuft und nicht konfiguriert ist, brauchst Du den externen Pullup. fchk
Frank K. schrieb: > Du kannst sehr wahrscheinlich einen internen Pull-Up dazuschalten, aber > erst wenn der Prozessor bereits läuft. Vorher ist alles auf Input-HighZ. > Und genau für die Zeit, wenn der Prozessor nicht läuft und nicht > konfiguriert ist, brauchst Du den externen Pullup. Der interne Pull-UP des µControllers reicht nicht aus, selbst wenn der µC schon läuft und die IOs koniguriert hat, werden bei jedem Reset alle Pull-UPs an den IOs deaktiviert und CS des Speichers floatet wieder. Manche andere ICs, die am SPI-Interface hängen, können dadurch schon mal ihren Output aktivieren, was im schlimmsten Fall auch zum Pinkonflikt (z.B. mit dem Programmer) führen kann. Ergo, immer einen realen Pull-UP (z.B. diese 10k) an CS verwenden.
Frank K. schrieb: > Weil der Pin mehrere Funktionen hat Also der _CE (Chip Enable) vom SST26 hat nur diese Funktion.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.