Hallo, die beigefügte Datei funktioniert nach dem ver*hex*en, und via PonProg nicht auf meinem AT90S2313. Die LED am Port PB0 leuchtet immmer, sobald ich das ISP von der parallelen Schnittstelle entferne. Ich bin der Meinung, dass sich eigentlich nichts tut, egal ob ich diese Blinker Datei lade oder die Datei von der Seite: http://s-huehn.de/elektronik/avr-prog/avr-prog.htm Mein Testlayout ist ebenfalls von der Seite, allerdings mit stabilsiertem Netzteil. Was ist an meinem Code falsch? Warum blinkt die LED (im Sinne vom Blinken) nicht, wenn ich ebenfalls die originale Datei von der obigen Seite verwende? Vielen Dank für ein paar Tips. MFG Onur
Ist doch klar wieso: du gibst ständig 0xFF aus. Du musst wechseln einmal 0xFF (EIN), dann 0x00 (AUS); Ausserdem ist das falsch: ldi mp,0x00 out DDRB,mp Damit setzt Du den Port als Ausgang. Sieh Dir mal das Beispielprogramm von der Seite an. Dort gibt es Verzögerungen (rcall wait). Ich glaube nicht, selbst wenn Du wechselst, dass Dein Auge so schnell ist. versuch es mal damit: ldi mp,0xff out DDRB,mp loop: ldi mp,0xFF out PORTB,mp rcall wait ldi mp,0x00 out PORTB,mp rjmp loop Grüße Andreas
Sorry, sollte heissen: "Damit setzt Du den Port als Eingang" Ausserdem muss es so sein: loop: ldi mp,0xFF out PORTB,mp rcall wait ldi mp,0x00 out PORTB,mp rcall wait rjmp loop Ist schon spät.
Hallo, wenn ich aber will, dass die LED ausgeht, z.B.: DEF mp = R16 RJMP main main: ldi mp,0xFF out DDRB,mp loop: ldi mp,0x00 out PORTB,mp rjmp loop Nachdem ich die parallele Schnittstelle entferne leuchtet die LED wieder. Darf sie doch nicht. Sie leuchtet immmer noch, auch wenn ich Vcc entferne, und wieder anschließe. Bitte nicht falsch verstehen, ich will in die µC Programmierung einsteigen, und verstehe mein Problem noch nicht. Danke für die Antworten. Onur
hi Ich kenne dein Layout nicht, aber meisstens ist es so, dass die LED über Vorwiderstand mit der Anode an VCC liegt und die Katode am Port. Das heisst wenn du die Ausgänge auf L legst ,wie in deinem zweiten Code, leuchten die Dioden. Wenn die Ausgänge auf H gelegt werden, sind die Dioden aus. Mfg HG
Hallo, erst einmal Danke für die Antworten. Mein Layout haben ich nach der Zeichung von der folgenden Seite aufgebaut, für den AT90S2313: http://s-huehn.de/elektronik/avr-prog/avr-prog.htm Ich werde heute abend nocheinmal mein Programm analysieren und meinen µC flashen. Ziel ist es, daß die LED ausgeht. Wenn das geht, ist alles okay. Ärgerlich ist halt, dass ich mein ISP von der parallelen Schnittstelle entfernen muss, damit das Flash Programm läuft. Danke für die Tips. Grüße Onur
Könnte es etwas mit dem Analog Comparator zu tun haben? Der nämlich ist standardmäßig aktiviert (Bit ACD in ACSR-Register ist per Default 0).
Lies einfach mal was Hartmut geschrieben hat. Du musst FF statt 00 ausgeben.
Hallo, irgendwie traue ich der ganzen Sache nicht. Mein Code lautet: DEF mp = R16 ; Register R16 = mp RJMP main ; Springe zu main main: ldi mp,0xFF ; lade 0xFF in das register R16 out DDRB,mp ; DDRB als Ausgang definieren loop: ldi mp,0x00 ; lade 0x00 in das register R16 out PORTB,mp ; gebe 0x00 am PortB aus (also auch beim PortB 0) rjmp loop Entferne ich jetzt die parallele Schnittstelle, leuchtet die LED immer noch. Wenn ich die parallele Schnittstelle dran habe, liegt am PortB0 = 3,8V. An der Kathode, die ja an Vcc liegt = 5,2V. Am Widerstand liegen 0,3V. Also liegen an der LED = 1,1V. Auch wenn ich den Flash Speicher lösche, leuchtet die LED trotzdem. Beigefügt ist mein Layout. MFG Onur
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.