PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : el. Grundlage - Demultiplexing



maltejahn
17.01.2005, 19:44
Hallo erstmal,

will mit einem PIC mehrere Sensoren erfassen(TC77) und dann auf MMC oder EEPROM Speichern. Das über SPI. Nun, da ich an dem PIC noch ein LCD und später sonst noch ein paar Dinge anschließen möchte, möchte ich auf der Testplatine Pins einsparen.
Ich benötige ja für jeden TC77 eine eigene CS Leitung. Jetzt habe ich etwas von Demultiplexing gelesen.
Leider aber keine Beispiele gefunden(wahrscheinlich falsch gesucht).
Ist ein MOS4556 ein solcher Chip?

Hätte hier jemand eine Beispielschaltung?

Und noch eine Frage, allerdings drängt diese wirklich nicht, da ich die Daten zuerst nur mal per EEPROM speichere. Aber später noch auf die größere MMC. Eine MMC verträgt aber nur 3,3V. Aber mein PIC möchte ja gern 5V haben. Und jezt habe ich schon wieder was gelesen. ein Low-Level-Shifter soll hier mein 3,3V auf 5V bringen. Hierzu fehlt mir allerdings sowohl Baupläne als auch Bauteilnummern um suchen zu können.

Gruß
Malte

stegr
18.01.2005, 08:22
Vier kleine Fragen:
1.) Die Sensoren werden über SPI angeschlossen, und über die CS-Leitung ausgewählt... soweit OK, aber wieviel Sensoren hast du denn vor anzuschließen, dass du keine Pins für die CS-Leitungen frei hast?

2.) Was für einen PIC hast du vor zu verwenden?

3.) Die MMC schließt du wie an? Ich denke mal an den PSP des PIC, da die MMCs meines Wissens ein 8-Bit Datenformat notfalls unterstützen... Dann benötigst du natürlich auch Logic-Level-Schifters (kein Low-Level-Shifter). Alternative wäre, dass du den PIC auch mit 3,3V laufen lässt. die L-Typen machen das problemlos mit (allerdings weiss ich nicht, ob du Zugang zu denen hast). Dann hättest du kein Problem mehr mit der MMC und da die PIC-Eingänge 5V-tolerant sind, kannst du die TC77 mit 5V betreiben.

4.) Decoder wäre, wenn du keine Pins für über hast, die richtige Wahl; der 4556 ist auch OK, aber beachte dabei, dass dein Signal Low-Aktiv ist. (OK, weniger ne Frage, aber was solls...) Ansonsten solltest du beachten, dass du erst den alten TC77 ausschalten musst (CS auf high) bevor du den neuen auswählst, da die TC77 bis zu 200ns brauchen um Data Out auf HiZ zu ziehen, während der neue aber schon nach 100ns reagieren kann...
Wenn du dein CLK natürlich softwaremäßig erzeugst, hast du da keine Probleme...
Btw. Beispielschaltung für den Decoder findest du überall unter dem Begriff Decoder und nicht unter Demultiplexer... ;)

mfG
Stefan

maltejahn
18.01.2005, 12:21
Hallo,

wie viele Sensoren es genau werde ist noch unklar. Wollte aber auf jeden Fall auf dem Board 8 SPI Anschlüsse zur Verfügung stellen.


Und das will ich sonst noch dranklemmen:
Den Port D meines PIC 18F452 nutze ich für LCD(wahrscheinlich im 4-Bit modus), dann benötige ich noch ein paar Analogeingänge für Luftdruck und Luftfeuchtigkeit. Zwei Pins noch für RS232. Der PIC muss gleichzeitig I2C und SPI können, das mache ich mit einem 4066(um den zu Bedienen allerdings wieder eine Steuerleitung). Es kommt also einiges zusammen.

Für den MMC gibt es hier ein Beispiel:
http://www.cc5x.de/MMC/

Nach möglichkeit würde ich den PIC auf 5V laufen lassen.

Dann suche ich mal nach einem Decoder

Gruß
Malte

maltejahn
18.01.2005, 20:42
Ich will nun einen Demultiplexer benutzen. Habe mir den 4556 ausgesucht.
An dem habe ich nun acht Ausgänge(Q0-Q7) und drei Eingänge(besser gesagt zwei mal drei Eingänge). Nun möchte ich auch die acht Ausgänge nutzen. Also E zu E, A zu A, B zu B. Diese 3 Anschlüsse an meinen PIC und schon kann ich 2^3 Ausgänge schalten.
Nur wenn ich einen Ausgang schalte habe ich den PIN als high. Das ist schlecht. Dann wären nämlich 7 auf low(und 7 TC77 senden) und einer auf high. Also muss ich das Ausgangssignal invertieren? Welcher Baustein ist dies - 4069? Der wäre ein 6-fach inverter. Gibet den auch als 8-fach?

Problem zwei, die MMC Karte. Also als Chip den 74LS125(wo ist hier der unterschied zur LVX Variante?). Dieser befördert also mein 3,3V Ausgangssignal der MMC auf VCC Level(in meinem Fall 5V)? Habe hier aber nun einige Anschlüsse. Mein MMC müsste an die Ausgänge O0..O3. Mein Pic mit den SPI Anschlüssen an A0..A3 entsprechend dem was ich benötige. Was passiert mit OE0..OE3? GND. Zu OE heißt es"Output Enable Inputs"

Und eine letzte Frage für heute:
Ich möchte mit diesem Gerät ein Umwelterfassungsgerät bauen. Und möchte gleichzeitg unsere Solaranlage erfassen. Wie kann ich jetzt z.B. die Umwälzpumpe erfassen. Will nur wissen Ein-Aus. Dazu möchte ich aber nicht an der Anlage an sich verändern. Am liebsten einfach einen Sensor draufkleben. Merkt das ein Hallsensor/Hallschalter ob der Motor anläuft?

Gruß
Malte

Vitis
18.01.2005, 22:04
für etwas breitere Auswahl an Anschlussmöglichkeiten gäbs dann noch den 4067 oder 4097, der dann auch unabhängig vom gemultiplexten Signallevel ist

maltejahn
19.01.2005, 09:40
Wow - 1 zu 16. Werde wohl einen 4067 nehmen. Gibt es grenzen beim Einsatz von SPI, also maximale Anzahl von Slaves(dürfte ja egal sein, da jeder sein CS hat), Kabellänge,...
Es sollen noch I2C angeschlossen werden. Wo sind hier die Begenzungen. Glaube gelesen zu haben, das die Anzahl gleichartiger Chips bei I2C beschränkt ist. Gibts zu SPI und/oder I2C eine gute, am besten deutschspachige Seite?

Gruß
Malte

Mobius
19.01.2005, 10:05
Naja, bei I2C hast du eine 7bit adresse, d.h. du kannst theoretisch 127+1 Processoren anschließen... Praktisch sind die ersten 4 Bits immer fest definiert...

schau mal bei elko (http://www.elektronik-kompendium.de/public/borchers/i2c/main.htm)

MfG
Mobius

maltejahn
19.01.2005, 13:09
Hallo,

nur um sicher zu gehen. Entweder liege ich total falsch mit dem was ich sage und deshalb antwortet niemand auf spezifische Fragen, oder es stimmt 8-[

Also

Also E zu E, A zu A, B zu B. Diese 3 Anschlüsse an meinen PIC und schon kann ich 2^3 Ausgänge schalten.
Stimmt das(entsprechend für den 4067)
Muss ich dann x mal mit dem 4069 invertieren?

Dieser befördert also mein 3,3V Ausgangssignal der MMC auf VCC Level. ...Mein MMC müsste an die Ausgänge O0..O3. Mein Pic mit den SPI Anschlüssen an A0..A3

Was passiert mit OE0..OE3? GND.
Und zu letzt noch diese offene Frage

Merkt das ein Hallsensor/Hallschalter ob der Motor anläuft?
Hier auch Fragezeichen?

Möchte nur nochmal sichergehen ob das so stimmt. Dann würde ich nämlich heute Mittag meine Schaltung um diese Komponenten erweitern.

Und zum Schluß

für etwas breitere Auswahl an Anschlussmöglichkeiten gäbs dann noch den 4067 oder 4097, der dann auch unabhängig vom gemultiplexten Signallevel ist
Von was abhängig???

Gruß
Malte