Hallo Problem: Bekomme bei der Auswahl der "Programmer" mittels AVRdude-GUI.exe den USBasp nicht angezeigt, obwohl ich die korrekten Treiber installiert habe. Vista erkennt den Programmer sofort. Nachdem ich libusbwin32 installiert hatte, hat diese Scheißsoftware erstmal komplett alle! USB-Ports meines Rechners lahmgelegt, mehrfacher Neustart und Abgesicherter Modus brachten keine Besserung, erst die letzte funktionierende Konfig. brachte Erlösung. Nach dieser Install funktioniert klappte das Erkennen des Usbasp, auf dem auch nur die rote LED leuchtet, immer noch nicht Hatte echt gedacht, dass das die kleinste Hürde auf dem Weg zur Programmierung sein würde und nicht haufenweise Zeit für diese bekackte Suche nach hunderten Extraprogrämmchen draufgehen würde, die dann auch noch den Rechner lahmlegen. Ich hoffe, ihr könnt mir helfen, bin echt grad am Ende. Dankeschön
Hallo, am besten immer erst lesen (hier im Forum oder Google) und dann was probieren oder installieren !! ich hab auch den USBasp (soger selber gebaut) und bis her gar kein Problem weder unter XP noch Vista! So, unter Vista habe ich einfach den "normaller" Trebier installiert kein LibUSB oder so was. mit folgender AVRGUI geht es einwandfrei (kein Werbung): http://www.soft-land.de/index.php?page=avrburner Gruß Martin
Hallo natürlich habe ich gegoogelt, aber es erschien mir sinnvoller die software zu nehmen, die der entwickler auch auf seiner seite verlinkt hat. Habe jetzt Avrburner drauf, Device auf m32 gestellt, Programmer ist usbasp und Port ist USB. --> Return-Code des Programms: 1 ---Errors--- error at C:\Mikrocontrollerprogrammierung\WinAVR-20080610\bin\avrdude.conf:385 unrecognized character: "u" Was ist mein nächster Schritt? Danke im Voraus
Hallo, hast du den Ordner von AVRDUDE in AVRBurner eingestellt??
Ja, das hab ich gleich gemacht, da das ja auch Grundvoraussetzung bei der anderen GUI war. Ein Kumpel hat mir noch PonyProg2000 empfohlen. Wie stehst du dazu? (Damit komm ich aber auch nicht klar, da haperts schon mit dem Interface-Setup) AVR-Dude ist ja bloß die eine .exe, oder? Zumindest für windows, denn wenn ich dem Standard-Downloadlink folge gibts da ein Archiv in dem haufenweise uncomilierter Quellcode steckt.
also in AVRBurner \Einstellungen\Optionen dann "Pfad zu AVRDUDE.exe" in dein Fall glaube: C:\Mikrocontrollerprogrammierung\WinAVR-20080610\bin\avrdude.exe und versucht noch mal, dann Fehler hier posten Gruß
so viel ich weist funktioniert PoniProg2000 nicht mit USBasp! USBasp funktioniert mit AVRDUDE, AVRBurner und noch was, ich betreibe es mit AVRDUDE und Burner und funktioniert tadelos
hast du den USBasp gekauft? selber gebaut? als Bausatz gekauft ????
Ok, das hat er schon mal gefressen. Return-Code des Programms: 1 ---Errors--- avrdude.exe: WARNING: -E option not supported by this programmer type avrdude.exe: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc Danke, da sind wir ja schon weiter. Das ist ein professionell Selbstgebauter, den ich bei Ebay ersteigert habe. von Jantek Jumper 1 ist ON, die anderen beiden OFF Die rote LED leuchtet.
>> Jumper 1 ist ON, die anderen beiden OFF
On bedeutet gebrück?? oder?
wenn ja dann weg mit dem Jumper, alle mussen OFF sein (kein Brücke)
nix neues, leider ich hab mal vom Flash lesen geklickt: Return-Code des Programms: 1 ---Errors--- avrdude.exe: WARNING: -E option not supported by this programmer type avrdude.exe: error: could not find USB device "USBasp" with vid=0x16c0 pid=0x5dc Die angegebene Jumperstellung war so voreingestellt. Das Gerät steht im Gerätemanager als Jungo drin, das ist doch i.O. oder? Die rote LED leuchtet bei allen 3 Jumpern OFF immer noch. Was ist denn eigentlich der Standardzustand bei korrekter Verbindung? Leuchtet da die Grüne oder sind Beide aus?
also mal von ganz vorne. LEDs: - es soll der rote LED leuchten wenn mann der USBasp an USB anschliesst, also imme an - grunes LED leuchtet wenn man ein Programm an Board überträgt, also aus im Gerätemanager soll der Programmer als: USBasp erscheinen " siehe Bild " ist es so bei dier???
Nein, siehe Bild, aber das sind die Treiber von der fischl-homepage. Aber ich probiers noch mal neu.
warte warte! erst mal langsam last mich mal überlegen und melde mich gleich
ja libusb...usw. Will meinen, das Gerät ist korrekt installiert.
installiere bitte den Treiber im Anhang wie folgt: irgendwo auspacken, dann in Gerätemanager USBasp dann Treiber dann Treiber aktualisieren dann Pfand eingeben und auf ok usw.
oder dann Treiber deinstallieren, Rechner neu starten USBasp einstecken und "neu" treiber installieren
Das hat schon mal einiges gebracht. Nach dieser Fehlermeldung zu urteilen, scheint jetzt erstmal alles zu funktionieren, nur meine Platine macht noch Stress. Ich hab nämlich das Problem, dass ich als Buchse für den ISP-Stecker nur eine simple Stiftleiste habe, also nicht weiß, wo die Nase des Steckers hin muss. Return-Code des Programms: 1 ---Errors--- avrdude.exe: WARNING: -E option not supported by this programmer type avrdude.exe: error: programm enable: target doesn't answer. 1 avrdude.exe: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check. avrdude.exe done. Thank you. Hab den Stecker grad mal rumgedreht und die Fusebits auslesen lassen, ist das soweit OK? vrdude.exe: WARNING: -E option not supported by this programmer type Using Port : USB Using Programmer : usbasp AVR Part : ATMEGA32 Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PA0 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 4 10 64 0 no 1024 4 0 9000 9000 0xff 0xff flash 33 6 64 0 yes 32768 128 256 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00 lock 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 calibration 0 0 0 0 no 4 0 0 0 0 0x00 0x00 Programmer Type : usbasp Description : USBasp, http://www.fischl.de/usbasp/ avrdude.exe: error: programm enable: target doesn't answer. 1 avrdude.exe: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check. avrdude.exe done. Thank you.
Hallo, ______________________________________________________________________ avrdude.exe: WARNING: -E option not supported by this programmer type avrdude.exe: error: programm enable: target doesn't answer. 1 avrdude.exe: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check. avrdude.exe done. Thank you. _____________________________________________________________________ so, das sieht aber ganz anderes aus oder? also der USBasp "ist schon drin" besser gesagt funktioniert jetzt hängt wo anders "ABER" es kann auch sein das die geschwindigkeit zu hoch ist (nur zum erste mal) also: -- Die Geschwindigkeit des Programmers mit JP2 einmalig für die erste Programmierung des µC reduzieren. -- UND Alle Verbindungen kontrollieren: Belegung, Kabelbruch, Kurzschluß, Leitungslänge, ...
Hab erstmal vielen Dank! Toll von dir, dass du dich so reingehängt hast. Morgen check ich den Rest, muss jetzt langsam schlafen gehen. Bis dahin, bye
So da bin ich wieder Was sagen mir denn diese Werte? Vor allem was bedeutet: Check you connections? Kann ich den USBasp auch im AVR-Studio nutzen und wenn ja, wie? avrdude.exe: Version 5.5, compiled on Jun 9 2008 at 14:32:04 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ System wide configuration file is "C:\Mikrocontrollerprogrammierung\WinAVR-20080610\bin\avrdude.conf" avrdude.exe: WARNING: -E option not supported by this programmer type Using Port : USB Using Programmer : usbasp AVR Part : ATMEGA32 Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PA0 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 4 10 64 0 no 1024 4 0 9000 9000 0xff 0xff flash 33 6 64 0 yes 32768 128 256 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00 lock 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 calibration 0 0 0 0 no 4 0 0 0 0 0x00 0x00 Programmer Type : usbasp Description : USBasp, http://www.fischl.de/usbasp/ avrdude.exe: error: programm enable: target doesn't answer. 1 avrdude.exe: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check. avrdude.exe done. Thank you.
Reading | ################################################## | 100% 0.02s avrdude.exe: Device signature = 0x000000 avrdude.exe: Yikes! Invalid device signature. Double check connections and try again, or use -F to override this check. avrdude.exe done. Thank you. das ist jetzt noch das Problem, was schlägst du vor?
Hi, also der USBasp ist auf jedem Fall schon ok, hat verbindung. >> Was sagen mir denn diese Werte? >> Vor allem was bedeutet: Check you connections? das ist schon klar, USBasp wir initializiert und ist bereits zum übertragen oder flashen ABER er findet kein Board, also wie da steht, du muß deine Verbindunge überprüfen, dass alles iO ist, alle Pins wie es gehört usw. manchmal (wenn der Controller neu ist) muß man an der USBasp der jumper JP2 einmalig setzen Gruß
Hab den Jumper 2 gesetzt, aber da leuchtet dann die rote LED nicht mehr und der Programmer wird als unbekanntes Gerät geführt Ich habe aber mal testweise ein .hex-File in den EEPROM geschrieben und das wurde ohne Beanstandung ausgeführt. Ich hab meine Schaltung im übrigen so aufgebaut: [http://www.roboternetz.de/wissen/images/3/30/Avrtutorial_grundschaltung_mitquarz.gif]
jetz wollt ich etwas veränderten Code in den EEprom schreiben: Reading | ################################################## | 100% 0.79s avrdude.exe: verifying ... avrdude.exe: verification error, first mismatch at byte 0x0000 0x0c != 0x00 avrdude.exe: verification error; content mismatch avrdude.exe: safemode: lfuse changed! Was e1, and is now 0 hab keine Ahnung was der will. Auch funktioniert das lesen und schreiben nur, wenn Jumper1 gesetzt ist, obwohl die Schaltung ja von extern versorgt wird.
ja, dan ist was am USBasp verkehr (Hardware) denke ich weil:
- JP1 wird nur zum Programmieren des Atmel auf dem USB Atmel SPI
Programmers benötigt (ATmega8 ???).
- JP2 wählt die Geschwindigkeit zum Programmieren der Zielhardware aus.
- Mit JP3 kann die Zielhardware über den USB Port mit Strom versorgt
werden (nicht empfohlen).
>> avrdude.exe: safemode: lfuse changed! Was e1, and is now 0
Achtung das sind Fuse Einsgellungen und wenn man da falsch macht bwz.
ein Falsches Fuse setzt kann man manchmal der Controller nicht mehr
ansprechen!! Vorsich !
Ich dachte die Jumper sind so wie nach dem Bild bei[http://www.fischl.de/usbasp/] gekennzeichnet. Ich hab nen Quarz mit 2 Kondensatoren dran, deshalb hab ich die Fuses so gesetzt, wie im Datenblatt des Atmega32 angegeben.
eigentlich sind die Originalle Jumper wie bei http://www.fischl.de/usbasp/ gekennzeichnet, ABER gibt es ein Paar varianten meine zB. sind nicht ganz so, hast du pläne für dein USBasp erhalten? da soll genau stehen! >> Ich hab nen Quarz mit 2 Kondensatoren dran, deshalb hab ich die Fuses so >> gesetzt, wie im Datenblatt des Atmega32 angegeben. du hast dan die Fuses schon gesetzt!! also dein USBasp läft ! könte sein das du eine fals gesetzt hast? und deswegen bekommts du jetzt keine verbindung? hast ein Foto oder Bild wie du die Fuse gesetz hast? kanns tu die Fuse (mit AVRBurner) lesen? wenn ja dann was kommt??
naja, das Fuse auslesen hat irgendwie noch kein einziges mal geklappt. In dem kleinen Fenster gehen dann alle Häkchen an und im Ausgabefenster steht wie eh und je: avrdude.exe: error: programm enable: target doesn't answer. 1 avrdude.exe: initialization failed, rc=-1 Double check connections and try again, or use -F to override this check. Auf der Platine aufgedruck und sich wohl auf die Jumper beziehend steht "Supply " neben Nummer 3 und "Slow SCK" neben der 1 Und für Jumper 2 bleibt ja nur ein was übrig.
also, Jumper 1 setzen und die andere 2 offen, dann noch mal probieren (fuse einlesen)
Oha, mal was neues, sieht aber meines Erachtens ganz in Ordnung aus. Kannst du mir noch ein paar Tipps geben zum Setzen der Fuses? Return-Code des Programms: 0 ---Output--- avrdude.exe: safemode: lfuse reads as E1 avrdude.exe: safemode: hfuse reads as DF avrdude.exe: safemode: lfuse reads as E1 avrdude.exe: safemode: hfuse reads as DF ---Errors--- avrdude.exe: Version 5.5, compiled on Jun 9 2008 at 14:32:04 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ System wide configuration file is "C:\Mikrocontrollerprogrammierung\WinAVR-20080610\bin\avrdude.conf" avrdude.exe: WARNING: -E option not supported by this programmer type Using Port : USB Using Programmer : usbasp AVR Part : ATMEGA32 Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PA0 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 4 10 64 0 no 1024 4 0 9000 9000 0xff 0xff flash 33 6 64 0 yes 32768 128 256 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00 lock 0 0 0 0 no 1 0 0 2000 2000 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 calibration 0 0 0 0 no 4 0 0 0 0 0x00 0x00 Programmer Type : usbasp Description : USBasp, http://www.fischl.de/usbasp/ avrdude.exe: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.02s avrdude.exe: Device signature = 0x1e9502 avrdude.exe: reading lfuse memory: Reading | ################################################## | 100% 0.01s avrdude.exe: writing output file "C:\Users\Hannes\Documents\Eigene Projekte\Mein MP3-Player\Software\AVRBurner\lfuse.hex" avrdude.exe: reading hfuse memory: Reading | ################################################## | 100% 0.01s avrdude.exe: writing output file "C:\Users\Hannes\Documents\Eigene Projekte\Mein MP3-Player\Software\AVRBurner\hfuse.hex" avrdude.exe: safemode: Fuses OK avrdude.exe done. Thank you.
Hi, >> Oha, mal was neues, sieht aber meines Erachtens ganz in Ordnung aus. ja, jetzt sieht ganz gut aus, du hast "komunikation" zwischen USBasp und Board und so muß es immer ausehen, ich meine mit: >> ---Output--- avrdude.exe: safemode: lfuse reads as E1 avrdude.exe: safemode: hfuse reads as DF avrdude.exe: safemode: lfuse reads as E1 avrdude.exe: safemode: hfuse reads as DF das ist der aktuelle Stand der Fuses >> avrdude.exe: WARNING: -E option not supported by this programmer type Using Port : USB Using Programmer : usbasp AVR Part : ATMEGA32 Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PA0 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes hier würde alles erkannt: Programmer, Board (Atmega32) usw. >> avrdude.exe: AVR device initialized and ready to accept instructions >> Reading | ################################################## | 100% >> 0.02s hier würde der USBasp initialisiert und ist bereit zum flashen!! >> Kannst du mir noch ein paar Tipps geben zum Setzen der Fuses? Tja, Johannes, ich bin Anfänger genau wie du nur bin Paar schritte weiter mehr nichts mit dem Fuses habe ich leider schon ein Controller kaput gemacht bzw. ich kann der Controller nicht mehr ansprechen deswegen bin ich aber echt vorsicht damit geworden!! hast du hier schon gelesen?? http://www.mikrocontroller.net/articles/AVR_Fuses (sehr wichtig!!!) hier kannst du die entsprechender Fuse einstellungen eines Controllers mit ein Externe bzw. Interne Quarz usw. vornehmen http://www.engbedded.com/cgi-bin/fc.cgi und "immer" erst Fuse "lesen" entsprechender Fuse einstellungen vornehmen und dann schreiben zB. für ein Atmega32 mit einem Quarz 14,7456 würde ich die Fuses wie im Bild einstellen bzw. so habe ich es. Gruß
Hallo Ich habe nen 16 MHz-Quarz. Bleiben die Fuse-Einstellungen genauso wie bei Dir? Hier mal ein Screenshot der meiner ausgelesenen. Aber das Schreiben klappt irgendwie nicht. Es kommt der folgende Text und dann schmiert AVR-Dude ab-->APPCRASH und die rote und die grüne LED leuchten dauerhaft. Reading | ################################################## | 100% 0.02s avrdude.exe: Device signature = 0x1e9502 avrdude.exe: erasing chip avrdude.exe: reading input file "C:\Users\Hannes\Documents\Eigene Projekte\Mein MP3-Player\Prog-Files\default\MP3-Player.hex" avrdude.exe: input file C:\Users\Hannes\Documents\Eigene Projekte\Mein MP3-Player\Prog-Files\default\MP3-Player.hex auto detected as Intel Hex avrdude.exe: writing eeprom (180 bytes): Writing | ################################################## | 100% 2.61s avrdude.exe: 180 bytes of eeprom written avrdude.exe: verifying eeprom memory against C:\Users\Hannes\Documents\Eigene Projekte\Mein MP3-Player\Prog-Files\default\MP3-Player.hex: avrdude.exe: load data eeprom data from input file C:\Users\Hannes\Documents\Eigene Projekte\Mein MP3-Player\Prog-Files\default\MP3-Player.hex: avrdude.exe: input file C:\Users\Hannes\Documents\Eigene Projekte\Mein MP3-Player\Prog-Files\default\MP3-Player.hex auto detected as Intel Hex avrdude.exe: input file C:\Users\Hannes\Documents\Eigene Projekte\Mein MP3-Player\Prog-Files\default\MP3-Player.hex contains 180 bytes avrdude.exe: reading on-chip eeprom data: Reading | ################################################## | 100% 0.80s avrdude.exe: verifying ... avrdude.exe: verification error, first mismatch at byte 0x0000 0x0c != 0x00 avrdude.exe: verification error; content mismatch avrdude.exe: safemode: lfuse changed! Was e1, and is now 0
Hi, und was kommt wend du liest?? wie sind momentan die Fuses kanns du ein Bild machen?
ich glaube er hat schon die die Fuse gesetz (glaube), versucht jetz folgendes: Jumper 1 weg und ein Program (egal was) flashen, was passiert dann?
ohne Jumper 1 geht nix avrdude.exe: error: programm enable: target doesn't answer. 1 avrdude.exe: initialization failed, rc=-1
ok dann sind vielleicht di Fuse noch nicht gesetz, liest mal bitte und guckmal was kommt bzw welche Häckchen
Super, jetzt hats funktioniert. Nun ist nur noch das Problem, warum das hier nicht funktioniert. Wär toll, wenn du mir auch da aushelfen könntest. Ich hab 2 LEDs die hängen an VCC und nem Widerstand an den beiden Ports und sollen blinken.
1 | #include <avr/io.h> |
2 | #include <util/delay.h> |
3 | |
4 | |
5 | |
6 | int main (void){ |
7 | |
8 | DDRC = 0x00; |
9 | DDRA = 0x00; |
10 | |
11 | |
12 | while(1){ |
13 | |
14 | |
15 | PORTA |= (1<<PA0); |
16 | PORTC &= ~(1<<PC4); |
17 | |
18 | _delay_ms(50); |
19 | |
20 | PORTC |= (1<<PC4); |
21 | PORTA &= ~(1<<PA0); |
22 | |
23 | _delay_ms(50); |
24 | |
25 | }
|
26 | return(0); |
27 | }
|
Hi, Du schreibst Du hast einen 16MHz Quarz ! Es muss aber genau ein 12MHz sein, damit das mit dem USB klappt, also auf dem USBasp ! PS: Wenn PortC auf einem M32 nicht ganz geht, immer nach JTAG (De-)aktivierung schauen.
aber er hat das Hex-File doch jetzt ohne Anstalten in den Prom geschrieben. Warum sollt ich da den Quarz wechseln?
Hallo, @Tiny 80 >> Es muss aber genau ein 12MHz sein, damit das mit dem USB klappt, also >> auf dem USBasp ! er mein auf dem USBasp NICHT auf dem Board, also ist alles ok nun sollte jetzt mit dem Fuse klappen sonst passiert das Tiny schreibt. >> Wenn PortC auf einem M32 nicht ganz geht, immer nach JTAG >> (De-)aktivierung schauen. also Fuses richtig setzen
versucht noch mal die Fuse setzen, also erst mal Fuse lesen und schreiben
Aber der Code ist so erstmal richtig, oder wie? Aber warum leuchten denn dann beide! nicht? Es ist doch so, wenn ich das Programm geladen habe und die Stromversorgung meiner Schaltun aus und dann wieder anmache, dass das Programm dann laufen müsste, oder?
Sorry habe ich nicht gesehen: DDRC = 0x00; DDRA = 0x00; Port A und C sind aber auf Eingänge geschaltet !! auf Ausgang soll dann DDRC = 0xFF; DDRA = 0xFF;
mmmh, klappt irgendwie nicht... Also ich hab das AVR-Studio, da klick ich auf Build und dann auf Compile und dann lad ich meine .hex-Datei in den AVR-Burner. Ist das so korrekt? Nicht dass es da schon hapert und wir suchen hier stundenlang woanders nach dem Fehler.
so ist es Richtig! versucht mal mit: #include <avr/io.h> int main (void) { DDRA = (1<<PD0)|(1<<PD1)|(1<<PD2)|(1<<PD3)|(1<<PD4)|(1<<PD5)|(1<<PD6); PORTA = (1<<PD4); while(1) { /* "leere" Schleife*/; } /* wird nie erreicht */ return 0; } es muß ja mindenstens der Led am Port 4 brenen
Schade, hat leider nicht gefruchtet. Wie gesagt, die LEDs hängen über nen Widerstand an den 5 Volt dran und dann gehts ab in den uC. Deswegen dachte ich ja auch, die Ports müssten als Eingänge geschaltet werden, da der Strom ja in den uC reinfließt und dann zur Masse hin.
was für Board hast du? hast du es selber gebaut hast? gekauft ?? bitte hier berichten und wenn möglich ein Bild machen >> Wie gesagt, die LEDs hängen über nen Widerstand an den 5 Volt dran und >> dann gehts ab in den uC. Sind die LEDs richtig angeschlossen?? >> Deswegen dachte ich ja auch, die Ports müssten als Eingänge geschaltet >> werden, da der Strom ja in den uC reinfließt und dann zur Masse hin. Ne ne, LEDs --> Ausgänge SCHALTER --> Eingänge hier mal unter HARDWARE lesen: http://www.mikrocontroller.net/articles/AVR-Tutorial:_IO-Grundlagen und hier: Beitrag "elementare Frage LED an AVR"
Bittesehr! Und die Verkabelung wie bereits gesagt, laut dem Tutorial vom Roboternetz.
Das DA überhaupt irgendetwas geht, grenzt an ein Wunder. Eine zuverlässige Funktion bekommt man damit nicht hin....
Hallo Christian R. man sollte "HELFEN" statt "kritisieren" oder warst du nie ein Anfänger? du bis geboren und könntest du schon alles oder?????
So Christian, du unqualifizierte Knallbirne, wenn du nichts zur Problemlösung beitragen kannst, such bitte das Weite und beläsitge uns nicht mit deiner Arroganz und Dummdreistigkeit! Trottel! @ Martin Zur Erläuterung: Das ganze Kabelgewirr da rechts im Bild kannst du getrost außer acht lassen.
Hallo Johannes, nichts gegen dein Schaltung aber als Anfänger würde ich in deine Stelle ein fertiges Board kaufen (kosten ja nicht die Welt) auf der Grund das man "am Anfag" weniger stress hat, danach kan man dann selber schaltungen usw. machen zu mindenstens so habe ich es gemacht und bis jetzt hat es sehr gut funktioniert oder zB. statt Lochraster Platine kan man auch sein Schaltung auf Steckbrett bauen so kann man Fehler leicht korrigieren. Du hast zB. kein Spannungsregler in deine Schaltung und wenn die Spannung etwas höher (als 5V) ist dann ist mit dein Atmega gleich vorbei. wenn du erfahrung mit Löten kannst dann kannst du ein Bausatz kaufen wenn nicht dann ein fertiges Board kaufen, wie gesagt kosten ja nicht viel und hier im Forum kannst du sogar einige günstig kaufen ich kann dir paar Beispiele von Boards nennen Gruß
Dann präzisiere ich: Mit so einem Aufbau wird es schwer, zuverlässige Funktionen zu erreichen, der Quarz ist etwas weit weg vom Controller, und ich sehe auch keinerlei Abblockkondensatoren direkt am AVR. Und ja, ich war auch mal Anfänger und hab solche Schaltungen gebaut, mich dann auch gewundert, dass es nicht ordentlich ging, und mir dann ganz schnell angewöhnt, einen ordentlichen Aufbau auf Platine, oder wenigstens auf Lochraster mit kurzen Verbindungen auf der Lötseite durch verzinnten Draht zu machen. Und schon wurde die Erfolgsquote viel höher. Sonst wäre ich womöglich nicht Dipl.-Ing. (FH) und Leiter der Hardware-Entwicklung in unserem Institut geworden. Ich denke, eine gewisse Qualifikation hab ich da als Knallbirne. Nochwas, versuchst du dein Programm in das EEPROM zu schreiben? Oben in den AVRDude Logs steht immer was von EEPROM. Das ausführbare Programm muss aber in den Flash.
AAAh, Flash war das Zauberwort. Jetzt funktioniert alles wie gewünscht. Tut mir Leid, dass ich dich vorhin so angepflaumt habe, aber du hast ja nicht gerade viel von deinen Kenntnissen durchblicken lassen. Wir hatten im letzten Semester ein uC-Praktikum am Intel 8051 und ich war felsen fest überzeugt, dass wir das fertige Programm in den PROM geschrieben haben.
Kein Problem. Das EEPROM ist für Einstelldaten usw. da, daraus kann nicht ausgeführt werden, genauso wie aus dem RAM auch nicht.
Technisch unterscheiden sich Flash-ROM und EEPROM gar nicht so sehr, nur ihre Benutzung ist halt stark unterschiedlich. Da der EPROM für Daten vorgesehen ist, kann er aus der Applikation byteweise beschrieben werden, während der Flash-ROM nur eingeschränkt aus der Applikation beschrieben werden kann (aus Sicherheitsgründen) und nur in relativ großen Blöcken.
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.