Moin, ich habe an einen 8515 (8MHz) ein externes RAM (62256) angeschlossen. Als Spannungsversorgung verwende ich einen 78S05 an den neben dem Mikrocontroller noch einige andere Verbraucher angeschlossen sind. Fülle ich nun das RAM mit Daten, treten Fehler auf. In jeweils 8 Byte Abschnitten sind bestimmte Pins gesetzt, obwohl das Programm dies nicht "angeordnet" hat. Daraufhin habe ich einen weiteren 78S05 eingebaut, der nur RAM und Latch versorgt. Anfänglich verschwand der Fehler dadurch, er ist nun aber wieder da, und auch wenn nicht mehr jeweils 8 Byte gestört sind, so doch alle 8 Byte mal eines. (Immer das gleiche.) Der Fehler liegt augenscheinlich an der Spannungsversorgung, wieso ist er aber zeitweilig verschwunden? Wie kann ich eine Spannungsversorgung herstellen, die diesem Fehler entgegen wirkt? Vielen Dank schonmal, J. Rehder
Mal einfach Fragen: Abblockkondensatoren (zwischen + und -) an der Stromversorgung und an den IC's (100nf)?.
Verdrahtungsfehler Adress- und/oder Datenbus? Könnte ne Unterbrechung irgendwo sein. Schmittchen.
Hallo, weiß ja nicht was da noch so dranhängt, aber wie siehts mit der Treiberleistung des Datenbusses aus ? Ansonsten etvl ein kritisches Timing nicht exakt eingehalten ? Eckhard
Ein Abblockkondensator habe ich natürlich. Verdrahtungsfehler hatte ich auch erst vermutet, schließe ich aber aus, weil es zeitweilig uneingeschränkt funktioniert hat. Eine eigene Spannungsversorgung hatte ja zeitweilig Abhilfe geschaffen und schafft noch immer eine Verbesserung, wenn auch einige Daten wieder beschädigt sind. Hat denn niemand mal ein ähnliches Problem bewältigt? J. Rehder
Hi was für ein 8515? S oder Mega? Was für Latch? Die S8515 sind berüchtigt dafür das sie ein häßliches Timing auf dem Bus haben was eigentlich nicht kompatibel zum 8080-Bus ist. Manchmal hilft ein anderes Latch, manchmal ein anderes SRAM, manchmal ein kleiner C (47p oder sowas) direkt an ALE gegen Masse. Besonders letzteres hat bei mir schonmal geholfen. Der Mega8515 ist da unproblematischer. Matthias
Hi, bei mir gabs auch kleinere Probleme aufgrund des kritischen timings. Abhilfe bracht das setzen der Waitstaits, obwohl das RAM eigentlich schnell genug währe ohne zu arbeiten. Gruß -=jens=-
Hi, die Schaltungsvorschläge von Atmel beziehen sich auf bei 4 MHz auf einen bestimmten 74???373 Typ, der als Adresslatch eingesetzt wird. Bei 8 MHz muss ein schnellerer Typ eingesetzt werden. Steht alles in den Spezifikationen. Siegfried
Hi nochmal, bei mir läuft die Schaltung mit einem gewöhnlichen 74LS373 auf 8 MHz, wie gesagt mit Waitstats. Problematischer ist glaube ich schon die Geschwindigkeit der RAM-Bausteins, bei mit ist es ein 60ns TAG-RAM. Gruß -=jens=-
Aus dem hohlen Bauch raus würde ich sagen, dass die 74LS-Familie bei 8MHz zumindest schon am Rande der Spec betrieben wird, wenn nicht schon zu langsam ist. Zudem ist die 74LS-Familie veraltet, die setzt man bei Neuentwicklungen heute nicht mehr ein. Zudem saugt die Strom ohne Ende. Der direkte Ersatz ist 74ALS, doppelte Geschwindigkeit bei halbem Stromverbrauch. Allerdings sollte sich jeder überlegen, ob er nicht direkt eine der Niedrigspannungsfamilien einsetzt. Einige sind 5V-tolerant und zudem kann man ja auch den AVR sowie das RAM auch bei 3,3V oder weniger betreiben.
Hi bei 3,3V werden die Eigenschaften der Logik aber nicht wirklich besser. LS sollte man trotzdem nicht unbedingt einsetzen. Ein 74HC573 reicht aber bei 8MHz Takt eigentlich aus. Zu ALS und Konsorten sollte man nur greifen wenns nicht mehr anders geht da einem die Dinger die Betriebsspannung und Masse sehr leicht verhauen können. Groundplane ist bei der Verwendung von dem Zeug eigentlich Pflicht. Matthias
Moin, den Waitbit habe ich bereits gesetzt, ohne den funktioniert es bei 8 MHz höchst schäbig. Als Latch verwende ich einen 74HCT573. Mit einer 4 MHz Taktung nimmt die Häufigkeit der Fehler tatsächlich ab auch wenn sie nicht ganz verschwinden. Eigentlich würde ich aber gern weiterhin eine 8 MHz-Taktung verwenden, weil der sonst der Rechner für meine Belange zu langsam ist. Es hat ja auch kurzzeitig damit funktioniert. (Ich weiß, ich wiederhole mich, aber ich finde es so unverständlich und frech von dem.) Könnte ein ATmega8515 gegenüber einem AT90S8515 da Abhilfe schaffen? Kann ich die gegeneinander austauschen? Und bestände dann sogar die Möglichkeit den mit externem RAM und 16 MHz zu betreiben oder ist das dann entgültig zu schnell? Vielen Dank nochmal für die vielen Beiträge! J. Rehder
Hi der Mega8515 ist wohl deutlich gutmütiger was die Timings anbelangt. Er kann den S8515 direkt ersetzen. Außerdem bietet er mehr Möglichkeiten WaitStates einzufügen. Für den Betrieb mit 8MHz nennt Atmel ein 74HC573 als geeignetes Latch was ich bestätigen kann. Darüber brauchts wohl AHC. Aber eigentlich solltest du es mit dem S8515 auch zum Laufen bringen. Hast du ein Skop? Kannst du dir die Daten/Adressleitungen bzw. deren Timing mal anschauen und dann mal sehen wos klemmt? Da die Fehler aber auch bei 4MHz nicht völlig verschwinden würde ich auf einen Fehler/eine Unsauberkeit im Aufbau tippen. Was verwendest du denn als RAM? Und erstmal solltest du das LS-Latch gegen ein HC-Latch tauschen. Matthias
@Matthias: Die Eigenschaften der 3,3V-Familien sind in der Tat besser. Die haben bessere elektrische Eigenschaften als auch kürzere Durchlaufzeiten. Mit den steileren Flanken sollte man aber in der Tat ein bisschen mehr Sorgfalt bei der Erstellung der Platinen walten lassen.
Hi, nur mal um sicher zu gehen: Wenn ich einen ATMega8515 mit 16Mhz Takte und ein 15ns RAM habe, leuft das dann mit einem 74ALS573 ohne wait-states? Tobias
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.