Hallo allerseits, ich würde gerne in der Thema Mikrocontroller einsteigen und habe auch auf verschiedenen Seiten schon ein bisschen in Tutorials rumgestöbert. Nur habe ich noch ein paar Fragen, die ich mir selbst irgendwie nicht so richtig beantworten kann nun hoffe ich auf Hilfe :) Ich denke mir mitlerweile, dass ich wohl mit Atmel-Prozessoren anfangen will - habe öfters gelesen, dass es von Atmel vieles gibt und sie auch untereinander nicht zu unterschiedlich sind - hat das Zukunft? Mit welchem Fange ich denn am besten an (da ich nicht selber ätze wollte ich auf DIP-Gehäusen auf Lochraster aufbauen)? Gibt es zwischen 8 und 32 Bit auch noch eine Stufe? Denn z.B. aus den Produktbeschreibungen bei Reichelt werde ich nich so ganz schlau. Sonst würde es ja sinn machen mit mehr Bit anzufangen!? Aber ich habe das AVR-Studio nur in der 8-Bit Version kostenlos gefunden - kostet die 32-Bit Entwicklungsumgebung? Und schlussendlich ist mir nicht ganz klar, welche Hardware ich brauche - haben Entwicklerboards noch einen anderen Sinn, als die erstellte Software mit LEDs und schaltern zu testen? Weil das kann man doch auch in der Software simulieren, oder!? Viele Fragen. :) mfG Frederik
> Ich denke mir mitlerweile, dass ich wohl mit Atmel-Prozessoren anfangen > will - habe öfters gelesen, dass es von Atmel vieles gibt und sie auch > untereinander nicht zu unterschiedlich sind - hat das Zukunft? Mit > welchem Fange ich denn am besten an (da ich nicht selber ätze wollte ich > auf DIP-Gehäusen auf Lochraster aufbauen)? Fang am besten mit irgendnem ATTiny an, siehe Tutorial. > > Gibt es zwischen 8 und 32 Bit auch noch eine Stufe? Denn z.B. aus den > Produktbeschreibungen bei Reichelt werde ich nich so ganz schlau. Sonst > würde es ja sinn machen mit mehr Bit anzufangen!? Aber ich habe das > AVR-Studio nur in der 8-Bit Version kostenlos gefunden - kostet die > 32-Bit Entwicklungsumgebung? 8-Bit ist für den Einstieg sicherlich am besten geeignet. > Und schlussendlich ist mir nicht ganz klar, welche Hardware ich brauche > - haben Entwicklerboards noch einen anderen Sinn, als die erstellte > Software mit LEDs und schaltern zu testen? Naja, gewisse Anschlüsse sind herausgeführt, wo du dann eigene Komponenten anschließen kannst. Ich bin der Meinung, das ein Entwicklungsboard nicht notwendig ist. Lieber ein paar LEDs, Schalter usw... kaufen und selbst auf Lochraster zusammen löten. Dann bräuchtest du noch ein Programmiergerät. Ich selbst nutze dieses und bin sehr zufrieden, noch dazu ist es sehr preiswert: http://wiki.ullihome.de/index.php/Hauptseite#USB_AVR-Lab Weil das kann man doch auch > in der Software simulieren, oder!? Einiges, ja. Aber du willst doch sicherlich auch Hardware ansteuern, das ist doch der Sinn der ganzen Aktion? Ich denke direkt in Hardware loszulegen macht viel mehr Spaß. > Viele Fragen. :) > > mfG > Frederik
du brauchst eigentlich noch nicht mal löten, einfach ein Steckbrett kaufen und n bisschen Kleinkram, einen Batteriehalter für 2-3 Mignonzellen und dann gehts los.:-)
Danke für die schnellen Antworten. Gut dann brauch ich also noch ein Programmiergerät- wie ich das anschließe steht dann höchstwarscheinlich im Datenblatt des jeweiligen Controllers!? Sind zwischen ATiny und ATmega denn größere Unterschiede? Sonst würde ich glaube ich eher mit einem ATmega anfangen - erscheint mir flexibler von dem was man so hört - ist die Programmierung groß anders? und könntet ihr mir ein konkretes Modell empfehlen vielleicht? :) oder nehmen die sich nicht viel?
Frederik schrieb: > Sind zwischen ATiny und ATmega denn größere Unterschiede? Würde erstmal mit nem tiny anfangen, so in Richtung 8 Pins (z.B. tiny45). Die tinys bieten zwar nicht ganz so viel Spezialkrams wie die megas, dafür sind die Datenblätter überschaulicher :-)
Ich seh die Sache eigentlich eher umgekehrt. Ich würde zu einem Mega tendieren. Ganz einfach deswegen weil die Dinger mehr Speicher mitbringen. Die 8-Pin Tiny sehe ich eher als die Stufe: Ich kann mit der AVR Architetkur umgehen, dann such ich mir für meine spezielle Aufgabe bei Atmel den Tiny aus, der das kann was ich brauche und fertig. An so einem 8-Pin Tiny kannst du doch noch nicht mal ein LCD + 3 oder 4 Taster (für eine Menüführung) ohne gröbere Klimmzüge anschliessen. Und in der Lernphase ohne konkretes Projekt ist nichts ärgerlicher, als ein Prozessor, bei dem du erst mal Klimmzüge machen musst. Preislich ist die Sache sowieso egal. Die paar Cent mehr für einen Mega8, Mega16, Mega32 spielen bei einer Erstausstattung dann auch keine Rolle mehr.
Frederik schrieb: > Sind zwischen ATiny und ATmega denn größere Unterschiede? Nein. Die Tiny kann man sich als die abgespeckten Versionen der Megas denken. Der CPU-Kern, d.h. die Programmierung an sich, ist bei beiden mehr oder weniger identisch. Lediglich die Hardware-Ausstattung variiert.
Ok, ich nehme meine Empfehlung für den tiny zurück :-) Ich nehm persönlich halt gerne tinys um einen Aspekt einer Schaltung zu testen. Ein größeres Projekt wird dann entweder als Verbund mehrerer tinys oder mit nem größeren uC realisiert. Am besten wirds tatsächlich sein, du schnappst dir nen kompatiblen uC zum mega8, also z.b. mega88, da der auch hier im Tutorial verwendet wird. :-)
Ich sehe die Sache ähnlich wie Karl Heinz und würde für den Anfang einen Controller nehmen, der ausreichend Flash, RAM und Pins hat, also bspw. einen ATmega8 oder -88. Enthaltsamkeit muss nämlich auch erst gelernt werden. Ein ATtiny45 ist zwar speichermäßig gerade so ok, aber von den sechs I/O-Pins bleiben, nachdem vier davon an den Programmieradapter angeschlossen sind, gerade einmal zwei übrig. Die nächstgrößere Klasse über dem ATmega8 wäre der ATmega32, der bedeckt aber mit seinem großen Gehäuse schon ziemlich viel Steckbrettfläche. Floh schrieb: > Am besten wirds tatsächlich sein, du schnappst dir nen kompatiblen uC > zum mega8, also z.b. mega88, da der auch hier im Tutorial verwendet > wird. :-) Stimmt, das Tutorial ist auch ein wichtiger Aspekt. Also dann erst recht ein Mega8/88.
Okay das hört sich nich schlecht an.. das ist schonmal eine große Hilfe... also ein ATmega... kann ich mit dem AVR-Studio sowohl ATmega8 also auch 16 programmieren? (entspricht die Zahl überhaupt der Bitzahl? :) ) Gibt es bei Reichelt eigentlich irgend eine Logik bei den Produktbezeichnungen? Es gibt eine für mich als Anfänger unglaublich große Auwahl an ATmegas... wie soll man sich da zurechtfinden?
Frederik schrieb: > Okay das hört sich nich schlecht an.. das ist schonmal eine große > Hilfe... also ein ATmega... kann ich mit dem AVR-Studio sowohl ATmega8 > also auch 16 programmieren? (entspricht die Zahl überhaupt der Bitzahl? > :) ) Nein tut sie nicht ATMega8 ... 8 KByte Flash Speicher ATMega16 ... 16 KByte Flash Speicher ATMega32 ... 32 KByte Flash Speicher Aber dann hörts leider auf :-) Ein ATMega88 hat keine 88 KBytze Flash Speicher, sondern ist ein aufgebohrter Mega 8 > große Auwahl an ATmegas... wie soll man sich da zurechtfinden? Für dich ist nur die erste Zahl interessant, das dahinter ist die Gehäusebezeichnung und der Taktfrequenzbereich. Neuere Modelle haben dann noch Buchstaben für den Versorgungsspannungsbereich. Alle AVR aus der Tiny und Mega Serie sind prinzipiell 8-Bit Prozessoren. Wie gesagt: in allen arbeitet mehr oder weniger derselbe Rechenkern. Nur das Drumherum (Speicher, Peripherie) und damit auch die Anzahl der Pins, ist anders.
Super dann bin ich ja so gut wie am Ziel.. hat mir sehr geholfen. http://www.reichelt.de/?ACTION=3;GROUP=A38;GROUPID=2969;ARTICLE=45040;SID=31ZQMmaawQAR8AAAub-6U59e9bc86df103425350850e5ed4c8e68 wäre ich mit so einem Programmiergerät gut beraten? Es sieht mir.. einfach zu benutzen aus. :)
Frederik schrieb: > wäre ich mit so einem Programmiergerät gut beraten? Es sieht mir.. > einfach zu benutzen aus. :) Ich habe zwar keine Erfahrung damit, aber hier im Forum hat sich m.W. noch niemand darüber beschwert, viele haben es aber gelobt. Es kommt ja auch von Atmel, und die werden den Käufern ihrer Controller nicht gleich am Anfang schon die Laune verderben wollen ;-)
also ich hab vor einigen wochen so mit denn Microntroller angefangen: 1.hab mir ein testboard gebastelt! Die Ports führen zu Wannenstecker, danc hmit flachbandkabel auf eine separte platine (z.b. mit 8 leds) so kann ich die ports bzw. pins indivieduell nutzen! 2.AVR-studio 4 runtegeladen 3. ISP-programmer gekauft: http://cgi.ebay.de/AVR-USB-ISP-Programmer-ATMEL-ATMEGA-STK500-Neu-ATTINY-/370419920384?pt=Wissenschaftliche_Ger%C3%A4te Bis jetzt bin ich sehr zufrieden mit dem gerät! Hab Windows 7 64 bit und es läuft einwandfrei! 4.Atmega 8 reingesteckt und angefangen zu programmiernen! ich finde dieses Tutorial sehr hilfreich hat mir bis jetzt die meisten Fragen beantwortet! http://www.avr-asm-tutorial.net/avr_de/index.html
Frederik schrieb: > http://www.reichelt.de/?ACTION=3;GROUP=A38;GROUPID... Das tut was es soll. Habe es auch im Einsatz, es hat mich nie im Stich gelassen. Du kannst es nicht zum on Chip debuggen benutzen, das brauchst du am Anfang aber auch nicht. Die Firmware darin lässt sich für die Xmegas updaten wenn später mal der Appetit beim Essen kommt. Für den Anfang hat mir ein Atmega16 im DIP-Gehäuse auf einem Steckbrett gute Dienste geleistet. Noch ein Paar LED's, Vor-(Widerstände), Taster und Blockkondensator dazu und die Laube ist fertig. Und Vorsicht mit den "Fuses", damit kann man sich wunderbar selbst aussperren!
Fuses? Das conFUSEd mich jetzt eher ^^ wozu ein Blockkondensator? Ich schwanke ja noch etwas zwischen den beiden Geräten Nebenbei: Um mit Ausgänge mehr Leistung zu steuern würde man doch warsch mit dem Ausgang einen beliebigen Transistor und darüber die Last ansteuern!?
Moin Frederik, ich habe vor einiger Zeit nach langer Pause (knapp 30 Jahre, früher Z80) auch wieder mit der Microcontrollerei angefangen. Empfehlen kann ich auch den Mega8. Mir hat dabei dieses Tutorial gut geholfen: http://www.rclineforum.de/forum/board.php?boardid=92&sid= Da ist in diversen Artikeln der Bau einer Experimentierplatine beschrieben, mit LC-Display, LED-Ketten, auf Wannensteckern geführten Ports etc. Der Selbstbau (ganz klassisch auf Lochraster) hat einen großen Vorteil: danach kennst Du schon mal jeden Pin mit Vornamen ;-) Zu den wichtigsten Software-Übungen gibt es auch Artikel (alle auf Bascom): Timer, Interrupts usw. Viel Erfolg! Ralph
Abblockkondensator (100nF keramisch) fur die Betriebsspannung ist wichtig. Der Prozessor zieht stark schwankende Ströme, die zu Spannungsschwankungen führen, die den Prozessor aus dem Tritt bringen können. Mit den Fuses kann man z.B. Taktquelle und Taktfrequenz einstellen. Wenn du auf externen Takt stellst, der aber nicht vorhanden ist, tut sich nichts mehr.
Hi Ich hab für den Einstieg (In dem ich mich immer noch mehr oder weniger befinde) das Funk-AVR-Evaluation-Board von Pollin gekauft + 2*Atmega8 +1*Atmega16 + 2*Atmega32 So viele müssen es natürlich nicht sein, allerdings ist es sehr zu empfehlen, mindestens 2. Microcontroller zu nehmen, weil: Man VerFused sich gern mal schnell, und dann erwartet der uC entweder - Externen Takt an XTAL1 (Da muss dann der 2. uC die ganze Zeit einen Pin High/Low schalten, das Signal an XTAL1 hängen, sonst ist der Verfuste Atmega nicht mehr ansprechbar. Wenns so weit geklappt hat kann man die Fuses auch wieder normal/anders stellen) - Einen Quarz. Desshalb kauft man sich am besten noch einen 8 oder 12 Mhz Quarz + 2x 22 pF Keramikkondesatoren Ist nämlich ziemlich ärgerlich wenn der Atmega nicht kaputt ist, man aber trotzdem nichts mehr mit ihm anfangen kann... MfG -schumi-
Okay dann denke ich ich habe langsam alles zusammen. Gehe ich recht in der Annahme, dass das ein ATmega88 ist: http://www.reichelt.de/?ACTION=3;GROUP=A363;GROUPID=2959;ARTICLE=45025;SID=31ZQMmaawQAR8AAAub-6U59e9bc86df103425350850e5ed4c8e68 und das ein ATMega16: http://www.reichelt.de/?ACTION=3;GROUP=A363;GROUPID=2959;ARTICLE=45024;SID=31ZQMmaawQAR8AAAub-6U59e9bc86df103425350850e5ed4c8e68 Und was ist dann dieser hier: http://www.reichelt.de/?ACTION=3;GROUP=A363;GROUPID=2959;ARTICLE=45026;SID=31ZQMmaawQAR8AAAub-6U59e9bc86df103425350850e5ed4c8e68 einen 32er finde ich dort gar nicht...
Frederik schrieb: > Gehe ich recht in der Annahme, dass das ein ATmega88 ist: > > http://www.reichelt.de/?ACTION=3;GROUP=A363;GROUPI... Nein, das ist ein ATmega8L, also ein ATmega8, der mit einer niedrigeren Versorgungsspannung auskommt, dafür aber nur mit maximal 8MHz statt 16MHz läuft (L=low Voltage). > und das ein ATMega16: > http://www.reichelt.de/?ACTION=3;GROUP=A363;GROUPI... Nein, das ist ein gewöhnlicher ATmega8 mit 16MHz. > Und was ist dann dieser hier: > > http://www.reichelt.de/?ACTION=3;GROUP=A363;GROUPI... Das ist ein ATmega32 mit 16MHz. Und das hier ist ein ATmega88 mit 20MHz: http://www.reichelt.de/?;ACTION=3;LA=444;GROUP=A363;GROUPID=2959;ARTICLE=68169;START=0;SORT=artnr;OFFSET=16;SID=26Ev124KwQARoAAHbBi304c932238bf8c99abcb5bd5d598d0fcf0 Und das ist ein ATmega16 mit 16MHz: http://www.reichelt.de/?;ACTION=3;LA=444;GROUP=A363;GROUPID=2959;ARTICLE=45028;START=0;SORT=artnr;OFFSET=16;SID=26Ev124KwQARoAAHbBi304c932238bf8c99abcb5bd5d598d0fcf0 Die Zahl nach dem L bzw. nach dem Bindestrich gibt immer die maximale Taktfrequenz an.
Oh man :-D Danke... Okay... ich sehe ich habe es noch nicht verstanden ^^ Nun lese ich gerade auf der Atmel Seite dass der ATmega88 nicht mehr empfohlen wird - stattdessen der ATmega88PA.. Kann ich nun also diesen verwenden (das ist doch nun aber ein 88, oder :) ): http://cgi.ebay.de/Atmel-ATmega-88PA-PU-DIL-/310240600334?pt=Bauteile oder mit mehr Speicher diesen: http://cgi.ebay.de/Atmel-ATmega168-20PU-DIL-/250681812947?pt=Bauteile ? Bei eBay sind die Dinger für mich wirklich eindeutiger zu identifizieren als diese kryptischen Reichelt-Bezeichnungen :)
Hallo, kauf Dir einen Arduino. Da kannst Du nix falsch machen. USB anstecken - Processing (= C + Einsteigerroutinen) installieren und los gehts. Für Einsteiger das absolut Beste! Gruss, Z
Frederik schrieb: > Nun lese ich gerade auf der Atmel Seite dass der ATmega88 nicht mehr > empfohlen wird - stattdessen der ATmega88PA.. Der 88P ist die Stromsparvariante des 88, und der 88PA ein Facelift vom 88P. Was genau die Unterschiede sind, habe ich nicht im Kopf, auf jeden Fall dürften sie nur marginal sein. Solange du keine batteriebetriebenen Geräte damit baust, wirst du wahrscheinlich überhaupt keinen Unterschied feststellen. Obwohl Atmel den Mega88 nicht "for new designs" empfiehlt, haben viele Bastelläden wie Reichelt, Kessler, CSD usw. die neueren Varianten noch gar nicht im Programm. Also nimm einfach das, was du bei den derzeitigen Lieferengpässen bekommen kannst.
Frederik schrieb: > Hallo allerseits, Hi Frederik. Ich beantworte Dir die Fragen mal aus meiner Sicht. Hier denkt man immer "neuer Beitrag" und dann stehen da schon Buecher :D > Ich denke mir mitlerweile, dass ich wohl mit Atmel-Prozessoren anfangen > will - habe öfters gelesen, dass es von Atmel vieles gibt und sie auch > untereinander nicht zu unterschiedlich sind - hat das Zukunft? Mit > welchem Fange ich denn am besten an (da ich nicht selber ätze wollte ich > auf DIP-Gehäusen auf Lochraster aufbauen)? Sagen wir es mal so: Die AVRs (die meinst Du, nehm ich doch mal an) sind eine gute Wahl. Ich hatte ganz am Anfang auch 0 Ahnung und nur "PIC" in Erinnerung, davon bin ich aber schnell abgekommen. Bei den AVRs hast Du als ganz dickes Plus (fuer mich Totschlagargument) eine qualitativ hochwertige freie Entwicklungstoolchain (avrgcc, avrlibc, ...) und gerade in Foren sind die MCUs wohlbekannt. Ich lese und schreibe hier schon laenger und daher gleich vorweg: Es gibt immer wieder mal so die-hard-PIC-Fans hier, die von den AVRs nichts halten. Liegt aber oft daran dass sie nie etwas anderes kennen gelernt haben. Schau Dir aber zwecks Alternativen mal das hier an: http://www.mikrocontroller.net/articles/Mikrocontroller_Vergleich Hier in diesem Forum stehst Du mit den AVR auf jeden Fall am Besten da. Die grossen Boliden-Controller (z.B. Arm) eignen sich fuer den Einsteiger ohnehin nicht. Wenn Du Linux verwenden willst, nimm die AVR. Zu Deiner Frage "hat das Zukunft?". DIP ist fuer Lochraster-Prototyping ganz nuetzlich, aber nachdem ich mit Platinen angefangen habe, hab ich mir das nach und nach vollkommen geschenkt, der Aufwand, das korrekt(!) aufzubauen ist mir meist zu bloede gewesen. Lieber ne Prototypenplatine und mal was aufkratzen/umpatchen. DIP wird nach und nach aussterben, auch im Hobbybereich, hat also keine grossartige Zukunft mehr, das ist Technik aus der Steinzeit. Und um uns Hobbyisten kuemmert sich die Industrie sicherlich nicht. Was ich damit sagen will: SMT ist nicht so schlimm und gerade die kleinen bis mittleren AVR (mal von den ganz grossen wie den 1280 oder die Xmega) sind die Gehaeuse doch echt praktisch auch fuer den geneigten Bastler, also mit "grossem" Pin-Abstand. Bau diese Angst gleich mal ab, das ist wirklich nicht so hart und eigentlich sogar viel praktischer, schneller loetbar und das Bohren von 40 Loechern bei nem DIP32 kann man sich auch schenken. > Gibt es zwischen 8 und 32 Bit auch noch eine Stufe? Denn z.B. aus den > Produktbeschreibungen bei Reichelt werde ich nich so ganz schlau. Sonst > würde es ja sinn machen mit mehr Bit anzufangen!? Aber ich habe das > AVR-Studio nur in der 8-Bit Version kostenlos gefunden - kostet die > 32-Bit Entwicklungsumgebung? Klar, 16-Bitter. Aber ich hatte oben schon geschrieben: Fang mal mit den kleinen AVR an, am besten einen Mega88. Fuer einen Anfaenger wie Dich haelt der mehr als genug Herausforderungen bereit. Ich mache die Schose jetzt seit ca. 3 Jahren und hab zwar mit programmierbarer Logik und den Xmegas experimentiert aber selber brauchte ich nie was breiteres als 8-Bit gebraucht und in Zwischenzeit zweifel ich auch daran, dass ich das fuer meine Projekte je brauchen werde. Als Anfaenger kann man das immer so schlecht einschaetzen. > Und schlussendlich ist mir nicht ganz klar, welche Hardware ich brauche > - haben Entwicklerboards noch einen anderen Sinn, als die erstellte > Software mit LEDs und schaltern zu testen? Weil das kann man doch auch > in der Software simulieren, oder!? > > Viele Fragen. :) Ich habe mein STK500 immer als ISP-Programmer verwendet oder um mal nen Controller "kalt" zu flashen, also ohne dass er in die Schaltung geloetet ist. Fuer den Anfang erlaubt es auch das schnelle experimentieren, schliesslich muss man die Dinger ja erst mal programmieren koennen. Aber ein ISP-Programmer wie der AVR ISP mkII reicht auch, denn ne kleine Grundschaltung hat man schnell aufgebaut und schon viel dabei gelernt. > mfG > Frederik lg, Michael
Auf diese Art habe ich auch angefangen. Das benötigte Material (außer einem Atmega16) lag schon von früheren Elektronikbasteln herum. Es gibt ein Buch von Florian Schäffer (auch Florian - Zufall???) "AVR- Hardware und C-Programmierung in der Praxis", das u.a. den Aufbau von so was für Anfänger ausführlich beschreibt.
Gregor Wetzel schrieb: > Es gibt ein Buch von Florian Schäffer (auch Florian - Zufall???) "AVR- > Hardware und C-Programmierung in der Praxis", das u.a. den Aufbau von so > was für Anfänger ausführlich beschreibt. Nein, kein Zufall ;-) Aber ich will hier Werbung vermeiden und deshalb nur der Verweis auf die Webseite mit der Einführung.
Super - danke Leute für die Hilfe - hat mir sehr weitergeholfen. Ich werde mir nun eine Grundaustattung zulegen! Eines noch: Woher bekomme ich ein Datenblatt des ATmega88PA? Ich habe nur eines gefunden, dass nicht ganz vollständig zu sein scheint - z.B. finde ich nirgens den max. Ausgangsstrom den der Controller verkraftet.
Frederik schrieb: > Woher bekomme ich ein Datenblatt des ATmega88PA? Vielleicht auf der Atmel-Website? http://www.atmel.com/dyn/products/product_card.asp?PN=ATmega88PA
Hallo. Um das ganze Tutorial hier noch etwas zu verwirren, noch die Erklärung mit den Bit-Zahlen oben drauf. Alle ATMEL Tiny und Mega sind 8-Bit. Das heißt, dass die CPU immer 8 Bit gleichzeitig verschaffen kann (bei Addition, Subtraktion, etc.). Zur Verwirrung gibt es auch einige 16-Bit-Instruktionen, nämlich für einige ausgewählte Register ab R24 aufwärts, die als Zeiger ins Flash/SRAM verwendet werden können/sollen. Die Instruktionen und der interne Adressbus für Flash-Speicher und SRAM sind in 16 Bit ausgeführt. Von den Instruktionen her sind es also eigentlich 16-Bit-Prozessoren, was den umfangreichen Instruktionsset (so um die 130) erklärt und dass fast alle Instruktionen beim Bearbeiten nur ein einziges Befehlswort und einen einzigen Taktimpuls brauchen. Deswegen sind sie bei gleichem Takt etliche Male schneller als PIC. 32-Bit-Prozessoren braucht nur jemand, der sich selber einen PC zusammenlöten will, mehr als ein MB Speicher beherrschen muss, Giga-Byte-Festplatten anschließen will, mit Fließkommazahlen einiger Genauigkeit rechnen und das Ganze mit mehr als 20 MHz Takt verarbeiten muss. Also niemand, der sich ein Netbook für 300 Tacken leisten kann. Nebenbei: Bis ein Anfänger die 1 kB eines Tiny13 vollprogrammiert, ist er schon lange aus dem Anfängerstadium raus. Im ATtiny13 ist außer dem Hardware-Multiplikator ansonsten alles drin, was ein erwachsener Rechner so braucht und was ein Mega auch hat. Und man kann mit ihm fast alles lernen. Wer einen Anfänger dazu verführt, als Erstes mal ein LCD zu programmieren, der hat vor allem seinen eigenen Lehr- und Lerngang vergessen. mfg gerd
Grüße, also eure Tipps haben mir schonmal sehr geholfen. Ich habe mir den ISP-Programmer von eBay geholt und ein Board selbst aufgebaut. An Prozessoren habe ich mir ein paar ATmega88PA-PU gekauft. Das Board liefert die richtige Spannung an die richtigen Pins, der ISP-Adapter ist nach Herstellerangaben (die sich auch mit dem RCLine-Tutorial decken) beschaltet. Das habe ich alles durchgemessen. Etwas seltsam finde ich, dass bei angeschlossenem ISP-Adapter eine mit 1,5kOhm Vorwiderstand parallel an PB4 (MISO/PCINT4) leuchtet. Ich habe nun also AVR-Studio 4 installiert, geupdatet und ein neues Projekt in Assembler mit dem ATmega88PA (PA-PU gabs nicht) gestartet. Dann habe ich versucht zu connecten. AVR Studio erkennt den über USB angeschlossenen ISP. Versuche ich nun aber beispielsweise die Signatur auszulesen bekomme ich nur die Meldung: "entering programming mode... FAILED! Leaving programming mode.. OK!" ISP-Frequenz ist auf 460,8KHz. Was kann nur der Fehler sein? Ich bin einigermaßen ratlos.. @JSP: Welchen Treiber hast du genutzt? Obwohl ich eig alle ausprobiert habe...
Frederik schrieb: > ISP-Frequenz ist auf 460,8KHz. ISP-Frequenz runter. Im Auslieferungszustand hat der uC 1MHz Takt und die ISP-Frequenz darf maximal ein Viertel der Taktfrequenz betragen (hier 250 kHz). :-)
Okay.. habe ich runtergedreht... es kommt immer die gleiche Fehlermeldung oder er scheint irgendwann die Verbindung zum Programmer zu verlieren ("Could not contact programmer. Check your connections"
Klar. Also offensichtlich erkennt er den Programmer an sich ja schonmal - denn ich kann die aktuelle Programmiergeschwindikeit ja auslesen und auch eine neue reinschreiben. Wenn er versucht in den Programmiermodus zu gehen kommt dann immer die Fehlermeldung. Und nach einer scheinbar nicht reproduzierbaren Zeitspanne kommt dann die "could not contact programmer" Meldung. Dann findet er das Programmiergerät auch nicht mehr und ich muss den USB- und ISP-Stecker ziehen und erst über USB neu verbinden, dann gehts wieder. Habe es auch schon nochmal unter Win XP probiert - genau das gleiche verhalten. Auch mit einem anderen Controller des gleichen Typs im Sockel das gleiche Verhalten. Ich bin etwas ratlos.
Frederik schrieb: > die "could not contact programmer" Meldung. Dann findet er das > Programmiergerät auch nicht mehr und ich muss den USB- und ISP-Stecker > ziehen und erst über USB neu verbinden, dann gehts wieder. Das hört sich irgendwie nach Kurzschluss an. Leitungen nochmal prüfen. Eventuell kannste auch mal ein Bild von deinem Aufbau hier reinstellen. :-)
Floh schrieb: > Frederik schrieb: >> die "could not contact programmer" Meldung. Dann findet er das >> Programmiergerät auch nicht mehr und ich muss den USB- und ISP-Stecker >> ziehen und erst über USB neu verbinden, dann gehts wieder. > > Das hört sich irgendwie nach Kurzschluss an. > Leitungen nochmal prüfen. > Eventuell kannste auch mal ein Bild von deinem Aufbau hier reinstellen. > :-) Insbesondere diesen Teil: > und ein Board selbst aufgebaut > Etwas seltsam finde ich, dass bei angeschlossenem ISP-Adapter > eine mit 1,5kOhm Vorwiderstand parallel an PB4 (MISO/PCINT4) > leuchtet. Auf deinem ersten Board solltest du ausser µC Widerstand am Reset Pin Blockkondensatoren alles rund um die Spannungsversorgung noch nichts weiter am µC anschliessen. Insbesondere die ISP Pins (mit Ausnahme von Reset) lass am besten erst mal frei und benutze sie ausschliesslich dazu, den ISP Programmer anzuschliessen. Erst mal muss deine Programmierstrecke stehen, dann kann man immer noch Peripherie anschliessen. Vorzugsweise an nicht ISP Pins :-)
:-D Ich habe mich größtenteils an diese Anleitung gehalten: http://www.rclineforum.de/forum/thread.php?threadid=102929&sid=456daf16dfdae2578ebcb6b9e8dd753d Ich habe bis jetzt allerdings nur die Spannungsversorgung, den ISP-Stecker, einen reset.Taster und für jeden Port einen DIP-Schalter oder LEDs angebracht. Ich werde mich wohl mal hinsetzten und auf einer kleinen Platine nur einen Sockel und den ISP-Stecker auflöten. So kann man dann ja wohl Fehler in der restlichen Platine ausschließen. Ich melde mich dann. Nebenbei: Ich finde den Support hier im Forum wirklich große klasse!
Frederik schrieb: > Ich habe mich größtenteils an diese Anleitung gehalten: > http://www.rclineforum.de/forum/thread.php?threadid=102929&sid=456daf16dfdae2578ebcb6b9e8dd753d Ui. Das ist schon recht umfangreich > Ich werde mich wohl mal hinsetzten und auf einer kleinen Platine nur > einen Sockel und den ISP-Stecker auflöten. So kann man dann ja wohl > Fehler in der restlichen Platine ausschließen. Im Grunde kannst du auch eine 'fliegende' Verdrahtung mit einem Sockel machen. Einfach den Sockel als 'Platine' benutzen. Den ISP Stecker mit ein paar Kabel da drann löten, Stromversorgung noch mit drann (die solltest du vorher überprüfen, ob da auch wirklich 5V raus kommen) und den Widerstand vom Reset Pin nach +5V. Das sollte erst mal funktionieren. Zumindest soweit, dass der Programmer den µC erkennt und auch ansprechen kann. > So kann man dann ja wohl > Fehler in der restlichen Platine ausschließen. Genau so geht das :-) Endlich mal jemand, der einsieht das es sinnlos ist, gleich mit voller Komplexität zuzuschlagen nur um dann vor einem Riesenhaufen zu stehen und nicht zu wissen, wo man mit der Fehlersuche anfangen soll. Den ISP Anschluss hast du kontrolliert, ob er auch mit der Belegung deines Kabels übereinstimmt?
Bei dem aufgelöteten ISP-Anschluss hab ich mich an die Vorgaben des Herstellers gehalten. Die entsprechen aber auch den offiziellen, also: 10-poliger Anschluss 1 MOSI 2 VCC 3 - (*) 4,6,8,10 GND 5 RESET 7 SCK 9 MISO Ich habe jetzt eine kleine Platine aufgebaut: IC-Sockel, 10 pol Stecker. Kondensatoren zwischen Pin 7 und 8 sowie 21 & 22 des IC-Sockels, 22 & 23 gebrückt. VCC vom 10-poligen auf Pin 7 und rüber auf Pin 21. GND vom 10-poligen auf Pin 8 und rüber auf Pin 22. Und einen 10k-Widerstand zwischen Pin 7 und 1. Als Spannungsversorgung nutze ich die Targetspannungsversorgung des Programmiergerätes - an Pin 1,7 und 21 liegen gegen GND auch 5V an. Andersrum auch. Das Verhalten am Rechner ist das gleiche :(
Frederik schrieb: > Ich habe jetzt eine kleine Platine aufgebaut: IC-Sockel, 10 pol Stecker. > Kondensatoren zwischen Pin 7 und 8 sowie 21 & 22 20 und 22 > des IC-Sockels, 22 & 23 uist zwar egal, aber wozu? > gebrückt. > VCC vom 10-poligen auf Pin 7 und rüber auf Pin 21. Pin 20 > GND vom 10-poligen auf Pin 8 und rüber auf Pin 22. > Und einen 10k-Widerstand zwischen Pin 7 und 1. Passt Aber ok. Du hast AVcc nicht angeschlossen. Das sollte aber nicht das Problem jetzt sein > Als Spannungsversorgung nutze ich die Targetspannungsversorgung des > Programmiergerätes - an Pin 1,7 und 21 liegen gegen GND auch 5V an. > Andersrum auch. Wenn du die Spannung am Reset Pin misst (Pin 1), müsste die von 5V auf GND gehen, wenn der Programmer loslegt.
Kannst du mal Photos von deiner Platine machen? Lötseite / Bestückungsseite (aber darauf achten, dass man auch was erkennt)
Karl heinz Buchegger schrieb: >> Ich habe jetzt eine kleine Platine aufgebaut: IC-Sockel, 10 pol Stecker. >> Kondensatoren zwischen Pin 7 und 8 sowie 21 & 22 > > 20 und 22 > >> des IC-Sockels, 22 & 23 > > uist zwar egal, aber wozu? verschrieben: 20 & 21 sind gebrückt. Deswegen auch Kondensator zwischen 21 & 22. Die Spannung am Reset PIN geht wenn ich z.B. versuche die Signatur auzulesen kurz auf 0V gegen GND, ja. Aber nur für vllt eine Sekunde, dann kommt die Fehlermeldung, dass er nicht in den "programming mode" kommt.
So ich habe meine Digicam bemüht.. besser habe ich es leider nicht hinbekommen. Das letze Bild zeigt die eigentliche Experimentierplatine, die anderen den ISP-Adapter den ich eben schnell zusammengefummelt habe. Ich hoffe es ist ausreichend erkennbar..
Frederik schrieb: > 20 & 21 sind gebrückt. Das sieht man auf dem Bild nicht ... Es sollte aber dann so funktionieren ... Irgendwo eine Lötbrücke? Gruß Jobst
Wäre sehr großer Zufall wenn das in beiden Schaltungen passiert wäre - ich habe es aber durchgemessen so gut es ging und nix gefunden. :
hm keiner ne Idee? kann es daran liegen, dass ich im AVR-Studio den 88PA-PU nicht einstellen kann und deswegen den 88PU eingestellt habe? Hat sonst jemand Erfahrungen mit dem Programmiergerät? http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&item=370419920384&ssPageName=STRK:MEWNX:IT eigentlich sollte es funktionieren. getestet habe ich mit 2 versch ATmega88PA-PU und einem 168-20PU..
Hi >kann es daran liegen, dass ich im AVR-Studio den >88PA-PU nicht einstellen kann und deswegen den 88PU eingestellt habe? Hast du mit Sicherheit nicht. PU ist lediglich die Gehäuseform. Als Typen gibt es ATMega88/88A und 88PA. MfG Spess
aaah.. das ist hilfreich. Ja stimmt.. habe den PA eingestellt.. gehen tut es trotzdem nicht...
Ich hab gestern sekbst einen Mega8 auf die SChnelle mit einem 28-Sockel an ein 'Programmiergerät' angebunden. Nachdem ich dann auch alle Verdrahtungsfehler (In den Pins verrutsch, MISO MOSI vertauscht etc.) korrigiert habe, hat es auf Anhieb funktioniert. Daher noch einaml der Aufruf: Kontrolliere die Verdrahtung. Achte darauf, ob du dich beim Flachbandkabel nicht verhaut hast. Hast du das Kabel selbst angefertigt: Wenn du es vor dich unverdreht hinlegst, schauen die Nasen der Buchsen in dieselbe Richgtung?
Ob 88, 88P oder 88PA in den Projekteinstellungen eingestellt ist ist eigentlich erst einmal egal. Kannst du inzwischen die Signatur vom Prozessor auslesen? Der Programmer scheint eine Spannungsversorgung für das Target zu haben. Ist die richtig eingestellt?
Also habs grade nochmal nachgemessen: 5V liegen zwischen 7 und 8 sowie 20 und 22 an. auch an 1 gegen GND 5V mit spannungseinbruch wenn ich versuche zuzugreifen. Die Verdrahtung habe ich auch nochmal kontrolliert grade. Ich weiß nicht ob man das auf den Fotos ausreichend erkennen kann - nach diesem http://www.mikrocontroller.net/articles/AVR_In_System_Programmer Schema angefertigt. Eigentlich sollte es alles stimmen.. ich verstehe es nicht. Vor allem wie gesagt den Programmer kann er erreichen - der Fehler müsste eigentlich also dahinter liegen. Ahja das Kabel war dabei - habe ich nicht selber gemacht.
Hmmm ... vertausch mal MOSI und MISO ... (Viel Hoffnung habe ich aber nicht ...) Gruß Jobst
Das der Programmer einen weg hat kann ich mir nicht vorstellen, daher bleibt eigentlich nur, daß der ATmega hin ist :-( Hast Du noch einen? (Wenn nicht, wird es sowieso Zeit :-) Die Teile sind zwar nicht mehr so ESD-Anfällig wie früher, dennoch kann man die damit kaputt bekommen. Bei dem nächsten uC solltest Du darauf achten, daß hier nichts passieren kann. Als reine Vorsichtsmassnahme. Gruß Jobst
Ich habe 2 verschiedene 88er und einen 168er ausprobiert.. leider mit dem selben Ergebnis...
Mal die Spannung (Vcc) am Controller gemessen? ... ich habe langsam keine Idee mehr ... Gruß Jobst
Frederik schrieb: > Also habs grade nochmal nachgemessen: 5V liegen zwischen 7 und 8 sowie > 20 und 22 an. auch an 1 gegen GND 5V mit spannungseinbruch wenn ich > versuche zuzugreifen. Ich bin auch langsam ratlos.. das kann ich doch eig nicht verwechselt haben: MOSI ist Pin 17 am Controller und geht auf Pin 1 des Steckers MISO ist Pin 18 des Controllers und geht auf Pin 9 des Steckers SCK is Pin 19 des Controllers und geht auf Pin 7 des Steckers RESET ist Pin 1 des Controllers und geht auf Pin 5 des Steckers Spannung liegt an, im Reset halten scheint er auch zu tun.. Und techn Zeichnungen sind auch immer von oben!? Also wenn ich von oben drauf gucke is links oben Pin 1 (wenn die Kerbe oben ist).. nich dass ich vom falschen Ende zähle.. dann kann ich lange suchen... Ich weiß einfach nicht wo das Problem liegt.
Nein, das ist alles korrekt, ich habe mir die Bilder genau angesehen. Und Pin 20 & 21 sollen ja auch gebrückt sein. Kann mir mal wer sagen, wo der Unterschied zwischen dem 88A und dem 88PA ist - ausser der Signatur ... ?? (Der 88 und 88A haben hingegen die selbe Signatur) Also den Takt vom Programmer mal ganz runter drehen - wär noch 'ne Idee ... Gruß Jobst
Hast Du im AVR-Studio den richtigen Programmer ausgewählt? Sollte wohl STK500 an einem COM-Port sein, wenn ich das auf der eBay-Seite richtig gesehen habe. Probier mal während dem Zugriff mit dem Programmer den RESET zu betätigen. Hat bei mir mal aus unerfindlichen Gründen geholfen als ich Probleme hatte. Das wäre dann zwar nicht die Lösung des Problems, würde aber evtl. bei der Fehlerdiagnose weiter helfen und einen ersten Kontakt zum µC herstellen. So wars jedenfalls mal bei mir. Ich hatte übrigens am Anfang auch viele Probleme mit diversen Programmern und ewig gebraucht, bis die erste Verbindung funktionierte. Habe mir dann letztendlich auf vielfachen Rat den original AVRISP mkII gekauft und seither nie wieder Probleme gehabt. Also wenns am Geld nicht liegen soll, dann schau Dir mal den bei Reichelt an. Dann kannst Du Dir wenigstens sicher sein, dass es am Programmer nicht liegt. http://www.reichelt.de/?ACTION=3;ARTICLE=45040;PROVID=2402 Mehr fällt mir leider auch nicht ein. Bin auch noch ziemlich am Anfang der Materie. Die Oberspezialisten hier mögen mir mein DAU-Vorschläge nachsehen. Aber bisher hat ja alles andere auch nicht zum Erfolg geführt. Viel Glück MB
Jobst M. schrieb: > Also den Takt vom Programmer mal ganz runter drehen - wär noch 'ne Idee > ... Habe gerade gesehen, daß Du das ja schon getan hast ... Langsam habe ich doch den Programmer im Verdacht ... Vielleicht mal eben kurz dieses Ding hier aufbauen ... http://www.blafusel.de/misc/my_first_mc.html#4 Dein Controller benötigt dann allerdings wieder eine eigene Stromversorgung. Gruß Jobst
Jobst M. schrieb: > Nein, das ist alles korrekt, ich habe mir die Bilder genau angesehen. Hab ich auch. Und ich seh auch nichts mehr. AVcc ist nicht abgeschlosssen, sollte aber fürs erst keinen Unterschied machen. Wenn das Kabel korrekt konfektioniert ist, dann sollte das eigentlich gehen. Das 3 µC nicht funktionieren halte ich eher für unwahrscheinlich. Was machen denn die Schalter da am Programmer?
Karl heinz Buchegger schrieb:
> Was machen denn die Schalter da am Programmer?
In der Beschreibung steht darüber:
Über zwei DIL-Schalter ist sogar eine Target-Spannungsversorgung
möglich. Diese ist wahlweise auf 5V oder 3,3V einstell- sowie zu- und
auschaltbar.
Kann es nicht auch sein, dass über den Programmer zu wenig Strom kommt,
oder dass eben die USB-Schnittstelle zu wenig Strom liefert? Was hängt
sonst noch am USB? Ist da nur der Programmer dran? Wie lang ist das
USB-Kabel? Benutzt Du einen USB-Hub? Kannst Du mal einen anderen
USB-Port oder sogar einen anderen Rechner ausprobieren?
Gruß MB
Hallo, also danke für die viele Hilfe - ich habe das Problem gerade gefunden und ich könnte ausrasten. Das beim Programmer mitgelieferte 10-polige Flachbandkabel war kaputt - auf Pin 1 kam nichts durch, wie ich festgestellt habe - mit einem selber angefertigten Kabel funktioniert alles. Aber nochmals danke für die Hilfe! top Support!
Na super - sowas liefern die mit. Ich kenne das Problem zwar, aber ich hätte hierbei gedacht, daß die die Kabel vorher evtl. testen ... seufz Na, dann kann es jetzt aber los gehen :-) Gruß Jobst
Freddy schrieb: > Das beim Programmer mitgelieferte 10-polige Flachbandkabel war kaputt - > auf Pin 1 kam nichts durch, wie ich festgestellt habe grrrrrrr. Wenn du einen Schraubstock hast, probier mal die Stecker ganz vorsichtig nachzudrücken. Mit ein wenig Glück hat sich nur die Schneidklemmeinrichtung nicht richtig durch die Isolierung geschnitten. Wenn geht vorher den Bügel abnehmen. Aber vorsichtig! Die Haltezungen an den Dingern brechen gerne ganz schnell und sind besch... aufzukriegen.
Ja nun egal.. hab mir selber ein neues gemacht und das mitgelieferte schmeiß ich ganz schnell in den Müll :) Naja nun kanns los gehen..
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.