Hallo!
Hab da ne Aufgabe über die ich bissel grübel. Hab mir ach schon was skizziert, jedoch wollte ich hier erstmal fragen ob das überhaupt funktioniert.
Es geht um einen parallelen Datenbus mit 8bit Breite, welcher mit rund
1Hz seine Daten ändert. Nun soll über einen längeren Zeitraum bestimmte Zustände auf dem Bus mitgeloggt werden - und zwar immer dann wenn ein Triggerimpuls (auch 1s lang) erfasst wird.
Das ganze möchte ich gerne ohne µC und ohne lange programmiererei erschlagen.
Meine grobe Skizze in Worte gefasst:
Datenbus (5V CMOS) geht direkt auf die I/O's eines 28C256. Dessen Chip Enable liegt permanent auf GND, und Out Enable permanent auf Vcc (dient ja nur zum speichern, ausgelesen wird er im Programmiergerät).
Der Write Enable des 28C256 liegt über PullUp auf Vcc. Jedes mal wenn ein Triggerimpuls kommt, wird WE für 1-10ms auf GND gezogen.
Das Triggersignal (9V CMOS) steuert über einen Spannungsteiler
10k + 12,4k den Adresszähler (2 x 4022).
Damit der Adresszähler die Adresse nicht gleichzeitig mit der Speicherung im 28C256 ändert und sich das EEPROM verschluckt, möchte ich dem Spannungsteiler parallel zum 12,4k noch einige µF spendieren, damit der 4022 einige duzend ms verzögert triggert.
Die 2 x 8 Ausgänge der 4022 gehen dann direkt auf die Adressleitungen A0 - A14, das höchste übrige Bit des 4022 soll zur "Speicher Voll"-Meldung herrangezogen werden.
Weiterhin, um zu sehen wie voll oder leer das EEPROM noch ist, spiele ich mit dem Gedanken den Adressbus mit Low Power LED's anzeigen zu lassen.
Bevor ich die Teile zusammensuche und teilweise bestelle, würde ich aber hier erstmal fragen ob jemand sowas schonmal gemacht hat und Erfahrung damit hat. Laut Datenblatt eines AT28C256 scheint das wohl zu gehen, zumindest sehe ich da nix was meinem Vorhaben widersprechen könnte. Nichtmal vonwegen Timing.
Das ganze dient der Fehlersuche in einer Telemetrieanlage, die mehrfach (so 5-10 mal die Stunde) schwachsinnigen Binärsalat ausspuckt, sich dann aber wieder einkriegt. Das provisorische Teil soll den Zustand des Busses einfach bei jedem Fehler mitloggen, damit ich später sehen kann bei welchen Werten und mit welcher Häufigkeit das ganze passiert.
Grüße aus Dortmund
Jürgen Hüser