Forum: Mikrocontroller und Digitale Elektronik Ist es sinnvoll, sich in Arduinos einzuarbeiten?


von PIC-Liebhaber (Gast)


Lesenswert?

Ich habe früher viel mit PICs gemacht. Allerdings waren die immer 
autark, eigene Schaltkreise ohne Verbindung zum Computer. Das will ich 
ändern.

Ist es sinnvoll, sich in Arduinos einzuarbeiten um eine Verbindung via 
USB mit dem PC aufzubauen, quasi als Einstieg in die 
Computer-Verbindung?

von arduino (Gast)


Lesenswert?

Der Vorteil mit dem Arduino ist, du kannst sofort loslegen und Software 
schreiben. Nach kurzer Zeit mit dem Arduino, fängt man eh an, autarke 
Schaltungen mit den AVRs zu bauen. Warum machst du das nicht mit den 
PICs?

von Höffi (Gast)


Lesenswert?

Nimm einfach irgendeinen FTDI FT232 (USB) Adapter her und fertig ist die 
PC Anbindung (serielle Schnittstelle).

Arduino ist eigentlich nur eine spezielle IDE und lib für AVRs - die 
Hardware ist 0815 standard. Geht mit PICs natürlich genauso.

von gaast (Gast)


Lesenswert?

Für jemanden, der bereits Erfahrung mit Microcontrollerprogrammierung 
hat, ist die Arduino-IDE ziemlicher Blödsinn. Man könnte höchstens den 
darauf enthaltenen AVR in gewöhnlichem C programmieren und den Arduino 
als SDK nutzen (besonders beim Mega und Nano, welche Controller in SMD 
enthalten). Prinzipiell sollte der Bootloader STK-500-kompatibel sein. 
Nur scheitert es daran leider in der Praxis, während der kleine Arduino 
Uno sich noch problemlos flashen lässt, gibt es beim Mega dank 
offensichtlich schlechter Planung extreme Probleme, mit avrdude ein 
eigenes Hexfile aufzuspielen.
Die USB-Verbindung ist übrigens eine gewöhnliche UART-Verbindung über 
einen Wandlerchip, der einen virtuellen COM-Port erstellt. Ist also mit 
jedem beliebigen Microcontroller, ob AVR, PIC oder sonstwas und einem 
FTD232 genau so möglich.

von ROFLCOPTER (Gast)


Lesenswert?

PICs gibts ja auch mit USB onboard. Dann muss man nur noch des Framework 
von Microchip draufladen und man kann loslegen.

von Kan a. (Firma: Basta) (kanasta)


Lesenswert?

Arduinos sind für Kinder mit Mac-Books, die Leds zum Leuchten bringen 
wollen, ohne einen Lötkolben anfassen zu müssen.

von Peter D. (peda)


Lesenswert?

PIC-Liebhaber schrieb im Beitrag #2532298:
> Allerdings waren die immer
> autark, eigene Schaltkreise ohne Verbindung zum Computer.

Ich empfinde das gerade als Vorteil, wenn Geräte funktionieren, ohne das 
ständig ein PC vor sich hin brummen muß.

PIC-Liebhaber schrieb im Beitrag #2532298:
> Das will ich
> ändern.

Dann mußt Du eine Schnittstelle programmieren.
Am einfachsten ist die UART, daher für Anfänger sehr zu empfehlen.

USB und Ethernet sind deutlich komplizierter, sie zu verstehen, dauert 
ewig.
Daher kann man da nur fertige Libs als Black-Box benutzen. Man sollte 
also schon Erfahrungen damit haben, wie man auf MC- und PC-Seite, Libs 
bzw. Devicetreiber in seine Programme einbindet.


Peter

von arduino (Gast)


Lesenswert?

Kan asta schrieb:
> Arduinos sind für Kinder mit Mac-Books, die Leds zum Leuchten bringen
> wollen, ohne einen Lötkolben anfassen zu müssen.

Sehr gut, Kan asta, sehr gut! Jetzt geh wieder raus, der Pappa muss noch 
etwas arbeiten.

von Kan a. (Firma: Basta) (kanasta)


Lesenswert?

...oder die Kinder?

Nee mal im Ernst, wenn ich Arduino höre denk ich immer an Stümper. Die 
Erfahrung lehrt, dass jemand, der die Hardware nicht kennt, auch keine 
vernüntige Software schreiben kann.

von Carsten S. (dg3ycs)


Lesenswert?

PIC-Liebhaber schrieb im Beitrag #2532298:
> Ich habe früher viel mit PICs gemacht. Allerdings waren die immer
> autark, eigene Schaltkreise ohne Verbindung zum Computer. Das will ich
> ändern.
>
> Ist es sinnvoll, sich in Arduinos einzuarbeiten um eine Verbindung via
> USB mit dem PC aufzubauen, quasi als Einstieg in die
> Computer-Verbindung?

Wie von "ROFL"Copter schon geschrieben gibt es von Microchip PICs mit 
USB OnBoard incl. einem guten Framework für USB!

Wenn du über USB mit dem PC Kommunizieren willst, dann geht es für den 
Bastler unter Berücksichtigung aller Umstände mit kaum einer Plattform 
leichter als mit PIC.
Viele PICs mit USB On Board gibt es in DIP Gehäuse, somit voll 
Lochrastertauglich. Bei so gut wie allen Versendern und vielen 
"normalen" Elektronikläden für kleines Geld zu bekommen, also alles 
andere als Exoten. (Ab ca. 2 Euro)

Tip:
Schaue die mal die Seite zum einfachsten USB StarterKit an:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en536385

Wenn du die 40 Euro nicht ausgeben möchtest -was für einen Bastler auch 
nicht nötig ist- reicht es sich einfach die Bedienungsanleitung und die 
Codebeispiele runterzuladen.

In der Bedienungsanleitung steht hinten der Schaltplan des Boards drin, 
ist schon sehr Minimal, aber gewisse Dinge wie die AD Wandleransteuerung 
kannst du sogar zusätzlich weglassen.
Diesen Schaltplan baust du dir dann auf Lochraster nach, nimmts die 
Codebeispiele und Übungen und was du sonst noch oben auf der SEite 
findest und legst einfach los. Kein Gehampel mit irgendwelchen 
Schnittstellenbausteinen wie FTDI usw.!

Der hier verwendete PIC ist der 18F13K50 bzw. es geht auch 18F14K50. 
Kostet bei Reichelt gerade einmal als DIP 2,10 Euro. Dazu noch einen 
Quarz und die beiden LAstkondensatoren für den Quarz. Das ist die 
Minimalbeschaltung ab der USB läuft.
Für weitere Experimente sind dann noch der MAX232 und eine SubD Buchse 
dabei um selbst einen USB <> RS232 Wandler zu bauen, den du notfalls 
sogar als Ersatz für KAUFBARE Wandler nehmen kannst wenn gerade keiner 
zur Hand ist, sowie ein Poti, ein paar LED und Vorwiderstände. Alles 
zusammen kostet vielleicht gerade mal 10Euro, wenn nicht weniger.

Damit hast du einen Prima EInstieg!

Gruß
Carstn

von Kein Name (Gast)


Lesenswert?

>Ist es sinnvoll... ?

Na klar doch. Ein Blick über den Tellerrand ist immer sinnvoll.

"Nutztsts nix, dann schadts nix!" (Alte bayowarische Weisheit)

von arduino (Gast)


Lesenswert?

Kan asta schrieb:
> Nee mal im Ernst, wenn ich Arduino höre denk ich immer an Stümper. Die
> Erfahrung lehrt, dass jemand, der die Hardware nicht kennt, auch keine
> vernüntige Software schreiben kann.

Das mag sein. Leider fällt das Wissen ja nicht vom Himmel in die Köpfe. 
Es gibt viele Softwareentwickler, die so das erste mal Zugang zur 
Hardware bekommen und nicht jeder hier im Forum der sich mit µC 
beschäftigt kommt von der Elektronik-Seite.

von Kan a. (Firma: Basta) (kanasta)


Lesenswert?

arduino schrieb:
> und nicht jeder hier im Forum der sich mit µC
> beschäftigt kommt von der Elektronik-Seite.


traurig, traurig.

von arduino (Gast)


Lesenswert?

Kan asta schrieb:
> traurig, traurig.

Du ist traurig? Musste nicht sein!

von ROFLCOPTER (Gast)


Lesenswert?

Von dem PIC18F14K50 würde ich persönlich abraten, da dieser nur mit 
einem bspw. Pickit2 nicht zu debuggen ist.
Zitat von der Produktseite: "A debug header is required for this 
device".
Dafür muss man 50 USD hinblättern...

"Teilenummer: AC244023 - Processor Extension Pak for PIC18F1xK50
    This processor extension pak is designed for those who wish to debug 
the PIC18F13K50 and PIC18F14K50 microcontrollers in circuit. The 
included header will interface with MPLAB REAL ICE, MPLAB ICD 2, MPLAB 
ICD 3, PICkit 2, and PICkit 3. Includes RJ-11 adapter and pin header.

This Processor Extension Pak is mandatory for debugging code since the 
production silicon does not have on-board debugging capability."

Also dann vielleicht doch lieber einen mit "debugging capability" 
onboard.

von Carsten S. (dg3ycs)


Lesenswert?

Kein Name schrieb:
>>Ist es sinnvoll... ?
>
> Na klar doch. Ein Blick über den Tellerrand ist immer sinnvoll.

Aber nur wenn der Blick ins weite geht und nicht vom weiten GEräumigen 
Suppenteller in die kleine Hochwandige Süßstoffdose!

Nee, mal im ernst. ZWei Punkte:
1.)
Das Arduino System ist ja explizit dafür entworfen worden um "LAIEN" 
(hier wird immer von Künstlern, Designer usw gesprochen) in die Lage zu 
versetzen schnell eine gewisse Anzahl von Aktionen ausführen zu lassen.
Es funktioniert nur mit einer sehr begrenzten Zahl an Bausteinen, man 
ist also nicht nur auf eine Familie, sondern sogar auf eine kleine 
Teilmenge einer Familie angewiesen!
NAtürlich kann man Arduino HArdware auch ganz normal unter verwendung 
normaler Oberflächen und gängigen Designtools nutzen, aber ich denke das 
war nicht inhalt der Frage.

 Ich habe nichts gegen das System Arduino an sich. ICh finde es ja sogar 
absolut positiv das so eine Einstiegshürde gesenkt wird und so der 
Interessenkreis verbreitert wird. Aber ich habe leider in letzter Zeit 
gehaäuft die Bekanntschaft von PErsonen gemacht die sich allen ernstes 
für wer weiß für tolle Programmierer hielten weil sie ja SONSTWAS schon 
entwicklet haben, wenn man sie dann aber an ein ernsthaftes Projekt 
ranliess wurden die Augen größer und größer wenn dann auf einmal die 
Arduino typischen vereinfachungen nicht mehr zur Verfügung standen oder 
gar dinge gefordert wurden die für die Arduino Zielgruppe einfach 
Irrelevant ist!
Daher finde ich es einfach unseriös diesen Leuten zu vermitteln das die 
Fähigkeit Arduino zu programmieren mit vollwertiger µC Programmierung 
gleichzusetzen ist.

Wenn ich beispielsweise jemanden der bisher nur AVR unter verwendung von 
"normalen C" programmiert hat an ein Projekt mit PIC oder einem ARM 
(Ohne Betriebssystem) heranlasse, so wird er zwar erst aufgrund der 
Detailunterschiede ins Stocken kommen, nach einer kurzen 
Einarbeitungszeit, oft schon nach 1-3 Tagen, auf der neuen HArdware 
zumindest absolut gleichwertigen Code wie bisher auf den AVR schreiben.

Bei den Arduinonutzern ist das leider nicht der Fall!

Daher halte ich den Sprung von einer "normalen" Umgebung auf Arduino für 
einen Rückschritt, keinesfalls für einen Fortschritt.

2.)
Der TE fragt nach der Sinnhaftigkeit eines Systemwechsels weil er ein 
bestimmtes Ziel erreichen möchte. Er arbeitet jetzt aber bereits mit 
einem System wo sich das Ziel bereits sehr gut erreichen lässt.
Es gibt natürlich auch andere Wege um zum ziel zu kommen. PIC ist sicher 
nicht das einzig selig machende. AUch und gerade nicht bei USB.
Aber die Alternativen sind halt höchstens "genauso geeignet", aber 
keinesfalls besser geiegnet.

Gruß
Carsten

P.S.: Von dem ständigen Religionskampf abgesehen bin ich der Meinung, 
das man sich zwar als Einsteiger definitiv auf ein System festlegen 
sollte, sobald man aber Sattelfest ist und daran denkt sich halbwegs 
Professionell in der µC Welt zu bewegen definitiv mehrere Familien 
kennen sollte.
Alle kann man nicht kennen, aber auch wenn man nur 2-3 Weitere kennt 
fällt einem der Umstieg auf jede weitere Familie sehr viel leichter und 
man nähert sich immer weiter dem Ziel an den µC nach dem Projekt zu 
wählen und nicht das Projekt nach den Fähigkeiten seines µC!

von Carsten S. (dg3ycs)


Lesenswert?

ROFLCOPTER schrieb:
> Von dem PIC18F14K50 würde ich persönlich abraten, da dieser nur mit
> einem bspw. Pickit2 nicht zu debuggen ist.
> Zitat von der Produktseite: "A debug header is required for this
> device".
> Dafür muss man 50 USD hinblättern...
>
> "Teilenummer: AC244023 - Processor Extension Pak for PIC18F1xK50
>     This processor extension pak is designed for those who wish to debug
> the PIC18F13K50 and PIC18F14K50 microcontrollers in circuit. The
> included header will interface with MPLAB REAL ICE, MPLAB ICD 2, MPLAB
> ICD 3, PICkit 2, and PICkit 3. Includes RJ-11 adapter and pin header.
>
> This Processor Extension Pak is mandatory for debugging code since the
> production silicon does not have on-board debugging capability."
>
> Also dann vielleicht doch lieber einen mit "debugging capability"
> onboard.

Den DEBUG HEADER gab/gibt es auch einzeln für 17Euro. HAlt wie der auch 
beim LOW PIN COUNT USB DEV Board dabei ist. (Währe ja sonst auch 
Blödsinn das Board incl. normalen PIC UND HEADER für 40 Euro zu 
verkaufen und den Debug Header allein für 36...

Aber davon abgeshen stimmt es soweit, ohne den HEader ist ein Debuggen 
mit einem Debug-Fähigen Programmer nicht möglich. ISt eine kleine 
Einschränkung. Für dne Einstieg denke ich das es aber weniger 
Problematisch ist, zumal da ja die Codebeispiele vorliegen und es 
jederzeit möglich ist "aufzurüsten". Es ist ja nicht so das man in eine 
TEchnologie investiert und die dann nicht mehr verwenden kann.
Sobald etwas Erfahrung vorhanden ist (und auch erst dann nutzt das 
Debugging) kauft man sich einfach den nächstgrößeren PIC mit USB und 
OnBOard Debugging, z.B. den GROßEN und 5V toleranten PIC18F4550 ( für 
4,85 Euro bei Reichelt) oder dessen kleineren Bruder den 18F2450 (3,05 
Euro bei Reichelt)  und kann damit debuggen. Evtl. würde ich die sogar 
in einem Zug mitbesorgen.

Für die ersten Schritte ist der 18F14K50 aber gar nicht schlecht, weil 
der Schaltplan und die Codebeispiele des LPC_USB_Dev.Board darauf 
ausgelegt sind und damit sofort laufen. Dadurch hat man dann eine 
Funktionierende Referenzplattform und kann direkt auch vergleichen wenn 
man auf größere µC umschreibt.

Gruß
Carsten

von Kein Name (Gast)


Lesenswert?

> Daher halte ich den Sprung von einer "normalen" Umgebung auf Arduino für
> einen Rückschritt

Nach einigen Kriterien ja. Nach anderen nein.

Zur Zeit bekomme ich mein Geld für SAP/Java Mausgeschupse. Intellektuell 
und technisch totales Desaster. Betrachtet man das Verhältnis zwischen 
Aufwand und Einkommen sieht die Sache ganz anders aus.

Der eine will eine ausgefeilte, elegante, grenzenlose Technologie. Der 
andere will seine künstlerischen Vorstellungen möglichst einfach 
umsetzen.

Fortschritt und Rückschritt sind da die falschen Worte.

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.