hallo ich würde gerne wissen womit ein einsteiger anfangen sollte was für einen controller und was er dafür bruacht könnt ihr mir da helfen...?
Moin, für den Anfang wurde gern der AT90S2313 genommen (bzw. ähnliche AT90S-Typen), dieser ist nun Auslaufmodell und der Nachfolger ist der ATtiny2313, genauso "einfach" wie sein Vorgänger. Ich höre aber auch das der ATtiny15 gern genommen wird... Das musst du am Ende dann jedoch selbst entscheiden, welcher für dich für den Anfang der leichteste ist. Gruß Patrick
> Ich höre aber auch das der ATtiny15 gern genommen wird...
Jo, mit 6 IO-Pins kann er ja auch wirklich viel machen...
Mit 6 IO-Pins ist er ja auch sehr einfach auf Lochraster zu verdrahten,auch wenn man noch nicht allzuviel Erfahrung im Löten von ICs hat.
Ich würde 'n mega8 nehmen und mit was Einfachem anfangen, das Testprojekt dann Schritt für Schritt erweitern. Dazu muss nicht immer ein neues Projekt mit neuem Controller angefangen werden. Ich benutze sowas auch nach Jahren Erfahrung um einzelne Funktionen und deren Zusammenwirken zu testen.
Moin du aufreger, Es ist schön zu hören das du anscheinend direkt mit einem Atmel mit 200 I/O-Pins angefangen hast, andere bevorzugen da eine kleinere Variante, ich habe beim Start mit Atmel mit dem AT90S2313 angefangen und nie alle Pins voll gekriegt, wozu auch, man ist froh wenn eine LED an einem Port blinkt, bis 15LEDs an 15 Ports blinken braucht es schon seine Zeit, ausser man lässt sie gleich blinken... Aber nun gut... Gruß Patrick
http://www.mikrocontroller.net/articles/AVR_PIC_51-Vergleich http://www.mikrocontroller.net/articles/Mikrocontroller
> Es ist schön zu hören das du anscheinend direkt mit einem > Atmel mit 200 I/O-Pins angefangen hast, andere bevorzugen > da eine kleinere Variante, Mein erster µC war ein PIC16C84, wenn man mal die Experimente mit dem 8749 außer Acht läßt. Mein erster Atmel war übrigens ein AT90S1200-4SI, nettes Teil und hatte sogar schon einen internen RC-Oszillator. > Ich habe beim Start mit Atmel mit dem AT90S2313 angefangen und > nie alle Pins voll gekriegt, wozu auch, man ist froh wenn eine > LED an einem Port [...] Dann fehlt es dir eindeutig an Kreativität bzw. Ideenmangel. Ein µC kann sehr viel mehr als nur LEDs zum Blinken zu bringen. Naja und nur weil DU froh bist, dass die LED blinkt, heißt das ja nicht, dass sich auch andere damit zufrieden geben wollen. Fakt ist, mit 6 IOs kann man nicht viel machen und um ne LED zum Blicken zu bringen, braucht man kein µC. Wenn man sich mit µCs beschäftigt, dann will man Taster anschließen, mit UARTs arbeiten, IR-Decoder bauen, Displays ansteuern, Drehgeber auswerten, halt alles, was Spaß macht. Sicher, du kannst dein ATtiny15 nehmen und massenhaft Schieberegister dranhängen. Halte ich aber für den Einstieg nur bedingt sinnvoll. Meine Empfehlung für den Einstieg auch ganz klar ATmega8. Wenn man die AVRs kennenlernen möchte, dann bietet dieser µC jede Menge zu einem äußerst attraktiven Preis. Selbst Webserver sind möglich, mach das mal mit deinem ATtiny15 :) MfG Aufreger
@Aufreger: freut mich dass du meiner Meinung bzgl. Mega8 bist. Allerdings kann man mit der von dir angesprochenen Kreativität auch aus dem Tiny15 jede Menge 'rausholen. Ich habe damit eine Antriebssteuerung für ein Hauswasserwerk gebastelt, mit Druckregelung über 4..20mA/0..4bar-Druckmessumformer incl. Drahtbruchüberwachung, Gleitringdichtungs-Temperaturüberwachung, Laufzeitüberwachung, Saugschlauch-leer-Überwachung, Störmeldung mittels LED, Anlaufüberbrückung mittels Schalter und Ansteuerung des Motors mit Solid-State-Relais. Also der kleine Teufel kann einiges!
Am besten ist zum Anfang ist ein PIC 16F84. In weniger als 5 Minuten blinkt bereits eine LED, in 20 Minuten zeigt ein LCD bereits "Hello World".
> Am besten ist zum Anfang ist ein PIC 16F84.
Genau! Der hat so schöne Dinge wie Banking und kennt nur einen
Interrupt-Vektor. Da macht das Programmieren erst richtig Spaß.
Hi, Und auf sie mit Gebrüll! PICs sind scheiße ;-) Veraltete Architektur, AVR sind die Zukunft! Nee im Ernst, es kommt auch etwas darauf an, was man vor hat. Für Bastler sind AVR sicher besser, weil es einfach mehr Bastlerquellen gibt. Wenn man etwas Vorkenntnisse hat, wird man mit einer Hochsprache bei den kleinen Typen schnell an Grenzen stossen. Da ist der Mega8 schon die beste Wahl. Anfänger die sich unbedingt ASM antun wollen, können auch mit nem Tiny lange Freude haben ;-) PIC haben nur noch im kommerziellen Bereich Bedeutung wo sie schon eingeführt sind, der Entwickler eh' schon fit ist o.ä.. Gruß, Norbert
Wer sich mit Interrupts beschäftigt ist aber sicher kein Anfänger im Sinne des Wortes mehr. Ich habe über eine Woche gebraucht um 2 Azubis die Verwendung des Interrupts in Verbindung mit einem Timer auf einem 16F84 beizubringen.
@Aufreger, wenn man deinen Text natürlich so liest, dann gebe ich dir Recht :) Mit Pics kenne ich mich nicht aus, da kann ich relativ wenig zu sagen, sicher gibts da auch Anfängerchips die gut zu "verstehen" sind. Bei mir blieb es natürlich nicht nur bei einer blinkenden LED, wie du schreibst, der Uart kam schnell dazu, genauso wie Taster etc. Nun kommt es drauf an was schnell heist, Arbeiten muss ich ja trotzdem und die ganzen häusslichen Sachen, mir blieb relativ wenig Zeit um da viel probieren zu können. An Ideenmangel haperts sicher nicht, heute können es auch nicht genug Ausgänge sein, ich sah vieleicht nicht weit genug in die Zukunft bzw zu sehr auf meine Vorhaben, später hat man größere Sachen, hast du Recht... Die Preise sind mittlerweile tief genug (auch im Bezug auf mega8), wenn man mal Conr*d nicht beachtet :) Es kommt halt wie im ersten Text von mir auf die Person an (für mich muss es z.B. kein Webserver sein), was dieser machen will, mir reicht für mein DCC-Lokdecoder auch ein tiny15 und einem Anfänger ist solch ein Projekt sicher nicht zu empfehlen... Jedoch nutze ich auch einen 8515 für 7-Segment-Anzeigen etc. Man kann klein anfangen mit "kleinen" Chips, oder klein anfangen mit "großen" Chips und vorausplanen... Gruß Patrick
Erstmal ist es eine Glaubensfrage denke ich. Atmel oder Microchip oder gar jemand ganz anderes. AVRs und PICs sind aber deshalb zu empfehlen, weil sie weit verbreitet sind und es dem entsprechend viele Beispiele und Hilfsmöglichkeiten gibt. Beide haben ihre Vor- und Nachteile. Ein Nachteil der PICs ist das sie im Vergleich zu AVRs 2-Takter sind und AVRs 4-Takter. Wenn man nicht vorgeprägt ist und noch für beide Welten offen ist, könnte man seine Entscheidung an der Verfügbarkeit der Programmierumgebung richten. Welche Programmiersprache kann man schon und für welchen (ARV/PIC) gibt es eine Software, mit der man persönlch klar kommt. Das ist zu Anfang sicherlich nicht einfach zu sagen, wenn man damit noch nicht intensiv arbeiten kann. Ich persönlich empfehle AVRs und Bascom. Und als ersten einen Mega8 oder Mega32. AVR, weil sie keine Ehrenrunde drehen, was die abarbeitung der Befehle angeht. Somit ist man für schnellere Projekte gesichert. Sofern man die maximale Leistung wirklich mal ausnutzt. PICs haben aber auch Vorteile, da will ich nicht das Gegenteil behaupten. Bascom, weil ich vor über 10 Jahren mit Basic angefangen habe und der Umstieg leicht fiel. Der Syntax ist für jemanden, der bis jetzt noch nicht programmiert hat wahrscheinlich einfacher zu vestehen als ein "viel größer als"-Zeichen von C. Und andere schwer nachvollziehbare Zeichen die C benötigt. Bascom ist ein leistungsstarker Compiler, die Bascom-Hasser werden natürlich lächeln. Aber es bedeutet ja nicht, das eine einfache Programmiersprache keinen ordentlichen Code zustande bekommt! Wer allerdings eine Programmiersprache erst erlernen muss, weil er zuvor damit noch nichts zu tun hatte und auch gut lernen kann, dem rate ich zu Assembler. Da programmiert man Hardwarenah und sieht im Programm schon, was später passiert und wo sich ein INT mit einer anderen Funktion evtl überschneiden könnte. Da sieht man auch schon beim programmieren den Zeitbedarf für einzelne Funktionen. Ich muss ab und zu, wenns mal drauf ankommt in Bascom erstmal im Simulator nachschauen wieviel Cycles das von mir geschriebene später mal in Anspruch nimmt. Und den Mega8 oder Mega32 deshalb, weil... Mega16 und Mega32 sich eigentlich nur vom Speicher her unterscheiden. Dann kann man auch gleich "einen Euro" mehr ausgeben (oder 10€ mehr wenn man bei Conrad kauft) und hat für später genug Speicher in Reserve. Allerdings sind die auch relativ groß (Bauform) und ggf. etwas verwirrend wenn man ein Steckbrett benutzt. Der Mega8 bietet für wenig Geld und kleiner Bauform alles, was man in den ersten Tagen und für die ersten Projekte und für spätere Versuche braucht. Und deshalb keinen kleineren wie z.B. Tiny15 oder Tiny26, weil der Speicherplatz da begrenzt ist und die weniger können. Ich bin der Meinung, das die Features, die größere AVRs haben, die man nicht braucht auch nicht nutzen muss (bis man sie mal braucht). Wenn man die Features nicht programmiert, stören sie ein ja auch nicht und nehmen auch kein Platz weg. Andere sind da wieder der Meinung das die vielen Funktionen für Anfänger verwirrend sind. Wenn man den ICP nicht braucht, nutzt man ihn halt einfach nicht. Und im Datenblatt kann man den Absatz überspringen und ist genau so schlau als hätte man einen Tiny15 genommen. Wenn man sich dann später eingearbeitet hat, weiss man auf was man achten muss wenn man ein Projekt hat. Man sieht, wieviele Timer, wieviele externe INT usw man braucht. Und danach kann man seinen Zielchip auswählen. Aber testen kann man das Programm auch erstmal auf einem Chip, der eine oder ein paar Nummern zu groß ist. Beim Programmieren selbst merkt man evtl auch mal, das man noch etwas hinzufügen könnte und schon kann der gewählte Typ wieder zu klein sein. Wer das nötige Kleingeld hat, kann sich auch gleich ein großes Experimentierboard kaufen und einen Mega128 oder so.
Wer eine möglichst große Auswahl innerhalb eines 8-bit µC-Kernes haben will: http://www.8052.com/chips.phtml
Hallo Atmega8 16 32. Einfach handzuhaben da im DIP und braucht kaum Aussenbeschaltung. Programmierung erfolgt einfach über Eigenbau-Parallelport-Programmer. Es gibt eine gute IDE (AVRStudio) und einen guten C-Compiler. Gruss Michael
Also wer das Prinzip und die Funktionsweise eines Mikrocontrollers kennenlernen will, braucht keine 200 IO-Pins und auch keine komplizierten Anwendungsbeispiele, wie z.B. "mal eben einen Webserver bauen". Grundlagen lernen halte ich für viel wichtiger. Und da belastet man sich erstmal nicht mit Dingen, die zum Grundverständnis nicht beitragen. Insofern finde ich z.B. Tiny12 und einfache Programme sehr sinnvoll. Bis man den wirklich vollständig verstanden hat, kann man durchaus ein paar Wochen oder Monate mit verbringen. Und jede Menge falsch machen. Hat man den wirklich verstanden, ist der Schritt zu allen möglichen AT-Megas und Tinys kein Problem mehr. Den umgedrehten Weg - aus irgendwelchen Bibliotheken oder gefundenen Quellcode irgendwas kompliziertes auf einem großen Chip zum laufen zu bringen, ohne überhaupt irgendwelche Grundlagen zu kennen, halte ich für wenig sinnvoll.
Hallo, ein gutes Startpaket ist der Mega16, weil dieser Pinkompatibel zum Mega32 und Mega8535 ist. Er bietet durch komplette 4 * 8 Bit Ports viele Moeglichkeiten der Anbindung für groessere Projekte nachdem Led ein/ausschalten, Uart Hello World. Ein Anfaenger programmiert am Anfang extrem grossen Code, deshalb hab ich damals zum Start den Mega16 gewaehlt. Deine Programme solltest du am Anfang in Assembler programmieren um die Hardware des Mikrocontrollers kennenzulernen und spaeter auf eine Hochsprache eventuell ausweichen. Gruß, Dirk
schau dir mal von silabs die C8051F33x/4xx an , die haben DAC,ADC,RTC(F4xx) integriert , und für 60-80€ bekommst du nen gutes Protoboard,IDE, und ICE!!! genug tutorials,Bücher gibts für die 8051-er auch, und nen kostenlosen opensource c-compiler ebenfalls den F330 gibts auch als Dip20 für die Grobmotoriker ;-)
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.