Hallo, ich hab hier mal die Aufgabe: Angenähert an das bekannte 8051 Übungssystem sollen die Fertigungsunterlagen mit Eagle für folgende Übungsplatine erstellt werden: Mikrokontroller AT89S8253 Programm im internen FLASH Anpassung der integrierten seriellen Schnittstelle an RS232 Reset Taster und PowerOnReset 12 MHz Quarz Versorgung 5V (extern) Für eine zusätzliche digitale Ein- und Ausgabemöglichkeit ist je ein 8-Bit Flip-Flop vorzusehen (z.B. 74LS374). Die Ein- bzw. Ausgabe erfolgt über Zugriffe auf den externen Datenspeicher, wobei die Startadresse gleich 1024*7 ist. Die Porterweiterung darf auf den darauffolgenden 1024 Adressen als „mirror“ erscheinen. Also 1024*7 = 0001 1100 0000 0000. Wegen mirror reichen diese 000111 und davon muss ich einen Dekoder machen, d.h. wenn die Addr. 000111(A15..A10) erscheint muss am Ausgang eine 1 erscheinen. Mit DNF ergibts ich folgendes: -A15 UND -A14 UND -A13 UND A12 UND A11 UND A10 Den Dekoder sieht man im Bild unter dem blauen, es ist zwar noch nicht mit dem bus verbunden, aber die logik wäre fertig. Ich bin mir aber nciht sicher ob das so funktionieren könnte. Ich verwende 2 74573. Einmal für Input und Output. Also C1 = ADS(output von dekoder) AND RD dann würde es stimmen, aber ich hab ja da -RD und -WR. Kann mir da einer helfen wie ich das jetzt passend mache, oder habe ich den Bauteil 74573 falsch verstanden? Datasheet: http://www.datasheetcatalog.org/datasheet/SGSThomsonMicroelectronics/mXruyrq.pdf mfg
Du weisst schon, was ein Inverter ist (z.B. 7404), oder ? Für das Input-Register: Bedenke, dass dessen Ausgänge nur dann aktiv syein dürfen, wenn der Prozessor aus dem Register liest. Zu allen anderen zeiten müssen die Ausgänge des Registers <b>disabled</b> sein.
Ich weiss nicht, was du dir von dieser Schaltung erhoffst aber die wird überhaupt rein gar nichts machen? Du hast alle Eingänge zusammengehängt und da liegt (so weit ich das beurteilen kann) kein Signal an?
Ja das gehört eh alles links zum Bus hin. Die zusammengehängten Eingänge sind: A15 bis A13 und reset ist A12 bis A10. Wenn ich nach RD und WR nen inverter setze, dann wird alles funktionieren? Ich mein ja nur, weil ich dann ncoh ein Bauteil brauche und der Print, dann komplizierte wird.
Wenn Du nur je ein Register benutzt, brauchst Du keinerlei Dekodierung. Und mit 74HC574 auch keinen Inverter: Lese-574: /OE - /RD CP - ALE Schreib-574: /OE - GND CP - /WR
Hi >Ich mein ja nur, weil ich dann ncoh ein Bauteil brauche und der Print, >dann komplizierte wird. Wie wäre es mit einem 74xy138? Der ist für so etwas gemacht. MfG Spess
Danke euch, ich muss aber leider dieses 8Bit-FF nehmen. Also ich hab jetzt alles durchdacht und fertiggestellt. Müsst so stimmen. Was sagt ihr? Als Ausgang verwendet(unten): -EN ist dauerhaft auf Low und wenn LE muss High sein, dass output funktioniert. Von ADS(decoderausgang) bekommt man eine 1, wenn der Adressebereich da ist. Also: ADS AND WR = LE(C1) = 1 WR muss natülrich auch 1 sein. Als Eingang verwenden(oben): Hier muss -E immer das sein was LE(C1) ist, laut dem Datenblatt, was ich oben verlinkt habe. Also, normalerweise ist ADS=0, wenn Busverkehr nicht für 74573 ist. Dann ist -EN=C1=1 weil ja NAND(0,x)=1. Das heißt output --> High Impedance(nicht auf Bus geschaltet), aber Input wird immer auf den Speicher geschrieben. Und wenn ADS=1 und RD=1 ist, dann NAND(1,1)=0. Also ist -EN=C1=0. Und jetzt ist der output aktiviert und daten liegen auf Bus an, aber input ist währenddesse freezed. Richtig? Kann ich es noch ev. bissl vereinfachen von den Gattern her, sodass das routen einfach wird? mfg
Du hast /RD und /Wr vertauscht. Hast Du die Signal-Laufzeiten überprüft? Nicht, daass die verlangten Hold Zeiten unterschritten werden.
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.