Archiv verlassen und diese Seite im Standarddesign anzeigen : Welchen AVR-Controller wählen? (für Anfänger)
jeffgen987
25.10.2005, 19:07
Hallo Leute,
wie oben beschrieben bin ich ein Anfänger in Sachen AVR (wäre froh, wenn nur in Sachen AVR :lol: ).
Mein Problem ist: Ich kann mich nicht entscheiden welchen Controller ich für Lernzwecke und dann später auch zum Einsetzen nehmen soll.
Meine Anforderungen: So einfach wie möglich gestrickt und so billig wie möglich. Sollte 10 Eingabe/Ausgabe pins haben.
Habe was vom ATmega8 gehört. Ist er dafür gut geeignet?
Danke im Voraus!
Eugen
dann geht ein mega8, der hat 23 ein/ausgänge und für den anfang genug speicher und eigentlich auch ne recht universelle ausstattung: rs232, analog-digital-wandler, i2c, PWM... ich verwende ihn gern für kleinere sachen, wo sich kein mega16/mega32 lohnt.
Hi!
Genau, da kann ich nur zustimmen!
Ich habe mit dem Vorgänger angefangen, dem AT90S4433 8habe sogar noch 2 fabrikfrische Nostalgie-4433 ;) )
Ich denke der Mega8 ist einer der besten Einsteiger-Prozzis. Er ist auch in vielen AVR-Tutorials zu finden.
Desweiteren gehts im AVR-Mikrocontroller Lehrbuch von Roland Walter ausschließlich über den Mega8.
Der M8 ist also eine gute Wahl.
VLG Tobi
pebisoft
25.10.2005, 20:01
.........Mein Problem ist: Ich kann mich nicht entscheiden welchen Controller ich für Lernzwecke und dann später auch zum Einsetzen nehmen soll.......
du kannst auch den avr16-16mhz nehmen, der preisunterschied ist unwesentlich(reichelt). kannst ihn auch schon intern auf 8mhz laufen lassen.
da du ihn nach deinem lernen später einsetzen willst, kann ich dazu raten.
wenn man erst einmal geschnuppert hat mit den sensoren und leuchtdioden(blink,blink), wirst du bald mit den anschlüssen am avr8 am ende sein.
mfg pebisoft
ps: das buch von wolfgang trampert (avr-risc mic)reicht vom anfänger bis zum profi. ist zwar teuer (69 euro)aber lohnt sich.
jeffgen987
25.10.2005, 22:16
Hallo Leute,
danke für die blitzschnelle Antworten.
@pebisoft
Der Vorschlag war gut. Nur wie ich mich erkundigt habe ist beim ATmega16 die Pinbelegung ein bisschen komisch (durcheinander). Naja ich werd damit wohl leben müssen.
Mal folgendes: Ich habe gerade gemerkt, dass neben den einzelnen Eingängen vom ATmega16 neben PCINT auch was anderes steht:
http://www.elektro-nix.de/assets/own/tz_mega16_dip.jpg
So weit ich das verstehe heißt PCINT ein ganz normaler E/A und das andere bedeutet eine besondere Funktion. Und ist das richtig, dass der Strich überm RESET eine Negation bedeutet?. Kann mir das bitte jemand erklähren?
Gruß
Eugen[/img]
caliber87
25.10.2005, 22:47
Hallo Jeffgen987,
ich habe auch gerade mit den AVR´s begonnen.Dafür bestellte ich mir das myavr-Board. Hier ist ein Mega8 drauf.Ich kann dieses Board nur empfehlen.
Schau mal auf die Seite www.myavr.de .Die haben gerade eine Rabattaktion.
Zu deinem letzten Beitrag: Ich bin zwar neu in der Materie, aber das gezeigte Bild ist doch von einem Mega8. Mit dem PCINT hast du wahrscheinlich recht.(habe ich zum ersten mal gesehen)Mit den anderen Funktionen bin ich sicher:z.B RXD und TXD sind für die serielle Schnittstelle, INTx sind externe Interrupts,ADCx sind die Analogen Eingäne.
pebisoft
25.10.2005, 23:17
ein avr16 hat 40 pins und der avr8 hat 28 pins.
mfg pebisoft
@jeffgen987
So weit ich das verstehe heißt PCINT ein ganz normaler E/A und das andere bedeutet eine besondere Funktion. Und ist das richtig, dass der Strich überm RESET eine Negation bedeutet?. Kann mir das bitte jemand erklähren?
Ich habe leider keine Ahnung, was das PCINTxx mit dem auf deinem Bildchen alle Pins bezeichnet sind bedeuten soll.
In meinen Datenblättern die ich bei Atmel runtergeladen sind die Pins auch nicht mit PCINT beschriftet.
Ansonsten liegst du aber richtig, du kannst fast jeden Pin als digitalen E/A verwenden. Die meisten Pins haben zusätzlich noch eine oder mehrere Sonderfunktionen die man nutzen kann aber nicht muss.
In den Datenblätter auf www.Atmel.com sind die Sonderfunktionen ganz gut ersichtlich.
Was der Strich über dem Reset-Pin bedeutet, weiss ich nicht. Praktisch ist es so, dass der Controller resetet wird, wenn man den Reset-Pin auf Masse zieht. Könnte also durchaus sein, dass der Strich eine Negation bedeuten soll.
In die Datenblätter reinzusehen ist sicher eine gute Idee - jedenfalls wenn es die richtigen sind ;-)
Ich würde es mir aber am Anfang nicht gleich zu schwer machen indem du versuchst alles was in den Datenblättern steht zu verstehen. Die Grundschaltung für die ATMegas findest du hier im Forum und auch auf vielen anderen Webseiten. Die kannst du einfach nachbauen.
Dann kannst du erst mal ein bischen mit den digitalen Ports rumexperimentieren und dich über die Sonderfunktionen infromieren, wenn du sie brauchst.
Was die Frage Mega 8 oder Mega 16 betrifft würde ich den Mega 16 nehmen. Die Pins die er mehr hat musst du ja nicht gleich zu Anfang beschalten, wirst dich aber früher oder später drüber freuen.
Einen Schaltplan für den Mega 8 auf den Mega 16 umzusetzen ist kein Problem. Da die Pins gleich bezeichnet sind, brauchst eigentlich nur beim Löten die beiden Skizzen mit der Pinbelegung vergleichen.
Was die Programmierung angeht ändert sich auch nicht viel, in Bascom brauchst du nur den richtigen Controller angeben und in C musst du glaube ich auch nur eine andere Headerdatei einbinden.
In Assembler ist es wahrscheinlich ein bischen komplzierter, aber verglichen mit dem Schwierigkeitsgrad von Assembler selbst wird die Umsetzung von Mega8 auf Mega 16 sicherlich auch kein Akt sein.
Wenn du wirklich nur 10 E/A Pins benötigst und die billigste Variante suchst, könnest du auch einen AT90S2313 nehmen.
Für Lernzwecke würde ich den aber nicht nehmen. Der hat viel weniger Speicher, keine A/D Ports, weniger Interrupts usw, d.h. du kannst damit bei weitem nicht soviel machen/lernen wie mit den ATMegas.
jeffgen987
26.10.2005, 07:14
Hallo Leute,
@all
Danke für die Hilfe.
@recycle
Dieses Bild habe ich von einem Verkäufer, der bei eBay die megas verkauft. Hmm.... Mir kam die Pinbelegung auf dem Bild gleich komisch vor, weil alle Pins irgendwie ducheinander sind (siehe Bild oben).
Das Datenblatt von www.atmel.de sieht komplett anders aus.
Mal eine andere Frage: Wo bekomme ich den ATmega16 am billigsten? Am liebsten wäre mir da, wo ich noch das ganze Zubehör kaufen kann (um Porto zu sparen), wie z. B. den Sockel.
Bei eBay würde der ATmega16 3,20€ kosten, aber wenn die Verkäufer schon die falschen bilder drin haben...
Gruß Eugen
Jahn Kohlhas
26.10.2005, 09:03
Hallo Jungs,
also das bild da oben ist definitiv kein ATmega16 sondern ein ATmega168 ( oder 48/88 ) also einer der nachfolgetypen des mega8 ... eine der besonderheiten dieser typen ist das soi ziemlich jeder eingang jetzt INT-fahig ist (PCINT) preiswert bekommst du diese bei www.reichelt.de oder auch bei www.myavr.de ... aber ich würde von diesen neuen controllern am anmfang abraten da die registerstruktur von atmel in den neuen controllern umgestellt wurde und so ziemlich kein tutorial damit abgearbeitet werden kann... NIMM den MEGA8!
gruß jahn
jeffgen987
26.10.2005, 14:00
Hallo Jahn,
rätst du ab von dem mega168/162 usw. oder auch vom mega16?
Wer unbedingt was loswerden will, nur zu.
Gruß
Eugen
Hallo Eugen,
als Anfänger kannst Du mega8 oder mega16 nehmen. Wenn Du den mega8 nimmst, hast Du den Vorteil, dass Du viele Anleitungen einszueins nachbauen kannst. Beim mega16 musst Du die andere Belegung der Pins beachten. Du solltest am Anfang nur nicht einen der neuen Typen nehmen.
Davon abgesehen, so teuer sind die megas nicht.
Wenn Du auch Anfänger in Sachen Elektronik bist, würde ich Dir aber empfehlen, einen Bausatz oder ein fertiges Entwicklungsboard zu kaufen.
Gruss
Frank
jeffgen987
26.10.2005, 22:40
OK Leute,
ich danke euch allen für die schnellen und hilfreichen Antworten.
Ich glaub bald tauchen wieder Fragen auf :-)
Aber dazu ist der Forum ja da *g*
Gruß @ll
Eugen
SprinterSB
27.10.2005, 12:09
Wie gesagt, dein Bild von oben zeigt einen ATMega88 mit den PCINT (Pin Change INTerrupt). Der Mega88 ist nicht als Ersatz für den Maga 8 konzipiert. Viele Regsiter haben die Position/Funktion gewechselt, übrigens auch manche Fuses. Mit dem Mega8 bist du am Anfang auf jeden Fall besser beraten als mit dem Mega88, und hast bessere Unterstützung und mehr Beispiele.
jeffgen987
27.10.2005, 15:26
Vielleicht lieber doch einen maga16, weil der mega8 komiplizierte Pinbelegung hat.(wie ich es in den Original-data-sheets von www.atmel.com gesehen habe)
Jahn Kohlhas
27.10.2005, 16:05
Hallo,
also ich bin nicht der Meinung das der mega8 komplizierter ist als der mega16. Im Gegenteil der mega8 ist durch seine geringere PIN-Zahl kompakter und deshalb auch die Nummer eins der Einstiegsmodelle.
Gruß Jahn
jeffgen987
27.10.2005, 20:02
Hallo Jahn,
ich meine nicht die Anzahl sondern die Reihenfolge der Ports bei mega8. Die stimmt mit der vom Bilde oben fast o. komplett überein. Z. B. PC6 und gleich danach PD0. Es ist drucheinander.
Oder liege ich falsch? (habe die Datasheets aber direkt von www.atmel.com)
Gruß Eugen
ich meine nicht die Anzahl sondern die Reihenfolge der Ports bei mega8. Die stimmt mit der vom Bilde oben fast o. komplett überein. Z. B. PC6 und gleich danach PD0. Es ist drucheinander.
Ja, die Pins beim ATMega8 sind etwas durcheinander.
Aber wenn du beim Aufbau deiner Schaltung z.B. irgendein Kabel an PD3 anlöten müsst, guckst du einfach kurz im Datenblatt nach wo PD3 ist und lötest dein Kabel an - fertig.
Ob die Pins von einem Port alle schön nebeneinanderliegen oder kreuz und quer verteilt sind ist da doch eigentlich gleich kompliziert, bzw. gleich unkompliziert.
Es sei denn du willst die Pin-Belegung unbedingt auswendig lernen - dann ist es vielleicht etwas komplizierter, wenn sie so wie beim ATMega8 angeordnet sind.
Wenn ich eine Schaltung auf Lochplatine zusammenbastel, drucke ich mir die Pinbelegungen der ICs immer vorher aus, und habe mir auch angewöhnt immer noch mal auf dem Ausdruck nachzusehen bevor ich den Lötkolben ansetze.
Mag sein, dass ich besonders dämlich bin, aber immer wenn ich dachte ich könnte die Belegung von irgendeinem IC auswendig, habe ich mich irgendwo vertan. Den Fehler dann anschliessend zu suchen - falls die Schaltung nicht gleich in Rauch aufgeht - ist ziemlich mühselig und irgendetwas auf einer fertigen Platine umzulöten macht auch wenig Spass.
Ich würde wie gesagt einen ATMega16 empfehlen, aber so gross, dass es sich lohnen würde tagelang über der Entscheidung zu brüten ist der Unterschied zum ATMega8 auch nicht.
Zum herumexperimentieren und lernen reichen beide völlig aus und vom Preis tun sie sich auch nicht viel.
jeffgen987
27.10.2005, 22:08
OK, :-)
@recycle
Danke für die blitzschnelle Antwort. Ich schätze mal ich fange die ganze Geschichte mit einem mega8 an.
@alle
Danke für die Tipps
Für die, die nachlesen, habe ich hier eine kurze Zusammenfassung der Vor- und Nachteile von ATmega8:
+ fast doppelt so billig wie ein mega16
+ in den foren am meisten besprochen
+ in den meisten Tutorials behandelt
- der mega8 hat weniger pins als mega16
- komische Portreihenfolge
Fazit: Wer gerne Tutorials ließt und nicht so viel Geld ausgeben will, für den ist ATmega8 bestens geignet! ;-)
SprinterSB
28.10.2005, 15:29
Wobei noch zu sagen bleibt, daß PC6 normal nicht verwendet werden kann. Das geht nur über Fuses. PC6 kann nur verwendet werden, wenn man RESET deaktiviert. An den Mega8 kommt man dann nur noch über nen Parallel-Progger dran -- nicht zu verwechseln mit einem seriellen Progger, der am Parallelport hängt. So hat sich schon manch einer aus seinem Mega8 ausgesperrt, weil er den PortC.6 nutzen wollte...
Die Portreihenfolge ist seltsam, daß stimmt. AUch die Lage von VCC und GND. Aber sie ist nun mal so. Layoutprogramme wie Eagle erleichtern die Handhabung und reduzieren Fehlerquellen.
Wenn es eng wird auf dem Board und man anderwärtig nicht mehr alles routen kann, muss man eh zu den Ports hin routen, die man noch erreichen kann um das Layout einfach zu halten. Den Rest macht die Software.
Meiner Meinung nach ist auch ein Mega128 als Einsteigermodel gut geeignet!
Alle nicht benötigten Pins und internen Funktionen müssen ja nicht benutzt werden.
Es ist ärgerlich, sich einen Tiny15 zu kaufen, der später nur in der Ecke liegt weil er zu wenig Pins hat. Dann kauft man einen Tiny 26 und merkt irgendwann, der Speicher ist zu klein.
Bei Mega 8 ist der Speicher auch irgendwann voll und die Pins reichen nicht.
Bleiben noch Mega16 oder Mega32.
Dann hat man mal wieder am falschen Ende gespart weil man nicht von anfang an ein paar Euro mehr ausgeben wollte.
Nochmal deutlich gesagt, ich rede hier von AVR's für Experimente!!! Für eine spätere komplette Schaltung kann/muss man sich sowieso den passenden AVR aussuchen. Aber solange kann man ja einen nehmen, der all das schon kann, was der spätere auch können muss und sieht was man braucht.
Fazit: Wer gerne Tutorials ließt und nicht so viel Geld ausgeben will, für den ist ATmega8 bestens geignet!
Verstehe ich nicht. Der Unterschied sind ja nur ein paar Euro. Du brauchst doch eh noch weitere Bauteile. Mit 4€ wirst du also nicht dabei sein.
Und es geht hier ja nicht um Serienproduktion wo man auf jeden Cent achten muss!
Und was ein Mega8 kann, können ein Mega32 und Mega128 auch!
jeffgen987
29.10.2005, 12:35
@Marco78
das sind ein paar Euro, die ich nicht habe. Deswegen versuche ich an jeder ecke zu sparen. Ein mega16 kostet fast doppelt so viel wie ein mega8. So weit ich jetzt plane werden meine Projekte für die nächsten 6 Monate keinen besseren als mega8 brauchen.
Hi,
im Prinzip gebe ich Marco Recht.
Problem beim M128 ist, daß es ihn nur in PLCC oder TQFP gibt.
Also würde ich eher zum MEGA32 tendieren, aber nur wegen dem DIL Gehäuse. Genug Pins, genug Speicher hat er erst mal.
Wobei ich davon ausgehe, daß er den Mega nicht gleich zerschießt ;)
Das kann am Anfang ja mal passieren und da tut ein MEGA8 nicht ganz so weh, was wieder ein Argument für den "kleinen" ist ;)
Hat eben alles seine Vor und Nachteile.
Gruß
Christopher
das sind ein paar Euro, die ich nicht habe.
Dann musst du dir ggf. ein günstigeres Hobbie suchen.
Nur mit einem AVR ist es ja nicht getan. Du brauchst mind. eine Spannungsquelle, einen Taktgeber und sinnvoll wären ein paar LEDs und Taster. Die kosten auch alle Geld.
Und das ganze muss irgendwie verdrahtet werden. Einfach die Drähte anöten und auf den Tisch legen hält auch nicht lange.
Ich glaube ja, das man als Schüler, wenn man nebenbei nicht arbeitet nicht so viel Geld hat, aber wenn du weisst, das du einen Mega8 haben willst, warum fragst du denn, welchen du nehmen sollst?
Ich dachte auch schonmal für ein Projekt reicht ein Mega8, aber schon alleine weil der keinen zusammenhängenden Port hat, habe ich dafür einen Mega16 genommen.
darwin.nuernberg
29.10.2005, 13:21
Ich mach mal wieder Eigenwerbung,
Wenn Du ein Board zum nachbauen sucht dann schau mal hier:
Meine Protobed Serie:
1. Protobed ATmega16 ATmega32 in RNB Standard https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=4890
2. ApplicationBoard1 für Protobed Mega 16 -32 https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=5601
3. Protobed Roboter Silvester https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=5862
4. Protobed AT mega 8 RNB https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=6220
Was (wenn ich es nicht übersehen habe) nicht so richtig heraus kommt:
Die INT- Eingänge sind dafür da:
Du kannst auf einen Pegel (Signal), welches an diese spezielle Eingänge anliegt direkt reagieren, wenn du im Programm (z.B. in Bascom) dies so vorgesehen ist.
Ansonsten kann /darf dieser Pin ganz 'normal' genutz werden.
Somit kannst Du unabhängig von der Programmstruktur (z.B. Endloschleifen) dann auf ein Ereigniss reagieren und nur dann zu einer Subroutine springen
INT = Interrupt = Unterbrechung
Ist Deine Subroutine fertig kansst Du das Hauptprogramm dann an der zuvor verlassenen Stelle wieder aufnehmen oder was ganz anderes starten oder beenden.
Ähnlich funktioniert der Reset, nur dass dieser ultra hart einen Neustart des gesamten Programmes realisiert.
Frage an alle:
kann man einen RESET eingentlich maskieren/verbiegen?
Frage an alle:
kann man einen RESET eingentlich maskieren/verbiegen?
Klar, aber dan hat er keinen Kontakt mehr in der Fassung :D
Sorry!
Wie meinst du das?
Nochmal zum Thema:
Wenn du dir einen Controller aussuchst, musst du auch schauen, das er nicht nur genug Speicher und Pins hat, sondern auch genug Interrupts, PWM-Kanäle und sonstiges was du evtl brauchst!
darwin.nuernberg
29.10.2005, 13:42
Naja ich dachte so:
Bei auslösen des Reset wird in die sagen wir mal Kaltstartroutine gesprungen,
alle Variabeln/Speicher (RAM) gelöscht und das Programm neu gestartet.
Früher war es bei den Programmieren ein beliebtes Spiel, den Warmstart-Reset so zu verstellen,
dass eben diese Routine nicht angesprungen wird sondern eben eine andere (eigene) ausgefürt wird.
(Bösartige Programme (Viren) haben so z.B. die Diskette (wenn Du sowas noch kennst *LOL* ) gelöscht)
Der Interrupt/Restet wird also maskiert und verweist auf eine gänzlich andere Funktion als die ursprünglich vorgesehene.
Nun ist Reset aber doch ein Spezialfall.
Je nachdem wie fest der Reset in der Hardware verankert ist.
Ich dachte da z.B. an die Amigas (und C64/VC20) da war das gang und gäbe statt eines "warmstartes" eben eine andere Funktion (Programmstart) auszuführen.
Klar geht das. Einfach Bootloader aktivieren.
Dann wird beim Reset die Adresse angesprungen.
jeffgen987
29.10.2005, 13:47
@darwin.nuernberg
danke für die Links, die könnten mir bei späteren Unklarheiten weiterhelfen.
@Marco78
Nicht dass du mich falsch verstehst. Ich will schon Geld in die Sache investieren. Ich versuche als Schüler ohne Nebenverdienst bloß etwas Geld sparen. Natürlich will ich nicht an falschen Ecken sparen.
Sagts mir einfach welchen AVR ich mir am beste holen soll? Dieser sollte aber nicht teuerer als 10,-€ sein.
Und Marco78 damit wir uns verstehen: Man muss nicht alles kaufen. Man kann verschiedene Bauteile z. B. von uralten PCs und kaputten Drucker uvm. holen
Gruß Eugen
Ich will schon Geld in die Sache investieren.
Ich habe dich nicht falsch verstanden. Ich wollte dir auch nicht vorwerfen, das du nichts ausgeben willst! Ich habe ja auch geschrieben, das man als Schüler, der nebenbei nicht arbeitet nicht so viel Geld zur Verfügung hat.
Aber es gibt beim Mega8 nicht alle Hardwaregebundenen Funktionen, die ein Mega16 hätte. Evtl brauchst du die mal. Ich selbst habe das auch schon erlebt.
Fakt ist: Einen Hardwareinterrupt kannst du nicht mit Software ersetzen.
Und Marco78 damit wir uns verstehen: Man muss nicht alles kaufen. Man kann verschiedene Bauteile z. B. von uralten PCs und kaputten Drucker uvm. holen
Das verstehe ich auch. as mache ich selbst nicht anders. Wenn du mein Arbeitszimmer sehen würdest :D
Ich habe auch keine Lust, 5 Tage auf eine Bestellung zu warten, nach einer Woche wieder was zu bestellen, andauernd Versand zu bezahlen und mich zu ärgern, wenn was Nachgeliefert werden muss, wenn ich es selbst in 10 Minuten (mit suchen) ausgelötet habe.
@jeffgen987
irgendwie kommt mir das was dir hier jetzt passiert sehr bekannt vor ;-)
Man will sich irgendwas kaufen, möglichst günstig, denn man will ja erst mal klein anfangen.
Dann schaut man sich um, informiert sich und lässt sich beraten.
Mit jeder neuen Info kommen dann wieder neue "Geräte" ins Spiel die noch irgendeine Funktion mehr haben und noch ein bischen teurer sind.
Igendwann muss man sich dann mal wieder zurückbesinnen, was man ursprünglich eigentlich haben wollte.
Bei dir war das ein möglichst günstiger Microcontroller mit mindestens 10 E/As.
Da bist du mit dem ATmega8 im Prinzip schon weit drüber hinaus, mit einem ATMega16 erst recht.
Ein ATMega32 oder sogar ein ATMega 128 sind dann aber schon völlig jenseits deiner ursprünglichen Ansprüche, liegen auch preislich weit darüber und sind von der Bauform (PLCC oder TQFP) gar nicht mehr für einen Anfänger geeignet.
Ein paar Komponenten, z.B. Programmieradapter, Netzeil usw. brauchst du für jeden AVR Microcontroller. Die kannst du auch später weiterverwenden, falls du auf einen grösseren Typen umsteigst.
Die paar Bauteile, Lochplatine Kabel usw. die du für eine Grundschaltung für einen ATMEga8 brauchst kosten ein paar Euro.
Wenn du Spass an der Sache findest und später auf einen grösseren Controller umsteigst, waren die paar Euro trotzdem nicht verschwendet, weil du damit gelernt hast und den kleinen Controller trotzdem weiterverwenden kannst.
Wenn du jetzt gleich mit einem wesentlich teureren und grösseren Contoller anfängst, kannst du da auch erst mal nicht mehr mit lernen. Falls sich aber herausstellt, dass dir die Sache doch keinen Spass macht, hast du mehr Geld in den Sand gesetzt.
Fang lieber erst mal "klein" an. Dann lernst du gegebenenfalls auch sparsam, bzw. vernünftig mit den Resourcen umzugehen.
Das ist schliesslich auch eine ganze wesentliche Disziplin bei der Entwicklung elektronischer Schaltungen.
jeffgen987
29.10.2005, 19:01
@recycle
Ich glaube ich entscheide ich jetzt für den ATmega16. Ich glabe, dass ich bei dem auch nach 3 Monaten noch nicht an die Grenzen gekommen bin.
Außderdem ist das nicht nur ein Hobby, ich will nächstes Jahr "technische Informatik" studieren. Und da kommt mir dieses Hobby auf jedenfall zugute.
@Marco78
Hättest du unter mein Bett geschaut ;-) würde es dich sicher an dein Arbeitszimmer errinern.
Fazit: Ich nehm lieber den ATmega16
Gruß
Eugen
Na das ist doch ein guter Kompromiss.
Viel Spaß damit!
Gruß
Christopher
Hättest du unter mein Bett geschaut würde es dich sicher an dein Arbeitszimmer errinern.
Dann hast du also ein Hochbett ;)
http://www.elektro-nix.de/pi1074897291.htm?categoryId=3
http://cgi.ebay.at/ATmega16-16PI-Atmel-AVR-Controller-8Bit-DIP-NEU_W0QQitemZ5818352224QQcategoryZ12949QQrdZ1QQcmd ZViewItem
Einen MAX232 o.ä. kannst du dir erstmal (oder überhaupt) sparen. Such mal im Forum nach AVR910. Da im Schaltplan ist eine Pegelanpassung von RS232 auf TTL.
Das sind nur 10 Bauteile, die du sicherlich überall finden wirst. Die tatsächlichen Werte der Widerstände sind dabei unkritisch. Und die Transistoren müssen im Prinzip nur die richtige Polarität haben.
Ein 74HCT244 findet man evtl auf alten! PC-Karten oder richtig alten (Z80) Mainboards.
An gleicher Stelle wirst du bestimmt auch einen Quarz oder Quarzoszilator finden.
jeffgen987
30.10.2005, 09:47
@Marco78
Wenn du den zweiten Link anschaust, dann siehst du, dass das schwarz-weiße Bild unten nicht mit dem AVR übereinstimmt. Man sieht sofort, dass es ein mega8 ist. Hier dieses Bild:
http://www.elektro-nix.de/assets/own/tz_mega16_dip.jpg
Ich weiß nicht, ob ich diesen Käufer vertrauen kann, dass er mir das richtige hinschickt, wenn ich was bestell.
Der erste Link ist von seinem normalen Webshop. Ich glaube ich besorg mir die AVRs beim Reichelt. Kosteten nur 90ct mehr als beim Elektro-Nix, aber ich bin mir sicher, dass alles richtig verläuft und ich das richitige bekomme.
Jetzt zum Rest: Habe vom einem Freund eine uralte Netzwerkkarte bekommen. Die hat einen Qszilator (der für einen ATmega16 leider zu schnell ist, weil 20MHz) und noch haufen anderes, nützliches Zeug drauf.
Mal folgende Frage: Was ist der Unterschied zwischen einem Oszilator und einem Quarz?
Gruß
Eugen
darwin.nuernberg
30.10.2005, 09:50
@Marco78
das sind ein paar Euro, die ich nicht habe. Deswegen versuche ich an jeder ecke zu sparen. Ein mega16 kostet fast doppelt so viel wie ein mega8. So weit ich jetzt plane werden meine Projekte für die nächsten 6 Monate keinen besseren als mega8 brauchen.
Was Marco78 meinte ist genau der springende Punkt http://mitglied.lycos.de/UweHerzog/SpringenderPunkt.GIF
Zum experimentieren darf es lieber etwas mehr sein, irgendwann erreicht man den Punkt wo es an der einen oder anderen Ecke fehlt. (Das ist so eine Art Naturgesetz)
Natürlich reicht der Mega8 für kleine Anwendungen, ich selbst habe mit einem AT90S2313 angefangen.
Nur ist dann noch ein Display, ein Motortreiber und ein Proximity/Magstripe leser hinzu gekommen und es wird eher mehr als weniger, also habe ich mich für den Mega32entschieden, für die Prototypen.
Dann in der Finalisierung bin ich wieder auf einen Maga8 hinunter (nicht zuletzt auf Platzgründen (ich bevorzuge DIL Fassungen und da ist der Mega 32 leider der grösste Prozessor welcher (derzeit) in DIL oder PLCC angeboten wird.
Sollten ja auch nur Tipps sein.
Geld was man nicht hat, kann man auch nicht sparen.
Du willst ja vermutlich gleich was machen und nicht erst in Zukunft.
Zudem kann so ein Chip auch mal kaputt gehen.
jeffgen987
30.10.2005, 10:17
@darwin.nuernberg
Wie schon gesagt, ich fange mit einem ATmega16 an. Kostet bei Reichelt nur 4,15€ und dürfte für die nächsten paar monate reichen.
Die Entwicklungsplatine löte ich sowieso selber. Dafür nehm ich gleich die größte die es bei Reichelt gibt. So kann ich das ding dann auch erweitern. Und beim Umstieg auf einen anderen AVR Löte ich einfach die richtige IC-Fassung dazu. ;-)
Irgendwann hab ich dann wohl die hälfte einer Billigversion von der STK500 :-)
Gruß
Eugen
Reichelt hat aber auch einen Mindestbestellwert von 10€ (oder evtl mehr. ich kaufe da wenn, soviel das ich sowieso über die Grenze komme).
In Onlineshop's sieht man öfters, das nur Symbolbilder verwendet werden. In meinen Augen ist das nicht immer ein Zeichen für schlechten Service. Ich habe bis jetzt nur gutes über elektro-nix gelesen und auch selbst mal Email-Kontakt zu denen gehabt. Also ich würde da bestellen.
Ich habe es bis jetzt nur noch nicht, weil es sich noch nicht ergab.
Ein Quarz benötigt am AVR zwei Pins und zwei Kondensatoren. Die Kondensatoren werden benötigt, das er anschwingt.
Ein Quarzoszilator benötigt +5V und GND und erzeugt selbst auch ein 5V Signal. Damit könnten sogar mehrere AVRs getaktet werden. Angeschlossen wird er am AVR nur an XTAL1.
Idr sind die auch genauer als ein Quarz und nicht ganz so empfindlich gegen Temeraturschwankungen.
Die 20MHz könnte ein AVR verkraften. Wenn du ein Logik-IC hast, kannst du dir auch einen Frequenzteiler bauen. Dann hast du 10MHz. Beim NAND z.B. ein Eingang auf Masse legen und den anderen am Oszilator anschliessen. Am Ausgang hast du dann 10MHz. Für erste Versuche reicht das.
SprinterSB
30.10.2005, 10:56
Habe vom einem Freund eine uralte Netzwerkkarte bekommen. Die hat einen Qszilator (der für einen ATmega16 leider zu schnell ist, weil 20MHz) und noch haufen anderes, nützliches Zeug drauf.
Mal folgende Frage: Was ist der Unterschied zwischen einem Oszilator und einem Quarz?
http://www.reichelt.de/bilder/web/B400/!HC49U.jpg
Ein Quarz ist ein Quarz, nix weiter. Er besteht aus einem Quarzplättchen/scheibchen, Kontaktierungen und einem Gehäuse.
Um ihn zu betreiben, braucht man eine Treiberschaltung die man selber aufbauen kann. Will man einen µC damit takten, kann man den Quarz oft direkt an den µC hängen, falls er eine Treiberstufe dafür mitbringt. Bei AVRs ist das der Fall. Die Fuses müssen darauf angepasst werden. Quarze gibt es für viele verschiedene Frequenzen. Bei niedrigen Frequenzen (zB 32.768 kHz) werden sie in Parallelresonanz betrieben, bei höheren Frequenzen in Serienresonanz. Bis Mitte 20MHz sind die Quarze Grundtonquarze. Darüber verwendet man Obertonquarze, d.h. es wird nicht die Grundschwingung des Quarzes genutzt, sinderen ein ungerader Oberton. Ein 100MHz Quarz ist mit sicherheit ein 20MHz Quarz, der beim 5.Oberton betrieben wird; man muss niedrigere Resonansfrequenzen also rausfiltern/unterdrücken.
http://www.reichelt.de/bilder/web/B400/!OSZI.jpg
Quarzoszillatoren sind ICs mit Quarz. Sie haben eigene Spannungsversorgung und liefern ein TTL-Signal im angegebenen Takt. Teilweise temperaturkompensiert, für bessere Genauigkeit. Sie snd in der Lage, grössere Schaltungen mit einem Takt zu versorgen, da da oft viele ICs ein Taktsignal brauchen.
AVRs kannst du mit folgenden Takten betreiben:
Interner RC-Oszillator (-->Calibrated Internal RC Oscillator)
+ ohne Extrakosten und Platzbedarf
- nicht sehr genau, nur für 1, 2, 4, 8, MHz
Externer RC-Oszillator (-->External RC Oscillator)
+ billig, platzsparend
- nicht sehr genau
Keramik-Oszillator (-->Ceramic Resonator)
+ teilweise preiswerter als Quarz und mit integrierten Phasendreher-Kondensatoren
- nicht so genau wie Quarz
Quarz (-->External Crystal/External Low-frequency Crystal)
+ genauer
- teurer als RC-Oszillator und recht platzfressend (HC18U)
Externes Taktsignal (-->External Clock)
Der Takt kann irgendwoher kommen, zB von einem zweiten µC, von dessen Quarz-Takt man was abzweigt.
Die Oszillaror-Treiber Einstellungen der AVRs bieten einiges an Optionen, u.a. auch die Anpassung an Umgebungsbedingungen: die Treiberstufe kann mit mehr Leistung gefahren werden, um bei schlechten Umgebungsbedingungen (noisy environment) im Takt zu bleiben oder andere Taktverbraucher zu versorgen. Braucht dann aber natürlich mehr Leistung.
Ein AVR, der für 16MHz spezifiziert ist, arbeitet meiner Erfahrung nach noch problem- und klaglos bei 22MHz, wenn man bei normalen Temperaturen arbeitet und VCC bei 5V lässt. Hab das nur mal gecheckt und mich gewundert, daß es geht. Ob EEPROM und SPM noch gehen hab ich allerdings nicht getestet. Aber 20% übertekten tut AVRs nix. Beim Entwurf wird man aber trotzdem gerne innerhalb der Spez bleiben...
jeffgen987
30.10.2005, 14:09
Und was ist das was ich auf der Netzwerkkarte habe?
@SprinterSB
Bist du sicher, dass der Quarz genauer ist als der Ozilator? Weil du ja geschrieben hast, dass sie teilweise extra temperatukompensiert sind, damit sie noch genauer sind?
SprinterSB
30.10.2005, 14:17
Das bei dir auf der Karte ist ein Quarzoszillator wie im unteren Bild.
Das 'genauer' bei Quarz bezog sich reklativ zu Keramik und RC.
Genauigkeit, in aufsteigender Folge:
- RC-Oszillaror
- Keramik Resonator
- Quarz
- Quarzoszillator
Wobei Ausnahmen mal wieder die Regel bestätigen können.
Uhrenquarze sind zT genauer als 'normale' Quarze und haben nur 1/10 deren Ungenauigkeit.
Du hast auf der Karte u.a. eine Quarzoszilator. Diese sind genauer als ein "normaler" Quarz.
Und auch unempfindlicher gegenüber Erschütterungen.
Auf der KArte oben rechts wo groß YCL steht ist ein Step-up Wandler. Der macht dir aus 5V 9V. Würd ich auch nicht wegwerfen das Teil!
Falschrum ;
Der Oszillator ist genauer. Hat SprinterSB auch so beschrieben.
Ein Quarzoszillator besteht halt aus Quarz und Zusatzhardware, also evtl. auch Temperaturkompensation.
Die Atmels gehen wohl bis 20 MHz. (Keine Garantie)
Die Spezifikation wurde nur geändert, weil es Probleme bei den EEPROM Zellen gab.
(Steht, glaube ich in, dem Buch von Roland Walter)
Gruß
Christopher
jeffgen987
30.10.2005, 15:42
Mal eine andere Frage, die nichts mit AVR zu tun hat: In welchem Forum soll ich Fragen wegen Platinenäzten stellen?
Einen MAX232 o.ä. kannst du dir erstmal (oder überhaupt) sparen. Such mal im Forum nach AVR910. Da im Schaltplan ist eine Pegelanpassung von RS232 auf TTL.
Das sind nur 10 Bauteile, die du sicherlich überall finden wirst.
Naja, ein MAx232 kostet bei Reichelt 40 Cent, ein Quarz 44 Cent. Dann noch ein bischen was für die benötigten Widerstände, Elkos und Kondensatoren.
Zusammen mit dem ATMega16 und der Platine die er sowieso bestellen will löst sich dann auch das Problem mit dem Mindestbestllwert von 10 Euro. Falls da noch Luft bleibt, finden sich bestimmt noch ein paar Taster, LEDs oder ähnliches Kleinzeug um auf 10 Euro zu kommen.
jeffgen987
30.10.2005, 17:25
Ich sag mal so: Alles was ich nicht auf die "Alter-Drucker-Art" beschaffen kann, werde ich beim Reichelt bestellen.
Nochmal die Frage: In welches Forum soll ich Fragen bezüglich Ätzen von Platinen stellen?
Eugen
Nochmal die Frage: In welches Forum soll ich Fragen bezüglich Ätzen von Platinen stellen?
Eigentlich ist es immer ganz gerne gesehen, wenn man sich vorher mal umguckt, ob die Frage die man stellen möchte nicht schon mal beantwortet wurde.
Also würde ich mal versuchen, ob du über die Suchfunktion die Antwort oder irgendwas das in die Richtung geht findest.
Wenn nicht, würde ich die Frage ins Forum Elektronik stellen: https://www.roboternetz.de/phpBB2/viewforum.php?f=10
Falls dir jemand den Kopf abreisst, weil es da nicht hingehört, zünde ich irgendwann mal in der Messe ne Kerze für dich an ;-)
Ich sag mal so: Alles was ich nicht auf die "Alter-Drucker-Art" beschaffen kann, werde ich beim Reichelt bestellen.
Nochmal die Frage: In welches Forum soll ich Fragen bezüglich Ätzen von Platinen stellen?
Eugen
Taugt das dann auch was
Drucker ist in diesem Fall aber auchnur ein Platzhalter für 'alte' Platinen, oder?
Weil ganz ehrlich. Außer Taster und LEDs findest du im Drucker nicht mehr viele andere Bauteile die du am AVR dringend benötigst.
Ich weiss, Motorensteuerung usw... Aber ein AVR kann auch ohne Motor leben ;)
Früher (und wenn ich das jetzt so schreibe und zurück denke war es ganz schön früher) ging ich immer los wenn Sperrmüll war und habe nach alten Radios, PC (die damals aber noch nicht sooo verbreitet waren und bis auf's letzte aufgerüstet wurden), Fernsehern, ... ausschau gehalten.
Irgendetwas davon konnte ich immer gebrauchen. Und selbst wenn es nur Schrauben waren. Es ist immer viel Wert, soetwas zu haben als zu brauchen und ne Woche zu warten bis es da ist...
jeffgen987
30.10.2005, 22:54
NeNe,
das mit "Alter-Drucker-Methode" ist allgemeine auf alle alte/"kaputte" Elektroniksachen bezogen. Ihr dürft mich nicht falsch verstehen. Alles was neu gekauft werden muss, wird auch neu gekauft (bei Reichelt :)).
darwin.nuernberg
01.11.2005, 12:01
Mal eine andere Frage, die nichts mit AVR zu tun hat: In welchem Forum soll ich Fragen wegen Platinenäzten stellen?
Einige Infos zu Platinenätzen findest du Hier:
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=7415
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=2923
Ich arbeite (ab und zu wenn ich mal wieder Lust habe) an einer Anleitung
wie Platinen geäzt werden, und was man so braucht.
Natürlich werden da auch ein paar tipps drin stehen.
Blos frag mich nicht wann ich das Teil fertig habe.
Momentan verspüre ich keine Drang danach das Teil weiter zu schreiben.
Irgendwann zwischen Weihnachten und Silvester, blos welches Jahr ist noch nicht klar O:)
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.