Hallo, ich habe jetzt den Fall, dass in einer Schaltung die ich ca. 100x bauen werde (Soundmodule für die Modellbahn für die Vereinsanlage) ein SPI Flash enthalten ist (AT45DB321). Der Prozessor ist ein ATtiny1614. Ich habe keine Möglichkeit, den SPI Flash über den ATtiny1614 mit den 2MB Soundfile zu beschreiben. Würde mir auch zum lange dauern bei der Menge. Daher meine Frage: Gibt es einen Programmer für sowas, ähnlich wie die ISP Programmer für die Atmels, wo man den SPI Chip einfach In-System beschreiben kann? Ich habe die ISP-Schnittstelle über ein Tag-COnnect Cabel rausgeführt. Ich habe sowas gefunden: https://de.aliexpress.com/item/CH341A-Series-24-EEPROM-Writer-25-SPI-routing-BIOS-LCD-Flash-USB-Programmer/32666369868.html?spm=a2g0x.search0104.3.9.281acb35SQZrCR&ws_ab_test=searchweb0_0,searchweb201602_2_10320_10152_10321_10151_10065_10344_10068_10342_10547_10343_10322_10340_10548_10341_10696_10084_10083_10618_10304_10307_10820_10821_10302_10846_10843_10059_100031_10319_445_10103_524_10624_10623_10622_10621_10620,searchweb201603_30,ppcSwitch_5&algo_expid=2eb30265-a8d0-404f-9e61-93efe4c8a8c2-1&algo_pvid=2eb30265-a8d0-404f-9e61-93efe4c8a8c2&priceBeautifyAB=0 Es ist weiter nichts beschrieben. Ein Kabel vom Tag könnte man ja an sowas dran basteln. Hat jmd. sowas schon mal genutzt?
Mr. AVR schrieb im Beitrag #5481197: > ich habe jetzt den Fall, dass in einer Schaltung die ich ca. 100x bauen > werde (Soundmodule für die Modellbahn für die Vereinsanlage) ein SPI > Flash enthalten ist (AT45DB321). Der Prozessor ist ein ATtiny1614. Ich > habe keine Möglichkeit, den SPI Flash über den ATtiny1614 mit den 2MB > Soundfile zu beschreiben. Würde mir auch zum lange dauern bei der > Menge. Das ist doch Schwachsinn. Wenn er es schnell genug lesen kann, um es abzuspielen, kann er es auch mindestens genauso schnell beschreiben. Da man beim Lesen aber üblicherweise nicht an die Grenzen geht, wird es es sogar mindestens etwas schneller beschreiben können, wahrscheinlich sogar sehr viel schneller. Theoretisch... Praktisch wird eher die begrenzte Schreibgeschwindigkeit für das Ziel-Flash ganz allgemein die Grenze darstellen und die kannst du auch mit irgendeinem anderen Programmer nicht überwinden! Dein Problem ist wohl nur: das Schreiben war nicht in der Wichsvorlage enthalten, die du jetzt "dein" Programm nennst... > Daher meine Frage: Gibt es einen Programmer für sowas, ähnlich wie die > ISP Programmer für die Atmels, wo man den SPI Chip einfach In-System > beschreiben kann? Wahrscheinlich schon. > Ich habe die ISP-Schnittstelle über ein Tag-COnnect > Cabel rausgeführt. Du meinst: die SPI-Schnittstelle? Wenn ja: das allein reicht nicht. Wenn du den SPI-Flash mit irgendwas anderem programmieren willst, mußt du natürlich für diese Zeit den ATtiny im Reset-Zustand halten, damit der externe Programmer den Bus kontrolliert und nicht dein ATtiny dazwischen funkt.
c-hater schrieb: > Praktisch wird eher die begrenzte Schreibgeschwindigkeit für das > Ziel-Flash ganz allgemein die Grenze darstellen und die kannst du auch > mit irgendeinem anderen Programmer nicht überwinden! > > Dein Problem ist wohl nur: das Schreiben war nicht in der Wichsvorlage > enthalten, die du jetzt "dein" Programm nennst... Was soll das du Pisskind? Ich habe alles selber geschrieben, in C, du Opfer hast nicht mal verstanden was ich will. Es geht darum, eine Audiodatei die ich erstellt habe, vom PC auf den Flash zu bekommen. Im direkten Weg. Auf dem Tiny ist kein Platz mehr für einen Bootloader und der hat keine Verbindung zur Außenwelt, außer DCC Informationen, das würde locker 15-20 min dauern das über das Gleis zu senden. Außerdem müsste ich mir einen Programmer bauen etc.. Abgesehen davon das der voll ist der Tiny. Ich will den Chip in system flashen mit meiner Audiodatei. Ansonsten brauchst du H*Sohn mir nichts erzählen was wie im Reset gehalten werden muss, das weiß ich selber.
Über die freundlichen Worte sehe ich jetzt einmal hinweg. Hast du die AT45DB321 schon? Wenn nicht, kannst du die auch bereits programmiert ordern. http://www.segor.de/#Q=AT45DB321E-SHF&M=1
pegel schrieb: > Über die freundlichen Worte sehe ich jetzt einmal hinweg. > > Hast du die AT45DB321 schon? > Wenn nicht, kannst du die auch bereits programmiert ordern. > > http://www.segor.de/#Q=AT45DB321E-SHF&M=1 Danke für die vernünftigen Antworten. Was soll sowas Internetrambo mäßig immer in Forum. Kopf gegen die Wand schlagen würde solchen Leuten besser tuen als die Schnauze auf zu machen @c-hater. Back to topic: Ich habe diese schon, ja. Außerdem sind es unterschiedliche Files für Dampflok, Diesel, E-Lok. Ggf. würde ich mir auch noch ein paar Anlagensounds etc.. erstellen, sodass ich gerne flexibel wäre und die Datei updaten/ersetzen kann. Mal schauen was unsere Bahner für Originalsounds einfangen können, dann könnte ich auch spezifische Dateien machen. Es wäre schon gut, es über Tag-Connect über den PC ähnlich einem Mikrocontroller machen zu können.
Die einfachste Variante wäre, das Flash extern wie den AVR auch per SPI zu beschreiben. Ein AVR ISP-Programmer wäre dazu von der Hardware her in der Lage (ISP ist auch nichts anderes als SPI), aber seine Software ist das Problem. Da musst Du eben ein FTDI MPSSE-Kabel (http://www.ftdichip.com/Support/Documents/DataSheets/Cables/DS_C232HM_MPSSE_CABLE.PDF) oder etwas ähnliches nehmen. Der Prozessor muss am Besten im Reset stehen, damit die IO-Pins hochohmig sind und Du sie extern ansteuern kannst. fchk
Dann ist der Programmer von oben doch schon geeignet. Die Software dazu hatte ich schon mal gefunden und den link hier im Forum angegeben. Du musst eben nur wie schon geschrieben den ATTiny im Reset halten beim flashen.
Wie wäre es mit selbst machen, also im wesentlichen wohl einen ATmega dafür programmieren? Hinreichende Kenntnisse scheinen ja vorhanden, und bevor man längere Zeit sucht, sich mit unsäglichen "Ratgebern" herumärgert und dann endlich etwas hoffentlich Funktionierendes beschafft?
Wenn man es selber machen will/muss. Ein AVR als Übrsetzer zwischen UART und SPI, darüber eines der alten, einfachen Protokolle ala X-Modem oder TFTP. Ist aber nicht mal fix in 2h getan, das dauert eher ein ganzes Wochenende und mehr.
@S. Landolt (Gast)
>Wie wäre es mit selbst machen,
Auch der Bastler ist gut beraten, wenn er das Rad nicht dauernd neu
erfindet und erstmal ausgiebig nach bestehenden Lösungen sucht. Selber
machen in praktisch IMMER deutlich aufändiger.
PS: Gerade vergessen: Dein AVR ist ja ein Microchip AVR, der per UPDI programmiert wird. Daher bitte das "wie den AVR auch" streichen. Du bräuchstest ein 10-poliges TagConnect Kabel. GND VTarget AVR Reset SPI CS SPI SCK SPI MISO SPI MOSI sind schon 7 Signale. fchk
@ Mr. AVR (Gast) >direkten Weg. Auf dem Tiny ist kein Platz mehr für einen Bootloader und >der hat keine Verbindung zur Außenwelt, außer DCC Informationen, das >würde locker 15-20 min dauern das über das Gleis zu senden. Falscher Ansatz. Du brauchst eine separate Firmware + ggf. Soft-UART. Dann mußt du nur ein paar Pins kontaktieren und kannst die Daten in den Flash brennen. Danach wird die normale Firmware in den AVR gebrannt.
an Falk Brunner: Nix Rad neu erfinden, sondern eine schnelle und einfache Lösung anstreben, welche jemandem, der offenbar Spaß an der ganzen Sache hat, auch noch Erkenntnisgewinn bringt.
S. Landolt schrieb: > Wie wäre es mit selbst machen, also im wesentlichen wohl einen > ATmega > dafür programmieren? Hinreichende Kenntnisse scheinen ja vorhanden, und > bevor man längere Zeit sucht, sich mit unsäglichen "Ratgebern" > herumärgert und dann endlich etwas hoffentlich Funktionierendes > beschafft? Ja ich glaube bald darauf läuft es wohl hinaus. Ich dachte aber einfach ich habe so ein 2€ Gerät und bin fertig. Ich habe zwar bereits einen Programmer mit dem meine Vereinskollegen die Software, also Firmware, meiner Decoder updaten können, auch PC Terminal dafür. Das ist quasi ein ISP-Programmer wenn man so will. Damit könnte ich das erweitern.
Frank K. schrieb: > PS: Gerade vergessen: Dein AVR ist ja ein Microchip AVR, der per > UPDI > programmiert wird. Daher bitte das "wie den AVR auch" streichen. > > Du bräuchstest ein 10-poliges TagConnect Kabel. > > GND > VTarget > AVR Reset > SPI CS > SPI SCK > SPI MISO > SPI MOSI > > sind schon 7 Signale. > > fchk Ich habe nur das 6 polige. Das sollte reichen. Ich habe: VCC, GND, MOSI, MISO, SCK, RESET. CS ist immer aktiv bei dem Teil, habe nur einen SPI Verbraucher in der Schaltung. Der Tiny erkennt das automatisch, wenn man versucht den Chip umzuprogrammieren und schaltet SPI dann auf Z.
Falk B. schrieb: > https://www.totalphase.com/products/aardvark-i2cspi/ > > Der kann das, ist aber nicht ganz billig ;-) Jo den habe ich auch gefunden :D Wenn das der einzige ist mache ich es selber....
pegel schrieb: > Dann ist der Programmer von oben doch schon geeignet. > Die Software dazu hatte ich schon mal gefunden und den link hier im > Forum angegeben. > Du musst eben nur wie schon geschrieben den ATTiny im Reset halten beim > flashen. Ich habe die Software auch gefunden, dort kann man aber nur die Atmel 25-Flash Serie auswählen, nicht die 45. Ich weiß nicht was das für einen Unterschied macht, ich denke aber mal das Protokoll oder die Bänke werden anderes sein. Wahrscheinlich bekomme ich dann die größe auch nicht entsprechend geladen. Ich kenne die 25-Serie auch nicht.
Mr. AVR schrieb im Beitrag #5481271: > pegel schrieb: > Dann ist der Programmer von oben doch schon geeignet. > Die Software dazu hatte ich schon mal gefunden und den link hier im > Forum angegeben. > Du musst eben nur wie schon geschrieben den ATTiny im Reset halten beim > flashen. > > Ich habe die Software auch gefunden, dort kann man aber nur die Atmel > 25-Flash Serie auswählen, nicht die 45. Ich weiß nicht was das für einen > Unterschied macht, ich denke aber mal das Protokoll oder die Bänke > werden anderes sein. Wahrscheinlich bekomme ich dann die größe auch > nicht entsprechend geladen. Ich kenne die 25-Serie auch nicht. Naja der AT45 ist ein Dataflash. Hat ein paar Vorteile bei der Programmierung, aber irgendwie überwiegend Nachteile. Das bekloppteste finde ich die 264 Byte Page Größe und Adressieren dann in 512 Byte Schritten...da kriegt man doch ne Meise. Kann man zwar umstellen, aber muss man bei jedem machen und danach Power Cycle.
> eines der alten, einfachen Protokolle ala X-Modem Ich würde es ohne Protokoll machen, einfach die Übertragungsgeschwindigkeit dem Flashspeicher entsprechend anpassen. > nicht mal fix in 2h getan Zwei Stunden wohl nicht, aber ein halber Tag sollte doch reichen, oder?
Christian R. schrieb: > Mr. AVR schrieb im Beitrag #5481271: >> pegel schrieb: >> Dann ist der Programmer von oben doch schon geeignet. >> Die Software dazu hatte ich schon mal gefunden und den link hier im >> Forum angegeben. >> Du musst eben nur wie schon geschrieben den ATTiny im Reset halten beim >> flashen. >> >> Ich habe die Software auch gefunden, dort kann man aber nur die Atmel >> 25-Flash Serie auswählen, nicht die 45. Ich weiß nicht was das für einen >> Unterschied macht, ich denke aber mal das Protokoll oder die Bänke >> werden anderes sein. Wahrscheinlich bekomme ich dann die größe auch >> nicht entsprechend geladen. Ich kenne die 25-Serie auch nicht. > > Naja der AT45 ist ein Dataflash. Hat ein paar Vorteile bei der > Programmierung, aber irgendwie überwiegend Nachteile. Das bekloppteste > finde ich die 264 Byte Page Größe und Adressieren dann in 512 Byte > Schritten...da kriegt man doch ne Meise. Kann man zwar umstellen, aber > muss man bei jedem machen und danach Power Cycle. Jop, ich weiß. Das fand ich auch schwachsinnig. Ich habe die schon mal eingesetzt damals in einem Teil mit ESP. Da konnte ich den Inhalt vom PC über WLAN updaten. Das hat aber auch ewig gedauert (4MB ca. 20 min). Als Prozessor hatte ich damals einen Xmega genommen der den ESP und das Flash steuerte. Aber weil ich da noch ordentlich viele von habe, dachte ich daran die zu nutzen. Bei dem AT25DF321A (wäre wohl Speichertechnisch wie AT45DB321) der ist aber leider nicht 5V tolerant an den Eingängen.
Ich will jetzt nichts falsches mangels Russisch Kenntnissen behaupten, aber ist es nicht genau das was du suchst? http://scaletrainsclub.com/board/viewtopic.php?style=1&t=2720&start=330#p184299
@ S. Landolt (Gast) >> nicht mal fix in 2h getan >Zwei Stunden wohl nicht, aber ein halber Tag sollte doch reichen, oder? Na dann mach mal, du wirst stauen, wie lange auch solche scheinbar einfachen Sachen manchmal dauern.
Mr. AVR schrieb im Beitrag #5481222: > Ich habe alles selber geschrieben, in C Ja, und im Himmel is' Jahrmarkt...
Hallo, ich habe das vor Jahren mal mit einem Mega88 und AT45DB041 per X-Modem gemacht, war auch eine Art Soundplayer. Vorher spezielle Firmware draufschreiben und den Flash mit dem Tiny zu programmieren wäre auch für mich durchaus ein Ansatz. Wenn ich das jetzt und hier machen müßte und etliche/öfter zu Programmieren hätte, würde ich vorhandenes nutzen und ein "Programmiergerät basteln: Wemos Di mini mit ESP8266 drauf. Warum? Teile vorhanden, Entwicklungsumgebung vorhanden, SPI-Clock je nach geneuem Typ seines Flashs bis 40MHz nutzbar, Seriell sollte ohne Probleme mit 1MBaud laufen (921kBaud nutze ich hier ständig). CPU und Ram gut ausreichend um die Software "einfach so" zusammenzuschreiben. Problem im Moment: es scheint keine SPI-Flash-Library zu geben, die die AT45DBxxx unterstützt, da müßte ich wohl in meinen alten AVR-ASM-Sourcen Anleihe tätigen XModem scheint es als Lib zu geben. Weiter gesponnen: ESP mit SD-Card dran und von dort die Flashs beschrieben. Kleines Display und Tasten dran, um das File auszuwählen und zu flashen. Im Moment würde ich wohl sogar einen ESP32 nehmen, spiele ich ohnehin grade mit rum und es gibt ausreichend I/O. Könnte ich temporär glatt auf mein "Webradio" flashen, Touch-Display ist da, SD-Card ist da, nur die Sachen für den AT45Db321 müßte ich zusammmenschreiben. Für mich wäre der Hauptvorteil: kein externer Rechner zum Flashen nötig, nur die Files einmal auf eine SD-Karte. Wäre jetzt einmalig etwas mehr Aufwand, dann aber eben wirklich nur Kabel zwischen "Programmer" und dem Tiny-Modul anstecken und flashen. Gruß aus Berlin Michael
c-hater schrieb: > Mr. AVR schrieb im Beitrag #5481222: > >> Ich habe alles selber geschrieben, in C > > Ja, und im Himmel is' Jahrmarkt... Was ist dein Problem? Weil du nichts kannst und nur mit Arduino rumklickst? Mal ehrlich jetzt? Soll ich dir den Code zusenden?
Das Programm "Ponyprog" kann mit einem einfachen Adapter SPI-EEproms beschreiben:http://www.lancos.com/prog.html @TO Reg Dich nicht über ein Stück Dreck auf, laß es in der Gosse liegen.
@ Labertaschen-Dekoder (Gast) >Das Programm "Ponyprog" kann mit einem einfachen Adapter SPI-EEproms >beschreiben:http://www.lancos.com/prog.html Ja, aber nur kleine bis 64kB, keine großen Flashs. Von AT45??? ist dort nix zu lesen.
Hatte vor kurzem ein ähnliches Problem.. Gelöst mit : Dangerous Prototypes BusPirate und dem Programm flashrom.. Testpunkte mit Pogopins anfahren oder einen Stecker vorsehen.. Den Attiny am besten mit nem Jumper oder auch über den BusPirate im Reset halten...
Wenn du Zugriff auf ein Xilinx USB Programmer Cable hast, kannst du auch Impact dafür nehmen: https://www.xilinx.com/support/documentation/sw_manuals/xilinx11/pim_p_configuring_spi.htm Wird aber in den neueren Versionen nicht mehr unterstützt. Mich wundert es dass es da nix schon mal für die FTDI MPSSE gibt. Ich könnt das auch ab und an gut gebrauchen. Werd ich wohl mal selber schreiben müssen.
Da gibt's anscheinend doch was: https://www.flashrom.org/FT2232SPI_Programmer Und eventuell hier, aber der Link geht gerade nicht: http://wesche.bplaced.net/wordpress/?page_id=308
Wie es aussieht unterstützt flashrom sogar den eingangs genannten CH341A Programmer und auch den Flash AT45DB321.
Hallo, wir sind gerade in der Firma dran, so etwas in unseren Programmieradaptern einzubauen, da der Bootloader über RS232 für die hohen Stückzahlen einfach viel zu langsam ist. Kommt für dich wahrscheinlich zu spät aber ich bin über ewige googeleien auch hier gelandet... Wir sind am Ende bei diesem schicken Teil hier gelandet: https://www.embeddedcomputers.net/products/FlashcatUSB/ Vielleicht hilft es jemandem :)
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.