Hi, habe (oder beser gesagt wollte) gerade anfangen mit AVR Programmierung. Habe mir auch auf Lochraster eine kleine Schaltung aufgebaut: AT90S8515 8MHz Oszi 10k Widerstand von Reset gegen +5V 100n Kondensator von Reset gegen Masse LED über 470 Ohm Widerstand von Pin 28 (PortC7) gegen Masse LED ist richtig gepolt und funktioniert auch... Testprogramm geschrieben mit AVR Studio: ;LED test .include "8515def.inc" ldi r16, 0xFF out DDRC, r16 loop: ldi r16,0xFF out PORTC,r16 rjmp loop .hex Datei mit Ponyprog und BA1FB-Programmer in den AVR geladen. Zur Probe in Ponyprog den Buffer gelöscht und Programm vom AVR gelesen, alles OK !! NIX, rein gar nix passiert !!! Dunkle LED .... Security-Bits ausgelesen, sehr interessant. Nichts detailiertes zu sehen nur 7,6,5,4,3,LockBit2,LockBit1,0 , kann auch nur die Häkchen bei LockBit1 und LockBit2 verändern... Ich war der Meinung das da eigentlich alles detailiert stehen sollte, z.B. CKSEL0...3 oder BODEN ?!?!?!? Jemand ne Idee?? Danke schon mal!!!
niemand ne idee? wie gesagt, kann den flash beschreiben und auch wieder lesen, aber das prog scheint nicht zu laufen. ich gehe davon aus das es an den fusebits liegt...wie kann ich das herausfinden?
hi, schau mal was an dem pin anliegt wenn deine FW läuft. Probier mal das Programmiergerät aus zu stecken und mach nen Reset (schaltun aus und dann wieder an). gruss, schorschi.
hi, alles schon durch (einschalten, ausschalten, reset...). spannung bleibt auf null am pin (obwohl ja auf HIGH programmiert ?!?!?!) was mich irgendwie stutzig macht, ist das ich die FUSEBITS nicht im "Klartext" lesen und modifizieren kann, so wie. z.B. in der Hilfe von Ponyprog beschrieben.... Ich weiß im moment nur, das der Flash beschrieben wird und nach einem löschen des buffers auch alles wieder ordenlich eingelesen wird. das Programm wird einfach nicht ausgeführt - tippe ich mal. aber dazu müßte ich an die fusebits heran kommen um festzustellen warum der AVR nix macht
@dideldadel: Die FUSEbits des '8515 sind nicht über ISP zugänglich (s. Datenblatt). Es gibt auch kein Fusebit, das Dein Programm am Laufen hindern könnte. Was Du in Ponyprog siehst, sind die LOCKbits. Da das Programmieren ja funktioniert, läuft der Oszillator schon mal. (Oder liefert Dein Programmer seinen eigenen Takt?) Geht Reset wirklich auf High, wenn Dein Programm starten soll (Lötbrücken etc.)? Christian
Hi, ja, Multimeter an Reset (pin9) zeigt 5V und während des programmierens geht der pegel an Reset auf Low. danach wieder auf high. Der Programmer ist ne einfache Version mit 4 Widerständen, hab ich von hier: http://www.qsl.net/ba1fb/avrisp.gif
hi, wo hast du den µC her? Ist er neu oder wurde er schon mal wo ferwerdet? gruss, schorschi.
noch mal ich ... :-) kann es sein, das man sich nur einzelne sektionen des AVR schießen kann, so (wie in meinem Fall) das wirklich nur noch der Flash funktioniert ?? Kann das an dem 4-Widerstands-billig-Programmer liegen ??? der AVR ist zwar schon ein paar tage alt, war aber originalverpackt und ich habe auch auf die ganzen anderen Sachen bezüglich elektrostatische Entladung etc. gedacht... mir wäre wirklich jede idee wichtig woran es liegen könnte...hab zwar noch einen '8535 rumliegen, aber bevor ich den verbaue und nochmal probiere wäre es mir lieber wenn ich vorher wüßte ob mein AVR evtl. doch schon vorher geschossen war und ich mit meinem billig Programmer wahrscheinlich so ziemlich alle folgenden AVR's auch schießen kann...
hallo Hast du dein programm auch ins flash programiert ? (nicht ins eeprom) schwingt den dein quarz auch richtig an (mit oszi 10:1 messen)?
Hi, für das EEPROM müßte doch meine Datei die Endung .eep haben, bin mir 1000% sicher die .hex Datei ins Flash geschrieben zu haben Ich habe ein Quarzoszillator-Baustein verwendet, keine Kombination aus Quarz und Kondensatoren. Und wie schon weiter oben bemerkt, sollte doch der AVR gar nicht zu programmieren sein oder Takt?!?! Einen Oszi habe ich momentan leider nicht zur Verfügung, aber ich habe noch ein Quarz herumliegen, evtl. werde ich mal schnell einen Oszi zusammenbauen.
Was ist mit dem Reset-Vektor. Wo Zeigt der hin? Muß er nicht auf den Programmanfang gesetzt werden? Wo steht das Programm nach Assemblierung? Bei "C" erledigt der Start-Up das für einen. Schau doch mal ob es Bsp.Programme für Assembler gibt. mfg Wolfgang
Hi, also ich habe nichts selbst am RESET-Vektor verändert, demnach müßte er noch auf Adresse 0000 zeigen. Dort startet auch mein Programm. Nach einem Reset sollte es also automatisch starten.
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.