Forum: Mikrocontroller und Digitale Elektronik Microcontroller Board welches wofür?


von Noy (Gast)


Lesenswert?

Hallo,

also ich bin E-Technik Student, kann C/C++, Assembler und hab die 
Vorlesung Mikrocontroller schon hinter mir (mit einem MC68000).Besitze 
ein Steckboard und diverse Bauteile.

So nun habe ich das Problem, dass ich ein passendes Board suche worauf 
ich Atmel Chips (nicht SMD,möglichst ohne das ich eine umfangreichen 
Aufbau wie für den MC68000 brauche.) programmieren und das programmierte 
mit ein paar Tastern/LED's/LCD Display (muss nicht unbedingt) testen 
kann um diese dann anschließend auf dem Steckboard zu benutzen. 
Allerdings muss es über USB angeschlossen und optimalerweise auch 
darüber versorgt werden (versorgt muss nicht unbedingt,ein 
TV-Schaltnetzteil müsste doch auch gehen?). Wollte mir erst von Pollin 
das Board und das Addon Board als Bausatz bestellen allerdings scheint 
dieses ja nicht mit einem USB->Seriell Konverter zu funktionieren. Habe 
nun das STK500 im Uni Shop entdeckt aber dieses ist ja wieder nicht mit 
USB (Vom Preis ist es ja fast wie das Dragon daher gibt es eine 
Möglichkeit es USB kompatibel zu machen bzw. Adapter?).Wenn ich es nicht 
falsch Verstanden habe kann man mithilfe von Bootloadern dann USB 
nutzen, aber ich müsste auf jeden Atmel Chip einen Bootloader erst 
draufspielen den ich jemals verwenden will? Dann habe ich das Dragon 
Board entdeckt Vorteile: USB Programmierung und Versorgung, soweit ich 
es verstanden habe kann ich alle 8 und 32 Bit Mikrocontroller von Atmel 
benutzen (bei denen muss man auch keine eigenen Quarze oder sonst 
irgendwas bei bauen? Also nur den Chip und die Schaltung die jeweils von 
den Ein/Ausgängen gesteuert werden? Wollte den AtMega 644 zum Anfang 
benutzen weil der ja relativ groß ist und somit keine einschränkungen 
zum ausprobieren entstehen oder?.Nachteil: Kabel fehlen, keine 
Taster/LED's/LCD zum testen bevor es auf das Steckboard kommt, IC Sockel 
müsste ich noch anlöten.
Gibt es alternativen oder ist das beste was ich machen kann das Dragon 
Board kaufen und dann dort nur Programmieren und dann jedesmal umstecken 
bzw. direkt auf dem Steckboard Programmieren/Debuggen und mir selber 
LED's und Taster drum rum bauen?
Achja möchte in C/C++ Programmieren.

von Oliver J. (skriptkiddy)


Lesenswert?

Das STK500 kannst du mit jedem beliebigen USB-Seriell-Wandler nutzen.

Gruß Oliver

von ... (Gast)


Lesenswert?

Noy schrieb:
> Habe
> nun das STK500 im Uni Shop entdeckt aber dieses ist ja wieder nicht mit
> USB (Vom Preis ist es ja fast wie das Dragon daher gibt es eine
> Möglichkeit es USB kompatibel zu machen bzw. Adapter?)

Das STK500 funktioniert problemlos mit USB-RS232-Adaptern. Der Dragon 
kann auch als Debugger arbeiten, das STK nicht. Dafür hat das STK etwas 
Hardware schon Onboard (LED, Taster, RS232-Pegelwandler, Takterzeugung). 
Der Dragon ist teilweise recht empfindlich.
Weitere Alternative wäre ein AVRISP mkII. Ist billiger als der Dragon 
(hat aber keinen Debugger), hat USB und ist ziemlich robust.

von Noy (Gast)


Lesenswert?

Hm, also kann ich mit dem STK500 meine Programme nicht Schritt für 
Schritt durchgehen und ich muss mich noch um die Stromversorgung 
kümmern. Beim Dragon muss ich das alles nicht, dafür kann ich durch das 
Programm "steppen".
Taktgeber? brauch ich das? Die Atmel Chips haben doch selber nen Takt 
oder müssen die mit nem Quarz ven bekommen? Achja und das mit den Pegeln 
brauch ich nur wenn ich vom Microcontroller was über RS323 übertragen 
will woanders hin oder? Für einfache von wegen der Taster wird gedrückt 
die LED leuchtet wobei dann später halt irgendwelche Sensoren/Aktoren 
das machen brauch ich sowas nicht oder?

von ... (Gast)


Lesenswert?

Noy schrieb:
> Achja möchte in C/C++ Programmieren.

Achja, unter welchem Betriebssystem?
Für Windows am besten WinAVR (http://winavr.sourceforge.net)


PS: die 32bit AVRs lassen sich NICHT mittels STK500 oder ISP mkII 
brennen!
Dafür brauch man mindestens den Dragon.

PPS: Noch vergessen. Das STK500 ist zwar ein klasse Teil, aber leider 
auch ein Auslaufmodell. Falls es das noch irgenwo gibt sind das 
Restbestände, produziert wird es jedenfalls nicht mehr.

von Karl H. (kbuchegg)


Lesenswert?

Noy schrieb:
> Hm, also kann ich mit dem STK500 meine Programme nicht Schritt für
> Schritt durchgehen und ich muss mich noch um die Stromversorgung
> kümmern. Beim Dragon muss ich das alles nicht, dafür kann ich durch das
> Programm "steppen".

In eingeschränkter Form geht das mit "dem STK500 auch".
Der springende Punkt: Du lässt das Programm nicht auf dem µC selber 
laufen sondern im AVR-Studio im Simulator. Geht nicht für alles, 
zugegeben, und der Simulator hat auch so manchen Fehler, aber im 
Allgemeinen kommt man damit ganz gut zurecht. Was natürlich nicht geht, 
da ja der µC nur simuliert wird: die eigene angebaute Hardware dann auch 
real während eines Debugger Laufes ansprechen.

> Taktgeber? brauch ich das? Die Atmel Chips haben doch selber nen Takt
> oder müssen die mit nem Quarz ven bekommen?

Die haben einen Rc-Oszillator eingebaut.
Aber du wirst schnell dahinter kommen, dass Quarz besser ist.

> Achja und das mit den Pegeln
> brauch ich nur wenn ich vom Microcontroller was über RS323 übertragen
> will woanders hin oder?

Das wirst du, das wirst du.

> Für einfache von wegen der Taster wird gedrückt
> die LED leuchtet wobei dann später halt irgendwelche Sensoren/Aktoren
> das machen brauch ich sowas nicht oder?

Dem Buchstaben nach nicht. Aber wenn du Debuggen willst, und zwar auf 
der realen Hardware, dann ist es schon praktisch, wenn dir dein Programm 
dabei helfen kann, indem es Statusmeldungen oder Variablenwerte irgendwo 
ausgeben kann. Und zwar nicht (nur) in Form von LED 
leuchtet/leuchtet_nicht, sondern ein Zahlenwert wäre schon ganz nett.

von Frank K. (fchk)


Lesenswert?

Die AVRs haben als Standard-Programmierschnittstelle ISP. Dadrüber kann 
man nur programmieren, aber im Gegensatz zum ICSP der PICs nicht 
debuggen. Debuggen geht nur per JTAG oder debugWire (das ist aber ein 
Krampf), und auch nur bei den AVRs, die eines von beiden haben. Bei den 
XMegas kommt noch PDI hinzu, das kann auch beides.

Für JTAG und dW brauchst Du entweder ein JTAG ISP MKii (robust, aber 
teuer) oder ein Dragon (billig und recht empfindlich gegen 
Fehlbedienung, da sterben ganz gerne mal Treiberbausteine - das Teil hat 
einige Designfehler).

Die AVRs haben einen internen Oszillator, der aber nicht sonderlich 
genau ist. Ein externer Quarzoszillator kostet nicht viel, und es ist 
empfehlenswert, einen solchen vorrätig zu haben. AVRs und PICs haben 
sogenannte Fuses, die unter anderem die Takterzeugung steuern. Bei den 
PICs kannst Du Dich nicht aussperren, egal wie doof Du Dich anstellst, 
bei den AVRs kannst Du es leicht. ISP braucht einen gültigen Takt, und 
wenn der Chip auf "Quarz" oder "ext.Oszillator" steht, muss eben ein 
solcher angeschlossen sein, damit Du das wieder zurückstellen kannst. 
Und komme nicht auf die dumme Idee, den Resetpin als Portpin 
umzustellen. Aus der Nummer kommst Du nämlich nur wieder mit einem 
Programmer, der den HI-Voltage Modus kann, wieder raus.

fchk

von ... (Gast)


Lesenswert?

Noy schrieb:
> Hm, also kann ich mit dem STK500 meine Programme nicht Schritt für
> Schritt durchgehen
Direkt im Chip nicht, nur im Simulator.
> und ich muss mich noch um die Stromversorgung
> kümmern.
Fürs STK ja, dafür reicht aber ein 0815 Steckernetzteil und Du kannst 
kleinere Schaltungen aus dem STK mit versorgen.
> Beim Dragon muss ich das alles nicht, dafür kann ich durch das
> Programm "steppen".

Noy schrieb:
> Taktgeber? brauch ich das? Die Atmel Chips haben doch selber nen Takt
> oder müssen die mit nem Quarz ven bekommen? Achja und das mit den Pegeln
> brauch ich nur wenn ich vom Microcontroller was über RS323 übertragen
> will woanders hin oder?

Falls Du die RS232-Schnitstelle der AVRs nutzen willst (z.B. um 
Kommandos vom PC zu empfangen oder Messwerte zurückzuliefern) brauchst 
Du entweder Pegelwandler oder TTL-USB-Serial-Adapter (oder Pegelwandler 
+ normale USB-Serial-Adapter). Desweiteren solltest Du dann auch einen 
Baudratenquartz verwenden, da die internen Oszillatoren nicht sonderlich 
genau sind. Nützlich ist so eine Kommunikation auch beim Testen der 
Software, um sich z.B. Zwischenwerte, Statusmeldungen, Traces, etc. 
ausgeben zu lassen, das spart meist den Debugger.

von Noy (Gast)


Lesenswert?

Also spricht insgesamt mehr für das Dragon. Gibts ne Anleitung zum 
selberbauen des Rs323 Pegeldingens?
Würde dann bei Pollin diverse Sortimente mit LED/Taster und so bestellen 
und dann alles auf dem Steckboard und dem Dragon machen.
Achja bei Pollin ist der Größte MC der ATmega 644 geht der mit dem 
Dragon und vor allem ist das was passendes für den Anfang? Halt paar 
Timer und halt schön viele Ausgänge alle 32Bit sind für was größeres als 
kleine Schaltungen oder?

Und welche IC-Sockel bzw Stecker sind sinnvoll direkt mitzubestellen?

Bräuchte ja für den ATmega 644 nen 40poligen Nullkraft sockel den gibt 
anscheined leider nicht. Bzw welche Sockel passen auf den Dragon oder 
sollte ich am besten direkt alles nur über ein kabel an das Steckboard 
übergeben ohne Sockel auf den Dragon zu löten?

von ... (Gast)


Lesenswert?

Frank K. schrieb:
> Für JTAG und dW brauchst Du entweder ein JTAG ISP MKii (robust, aber
> teuer)

Äh, fast. Das Teil heißt JTAG ICE mkII. Nicht zu verwechseln mit dem 
ISP mkII, das ist ein reiner ISP Programmer.

von Noy (Gast)


Lesenswert?

Öhm wollte Atmel nehmen da ich bei Pollin nichts zu PIC finde.Und da ich 
meistens dort bestelle  fällt PIC eigentlcih schon weg. Oder gibt es 
irgendwo ordentliche fertig Boards für PIC?

Kann der 644 JTAG? Oder nur ISP?

von ... (Gast)


Lesenswert?

Noy schrieb:
> Kann der 644 JTAG? Oder nur ISP?

Steht im Datenblatt gleich auf der ersten Seite:
http://www.atmel.com/dyn/resources/prod_documents/doc2593.pdf
(das vierte Feature, ja er hat JTAG)

von Oliver J. (skriptkiddy)


Lesenswert?

Noy schrieb:
> oder
> sollte ich am besten direkt alles nur über ein kabel an das Steckboard
> übergeben ohne Sockel auf den Dragon zu löten?

Bau dir am besten ein Kabel:
Auf der Dragon-Seite einen crimpbaren 6/10-Pol-Pfostenstecker, auf der 
anderen Seite einfach Pins von Pin-Leisten dranlöten mit 
Schrumpfschlauch und dazwischen ein 6/10-poliges Flachbandkabel. So hab 
ich es gemacht. Allerdings sind die gelöteten Kontakte recht anfällig 
für Wackelkontakte.


Gruß Oliver

von Jobst M. (jobstens-de)


Lesenswert?

Noy schrieb:
> und halt schön viele Ausgänge alle 32Bit

??
Der hat 4 Ports a 8 Bit.


Noy schrieb:
> Bräuchte ja für den ATmega 644 nen 40poligen Nullkraft sockel den gibt
> anscheined leider nicht.

Bei Reichelt für 16,35 Artikel 'TEX 40' ...


Gruß

Jobst

von ... (Gast)


Lesenswert?


von ... (Gast)


Lesenswert?

Noy schrieb:
> Gibts ne Anleitung zum selberbauen des Rs323 Pegeldingens?
http://www.mikrocontroller.net/articles/AVR-Tutorial:_UART
USB-serial ist mittels FTDI Chip etwa der gleiche Aufwand:
http://www.mikrocontroller.net/attachment/33737/FT232BL.JPG

von Frank K. (fchk)


Lesenswert?

Noy schrieb:
> Öhm wollte Atmel nehmen da ich bei Pollin nichts zu PIC finde.Und da ich
> meistens dort bestelle  fällt PIC eigentlcih schon weg. Oder gibt es
> irgendwo ordentliche fertig Boards für PIC?

Entweder bei Microchip direkt oder Reichelt oder ... Gibt viele Quellen. 
außerdem gibts nicht DIE PICs, sondern 8 bitter, 16 bitter und 32 bitter 
(MIPS Kern). Alle Reihen kannst du mit dem 60€ Pickit3 programmieren und 
debuggen. Kannst Dir mal das Datenblatt zum dsPic 30f4012 ziehen, das 
ist ein 16 bitter, doppelt so schnell wie ein Avr, DIL40, und kostet bei 
Reichelt irgendwas um die 5€.

>
> Kann der 644 JTAG? Oder nur ISP?

beides. Bei JTAG verlierst Du vier Portpins.

Ps. Ich würde mir das Experimentierboard sparen und die ersten Versuche 
auf einem Steckbrett oder Lochraster machen. Strom, Takt, 
Abblockkondensatoren und das Teil sollte loslaufen.

Fchk

von Noy (Gast)


Lesenswert?

Ich glaube mein Problem ist in der MC Vorlesung bzw im Labor hatten wir 
die fertige Hardware und wir mussten nur noch Programme schrieben von 
wegen LCD ansteuern oder Schrittmotor und so. Natürlich haben wir auch 
die komponenten besprochen und RISC Timer Interrupts und so aber keine 
Hardware. Daher hätte ich am liebsten eine all in one Lösung wo cih nur 
das Dingen draufstecken muss. Programmieren und später in meine 
Schaltung und dann hoffen das es Läuft. Debuggt wurde halt direkt beim 
Laufenden MC mit LED/Taster Platine und Register Hex Zahlen.
Ich werd mir wohl erstmal das ganze Hardwareseitige Zeug durchlesen 
bevor ich irgendwas bestellen kann.

von ... (Gast)


Lesenswert?

Eventuell sind die Arduinos dann ja was für Dich:
http://de.wikipedia.org/wiki/Arduino-Plattform
http://arduino.cc
Die gibts in etlichen Varianten und mit etlichen Zusatzmodulen.

von Noy (Gast)


Lesenswert?

Hab nun gerade bei Reichelt diese Boards von PIC.. entdeckt die schienen 
ausgereifter zu sein wenn ich es mal so sagen darf. Alle mit USB und so 
aber irgendwie verstehe cih nciht die ganzen Unterschiede der Packungen.
Gibt es irgednwo auch ein Studentenprogramm für PIC?

von Noy (Gast)


Lesenswert?

Die Arduinos hab ich mir schon angesehen.Allerdings sind diese ja fest 
auf den Platinen verbaut ich möchte ja gerade mehr in Richtung selber 
Schaltungen bauen mit MC's drin und so und suche dafür einen guten 
Einstieg.
Beispielsweise mache ich gerade einen CAE Kurs mit PSpice. Da geht es 
allerdings eher um Verstärker entwickeln und so. Und ich möchte 
sozusagen dahinter anknüpfen und dann mehr Richtung MC Anwendungen 
gehen.

von ... (Gast)


Lesenswert?

Noy schrieb:
> Daher hätte ich am liebsten eine all in one Lösung wo cih nur
> das Dingen draufstecken muss. Programmieren und später in meine
> Schaltung und dann hoffen das es Läuft.

Ok, hab das scheinbar etwas falsch interpretiert.
Nur wozu willst Du dann eigentlich irgendeine AllInOne-Lösung zum 
drauf-/umstecken? Sieh in Deiner Schaltung einfach einen Standard ISP- 
u/o JTAG-Anschluß vor und programmier/debug den AVR direkt in Deiner 
Schaltung.

von Noy (Gast)


Lesenswert?

Ja also brauche ich ja das Dragon sofern cih auch step by step Debuggen 
will,
Und nun würde ich gern wissen was man am besten dazu kaufen sollte/muss.

von Noy (Gast)


Lesenswert?

Oder das ISP MK2. Wenn ich auf das Debuggen verzichten würde.

von Noy (Gast)


Lesenswert?

Oder das Pickit3
Scheint mir insgesamt am besten zu sein kann debuggen und ist weniger 
anfällig als das Dragon und kann alle PIC's Programmieren.

von Frank K. (fchk)


Lesenswert?

Noy schrieb:
> Oder das Pickit3
> Scheint mir insgesamt am besten zu sein kann debuggen und ist weniger
> anfällig als das Dragon und kann alle PIC's Programmieren.

... zumindest alle aktuellen. Die alten Typen von vor 20 Jahren, die 
noch EPROM statt Flash hatten (16C und 17C), kann es nicht, aber die 
wirst Du nicht vermissen. Die waren nämlich ohnehin nur einmal 
programmierbar oder UV-löschbar. Aus dieser Zeit stammen auch die ganzen 
"Brenner" zB von sprut.de.
Plus: Du brauchst zum Programmieren und Debuggen nur zwei Portpins plus 
/MCLR (Reset). Das ist auch ganz angenehm.

fchk

von Noy (Gast)


Lesenswert?

Habe nun ein wenig mich über die Unterschiede informiert und dabei bin 
ich überall darauf gestoßen das die Pic schlechter in C zu Programieren 
wären. Stimmt das heutzutage immernoch? Alles was ich gefunden habe 
waren Threads von 2007 und so. Und gibt es für die Pics auch ein 
Studentenprogramm wo man was günstiger bekommt wie von AVR? Habe das 
Pickit 3 Express Debug für ca 60€ inklusive Versand aus GB in Ebay 
gefunden.

von Carsten S. (dg3ycs)


Lesenswert?

Hi,

Noy schrieb:
> Habe nun ein wenig mich über die Unterschiede informiert und dabei bin
> ich überall darauf gestoßen das die Pic schlechter in C zu Programieren
> wären. Stimmt das heutzutage immernoch? Alles was ich gefunden habe
> waren Threads von 2007 und so. Und gibt es für die Pics auch ein
> Studentenprogramm wo man was günstiger bekommt wie von AVR? Habe das
> Pickit 3 Express Debug für ca 60€ inklusive Versand aus GB in Ebay
> gefunden.

Das mit dem "schlechter in C" stimmt heute absolut nicht mehr.
Es kommt halt darauf an "welche" Pic Familie man nimmt. Wie schon oben 
geschrieben gibt es nicht DEN Pic sonderns insgesamt 4,5 Pic Familien

Es ist ein vorurteil das sich noch heute hält und von den AVR Jüngern 
immer noch hochgehalten wird. Getreu "trau keiner Statistik die du nicht 
selbst gefälscht hast" wird dann immer gern der neueste AVR mit den 
Möglichkeiten des seit gut 10 Jahre ausdrücklich als veraltet 
gekennzeichneten "PIC16F84(A)" verglichen.

Fakt ist das die Pic16F Familie tatsächlich nicht Ideal für C ist. Das 
16er Design ist recht alt, hat in den Grundzügen schon einige Jahrzehnte 
auf dem Buckel. Für einfache Wünsche aber immer noch aktuell.
Die 16er PICs sind halt zu einer Zeit wo ASM upTODate war für ASM 
entwickelt worden.
Wobei die aktuellen C Compiler da schon eine Menge wettmachen.

Wenn man aber beabsichtigt in erster Linie in C zu arbeiten dann sind 
die Pic18F das Objekt der Wahl. Das ist eine wesentlich neuere 
Entwicklung, unwesentlich jünger als die AVR. Für einen "fairen" 
Vergleich müsste man also diese mit den AVR 1-1 vergleichen.

Die 18F sind speziell für die Verwendung von C Compilern optimiert. Da 
kann von "nicht C" keinerlei REde mehr sein. Das war aber acuh schon 
lange vor 2007 so. Die PIC18F würde ich auch als "Hauptfamilie" zum 
Einstieg empfehlen. Diese bieten zum selben PReis (für dne Endkunden 
gibt es kaum unterschiede im Preis, Großmenge schon) deutlich mehr 
Leistung und peripherie. Es gibt einen freien Compiler ohne 
Codeeinschränkung (nur mit etwas schlechteter Optimierung nach 60Tagen) 
und massig Libs sowie Demobeispiele zentral von Microchip selbst die du 
ohne Einschränkung frei verwenden kannst. Egal ob Privat oder 
Kommerziell.

Bei Atmel-AVR gibt es wesentlich weniger von Atmel selbst. das meiste 
stammt von anderen Hobbyisten und man ist immer dabei sich vieles von 
den unterschiedlichsten Stellen zusammenzusuchen. Mit dem nebeneffekt 
das man auf einmal verschiedenste Programmierstiele innerhalb eines 
Projektes hat.

Dann gibt es noch die 16Bit Pic die DS Pics(16bit mit auszügen von 
DSP_HArdware) sowie die 32Bit PICs. Diese sind natürlich wie alle 
Leistungsfähigen Controller voll auf C ausgelegt. Die Compiler hier sind 
GCC abkömmlinge. Für den ersten Einstieg würde ich aber bei 8 Bit 
reinschnuppern, dann mich steigern.

Vorteil bei MC ist das du mit einem einfachen Programmiergerät (PicKit3) 
ALLES was an Pics die letzten 10 Jahre auf den MArkt gekommen ist 
programmieren kannst. Viele davon auch debuggen. Und das Debuggen zur 
Laufzeit kostet dich bloß 2 I/O Pins. Zudem ist das Ding recht robust. 
Ein "Massensterben" von Treibern oder Spannungsreglern wie beim Dragon 
oder Brüchigen Flexkabeln zur Kontaktierung wie beim JTAG ICE II ist 
nicht vorhanden.

Zum Studentenprogramm:
Einen" Studentenshop" hat Microchip nicht. Wenn, dann kannst du über die 
HS Produkte günstiger beziehen. Alternativ, wenn es das bei deiner HS 
nicht gibt -und wenn es auch stimmt das du sparen muss- kann man nur 
empfehlen bei MC direkt anzurufen und das "Probelm" schildenr und fragen 
ob ein vergünstigter Bezug möglich ist.

Geht es dir nur um den Programmer kannst du auch einen PicKit NAchbau 
aus China kaufen. Kostet incl. Versand um die 20Euro und ist wohl voll 
Kompatibel (MC hat sowohl Schaltplan als auch Software im Netz)

Auf jeden Fall kannst du als Student aber kostenlos an MC Schulungen 
teilnehmen. In München und bei Düsseldorf gitb es ja öfter welche. Musst 
halt vorher Kontakt aufnehmen und dann wirst du -sofern Plätze frei- 
eingeladen.

Ach ja: An welcher HS bist du eigendlich. DAs was du über das 
MicrocontrollerPraktikum schilderst klingt so wie bei uns (MS). Wobei 
das sicher an vielen Schulen ähnlich ist.

Aber zum Abschluss:
Wissen solltest du auf jeden Fall, das die Controller von den 
Möglichkeiten relativ gleich sind. Egal ob AVR oder PIC. Grundsätzlich 
können die das gleiche.

ICh persöhnlich finde halt MC Pics aufgrund des drumherum besser, die 
"SoftSkills" sozusagen.
Also das man einen "günstigen" Programmer für alles hat, also alle Pics 
und incl. Debug. Man kann sich nicht Aussperren und die IDE gibt es 
identisch für Linux und Windows. Es läuft alles aus der IDE heraus. 
Selbst Drittsoftware kann man einbinden.

Was auch nicht zu vergessen ist: PIC gibt es sehr viel mehr auch im DIP 
gehäuse. Selbst einigermaßen Leistungsfähige typen mit USB oder CAN.
Versuche mal einen AVR mit USB in DIP zu bekommen... Bzw. versuche mal 
einen USB AVR überhaupt zu bekommen. ICh kenne da momentan nur CSD als 
Firma die auch Bastler beliefert. PIC mit USB hat fast jeder Versender 
im Angebot.

Allerdings befinden wir uns hier in einem eher AVR lastigen Forum. Das 
muss man wissen um die Antworten einordnen zu können. PIC ist aber 
wieder im Vormarsch ;-)


P.S. 60 Euro für das Debug Express Kit?
ICh meine bei Reichelt kostet es auch 54 Euro, kann aber auch gestiegen 
sein. Aber ganz ehrlich: Das Demo Board brauchst du nicht wirklich.
Die kompletten Unterlagen dazu hat MC auf seiner Seite. Sowohl die 
"Lesson Files" für erste Übungen wie auch den Schaltplan des DemoBoards.

Der Controller der darauf ist kostet bei Reichelt als 40Pin DIP 2,30 
Euro.
Besorge dir den und bau das Board auf einer Lochrasterplatine anahnd des 
Schaltplanes auf. Dürfte komplett unter 10Euro liegen. Dann weist du 
auch gleich wie die HW aufgebaut ist. Jetzt nur noch den Programmer 
einzeln kaufen und gut ist.

Abe regal ob PIC oder AVR: tu dir den GEfallen -und selbst wenn es 
verführerrisch ist- lass die Finger von allen Programmiergeräten und 
Selbstbauten welche eine eigene Software brauchen und nicht direkt aus 
der IDE des HErstellers heraus angesprochen werden. Für die paar Eureoi 
erspraniss lohnt der Auswand niemals.

Gruß
Carsten

EDIT: HAbe gerade gesehen das die 54 Euro bei REichelt für das Debug 
Express Kit stand letzten JAhres sind. Mittlerweile kostet es fast 70!!! 
Euro.
Die zeihen die PReise ja ganz schön an...

von Noy (Gast)


Lesenswert?

So werde wohl den Programmer holen ohne Platine. Meine Frage wäre nun 
noch ich bestelle demnächst bei Pollin halt Steckboard und noch diverse 
Bauteile. Und würde da direkt für Später ein LCD mitbestellen für 
späteres  ansteuern mit nem PIC18F welches von den ganzen da Angebotenen 
brauch ich denn eins mit Controller schon oder ohne? Und was bzw 
überhaupt für Quarze braucht man denn so? Oder einfach 100 Quarze im 
Quarzsortiment bestellen?

von Noy (Gast)


Lesenswert?

Achja und noch wichtig ist :
Ich will mein Steckboard über ein Schaltnetzteil CONRAC 6030-6510-0000 
betreiben das +12V/ 8,5A;
+12V/0,7A; +5V Standby/0,02A und +5V/2A bringt. Würde den PIC18F dann 
über die 5V/2A betreiben  weiß aber leider nicht ob die Stabilisiert ist 
und ob der PIC das dann mitmacht die PIC18F kann bis 5,5V vertragen. 
Muss da noch eine Strombegrenzung oder so rein?

von Noy (Gast)


Lesenswert?

Welchen der 18F ist denn zu empfehlen für den Anfang? Das sind ja 
hunderte verschiedene.
Ein paar Timer und schon genügend Platz wäre ganz praktisch.

von Frank K. (fchk)


Lesenswert?

Noy schrieb:
> Welchen der 18F ist denn zu empfehlen für den Anfang? Das sind ja
> hunderte verschiedene.
> Ein paar Timer und schon genügend Platz wäre ganz praktisch.

Die 18FxxJxx laufen nur noch mit 3.3V. Für Dich ist wohl einer der alten 
Typen ohne K oder J in der Bezeichnung am Besten - die sind alle 
garantiert 5V-geeignet.

Oder Du nimmst einen dsPIC30F4011 oder so. Das ist ein 16 Bitter - 
vielleicht die angenehmere Architektur. Die dsPIC33 laufen auch nur noch 
mit 3.3V, die 30'er auch noch mit 5V, und von der 30'er Serie gibts auch 
einige im DIL40 oder DIL28 Gehäuse.

Die Entwicklungsumgebung ist immer die gleiche - MPLAB8. Dazu brauchst 
Du noch den C-Compiler für die jeweilige Architektur (C18, C30, C32). 
Gibts alles bei Microchip zum Download.

fchk

von Carsten S. (dg3ycs)


Lesenswert?

Noy schrieb:
> Welchen der 18F ist denn zu empfehlen für den Anfang? Das sind ja
> hunderte verschiedene.
> Ein paar Timer und schon genügend Platz wäre ganz praktisch.

Ja, das mit den hunderten Verschiedenen ist schon Segen und Flcuh 
zugleich.
Es gibt für fast jede Anwendung den exakt passenden PIC, für den 
Einsteiger ist es aber unübersichtlich.
ICh würde für allererste Schritte die Wahl zwischen 18F45K20, 18F4520 
und 18F4550 im Dip Gehäuse ausmachen.

Der 18F45K20 ist der Typ der auch auf der DebugExpress testplatine 
arbeitet. (Dort allerdings als SMD) Wie Frank aber schon schrieb ist das 
ein Typ der von ca. 1,8 bis 3,6V Betriebsspannung verträgt. 5V zerstören 
den nicht sofort (aus eigener Erfahrung ;-)) aber ist sicher auf dauer 
nicht so toll.
Der ist mit 2,30 für das 40Pol Dip Gehäuse bei Reichelt mit abstand auch 
der günstigste. Wenn man aber viele Bausteine hat die noch mit 5V Pegeln 
arbeiten natürlich etwas ungünstig. Gerade als Anfänger werden die 
meisten externen Bausteine eher noch 5V PEgel haben. Da muss dann ein 
Levelshifting stattfinden.

Der 18F4520 könnte man als "frühere" Version bezeichnen. Er läuft mit 
2-5V, kann also wahlweise sowohl mit 3,3V als auch mit 5V erfolgreich 
betrieben werden. ISt also etwas universeller. Leider bei REichelt mit 
Knapp 5 Euro ungefähr doppelt so teuer (ebenfalls auf DIP40bezogen)

Diese beiden µCs haben massig Speicher, sowohl Ram wie auch 
ProgrammFlash. EEPROM zur Zwischenspeicherung von Daten auch ohne 
Betriebsspannung ist auch vorhanden. So ziemlich alle gängigen 
Schnittstellen und 12 AD Converter. Mit einem 40DIP Gehäuse hat man auch 
genug an IOs zur Verfügung.

Der 18F4550 ist schon einer der Typen mit Spezialperipherie. Genauer 
gesagt handelt es sich um einen Typ mit integrierter USB Hardware, 
Allerdings kann er natürlich auch ohne USB betrieben werden. Dann 
verhält er sich wie ein 08/15 Baustein. So gut wie alles was man mit den 
obigen Dingen machen kann, das kann dieser auch.
Der Vorteil hier ist das man den auch mit einem USB Bootloader versehen 
kann. Dieser µC arbeitet auch bis 5V. Allerdings hat er glaube ich nur 
halb so viel Speicher wie die beiden oben geannten. Er kostet als DIP40 
5,15Euro.

Diese drei Bausteine sind auch grundsätzlich Pinkompatibel. Allerdings 
ist zu beachten das beim USB Baustein einige wenige Pins der "höheren" 
Ports von den Zweitfunktionen anders belegt sind und ein IO gar nicht 
zur Verfügung steht. Das hängt mit der USB Hardware zusammen.

Wenn dich das Thema USB schon jetzt ein wenig reizt, dann würde ich 
schon diesen zumindest mitbestellen. Es schadet aber grundsätzlich ja 
auch nicht wenn man zum Einstieg mit zwei oder drei Typen anfängt. Die 
unterscheiden sich ja nicht gravierend. Der eine hat dann halt mehr 
Speicher, der andere dafür usb. Programmierung und die meisten Fuses 
sind identisch.

Ich würde dir aber raten zumindest einen 18F45K20 zu nehmen um das 
Experimentierboard vom DebugExpress auf Lochraster nachzubauen um die 
Lesson Files als "schnelleinstieg zumindest mal anzusehen und als erste 
Ausgangsbasis für eigene Dinge zu nehmen. Grundsätzlich kann man die 
auch mit dem 18F4550 abarbeiten, aber das geht dann nicht mehr "Out of 
the Box" sondern man muss direkt mit geänderten Einstellungen anfangen 
und diese Änderungen bei einem Einsteiger bevor das erste Programm 
läuft... Naja.

Später, wenn du dann besser zurecht kommst, dann wirst du die Vielfalt 
der Pics auch zu schätzen lernen. Wenn du dann z.B. eine USB Anwendung 
hast die aber nur 3 IOs braucht kannst du die experimentell mit einem 
18F4550 entwickeln, kannst aber für das fertige Gerät dann genausogut 
statt des 5Euro teuren 4550 einen 18F13K50 im DIP20 (oder SMD) Gehäuse 
einsetzen.
(die oben genannten sind ja nun wirklich im Vergleich "Dickschiffe"... 
Für die allermeisten Anwendungen gandenlos überdimensioniert)

Zu den Quarzen:
Nee, kein Quarzsortiment!!!
Da sind wenn überhaupt nur wenige für dich geeignete Quarze drin.
Die 18F Pics haben eine PLL intern. Die können aus einem niedrigen 
Quarztakt sich jede Taktfrequenz (in schritten natürlich) selbst 
erzeugen. Also mit demselben Quarz kannst du 1Mhz oder aber 64Mhz(bei 
einigen auch nur 48MHz) erzeugen.
Das kannst du sogar zur Laufzeit umstellen.
Also dein Programm läuft um strom zu sparen nur mit 1Mhz, wenn dann ein 
Ereigniss kommt was schnell abgearbeitet wird stellt das Programm auf 
64MHz um und nach erledigung auf 1MHz zurück
Damit man glatte Frequenzen bekommt mit denen sich dan auch einfach die 
Geschwindigkeit oder Baudraten berechnen lassen sollte man als 
Referenzquarz einen nehmen dessen Frequenz glatt durch 4Mhz teilbar ist. 
ICh setze meist 8 oder 12MHz ein. Aber 4Mhz, 16MHz oder 20MHz gehen 
genausogut. Legt dir einfach ein paar eines dieser Werte auf die Seite.
ISt geschmackssache welchen WErt.

Die PICs haben natürlich wie eigendlich alle moderneren µC einen 
internen Baudratengenerator, dieser Ermöglicht es dann auch ohne krumme 
Baudratenquarze die meisten Baudraten recht genua zu treffen so das de 
rFehler innerhalb der Toleranz liegt. (Welche jetzt genau hängt von de 
rTaktfrequenz, NICHT der Qurzfrequenz ab)

NAtürlich haben die Pics auch einen internen Oszillator der anstelle 
eines externen Quarzes die REferenzferquenz liefern kann (ebenfalls bis 
64MHz/48MHz) Bei vielen PICs reicht die Genauigkeit sogar für schnelles 
UART ohne Quarz völlig aus. Muss aber dann im DB stehen damit man sich 
darauf verlassen kann.

Noy schrieb:
> weiß aber leider nicht ob die Stabilisiert ist
> und ob der PIC das dann mitmacht die PIC18F kann bis 5,5V vertragen.
> Muss da noch eine Strombegrenzung oder so rein?

Strombegrenzung nicht, Spannungsbegrenzung!
Erfahrungsgemäß stecken die Pics Überspannung schon eine Zeitlang gut 
weg. Aber garantiert ist es nicht und man weiß ja nice ob er nicht doch 
an einem der internen Peripheriemodule unbemerkt schaden genommen hat.
Einfache Z-Diodenstabilisierung reicht da in der Regel.

Wobei eine fein einstellbare Strombegrenzung natürlich nicht verkehrt 
ist. die Spart so manchen Neukauf!

Aber du hast noch nicht gesagt wo du herkommst/welche HS du bist.
Wenn du hier aus der Nähe kommst lässt sich sicher was deichseln das du 
gegen Unterschrift zum Probieren was ausgeliehen bekommst. Z.b fürs 
reinschnuppern ein PicKit und das DebugExpress board...

Ach ja:
Die Breedboards sehe ich eher Kritisch. Für ganz einfache Sachen ja, 
aber für Komplexe Dinge fängt man sich damit auch eine Menge Probleme 
ein. Wackelkontakte sind da eher häufig. Auch verwechselt man schnell 
mal einen Steckplatz (hat mich schon ein GPS Modul gekostet) Und wenn es 
schneller wird dann stellen die parasitäten Kapazitäten ein großes 
Problem da, vom nicht "HF-gerechten" Aufbau ganz zu schweigen

ICh halte Lochraster da eher für Sinnvoll. Die paar Cent an mehrkosten 
sollten noch drin sein. Am besten eine HAndvoll der "billigen" IC Sockel 
für die teuren Bauteile besorgen und diese Sockeln, alles andere dann 
ordentlich verlöten. Der bei mir nicht mehr wiederverwendbare 
Materialanteil liegt aufs Projekt gesehen meist deutlich unter 5Euro für 
einen Eurokartenfüllenden Versuch (LR Karte mit eingerechnet) Wobei man 
da sicher noch deutlich mehr wiederverwenden könnte. Aber das spare ich 
mir dann doch.

Ach ja, gerade in der Probierphase sind die billigen Sockel sowieso viel 
besser geeignet, die "Präzisionssockel" sollte man nur da nehmen wo der 
IC auch wirklich lange im Sockel verbleiben soll!

Zum Abschluss noch ein Link auf einen Artikel zu einem Versuchsboard mit 
18F4550.
Wie gut das Board aber für dich geeignet schein musst du selber 
entscheiden. ICh habe mich da nicht weiter drin vertieft.
http://www.mikrocontroller.net/articles/PIC18f4550_Experimentier_Platine

Die 16Bit Pics würde ich mir für später vorbehalten. Für den Einsteiger 
sind die etwas komplexer, wobei ich das Problem aber nicht darin sehe, 
sondern eher in de rTatsache das die in Bastlerkreisen deutlich weniger 
verbreitet sind und bei Problemen gerade zu Anfang weniger Hilfestellung 
kommen wird.

Gruß
Carsten

von Noy (Gast)


Lesenswert?

Vielen Dank für die TOP ausführliche Antwort.Ich bin an der THM in FB 
ist nicht so wirklich nähe MS.
Werde mir wohl dann mal direkt bei Microchip das PICKIT 3 und jeweils 
einen mit USB und einen ohne aber mit 5V (rein weils einfacher mim 
Schaltnetzteil wird)vll noch einen der ganz kleinen für ASM, als 
Studentenversion bestellen und den Rest den ich für die Debug Platine 
brauch bei Pollin samt passende Quarze. Das mit dem 
Lochraster/Steckboard werd ich mir mal merken aber für den Anfang ist 
Steckboard für mich einfacher da ich noch ein bisschen Analog Verstärker 
nebenher machen will.

von Noy (Gast)


Lesenswert?

So ich habe ein Problem auf dem Demoboard sind oft 100nF 
Abblockkondensatoren verbaut aber Pollin hat keine Kerkos. Deshalb 
besser Folien oder gehen auch Tantal (haben ja eine Polung) nehmen?

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
Noch kein Account? Hier anmelden.