Hallo, ich habe jetzt endlich meinen Flash-EPROM von Reichelt bekommen und baue das gerade auf einem Steckbrett auf. Jetzt habe ich eine paar kurze Frage. Muss ich die Adresseingänge mit einem Wiederstand gegen Masse belasten damit diese bei Low-Pegel auch 100% Low sind oder kann ich sie einfach offen hängen lassen? Wie ist es mit den I/O-Eingängen wird es dort auch benötigt? Wenn ja wie groß sollte ich diese dimensionieren damit sie nicht zuviel Strom ziehen um bei Highpegel zum Eingang oder Highpegel vom Ausgang angeschloßen bleiben zu können?
Eingänge nie offen lassen. Pulldown-Widerstände sind allerdings unnötig, man kann sie direkt auf Masse legen. Ist an den Eingängen auch nur irgendetwas angeschlossen (beispielsweise ein Port eines Microcontrollers), dann sind die Eingänge logischerweise nicht mehr offen - und dann sind weder Pullup- noch Pulldown-Widerstände erforderlich. Pullups wären nur dann nötig, wenn der Microcontroller Open-Collector (bzw. Open-Drain) Ausgänge hätte.
Hallo, ich baue das ganze erstmal mit Microschalern(DIP) auf um es zu testen. ok Eingänge kan ich dann direkt auf Masse legen, wenn dann der I/O Pin allerdings als Ausgang geschaltet wird und der liegt dann direkt auf Masse denn wird es den Ausgang himmeln wenn er nicht intern nen Schutz gegen Überlastung hat, deswegen wollte ich Wiedrstände reinmachen. 10kOhm oder 20(habe ich gerade da) sollten doch ok sein?
Hallo, kann mir jemand was zur Belastbarkeit der Ausgänge sagen? Wenn ich das Datenblatt auf Seite 4 ganz unten richtig verstehe kann ich den Ausgang mit 100µA belasten und die Ausgangsspannung bleibt dann bei min. 4,2V wenn VCC 4,5V beträgt. Bei einer Belastung von 400µA fällt sie aber schon auf 2,4V ab. Was sagen eigentich die TTL Spezifikationen sollte das nicht mind. für 5V/2mA gut sein?
Sag' mal, was hast Du da eigentlich komisches vor? Magst Du mal Deinen vorgesehenen Schaltplan posten?
Hallo, ich hatte erstmal vor eine bestimmte Stelle im Speicher anzusprechen, dazu benötige ich ja nicht alle Adressleitungen und deswegen leigen einige offen. Die Ein/Ausgabe geschieht ja durch die 8 gleichen Pins, so das die Frage ist wie lasse ich mir das in den Flash geschriebene Byte wieder anzeigen und wenn die Pins als Ausgänge zu schwach sind hat es ja keinen Sinn LEDs(LowCurrent) dranzuhängen, dann würde es nur mit nem µC gehen, mit dem es später ja eh gemacht werden soll. Von der aktuellen Schaltung habe ich noch keinen Schaltplan gemacht. Hate letzte Woche ne Schaltung für einen Latchbaustein aufgebaut, mit diesem ich dann später die Adressports ansteuern will. Dieser Teil der Schatung funktioniert nun einwandfrei. http://www.mikrocontroller.net/attachment.php/153963/Latch.png http://www.mikrocontroller.net/forum/read-1-45071.html Aber jetzt komt mir gerade ne Idee ich kann ja einen Latch nehmen um damit die LEDs zu treiben weil das funktioniert ja.
Die unbenutzten Adressleitungen des Flash-ROMs kannst Du ohne Probleme auf Masse legen. Da Adressleitungen eines Speicherbausteins niemals Ausgänge werden können, kann da auch nichts passieren. Entkopple die Leuchtdioden mit einem einfachen Bustreiber, ein Latch ist hier IMHO unnötig, es sei denn, Du möchtest nicht, daß die Daten beim Schreibvorgang angezeigt werden. Was ist insgesamt der Sinn der Übung? Leuchtdioden an ein 128 kByte-Flash-ROM hängen?
Hallo, ne an die Adressleitungen möchte ich keine Leuchtdioden hängen sondern, an die Datenleitungen um die beschriebene Speicherstelle auch auslesen(über Leds anzeigen) zu können. Und da ist es einfach leichter das ganze per Dipschalter zu machen also die Adressleitungen und Daten, anstatt da zig mal das Programm im Rechner neu zu programmieren und auf den Tiny zu brennen. Im Prinzip kann ich ja nen Latch als Bustreiber verwenden, also einfach auf Transparent stellen weil ich einige Latches da habe Bustreiber aber nicht. Später soll das ganze eh von nem großen ATmega angesteuert werden. Ich programmiere zurzeit einzelne Programmabschnitte die später in ein großes Programm zusammengewürfelt werden.
"ne an die Adressleitungen möchte ich keine Leuchtdioden hängen" Davon habe ich nie geredet. "Und da ist es einfach leichter das ganze per Dipschalter zu machen also die Adressleitungen und Daten, anstatt da zig mal das Programm im Rechner neu zu programmieren und auf den Tiny zu brennen." Das klingt, als hättest Du sowas noch nie zuvor gemacht. Wozu soll das denn gut sein? Einerseits kann ein Flash-ROM wie das genannte nicht byteweise programmiert/gelöscht werden (das ist schließlich kein EEPROM), andererseits ist "zig mal" einen Dip-Schalter umzustellen auch keine sonderlich elegante Lösung. Bist Du Dir außerdem dessen bewusst, daß kein AVR externen Programmspeicher unterstützt? Insgesamt: Was soll die ganze Übung? Willst Du ein Programmiergerät für Flash-Roms entwickeln?
Hallo, nein habe das noch nie zuvor gemacht. Man kann es nicht Byteweise programmieren? Aber wieso kann man es bytegenau adressieren? Habe mich schon gewundert warum das so im Datenblatt steht und das erklärt auch die lange Schreibdauer. Ich habe es aber so verstanden das es die restl. 127 Byte einew Sektor zwischenspeichert und dann mit dem einem Byte neu schreibt. Naja ich wollte ja nur mal testweise ein einzelnes Byte schreiben was mit den Dipschaltern schon gehen sollte. Hardwaremäßig unterstützt es kein AVR, der 90S8515 sollte aber mit normalen EPROM oder war es SRAM zurechtkommen. Aber es soll dann ja eh in software gemacht werden. Soll kein Programmiergerät werden, aber man soll durch Tastendruck schon einzelne Byte erhöhen/erniedrigen können. Also da ich ja im Prinzip ein Anfänger bin wäre ich für hilfe dankbar da ich die Datenblätter nicht ganz so gut verstehe. Ich bemühe mich aber erst reinzuschauen bevor ich fragen stelle.
Hol dir doch lieber einen seriellen I2C EEProm. Dann hast du das Preoblem mit den ganzen Adressleitungen nicht
Hallo, also damit sehe ich keine Probleme das Kniff mit denLatches habe ich ja raus, dazu brauche ich dann 8 Pins für die Daten, 1 Pin für Latch out da kann ich ja alle Latches zusammenfassen, und dann noch eine entsprechende Anzahl an Pins für die Latch enable. Für mich als ASM-Anfänger wäre das am leichtesten, da ich da ich mich nicht erst mit I2C auseinandersetzen muss. Ich habe allerdings eine Dummheit begannen ich habe die Datenleitungen mit Lowcurrentleds 2mA über 180Ohm belastet, jetzt weiß ich nicht ob das Ding noch lebt da ich keinen Programmierer habe. Kann das jemand ausschließen, oder war ich mit der Belastbarkeit von 400µA pro Datenausgang richtig gelegen?
Ach, das Flash-ROM wird schon nicht davon gestorben sein. Mit 180 Ohm gegen Masse kommt zwar bei der Beschaltung vermutlich nichts sinnvolles mehr 'raus, aber wenn Du die Widerstände (und LEDs) beseitigst, dann sollte das Teil wieder das machen, was es soll. Es könnte bei Deiner Anwendung allerdings wirklich sinnvoller sein, ein echtes EEPROM zu verwenden, denn bei dem kannst Du wirklich jedes einzelne Byte beliebig programmieren. Es gibt auch EEPROMs mit paralleler Ansteuerung, so daß Deine bisherige "Schaltung" auch weitestgehend beibehalten werden kann. Ein Beispiel wäre das AT28C64, das kost' bei Segor für 4.40. Datenblatt gibt's bei Atmel.
Ach ja, noch eine Anmerkung: Auch der 90S8515 unterstützt keinen externen Codespeicher. Externes RAM, ja, das kann man an einigen AVRs anschließen, aber das ist beim AVR eben was anderes als Codespeicher - Stichwort "Harvard".
Hallo, @Rufus: Nun habe ich das Teil da und würde es gerne einsetzten, habe aber anscheinend das ganze nicht richtig verstanden. Kannst du mir da bitte etwas helfen? Mir kommen jetzt folgende Fragen. Wie läuft diese Sektorweise programmierung ab muss ich jeweils 128Byte's nacheinander übertragen, diese landen in einem zwischenspeicher und werden dann auf einmal geschrieben? Ich dachte immer man kann jedes einzelne Byte schreiben da ja ansonsten die Adressierung für die 128Bytes Unsinn ist wenn sie eh alle nacheinander beschrieben werden. Es geht eigentlich weniger um den Preis aber wegschmeisen will ich das Teil nun auch nicht, selbst wenn ich mit einem Byte nen kompletten Sektor voll machen müsste hätte ich ja dann immer noch 1023 Sektoren die ich mit einem einzogen Byte beschreiben könnte. Werde mir mal das Datenblatt zu nem normalen EEPROM ziehen.
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.