-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 11

Thema: PIC16F876 mit externem EEProm erweitern

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    15.02.2006
    Beiträge
    12

    PIC16F876 mit externem EEProm erweitern

    Anzeige

    Ich möchte gerne einen PIC16F876 extern mit einem EEPROM erweitern, da dieser EEPROM mit Daten gefüllt werden soll, die in den normalen Speichher nicht reinpassen. Welchen EEPOM´s kann ich benutzen, wie schließe ich diese EEPOM´s an dn PIC an und was sollte ich noch beachten.

    Vielen Dank für Eure Hilfe!
    Staudi

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    09.07.2005
    Ort
    Hangover
    Alter
    51
    Beiträge
    45
    Du kannst serielle EEPROMS nutzen - SPI oder I2C. Also 24xxyy oder 93xxyy oder was auch immer !
    Ein 16F876 hat alle Hardware-Schnittstellen für SPI oder I2C und kann auch alles in Software simulieren.

  3. #3
    Neuer Benutzer
    Registriert seit
    26.10.2006
    Ort
    KIEL
    Alter
    51
    Beiträge
    3

    Erweiterung mit EPROMs...

    Hallo zusammen!
    Entschuldigung für meine "Unbildung": Kann man an einem PIC Mikrocontroller auch die guten alten EPROMs (Ja die mit dem Glasfenster; natürlich schon programmiert) über einen Wandler anschließen? Wenn ja, was muß man dabei beachten? Kann in modernen seriellen externen ROM-Bausteinen auch Programmcode abgelegt werden oder "nur" Daten, z.B. Lookup-Tabellen oder diverse Zeichenketten?
    CUL8A Euer Physikus.

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    09.07.2005
    Ort
    Hangover
    Alter
    51
    Beiträge
    45
    Ja, man kann diese alten EEPROMs über "Wandler" anschließen. Ist mega-aufwendig.

    In externen Speicher kann man keinen Programmcode ablegen, nur Daten.

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.10.2004
    Ort
    ferd. Waldmüllerg. 7/2
    Alter
    32
    Beiträge
    456
    In externen Speicher kann man keinen Programmcode ablegen, nur Daten.
    Stimmt schon, außer du baust dir einen wirklichen Parser, der dir je nach eingelesenem Befehl eine anderen im programmcode abgespeicherten Befehl ausführt. Ist Mega aufwendig und meist ist es einfacher das Programm intern abzuspeichern, schon weil das Interface für den EPROM/Flash-Speicher sehr schnell sehr Portintensiv wird. Lohnt sich echt nur, wenn man ein vorprogrammiertes Programm hat und es versucht mit einem PIC zum Laufen zu bringen (zum Beispiel das BIOS einer ISA-Graca zu interpretieren). Wobei sich es beim Beispiel schon lohnt den EPROM auszulesen und mittels disassembler den eigentlich Code in x86-Asm zu bekommen und diesen dann einfach auf PIC-Code umzuschreiben.

    Wie gesagt, für lookup Tabellen lohnt es sich nur, wenn du 1. viele unbenutzten Pins hast (viele = min 2 Ports, oder es wird sehr langsam, ich sag nur shiftregister) und 2. diese echt nicht in den PIC-Speicher passen. Wenn ich erlich sein soll, ich hab bis heute nie die 2k Grenze bei PIC-Programmen überschritten und das war ein Sinus-Generator mit 2 lookup Tabellen.
    MfG
    Mobius

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    15.02.2006
    Beiträge
    12
    Danke erstmal. Die Daten die ich im externen EEPROM ablegen möchte sind Audiodateien. Kurz und knackig. jeweils ca. 0,5 bis 1 sekunde lang. Genauer gesagt 13 Audiodateien. Das dürfte doch machbar sein,oder.
    Gruß
    Staudi

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    09.07.2005
    Ort
    Hangover
    Alter
    51
    Beiträge
    45
    Ja,
    aber ich kann nur dringend empfehlen, auf brauchbare serielle Speicher umzusteigen, statt an den super-schwierigen parallelen Speichern festzuhalten.

  8. #8
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    09.07.2006
    Alter
    24
    Beiträge
    138
    Pollin hat unter Bauelemente --> Aktiv --> ICs --> EPROMs auch EEPROMs mit I²C-Interface ab 30ct (8x1024).

  9. #9
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    08.10.2004
    Ort
    ferd. Waldmüllerg. 7/2
    Alter
    32
    Beiträge
    456
    Audiodaten? Hast du dir mal durchgerechnet, wie viel speicher du für 13 (oder 6,5) Sekunden brauchen wirst? Weil, eine gute Sample-Qualität erreichst du erst ab *schätz* 4000 Samples/Sekunde, zumindest ist das die minimale Samplerate um Sprache zu digitalisieren. Das sind, ohne dass auch nur eine minimale Kompression anlegt von 26 bis maximal 52 kByte an Daten. Diese kannst du noch um die Hälfte verkleinern, solltest du eine 4 Bit Differential Pulse Code Modulation anlegen. Damit wären wir bei 13 bis 26 kByte.
    Auch musst du bedenken, dass du die abgespeicherten Daten anschließend wieder mit 4kHz durch einen DA-Wandler (sei es nur ein R2R-Netzwerk) jagen musst. Da ich annehme, dass der I2C-Protokoll diese Datenrate nicht schafft wirst du nicht umhin kommen, zuerst erstmal die Daten aus dem EEPROM auszulesen und diese (zumindest Teilweise) in die Memory zu laden.

    Naja, sind nur einige Gedanken.
    MfG
    Mobius

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    09.07.2005
    Ort
    Hangover
    Alter
    51
    Beiträge
    45
    Taktrate zu I2C-EEPROMs ist mindestens 100kHz - in Wirklichkeit eher 1MHz.
    DA-Wandler steuere ich per SPI mit 3MHz an.
    Timing ist hier nicht das Problem !

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •