Nabend, ich habe mir einen kleinen AVR Atmel Programmer gebaut. USB -> FT232BM->AtMega8 So nun aber wie Programmiere ich den Mega8 ? kenne keinen der einen helfen könnte. Also mein Delphi7 Installiert und Programmiere mir selber ein Tool, wobei ich den FT232BM erstmal nehme um mein mega8 zu Programmieren. DTR RTS Break kann ich ja alles ansteuern und CTS für MISO abfragen. 1010 1100 0101 0011 xxxx xxxx xxxx xxxx <-Programming Enable Programming Enable funzt super, auch die FuseH und FuseL kann ich schon über den 232BM auslesen. Nur mit den Pages habe ich beim Mega8 Prob. ich bekomme doch kein Byte geschrieben. ?Versuche es schon seit 3 Tagen..... Da ich aber kein Englisch kann, stehe ich auf den Schlach. Diese Zeilen möchte ich gerne verstehen The Flash is programmed one page at a time. The page size is found in Table 25-5 The memory page is loaded one byte at a time by supplying the 5LSB of the address and data together with the Load Program memory Page instruction. To ensure correct loading of the page, the data Low byte must be loaded before data High byte is applied for a given address. The Program memory Page is stored by loading the Write Program memory Page instruct ion with the 7 MSB of the address. If polling is not used, the user must wait at least t WD_FLASH before issuing the next page. könnte mir jmd dabei helfen.? ich muss eine ganze Page hoch laden, jedesmal 2 byte (Hi+lo) lo zuerst. Load Program Memory Page. danach.... Write Program Memory Page. Aber es wird nichts abgespeichert... Wäre nett wenn mir jmd helfen könnte. Gute Nacht
Frank Schubert schrieb: > Nabend, > ich habe mir einen kleinen AVR Atmel Programmer gebaut. > USB -> FT232BM->AtMega8 > > So nun aber wie Programmiere ich den Mega8 ? kenne keinen der einen > helfen könnte. > > Also mein Delphi7 Installiert und Programmiere mir selber ein Tool, > wobei ich den FT232BM erstmal nehme um mein mega8 zu Programmieren. > > DTR RTS Break kann ich ja alles ansteuern und CTS für MISO abfragen. Mit Verlaub. Aber ob du das über USB und einen FT232 vernünftig rüber bringst, wage ich zu bezweiflen. Einen Programmer baut man nicht selbst, den kauft man. Denn sonst steckt man im Henne-Ei Problem fest. Du brauchst erst mal einen Programmer um einen Programmer bauen zu können. Und letzten Endes willst du ja nicht deine Zeigt damit verplempern, wie du ein Programm in den Mega kriegst, sondern du willst Programme für den Mega schreiben. So einen Programmer kriegst du in der Bucht für ein paar Euro. Das lohnt nicht, da selbst was grossartiges zu inszenieren.
:
Bearbeitet durch User
Guten morgen Karl Heinz, > Aber ob du das über USB und einen FT232 vernünftig rüber bringst, wage > ich zu bezweiflen. Was meinst du was PonyProg macht ? die schalten doch auch nur ihre Bits.! Und bei meinen FT232 ist das nichts anderes. ComPort1.SetRTS(true); ComPort1.SetDtr(true); ComPort1.SetBreak(true); if csCTS IN ComPort1.Signals then bla bla bla...... > Einen Programmer baut man nicht selbst, den kauft man. Denn sonst steckt > man im Henne-Ei Problem fest. genau das ist es, ich lese bei Fischl und Co. immer wieder wie die leute sich selber einen Programmer bauen könnten, aber keiner kann so richtig das erstemal seinen AtMega Programmieren. Also warum nicht mal ein anständiges kleines Tool schreiben um den mega8 zu Programmieren. > Und letzten Endes willst du ja nicht deine Zeigt damit verplempern, wie > du ein Programm in den Mega kriegst, sondern du willst Programme für den > Mega schreiben. Karl Heinz, ich sitze hier im Rollstuhl, ich habe alle Zeit der Welt und es macht mir richtigen spaß so was zu Programmieren. > So einen Programmer kriegst du in der Bucht für ein paar Euro. Das lohnt > nicht, da selbst was grossartiges zu inszenieren. Da gebe ich dir recht, aber dann könnte ich mein Hobby an den Nagel hängen. Was meinst du wie ich mich gefreut habe als ich das erstemal selber die $53 bekommen habe (Enable Proz) und dann auch noch die Fuse lesen konnte. Na ok, mal sehen ob mir jmd den Text da oben übersetzen könnte, damit ich weiter komme.
Frank Schubert schrieb: > Was meinst du was PonyProg macht ? die schalten doch auch nur ihre > Bits.! na und? auch bei PonyProg gibt es genug Fälle, wo es mit usb2rs232-Wandlern eben NICHT klappt, weil die so eine "Zweckentfremdung" nicht mitmachen...
mein erster Prommer war ein schnell selbstgebauter an der parallelen Schnitte mit Pony2000 einfach nur den H74HCT244 Bustreiber der sich aus den Ports selber versorgt, viele Schottkydioden und ein kleiner Elko. Hast du noch ne parallel Schnitte ? dann stelle ich meinen Plan ein.
Wenn man das Rad neu erfinden will (Hobby muß ja nicht sinnvoll sein), ist es trotzdem nicht verboten, sich andere Räder anzuschauen... Von avrdude, ponyprog, und noch anderen gibt es frei zugängliche Sourcen. Da lässt sich sicherlich einiges abschauen. Oliver
ne ich habe keine parallelen mehr an meinen Computer. >Von avrdude, ponyprog, und noch anderen gibt es frei zugängliche >Sourcen. Da lässt sich sicherlich einiges abschauen. Das ist auch eine Idee...
das will er doch wohl auch machen, aber eben nicht mit einer 'echten' seriellen Shcnittstelle, sondern mit einem usb2seriell-Chip. Und mit denen kann sowas, muss aber nicht funktionieren...
Justus Skorps schrieb: > Frank Schubert schrieb: >> Was meinst du was PonyProg macht ? die schalten doch auch nur ihre >> Bits.! > > na und? auch bei PonyProg gibt es genug Fälle, wo es mit > usb2rs232-Wandlern eben NICHT klappt, weil die so eine > "Zweckentfremdung" nicht mitmachen... Vor allen Dingen ist(war) die Anzahl der Berichte sprichwörtlich Legion, in denen berichtet wird, dass mit so einfachen Adaptern des Brennen von 100 Bytes Code 2 Stunden (ok, das ist jetzt etwas übertrieben) Zeit benötigt. 'war' deshalb, da derartige Berichte aus einer Zeit stammen, als Ponyprog noch groß im Geschäft war. Ich hab meine ersten Gehversuche auch mit Ponyprog und einem einfachen Adapter an der parallelen Schnittstelle gemacht. Hat gut funktioniert. Aber seit es auf den meisten PC keine Parallelports und/oder (herausgeführte) seriellen Schnittstellen mehr gibt und alle nur noch USB Buchsen haben, führt Ponyprog mit diesen Einfach-Adaptern nur noch ein Schattendasein. Und das liegt genau an diesen USB-RS232 Umsetzern, bzw. eigentlich am USB. USB ist nun mal nicht wirklich dafür gedacht, damit einzelne Bytes schnell zu übertragen. USB spielt seine Stärken aus, wenn größere Datenmengen in einem Rutsch zu übertragen sind. Bei einzelnen Bytes ist der USB Protokolloverhead um ein Vielfaches höher als der Anteil der Nutzbytes. Was früher eine ganz einfache Sache war, eine Leitung am Parallel-/Seriell-port von 0 auf 1 umzuschalten btw. umgekehrt, ist jetzt eine Sache, die sich durch viele Treiberschichten durchquälen muss, um dann auf der USB-Gegenseite (hoffentlich) in der beabsichtigen Pegeländerung zu münden.
Frank Schubert schrieb: > The Flash is programmed one page at a time. The page size is found in > Table 25-5 The memory page is loaded one byte at a time by supplying > the 5LSB of the address and data together with the Load Program > memory Page instruction. To ensure correct loading of the page, > the data Low byte must be loaded before data High byte is applied for > a given address. The Program memory Page is stored by loading the Write > Program memory Page instruct ion with the 7 MSB of the address. > If polling is not used, the user must wait at least t WD_FLASH > before issuing the next page. > > könnte mir jmd dabei helfen.? Um auf die eigentliche Frage zurückzukommen: Das heist dass die Program Page 5 bits breit ist, also 32 Adressen hat. Auf diese Adressen schreibst du zuerst LowByte, dann HighByte. Es gibt 7 bits für Pages, also 128 Pages. Wenn du die 32 Adressen beschrieben hast, sendest du Write_Program Memory_Page zusammen mit der PageAdresse (0 bis 127 in deinem Fall). Falls du kein Polling (zyklische Abfrage) benutzst, must du t WD_FLASH warten, bevor du die nächste Page programmieren kannst.
Frank Schubert schrieb: >> Einen Programmer baut man nicht selbst, den kauft man. Denn sonst steckt >> man im Henne-Ei Problem fest. > > genau das ist es, ich lese bei Fischl und Co. immer wieder wie die leute > sich selber einen Programmer bauen könnten, aber keiner kann so richtig > das erstemal seinen AtMega Programmieren. Also warum nicht mal ein > anständiges kleines Tool schreiben um den mega8 zu Programmieren. Genau solche Tools gibts doch. Im einfachsten Fall verwendet man einfach das gleiche Programm, das man nachher für die "richtige" Programmierung verwenden will. z.B. avrdude. Was man hingegen wirklich braucht, ist ein Programmieradapter. Früher war das mal einfach, da hat man einfach ein paar Leitungen von einem echten Parallel- oder Serial-Port genommen. Heutzutage muß man da etwas kreativer sein. Deswegen gibts Varianten mit USB-Hub https://www.pjrc.com/hub_isp/ oder mit den LED-Ausgängen eines PC-Keyboards: http://hackaday.com/2012/11/26/usb-keyboard-becomes-an-avr-programmer/ mein avrdude 6.1 kennt auch einen FT232H basierten Adapter: http://helix.air.net.au/index.php/avrdude-and-ftdi-232h/ usw. usf. Natürlich kann man sich da jetzt trotzdem nochwas selber zusammenfummeln, aber mir wäre es zu schade um die Zeit. YMMV. XL
Axel Danke für die Links, die schaue ich mir naher mal an. @Marc Vesely Danke, jetzt geht...hast gut geschrieben, das habe sogar ich verstanden. :-) mein kleiner atmega8 ist nun Programmiert. Also für kleine sachen gehts auch über einen FT232BM oder sonst was. Und vor allen Dingen verstehe ich jetzt mal wie sowas Programmiert wird. Man lernt dazu :-) Besten Dank an alle :-)
>Also warum nicht mal ein
anständiges kleines Tool schreiben um den mega8 zu Programmieren.
Jo, mal eben was besseres als avrdude proggen. okay...
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.