Hallo, also ich bin komplett neu in dem Forum und allgemein auf dem Gebiet "Microcontroller". Ich hatte vor dieses wunderschöne AVR Tutorial durchzuarbeiten aber ich würd mal sagen das ich nicht besonders weit gekommen bin. Nachdem ich mir vor vor 42 Tagen bei Conrad meinen Microcontroller Steckbrett etc. bestellt habe... und dieser immernoch nicht da ist -.- habe ich mir stattdessen den empfohlenen aus dem tutorial bestellt. Dieses AVR - Starterkit. Das Ding fand ich echt klasse war schnell da alles war schon hübsch auf der Plantine prima fürn Einstieg, ich dachte man kann ja garnix mehr falsch machen. Naja und jetzt hab ich vor zwei Tagen diesen USB Adapter gelötet und das sieht eigentlich auch alles richtig aus :\ ich mein da waren ja schon extra vorgefertigte löcher wo ich die fehlenden Teile montieren musste. Naja danach hab ich das Ding ganz stolz an Strom gebracht und an meinen PC angeschlossen, DAVOR habe ich natürlich noch die Treiber dieses WinAVR installiert. Aber es passiert leider überhauptnichts. Also der Controller wird garnicht erst erkannt. Naja und ich bin irgendwie ein wenig ratlos was ich jetzt machen soll? xD Vielleicht kann mir ja wer von euch helfen? Viele Grüße
Mist! Ich würde mit dem genauen Namen des USB Adapters eine Suche starten. Dabei würde ich bei den Antworten auf Übereinstimmungen mit meinem PC-System (Windowsversion, AVR Studio Version) achten. Vielleicht hat der Hersteller des Adapters auch einen Support (FAQ, Wiki, Forum)? > Naja danach hab ich das Ding ganz stolz an Strom gebracht und an meinen > PC angeschlossen, DAVOR habe ich natürlich noch die Treiber dieses > WinAVR installiert. Aber es passiert leider überhauptnichts. Also der > Controller wird garnicht erst erkannt. Treiber kenne ich von WinAVR (sog. libusb Treiber) und von AVR Studio (sog. Jungo Treiber). Es ist nicht egal welche man istalliert. Genaueres gibt die Bedienungsanleitung des USB ISP-Adapters vor. Wenn der USB ISP-Adapter ein usbprog ist von http://www.embedded-projects.net (da gibt es Version 2.0 und 3.0), werden die USB Treiber des AVR Studios benötigt.
Also ich hab den USBprog 3.0 und jetzt das AVR studio und WinAVR installiert und auch nochmal den microcontroller gecheckt aber er wird einfach nicht erkannt. Und nach USBprog gesucht und in FAQs gestöbert habe ich bereits...
Es könnte das "Henne-Ei"-Problem sein. Du brauchst eine Software in deinem USBprog. Wenn diese bei dem Bausatz noch nicht aufgespielt wurde mußt du dir jemand suchen der dir eine passende Software aufspielt. Schau mal in deinen Unterlagen was dort steht. Hans
Hm aso online steht das bereits die Software auf den USBprog vorhanden ist: "USBprog (vorbereitet als AVR-Programmer einsetzbar)".
> Aber es passiert leider überhauptnichts. Also der Controller wird garnicht >
erst erkannt.
Bin mir grad ein wenig unsicher, ob du damit den USBprog meinst, der
nicht vom PC erkannt wird oder den Atmega auf dem Starterboard, der
nicht gefunden wird.
Also eigentlich mein ich damit den Atmega, der USBprog alleine kann ja nicht erkannt werden. Aber auf dem Starterboard war ja alles schon fertig montiert etc. also denk ich ma das es am USBprog liegt.
was er meinte war: wird der Programmier-Adapter erkannt, oder nicht? wenn du den anschließt und windows sagt nix, dann stimmt mit dem usb prog was nicht. dann hast du mit hoher wahrscheinlichkeit da irgend was falshc zusammen gelötet. edit: oder der controller auf dem USB-Prog hat noch keine Firmware
Hilft es vielleicht wenn ich ein Foto vom USBprog hochlade? Und wie finde ich es herraus ob der USBprog eine Firmware draufhat.
Nochmal anders gefragt: Du gehst ja wahrscheinlich beim AVR Studio auf den "Connect"-Dialog (Symbol: IC mit "Con" drauf), wählst dort AVRISP mkII und USB aus und dann "Connect". Funktioniert das oder nicht? Oder hast du erst die Probleme, wenn du versuchst dein Programm auf den Atmega zu schreiben?
Nein nein, ich machs genauso wie du es schon beschrieben hab, indem ich auf Connect gehe... Und da bekomm ich dann immer Connect failed angezeigt :\.
Ok, also liegt der Fehler beim USBprog. Der Atmega auf dem Starterboard kommt erst beim späteren Schreiben ins Spiel. Weitere Fragen, die ich mir jetzt stelle: 1. Ist der USBProg denn vom Betriebssystem erkannt worden? Meist kommt dann ja so eine Meldung "neue Hardware gefunden" oder so ähnlich. Vielleicht mal bei den Gerätetreibern schauen. 2. Welche Brücken hast du auf der USBProg-Platine gesetzt? 3. Werden die Bauteile auf der Platine mit der Zeit sehr heiß?
Also ich würde mal sagen: Bitte ein Bild vom gelöteten USB Adapter und es wäre nicht schlecht wenn man genau sehen könnte wie es um deine Hardware (Systemsteuerung -> Gerätemanager steht) steht (Bildchen davon). Gruß Andi
Also zu erstens, nein Windows XP erkennt den USBprog bzw. den Atmega garnicht. Also es kommt kein Fenster neue Hardware gefunden oder dieses bekannte bling Geräusch es passiert einfach nichts. Ich hab den Atmega jetzt mehrere Stunden am Netz gelassen. Also er ist weder kalt noch warm aber auf keinen Fall heiß. Die Fotos hab ich angehängt.
Tut mir Leid ich hab den Screenshot wohl ein bisschen versiebt xD
Hallo Dominique, >Tut mir Leid ich hab den Screenshot wohl ein bisschen versiebt xD sollte besser heisen: Tut mir Leid ich hab den Aufbau wohl ein total versiebt xD An deinen Bildern erkennt man, dass es wohl der erste Kontakt mit einem Lötkolben war. Du hast Brücken, Lötfahnen etc..... Hier (und in den dortigen Links) mal lesen/anschauen: http://www.mikrocontroller.net/articles/L%C3%B6ten Das der PC scheinbar noch läuft ist Glück oder der ist gut abgesichert. Ob der USBAvr noch was taugt bezweifel ich stark. Hast du den keinen Bastler in Bekanntenkreis, der dir mal die "handwerklichen" Grundlagen zeigt? AVR
Also mein Eindruck ist der, dass der PC garnicht erkennt, dass ein neues USB-Gerät angeschlossen wurde, es also vorerst an der Hardware liegt. Als Erstes müsste der PC die neue Hardware erkennen, danach käme dann die Installation der Treiber auf dem PC. So wie ich das sehe, sind die Lötstellen nicht besonders gut: bei JP3 haben (dem Bild nach) alle pins untereinander Verbindung. Das Forum kann auch mit 2-MB-Bildern die vielen Lötfehler nicht alle entfernen oder erkennen. Da hilft doch nur Kontaktaufnahme. Wer nicht nur als Gast schreibt sondern auch angemeldet ist, kann per PN Jemanden in der Nähe finden, der ihm praktisch hilft. Dazu ist als weiteres die Postleitzahl hilfreich. Die ist doch kein Staatsgeheimnis.
Nein leider kenn ich keinen Bastler der mir sowas zeigen könnte. Nach deiner Aussage muss ich mir wohl einen neuen USBprog zulegen?
@Dominique Kann man nicht pauschal sagen, auch die Bilder sagen da nicht genug. Wenn du deinen Wohnort angibst meldet sich evtl. ein µC-Forum-Leser aus deiner Nähe bei dem du mal vorbeischauen kannst. @Peter Bei den Bildern (4 x 2 MB) muß ich an Falk denken ;) Aber warum frage ich mich?
Jupp, sowas hab ich mir im stillen auch gedacht (seh eben das ich alle meine posts als Gast gemacht hab...hmmmm). Das ist ganz großer Murcks, es ist wahrhaftig ein WUNDER das dieser PC keinen Schaden genommen hat....oh, GOTT!!! Bitte nicht mehr an den PC anschliessen, gibs denn das Teil nicht schon fertig aufgebaut zu kaufen? Ich nehm einfach mal an das du erst so 16-17 bist und nicht die Erfahrung beim löten mitbringst. Mir fällt leider kein Anfängerbuch ein was das Thema Elektronik & richtiges Löten von Bauteilen beinhaltet...wenn andere da was wissen nur zu! Gruß Andi
Ahhh, so, jetzt hab ich mich auch richtig angemeldet ;o) Andi ist also BeastyK hehe Ich hab mir nochmal das erste Bild angesehen, ich wußte garnicht das eine USB-Schnittstelle ein Zusammenschluss von Datenpins mit Vcc und Grd überleben kann, da sollten doch auf dem Mainboard zumindest ein paar Sicherungen durchgeknallt sein...hatte mal eine gebrauchte Maus von meiner Schwester am USB Port einer USB-PCI- Schnittstellenkarte angeschlossen und meine beiden Neffen müssen damit vorher irgendeinen scheiß angestellt haben, auf jedenfall hats die Schnittstellenkarte zerschossen und es rauchte doch gewaltig! Anekdote Ende bye Andi
Hi >Nein leider kenn ich keinen Bastler der mir sowas zeigen könnte. Nach >deiner Aussage muss ich mir wohl einen neuen USBprog zulegen? Willst du nur Programmieren oder Programmer zerbasteln. Im ersteren Fall kauf dir ein ATMEL-Produkt (AVR ISP MKII oder AVR Dragon). Im Zweiten Fall bestell dir ein 10er Pack USBprog. MfG Spess
@Andi Ein "guter" USB-Anschluß ist Stromüberwacht (daher 100/500 mA) und Schaltbar. Daher bei richtiger Auslegung auch Kurzschlußfest. Aber ich würde es nicht testen ;) @spess53 Wenn Andi Recht hat mit seiner Vermutung (16-17; Anfänger) und auch ich ordne Dominique so ein ist es zu früh für harte Sprüche. Hier heist es Helfen! avr
@Dominique Rademacher Hab das ganze mal hier mitgelesen und bei der Löterei ist das kein Wunder das die Schaltung nicht läuft. Wenn du deine Postleitzahlnr. nicht nennen willst, aus welchen Grund auch immer, damit dir einer hilft, dann musst du eben selber versuchen klar zu kommen. Ein paar nützliche Kurzfilme mit Tipps zum löten kann man auch im Web finden: http://www.youtube.com/watch?v=AgRo2IJS3Kk&feature=related und das ist nicht nur einer, da gibts noch mehr.
da der USB eine einzige lötstelle ist .. ist es glück das der PC an dem port nicht streikt ^^ nen Tip .. gib das "hobby" auf...such dir etwas wo du gefallen daran findest
Ja also ihr habt schon recht ich bin 16 - fast 17 und ein absoluter Anfänger auf dem Gebiet und hab leider vorher noch nie gelötet. Naja aber ich programmiere jetzt schon seit 4 Jahren und wollte einfach mal was neues ausprobieren und gleichzeitig ein wenig Assembler aber hauptsächlich C lernen. Ansonsten wohne ich in Hamburg 22145. Und bin über jede Art von Hilfe dankbar. Auf jedenfall vielen Dank das ihr mir alle so geholfen habt.
die USB Controller können schon hochgehen, das Board funktioniert anschließend (oft) noch, der USB Kanal halt nicht mehr. Man merkt das am Geruch und am kurzen Knall von unterm Tisch. nimm nochmal den Lötkolben zur Hand, und versuch das viele Lötzinn wegzubekommen, kurz hinhalten, wenn flüssig mit Entlötpumpe absaugen, oder Lötkolben mit feuchtem Tuch abwischen (hast bestimmt keinen Lötschwamm(heisst der so?)), die Pins dürfen nicht alle gebrückt werden, wenig Lötzinn reicht völlig. Neuer, kleinerer Lötkolben dürfte auch helfen, 1mm an der Spitze, maximal.
Ja in Hamburg sollte sich doch ein Helfer finden, oder? Ich drücke dir die Daumen! Was anderes... Eigentlich hättest du an dem usbprog nicht so viel löten müssen, wie du es getan hast. Es gibt nämlich in dem Starterpaket einen vorgelöteten usbprog, bei dem man "nur noch" einen Stecker anlöten muss. Und: nur der hat auch bereits das Erstprogramm einprogrammiert. Bei deinem nicht zusammengelöteten usbprog hast du wie oben bereits erwähnt das Henne-Ei-Problem. Dieser usbprog muss nach dem (sauberen) Zusammenlöten zuerst mit dem eigentlichen Betriebsprogramm programmiert werden. Erst dann erkennt der PC den! Aber wie macht man das ohne Programmieradapter... Ein Teufelskreis! Also der Helfer ist auch sinnvoll, wenn du deinen usbprog wieder zum laufen bringst. Der Helfer kann dir nämlich die Erstprogrammierung machen.
Vergiss Henne-Ei. Dein usbprog sieht doch nach dem vorgelöteten Exemplar aus.
Und da melde ich mich nochmal zu Wort: Ich wohn in Hamburg, aber als Sozialphobiker bin ich da eher nicht die richtige Addresse, sorry! Das mit dem vorgelötet hat mein Vorsprecher ja wieder zurück genommen, also dazu sag ich dann auch nix. Den Tip mit YouTube (auch wenn der Link etwas lustig ist) finde ich richtig gut (dort findeste noch andere Videos dazu die auch besser sind), hab beim Stargate gucken auch schon dran gedacht dich da hinzustupsen. Was mir aber beim ansehen der Bilder aufgefallen ist sind nicht nur die Überbrückungen die du mit soviel Lötzinn hingebrannt hast, mir ist vielmehr aufgefallen das 1) die meisten Lötstellen nach kalten Lötstellen aussehen (was nicht bedeutet das du da nicht mit genug Liebe hingebrutzelt hast) und 2) du hast anscheinend einen richtig großen Lötkolben oder eine richtig mies große Lötspitze verwendet, ich tendiere aber mal aufgrund der braunen Stellen dahin das es ein großer Lötkolben mit richtig viel Watt war. Ich würde dir als Anfänger zu einem kleinen Lötkolben von Elsa raten und auch zu Lötzinn mit 1mm Durchmesser. Und um den USB zu schonen einen Usb Hub mit eigener Stromversorgung, hier sind viele Leute die sich mit den richtigen Hub auskennen (wurde auch in einigen Threads hier angesprochen!). Conrad und Pollin haben doch auch immer diese kleinen Gimmicks (kleine Platinen und Bauteile die man dann zusammen lötet), an sowas kannst du prima üben. Solong und byebye baby Andi
Nur mal interessehalber (da ich den USBprog nicht kenne): Die SMD Seite ist sicher schon gelötet gewesen, oder? Weil, wenn er die auch gelötet hat, sähe es doch garnicht so schlecht aus mit seinen Lötkünsten.
Hallo, also ich bin mal eurem Tipp nach gegangen und hab versucht den Lötzinn wegzubekommen. An einigen Stellen hängt er noch zusammen aber der Atmega wird jetzt auf jedenfall erkannt!! :D
niiiiiiiiiicht anschließen - erst alle Lötstellen korrigieren !!!!!
Zu spät. Ich krieg sie nicht alle korregiert. Gibt es irgendeinen Trick wie ich den Lötzinn da wieder abbekomme?
du solltest unbedingt alle Lötbrücken beseitigen, bevor du das ding benutzt. Aber was ich mich trotzdem frage: Selbst mit nur 16 oder 17 sollte man doch auf die Idee kommen, dass man die Adern/Pins nicht zusammenlöten sollte, da das ja die Verwendung mehrerer LEitungen ad absurdum führt.
zum entfernen von überschüssigem Lötzinn eignet sich eine Entlötpumpe (manuelle gibts ab 5€) oder aus vielen dünnen Drähten bestehende Entlötlize. Wobei ich mit letzterem gar nicht klar komme.
>Gibt es irgendeinen Trick wie ich >den Lötzinn da wieder abbekomme? Gibts! Nimm die Leiterplatte in die linke Hand(sofern du Rechtshändler bist) und den Lötkolben in die rechte Hand. Der Lötkolben sollte heiß sein und die Spitze einigermaßen sauber und verzinnt sein. Bitte kein Lötfett oder Salzsäure benutzen. Zum auslöten die heiße Lötkolbenspitze auf EINEN Pin drücken bis sich der Zinnklumpen verflüssigt (jedoch nicht länger als 5 sek.)und dann die Platine kräftig auf die Arbeitstischkante (Kante auf Kante )schlagen. Dabei müsste dann das Zinn auf die Tischplatte spritzen und sofort wieder erstarren. Das machste dann Pin für Pin bis alle Kurzschlüsse beseitigt sind. Auch darauf achten das benachbarte Leitungen die schon etwas gelitten haben keinen Kurzschluß mit einem Pin haben an dem die Leiterbahn nicht angeschlossen ist. Zum Löten: Gewöhnliches Elektroniker-Lötzinn von der Rolle 0,5-1,5mm reicht völlig. Da ist dann auch das nötige Flussmittel gleich mit drin.(Ohne gehts nicht). Lötkolben in die rechte Hand und das Lötzinn (ca.5cm gerade abgerollt)in die Linke. Die Lötspitze sollte sauber sein, also keine schwarzen verkohlten Rückstände von vorhergehenden Lötungen haben. Mit einem speziellen Lötschwamm, Stahlwolle oder einer kleinen Drahtbürste bekommt man die gut weg. Mit der Lötspitze Pinstift und Lötauge berühren das möglichst viel Wärme vom Lötkolben auf die beiden Teile abgegeben werden. Nach ca. 3 Sek. Lötzinn an den Berührungspunken von Lötauge und Pinstift zuführen das etwa 2-3mm Zinn abschmilzt und dann sofort den Lötkolben wegnehmen damit die Lötstelle abkühlen kann. Dabei müsste sich ein sauberer Kegel aus Lötzinn gebildet haben. Wichtig ist, das bis zum Erkalten der Pinstift bzw. das Bauteil daran nicht bewegt wird, da sonst die Gefahr einer kalten Lötstelle besteht. Sollte der Pinstift kein Zinn annehmen so ist die Oberfläche so stark oxidiert das man das Bauteil erst gänzlich wieder auslöten muss und die Lötflächen mit Stahlwolle oder feinem Schleifpapier wieder reinigen muss. Dann sollten sich die Bauteile wieder anstandslos löten lassen. Sollte es beim entlöten Schwierigkeiten mit durchkontaktierten Lötaugen geben muss man erst das Zinn weites gehens aus den Hülsen (das sind die Durchkontaktierungen)entfernen, damit man dann jeden Pin der noch in der Hülse kleb durch verbiegen ablösen kann bis alle Pins eines Bauteils frei sind. Vorrausetzung ist natürlich das die Hülse etwas größer als der Pin ist, sonst geht das nur sehr schlecht und nur mit viel Erfahrung. Alternativ zur Entlötpumpe gäbe es noch Entlötlitze, die auch nicht so teuer ist. >Wobei ich mit letzterem gar nicht klar komme. Weil echte Entlötlitze auch Flussmittel enthält sonst gehts nicht.
Hey Dominique, eins muß man dir lassen Mut haste ja! Wenn du noch Zeit und Lust hast schick doch nochmal ein Bild wie die Platine nach deiner Rettungsaktion jetzt aussieht (wenns geht mach die jpeg Datei nicht zu groß). Würde mich wirklich interessieren! Gruß Andi
> niiiiiiiiiicht anschließen - erst alle Lötstellen korrigieren !!!!!
Kann ich nur uuuuuunnnnnttttttererrrrstttüüüüttttzzeeenn !!!!!
Wenn du einen USB-Hub mit eigener Stromversorgung hast: Diesen beim
Erstanschluss des usbprog als Puffer benutzen.
Ein gebratener USB-Hub lässt sich einfacher verschmerzen/ersetzen als
ein USB Port auf dem Mainboard.
Mist wieso bin ich nicht darauf gekommen, genialer trick. Einfach anlöten und gegen klopfen. War zwar nicht ganz leicht weil ich 4 Pins zusammengeschmolzen habe aber naja :P. Ich hab hier das neue Bild hochgeladen is aber nicht so gut geworden.
Naja, 15 Jahre Erfahrung (auch beruflich) stehen schon dahinter. Da gibts noch viel feinere ausgefuchste Techniken aber für den Hausgebrauch mit einfachsten Mitteln reicht das ja. Ist das jetzt der Zustand nach der Klopfaktion oder sind die Pins schon nachgelötet? Wenn nicht, würde ich den Lötstellen, so wie ich es beschrieben hatte noch ein wenig Lötzinn gönnen, damit das etwas sauberer und gleichmäßiger aussieht. Wenn dann der USB vom PC nicht zerschossen wurde müsste es gehen. Evtl. muss man dann einen anderen USB benutzen oder sich eine USB Karte besorgen. Ein Mainboard reparieren zu lassen würde wohl zu teuer werden.
Was man sieht scheint ok zu sein. USB sagste ja das der PC den Chip schon erkannt hatte, also geh ich davon aus das du die vier Pins wieder frei bekommen hast. Ein letzter Tip von mir ist ein Multimeter (als Durchgangsprüfer) zu benutzen und damit dann zu checken ob die Pins wirklich keinen Kontakt mehr miteinander haben! Gruß und ciao Andi
Könnt ihr mir vielleicht irgendein Buch oder besser noch eine Internetseite empfehlen wo ich einen schönen Einstieg bekomme? Wo vielleicht auch etwas über die Schaltungen erklärt ist etc. ich bin von dem Tutorial hier ein wenig verwirrt.
Hallo, haste das Board mim Gasbrenner gelötet? Nein Spaß beiseite... http://www.youtube.com/results?search_query=How+to+solder&search_type=&aq=f zieh dir mal eins von den Videos rein... Löten ist garnicht so schwer. Noch viel Erfolg... Wenn du willst schreib mir eine PN und ich erklär dir über icq wie man Lötet :) mfg Alex
ich meinte eigentlich zum programmieren und nicht zum löten :P. Aber die Videos guck ich mir trotzdem gerne mal an.
Die Chance/Hilfe unser Tutorial besser zu machen, willst du uns nicht geben? Denk mal an die, die nach dir kommen...
Doch klar gerne, soll ich mir einfach mal von der Seele reden wa mir persöhnlich nicht so gut gefällt?
Hi, also ich versuche immernoch das erste Programm auf den microcontroller zu überspielen komme aber nicht weiter. Wenn ich ihn den Atmega anschließe und ihn Verbinden will bekomm ich die Fehlermeldung vom AVR Studio "A problem occurred when executing the command. Current mode is ISP. See the command output for more info." Ich hoffe ihr könnt mir nochmal helfen xD?? :S
Bist du der Aufforderung "See the command output for more info." nachgekommen?
> Doch klar gerne, soll ich mir einfach mal von der Seele reden wa mir > persöhnlich nicht so gut gefällt? Zum Beispiel. Wenn etwas klarer, besser, logischer,... formuliert werden kann oder Fehler behoben werden können, wird das sicher gerne umgesetzt. > "A problem occurred when executing the command. Current mode is > ISP. See the command output for more info." Das ist eine typ. AVR Studio Fehlermeldung. Interessant ist der nicht ziteierte Text im command output. Kannst du genauer angeben, an welcher Stelle du andere Ergebnisse bekommst als in der anleitung (*) des usbprog? Eventuell Screenshots machen oder Texte mit Copy&Paste kopieren. (*) http://www.elo-web.de/elo/mikrocontroller-und-programmierung/entwicklungssysteme/software-fuer-das-mega8-entwicklungssystem
Hi, also erstmal muss ich sagen ist das eine super Seite da werd ich mich mal ein wenig durcharbeiten. Mein Fehlermeldung ist bereits verschwunden weil ich eine falsche Taktfrequenz eingestellt hatte. Nun will ich dieses Beispiel Porgramm einmal übertragen aber da hackt es grade noch. Das steht untem in diesem kleinen Dialog: Getting isp parameter.. SD=0x05 .. OKOK Reading EEPROM input filOK! Reading EEPROM .. OK! EEPROM contents is equal to file.. OK Leaving programming mode.. OK!e.. OK Setting mode and device parameters.. OK! Entering programming mode.. OK! Programming EEPROM .. Ich weiß nicht ob das jetzt schon alles ist oder da was schief gelaufen ist aber auf jedenfall blinkt die Lampe nicht und das sollte sie ja eigentlich...
Hye Dominique, im AVR-Studio bist du also auf das "Con"-Symbol gegangen und hast den Programmer verbunden. Dann gehst du auf die Karte "Program" im "Flash" Bereich gehst du zu "Input HEX" und suchst dir die .hex Datei von deinem Beispiel. (am besten LED Blink Beispiel) Dann gehst du bei "Flash" auf >Programm< und beschreibst somit den Chip auf dem am Programmer angeschlossenen Test-Board. Gruß Mike
Also ich hab es jetzt hinbekommen das Programm läuft auf dem Microcontroller, die Lampe leuchtet. Ich hab mal in das AVR-GCC Tutorial reingeschaut. #include <avr/io.h> // (1) int main (void) { // (2) DDRB = 0xff; // (3) PORTB = 0x03; // (4) while(1) { // (5a) /* "leere" Schleife*/ // (5b) } // (5c) /* wird nie erreicht */ return 0; // (6) } Das ist ja sozusagen der erste Code den man lernt. Ich hab bei meinem Atmega8 alelrdings das PortC genommen weil es sonst nicht klappt, aber wieso nicht? Ich bin irgendwie voll verwirrt hat jedes Prot eine einzelne bedeutung? Wieso werden hierdurch: PORTB = 0x03; die Anschlüsse 0 und 1 zu 1? Wenn die Ports auf eins stehen führen sie also eine Spannung von 5V, aber was ist wenn ich zB. keine Lampe sondern einen Motor anschließe der brauch doch sicherlich mehr als 5V? Im Pinmapping vom Atmega8 gibt es digitale und analoge Anschlüsse wo ist da der Unterschied?
Hi >Wieso werden hierdurch: PORTB = 0x03; die Anschlüsse 0 und 1 zu 1? Weil 0x03 binär 0b00000011 ist. >keine Lampe sondern einen Motor anschließe der brauch >doch sicherlich mehr als 5V? Dafür gibt es Transistoren und Treiber. MfG Spess
Am Anfang ist evt. die Binärschreibweise 0b00000011 etc. einfacher weil man nicht im Kopf ins Hex- (0x03) oder Dezimalsystem (3) umrechnen muss. "Analoge Anschlüsse": Damit meinst du bestimmt die Eingänge, die man per Register auf den internen AD-Wandler schalten kann um die Spannung am Pin zwischen 0 V und Refernezspannung zu messen.
Hallo, ich hab schon wieder eine Frage. Mir wird aus dem Tutorial nicht ganz klar wie ich denn einen Tastendruck abfragen kann. Also ich will wenn eine Taste gedrückt wurde die LED anschalten. Aber woher weiß ich welches Port ich dazu überhaupt benutzen muss und wie mach ich das dann?
Welchen Teil des Tutorials verstehst Du nicht? Lass uns das bitte wissen, damit wir diese Teile eventuell umformulieren oder erweitern können. Was hast Du bisher geschafft bzw. verstanden und an welcher Stelle genau kommst Du nicht weiter?
Das ist der Punkt Tasten und Schalter wo einem gezeigt wird auf einen tastendruck zu reagieren. #include <avr/io.h> #include <inttypes.h> #ifndef F_CPU #warning #define F_CPU 3686400UL #endif #include <util/delay.h> inline uint8_t debounce(volatile uint8_t *port, uint8_t pin) { if ( ! (*port & (1 << pin)) ) { _delay_ms(50); _delay_ms(50); if ( *port & (1 << pin) ) { _delay_ms(50); _delay_ms(50); return 1; } } return 0; } int main(void) { DDRB &= ~( 1 << PB0 ); /* Das ist mir z.B. nicht klar woher weiß ich denn welchen Port ich auf Einang setzen muss? Weil bei mir klappt das so nicht... :S Die LED dann weiter unten, wird an Port PD7 an-bzw. ausgeschaltet. Bei mir ist das aber PORTC und dann muss ich die Anschlüsse 0 und 1 auf 1 setzten damit es funktioniert. Aber woher weiß ich das? Wahrscheinlich ist das eine ganz blöde Frage aber das verwirrt mich total. */ PORTB |= ( 1 << PB0 ); if (debounce(&PINB, PB0)) PORTD = PIND ^ ( 1 << PD7 ); }
Du kannst es wissen, wenn du deinen Schaltplan kennst und die Kombination aus Schaltplan/Programm aus dem Tutorial. Dann kannst du das Programm aus dem Tutorial an deinen Schaltplan anpassen. Zum zweiten musst du parat haben, dass nach dem RESET alle Ports erstmal auf Eingang gesetzt sind. PORTD = PIND ^ ( 1 << PD7 ); ist IMHO im Tutorial zu tricky und ich bin mir unsicher, ob man mit dem Originalcode ohne weiteres eine LED betreiben könnte. Besser fände ich es, mit PD7 als Ausgang zu arbeiten:
1 | int main(void) |
2 | {
|
3 | /*
|
4 | Anschluss Taster active-low:
|
5 | Taster
|
6 | ====
|
7 | PB0 ----o o----- GND
|
8 | */
|
9 | DDRB &= ~( 1 << PB0 ); // Datenrichtung PB0: Eingang |
10 | PORTB |= ( 1 << PB0 ); // interner Pull-Up an PB0 an |
11 | |
12 | /*
|
13 | Anschluss LED active-low:
|
14 | Vorwiderstand LED
|
15 | PD7 ----###-----------|<----- Vcc
|
16 | */
|
17 | DDRD |= (1<<PD7); // Datenrichtung PD7: Ausgang (Default LOW = LED ein) |
18 | |
19 | if (debounce(&PINB, PB0)) |
20 | PORTD ^= (1<<PD7); // Pegelwechsel an Ausgang PD7 |
21 | }
|
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.