Loetstelle.net Elektronik Mikrocontroller Röhre Forum Platinen Schaltungen Onlineshop

 

 

MENÜ

 

 

 

 

 

loetstelle.net
Lötstelle Userforum
 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

paralleles EEPROM seriell ansprechen über Schieberegister

 
Neues Thema eröffnen   Neue Antwort erstellen    loetstelle.net Foren-Übersicht -> Allgemeine Schaltungstechnik
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
alex.enjoy



Anmeldungsdatum: 24.11.2009
Beiträge: 6

BeitragVerfasst am: Di 24.Nov 2009 14:26:27    Titel: paralleles EEPROM seriell ansprechen über Schieberegister Antworten mit Zitat

Hallo,

bin neu hier, daher will ich mich erstmal kurz vorstellen.
Mein Name ist Alexander und habe vor 15 Jahren mal eine Ausbildung zum Elektroniker abgeschlossen, seither aber ausser ein paar Basteleien nichts mit dem Thema zu tun.
Ich würde mich als ambitionierten halbwissenden Laien einstufen.


Aktuell baue ich eine Steuerung für unsere Heizungsanlage mit Hilfe eines Arduino Microcontroller-Boards.
Funktioniert auch alles ganz gut mit I2C und 1-Wire bus etc.

Nun benötige ich aber einen größeren EEPROM speicher für Protokollierungen. Habe mit I2C EEPROMS angesehen, sind aber viel zu klein.
Sehr günstig habe ich von AMD ein paralleles EEPROM mit viel Speicher gefunden und möchte dafür mittels Schieberegistern nun ein serielles Interface bauen.

Für die Adressleitungen ist das ja garkein Problem. Ein entsprechent breites Seriell-IN/Parallel-OUT Schieberegister kann das bereitstellen.
Allerdings bereiten mit die Datenleitungen Kopfzerbrechen.
Das sind 8 Stück (für 8-Bit), die gleichzeitig Eingang und Ausgang sind, je nachdem ob man gerade schreibt oder liest.

Wenn ich jetzt zum Schreiben wieder ein S-IN/P-OUT Schieberegister nehme, und zum lesen din P-IN/S-OUT SR, dann kommen sich die beiden SRs doch sicher gegenseitig in die Quere. Die Ausgänge des S-IN/P-OUT kann man ja nicht abkoppeln wenn sie nicht gebraucht werden.

Meine plumpe Idee dafür wäre ein 8-fach wechsel Relais dazwischenzuschalten (natürlich nur theoretisch).
Aber das muss doch eleganter gehen, oder?

Bei dem Microcontroller kann man ja auch per Software jeden I/O-Port entweder als Eingang oder als Ausgang definieren.

Ich habe an dem Ardunio halt nur eine begrenzte Anzahl Ports und keine 8 stück für die EEPOM Datenleitungen mehr übrig.
Es kommt übrigens überhaptnicht auf die Geschwindigkeit der Schaltung an. Sogar 8bit/s wären noch okay....
Ausserdem wird es fast nur Schreiboperationen geben, und manchmal selten auch lesen.

Hier nochmal die Bauteile bei Reichelt.de:
29F040-90 DIL :: FLASH EPROM DIL 32
74HC 164 :: 8BIT SIPO SHIFT REGI
74HC 165 :: 8BIT PISO SHIFT REGIS.


es wäre schön wenn jemand einen Tipp dazu für mich hätte.
gruß Alex.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
BellaD



Anmeldungsdatum: 03.12.2006
Beiträge: 1197
Wohnort: Klinik der misshandelten Kuscheltiere

BeitragVerfasst am: Di 24.Nov 2009 16:07:34    Titel: Antworten mit Zitat

moin moin

Tri state octal bus tranciver 74hc245

mfg

_________________
Eine Weiterverbreitung ohne ausdrückliche Genehmigung ist untersagt. Für Schäden, lehnen wir jegliche Haftung ab.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
alex.enjoy



Anmeldungsdatum: 24.11.2009
Beiträge: 6

BeitragVerfasst am: Di 24.Nov 2009 16:49:16    Titel: Antworten mit Zitat

Hallo BellaD,

danke, sowas kannte ich bislang noch nicht.

Verstehe ich das so richtig, daß ich zwei stück davon parallel an die EEPROM Datenleitungen löte und und dahinter dann jeweils die passenden Schieberegister?

Und zum Schreiben setzte ich den /G Pin des Lesen-Transceivers HIGH was einem abkoppeln des PI/SO-SR gleichkommen würde?
Und für Lesen dann genau umgekehrt?

Code:


[EEPROM]----[SI/PO-SR-Address]
    |
    |(8-bit Data)
    |
    \-------[<<<Transceiver-WRITE<<<]---[SI/PO-SR]
    |
    |
    \-------[>>>Transceiver-READ>>>]----[PI/SO-SR]
   

[/code]


gruß Alex.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
derguteweka



Anmeldungsdatum: 18.12.2005
Beiträge: 1010

BeitragVerfasst am: Di 24.Nov 2009 17:33:34    Titel: Antworten mit Zitat

Moin,

Uiuiui - sicher, dass du dir so einen Stress machen willst? Haste dir schon mal serielle 3wire-bus eeproms angeguckt? Die gibts im angenehm kleinen 8pin Gehaeuse (SMD, aber prima von Hand zu loeten), die brauchen auch nur 3-4 I/O Leitungen am Prozessor und die gibts auch locker bis ein paar Megabyte Kapazitaet. Google mal z.B. nach "m25p40" - der waere elektrisch genauso gross wie dein Parallelflash - und du sparst dir das Drama mit Schieberegistern, Bustreibern etc. Schneller sind sie dann auch noch, denn so ein handgebastelter TTL-Klapperatismus macht keine 50MHz serial clk mit.

Gruss
WK
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
BellaD



Anmeldungsdatum: 03.12.2006
Beiträge: 1197
Wohnort: Klinik der misshandelten Kuscheltiere

BeitragVerfasst am: Di 24.Nov 2009 18:20:53    Titel: Antworten mit Zitat

Nun lass ihn doch basteln Wink

Ja klar ist SPI schöner und einfacher und billiger....

Apps gibts zBsp. bei Atmel (da Arduino )
http://www.atmel.com/dyn/products/app_notes.asp?family_id=616

mfg

_________________
Eine Weiterverbreitung ohne ausdrückliche Genehmigung ist untersagt. Für Schäden, lehnen wir jegliche Haftung ab.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
alex.enjoy



Anmeldungsdatum: 24.11.2009
Beiträge: 6

BeitragVerfasst am: Di 24.Nov 2009 21:06:21    Titel: Antworten mit Zitat

Hallo,

ist doch super!
Habe noch ein bischen weitergesucht und sogar ein 512k*8 I2C EEPROM gefunden, und mit I2C kenn ich mich schon etwas aus (Realtimeclock für die Log-Zeitstempel).
Das werde ich dann wohl doch bevorzugen, auch weil es kein SMD ist und ich auf Lochrasterplatine baue....

Trotzdem finde ich es klasse diese Info über tristate und transceiver mitbekommen zu haben, wer weiß wofür das nochmal nützlich sein wird!

Ich hätte da noch eine nicht ganz so wichtige Frage:
als Anzeige hab ich ein 4x7segment LCD Display ohne Controller hier was über ein Schieberegister angesteuert wird. Funktioniert soweit gut.
Leider leuchten die Segmente einige zehntel Sekunden nach wenn sie abgeschaltet werden. Der gemeinsame Anschluss des Displays ist direkt an 5V, die einzelnen Segmente direkt am Schieberegister. Kann man das Nachleuchten minimieren?

Vielen Dank nochmal für die Hilfe,
Alex.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Alv



Anmeldungsdatum: 23.06.2009
Beiträge: 456
Wohnort: Braunschweig

BeitragVerfasst am: Di 24.Nov 2009 21:27:21    Titel: Antworten mit Zitat

alex.enjoy hat folgendes geschrieben:
Habe noch ein bischen weitergesucht und sogar ein 512k*8 I2C EEPROM gefunden,

Wie lautet denn die Bezeichnung davon?
Gibt es auch Rams mit I2C-Bus?
Zitat:

als Anzeige hab ich ein 4x7segment LCD Display ohne Controller hier was über ein Schieberegister angesteuert wird. Funktioniert soweit gut.
Leider leuchten die Segmente einige zehntel Sekunden nach wenn sie abgeschaltet werden. Der gemeinsame Anschluss des Displays ist direkt an 5V, die einzelnen Segmente direkt am Schieberegister. Kann man das Nachleuchten minimieren?

LCDs müssen mit Wechselspannung angesteuert werden, sonst geben sie bald den Geist auf!
Vielleicht kommt das "Nachleuchten" auch von der Gleichspannungsansteuerung?

_________________
bd. Alv
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
alex.enjoy



Anmeldungsdatum: 24.11.2009
Beiträge: 6

BeitragVerfasst am: Di 24.Nov 2009 21:39:17    Titel: Antworten mit Zitat

Hallo Alv,

Alv hat folgendes geschrieben:

Wie lautet denn die Bezeichnung davon?
Gibt es auch Rams mit I2C-Bus?

ich hab das bei Reichelt gefunden: ST 24C512 BN6 (AT24C512B seriell EEPROM, 5V, DIP-8 ), kostet 1,50€
RAMs habe ich nicht in I2C Ausführung gefunden, aber wäre das nicht eh etwas langsam? Und wenn nicht, dann geht EEPROM doch genausogut...


Alv hat folgendes geschrieben:

LCDs müssen mit Wechselspannung angesteuert werden, sonst geben sie bald den Geist auf!
Vielleicht kommt das "Nachleuchten" auch von der Gleichspannungsansteuerung?

Ohoh.... wie soll ich das denn hinkriegen?? Shocked

Edit:
Habe eine tolle Erklärung in einfachen Schritten zu LCD Ansteuerungen gefunden.
Wen es interessiert: hier ist sie zu finden.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Alv



Anmeldungsdatum: 23.06.2009
Beiträge: 456
Wohnort: Braunschweig

BeitragVerfasst am: Mi 25.Nov 2009 06:18:16    Titel: Antworten mit Zitat

alex.enjoy hat folgendes geschrieben:
Hallo Alv,

Alv hat folgendes geschrieben:

Wie lautet denn die Bezeichnung davon?
Gibt es auch Rams mit I2C-Bus?

ich hab das bei Reichelt gefunden: ST 24C512 BN6 (AT24C512B seriell EEPROM, 5V, DIP-8 ), kostet 1,50€
RAMs habe ich nicht in I2C Ausführung gefunden, aber wäre das nicht eh etwas langsam? Und wenn nicht, dann geht EEPROM doch genausogut...

Danke. Ich möchte mich nur mal vorab informieren, weil für ein zukünftiges Projekt möglicherweise der interne Speicher eines ATMega8 nicht ausreicht und bei einen normalem Static-Ram extern zuviele Pins verbraucht werden.
Zitat:


Alv hat folgendes geschrieben:

LCDs müssen mit Wechselspannung angesteuert werden, sonst geben sie bald den Geist auf!
Vielleicht kommt das "Nachleuchten" auch von der Gleichspannungsansteuerung?

Ohoh.... wie soll ich das denn hinkriegen?? Shocked

Edit:
Habe eine tolle Erklärung in einfachen Schritten zu LCD Ansteuerungen gefunden.


Zur Ansteuerung von LCDs werden auch EXORs verwendet:
Diese werden dann als schaltbare Inverter/Nichtinverter genutzt.
Der Takt geht an die Backplane und an einen EXOR-Eingang, der EXOR-Ausgang geht an das Segment.
Mit dem 2. EXOR-Eingang kann man dann das Segment ein- und ausschalten.

_________________
bd. Alv
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
alex.enjoy



Anmeldungsdatum: 24.11.2009
Beiträge: 6

BeitragVerfasst am: Mi 25.Nov 2009 21:36:46    Titel: Antworten mit Zitat

Hallo,

habe das mit dem LCD nun doch hinbekommen, nur etwas anders.
Die Backplane versorge ich nun nicht mehr konstant mit +5V, sondern über einen I/O Port des µC.
Da ich von der RTC sowieso exakt im 1Hz Takt einen Interrupt bekomme, invertiere ich dann diesen Port immer und gebe die Segmente auch invertiert in die Schieberegister.
Jetzt stimmt der Kontrast und es verblasst nix mehr. Das Nachleuchten ist auch weg.

Danke nochmal für die Tipps.
Alex.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
alex.enjoy



Anmeldungsdatum: 24.11.2009
Beiträge: 6

BeitragVerfasst am: So 29.Nov 2009 09:47:30    Titel: Antworten mit Zitat

Hallo,

Alv hat folgendes geschrieben:

Zur Ansteuerung von LCDs werden auch EXORs verwendet:
Diese werden dann als schaltbare Inverter/Nichtinverter genutzt.
Der Takt geht an die Backplane und an einen EXOR-Eingang, der EXOR-Ausgang geht an das Segment.
Mit dem 2. EXOR-Eingang kann man dann das Segment ein- und ausschalten.


Im 4070 quad-XOR sind für jedes XOR-Gate ja 3 Pins, wobei ich für diesen Zweck alle A-Eingänge verbinden müsste.
Gibt es auch ICs mit 8 XOR Gates bei denen alle A-Eingänge zusammen auf einem Pin liegen?
Sonst bräuchte ich für ein 4-stelliges LCD ja 8x4070 IC nur für die Invertierung...

gruß Alex.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Anzeige






Verfasst am:     Titel:

Nach oben
derguteweka



Anmeldungsdatum: 18.12.2005
Beiträge: 1010

BeitragVerfasst am: So 29.Nov 2009 10:02:50    Titel: Antworten mit Zitat

Moin,

alex.enjoy hat folgendes geschrieben:
Im 4070 quad-XOR sind für jedes XOR-Gate ja 3 Pins, wobei ich für diesen Zweck alle A-Eingänge verbinden müsste.
Gibt es auch ICs mit 8 XOR Gates bei denen alle A-Eingänge zusammen auf einem Pin liegen?
Sonst bräuchte ich für ein 4-stelliges LCD ja 8x4070 IC nur für die Invertierung...


Also ich kenn' keine Logikgatter mit mehr als 4 XOR Gattern drinnen. Hoechstens als CPLD oder FPGA. Aber ich hab' auch noch nie gesehen, dass ein LCD nicht ueber einen speziellen LCD-Controller (Der dann eben die Unmengen XORs und noch viel mehr eingebaut hat) angesteuert wird. Beide Beobachtungen haben sicher was miteinander zu tun Smile
Wenn du's trotzdem mit 4070 o.ae. machen willst, dann solltest du deinen Umschalttakt aus einem Flipflop gewinnen, damit sichergestellt ist, dass das Tastverhaeltnis recht genau 1:1 ist. Sonst nuetzen die ganzen XORs wenig und dein LCD geht trotzdem ueber die Wupper.

Gruss
WK
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   

Anzeigen:

Neues Thema eröffnen   Neue Antwort erstellen    loetstelle.net Foren-Übersicht -> Allgemeine Schaltungstechnik Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum nicht herunterladen


Powered by phpBB 2.x © 2001, 2002 phpBB Group
Sie sind Besucher Nr. 545985
©opyright by Markus Vohburger 2005 All Rights reserved