Arduino enklare än PIC programmering ?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
papper
Inlägg: 9
Blev medlem: 19 februari 2012, 12:05:40

Arduino enklare än PIC programmering ?

Inlägg av papper »

Hej ! Till att börja med är mitt mål med mikroprocessorer att kunna använda dem i praktiska sammanhang, inte att veta exakt hur allting fungerar d.v.s assembler är inget för mig. C# är det enda programmeringsspråk som jag kan någorlunda bra.

Köpte ett Pickit för ett antal månader sedan men tröttnade fort när man förväntas läsa hundrasidiga datablad för att förstå grunderna. Fick ett tips om att kika på Arduino och nu undrar jag:
  • Är det en lika hög inlärnignskurva för Arduino som PIC ?
  • Vilken hårdvara ska en Arduino nybörjare välja ?
Användarvisningsbild
Lennart Aspenryd
Tidigare Lasp
Inlägg: 12607
Blev medlem: 1 juli 2011, 19:09:09
Ort: Helsingborg

Re: Arduino enklare än PIC programmering ?

Inlägg av Lennart Aspenryd »

Tack vare att det finns så mycket Arduino att leka med så går det snabbt.
Kolla in http://www.lawicel.se vad de har. Enklare kan det inte bli. Fliken till höger. Kolla sedan bloggen och kursmaterialet.
Användarvisningsbild
Marta
EF Sponsor
Inlägg: 7482
Blev medlem: 30 mars 2005, 01:19:59
Ort: Landskrona
Kontakt:

Re: Arduino enklare än PIC programmering ?

Inlägg av Marta »

För att göra enkla saker snabbt och lätt utan att veta vad man egentligen gör är Arduino jättebra.

Nackdelarna kommer när Du vill göra riktigt hårdvarunära saker. Då är C mera ett hinder än en hjälp jämfört med assembler. Du kan även få det svårare när det inte fungerar och Du kämpar med att förstå vad det är som händer.

Du behöver inte plöja igenom databladets samtliga sidor, så gör man inte. Läs bara om de moduler Du skall använda just nu. När det gäller PIC, läs speciellt noga i de små gråa rutorna. PIC har mycket bra datablad, försök bara inte greppa allt på en gång för det kan ingen klara av.

Det straffar sig alltid att försöka rivstarta. Även om det känns trist att ta sig över en lite högre inlärningströskel när Du är ivrig att komma igång snabbt, så kommer Du att tjäna på detta i längden. Genom att ha en god grundförståelse ser Du då såväl fel som möjligheter mycket lättare och kan snabbare få till ett effektivt och robust program.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Arduino enklare än PIC programmering ?

Inlägg av sodjan »

> ...när man förväntas läsa hundrasidiga datablad för att förstå grunderna.

Det är ju halva nöjet. :-)

Men seriöst, vad var det som var problemet ?
Om det är en ovilja att över huvudtaget läsa teknisk
dokumentation så vet i fasen, det behövs oavsett vad
du ska göra. Snart ska du koppla någon kul krets till din
Arduino och så har den ett datablad på 20-30 sidor, hur
gör du då ?

> Är det en lika hög inlärnignskurva för Arduino som PIC ?

En mer rellevant fråga är egentligen:
"Är det en lika hög inlärningskurva för Arduino som AVR ?"
eftersom det sitter en AVR i Arduinon. Men visst, jämförelsen
är väl ungefär densamma. :-)

Nja, för att göra ett initialt "Hello World" (kallas "blink-a-LED" i
dessa sammanhang) så är det nog snabbare med en Arduino. Men
ganska snart så verkar det som Ardunio användaren kör fast just
därför att man har tagit genvägar kunskapsmässigt. Om man ska
använda processorn till något mer avancerat än att blinka med
LEDs, så behöver man kunna processorn, d.v.s du *måste* kunna
läsa och hitta i databladet, det finns inga genvägar där !

Sen så kan man ju göra så att man enbart kör färdiga projekt som
man hittar på nätet, och då behöver man ju inte kunna mer än hur
man laddar in koden i sin egen Arduino.

> Vilken hårdvara ska en Arduino nybörjare välja ?

En Arduino kanske ? (Jag kanske missförstog frågan...)
Du kanske menar vilken Arduino? Det finns visst ett mer modeller (?).
Eller tänker du på Ardionotillbehören ("shields") ?
Användarvisningsbild
LHelge
Inlägg: 1772
Blev medlem: 2 september 2007, 18:25:31
Ort: Östergötland
Kontakt:

Re: Arduino enklare än PIC programmering ?

Inlägg av LHelge »

Det är väl som att åka kollektivt jämfört med att köra bil.

Visst är det lättare att skaffa busskort än körkort, och vissa nöjer sig gott med att åka buss hela livet. Men det ger inte riktigt samma frihet och prestanda som att skaffa sig körkort och en bil.
papper
Inlägg: 9
Blev medlem: 19 februari 2012, 12:05:40

Re: Arduino enklare än PIC programmering ?

Inlägg av papper »

sodjan skrev:
>Men seriöst, vad var det som var problemet ?
Om det är en ovilja att över huvudtaget läsa teknisk
dokumentation så vet i fasen, det behövs oavsett vad
du ska göra. Snart ska du koppla någon kul krets till din
Arduino och så har den ett datablad på 20-30 sidor, hur
gör du då ?

Problemt var att jag inte fick någon helhetsbild av hur PIC fungerar och hur hårdvaran och mjukvaran hänger ihop. Det är bara så oerhört mycket att lära sig på nytt när man går från högnivåspråk till assembler och mikroprocessor programmering. Assemblers syntax :shock:


>En mer rellevant fråga är egentligen:
"Är det en lika hög inlärningskurva för Arduino som AVR ?"
eftersom det sitter en AVR i Arduinon. Men visst, jämförelsen
är väl ungefär densamma. :-)


Varför skulle det vara en mera relevant fråga när jag aldrig har prövat AVR ?


>Sen så kan man ju göra så att man enbart kör färdiga projekt som
man hittar på nätet, och då behöver man ju inte kunna mer än hur
man laddar in koden i sin egen Arduino.


Det förstör ju hela nöjet med att koda :-)

>En Arduino kanske ? (Jag kanske missförstog frågan...)
Du kanske menar vilken Arduino? Det finns visst ett mer modeller (?).
Eller tänker du på Ardionotillbehören ("shields") ?


Menade vilken Arduino hårdvara som lämpar sig för nybörjare
Senast redigerad av papper 1 juli 2012, 23:17:01, redigerad totalt 1 gång.
Användarvisningsbild
Icecap
Inlägg: 26652
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Arduino enklare än PIC programmering ?

Inlägg av Icecap »

I grova drag är mikroprocessorer ganska lika. Det finns såklart prestandaskillnader osv. men den största skillnad är ofta i programmerings-verktyget och hur enkelt det är att använda.

Sedan är det nästviktigaste en fråga om hur bra (lättlästa) databladen är och där är Microchip bland de bästa...
Användarvisningsbild
Lennart Aspenryd
Tidigare Lasp
Inlägg: 12607
Blev medlem: 1 juli 2011, 19:09:09
Ort: Helsingborg

Re: Arduino enklare än PIC programmering ?

Inlägg av Lennart Aspenryd »

Det är märkligt hur svårt det kan va!
Kör igång! Ring till Tyringe och beställ vad du vill ha!
Jag betalar, om du inte är nöjd, så skickar du skiten till mig igen! Annars behåller du guldgrejorna!
Men det viktigaste är inte att lägga tid på hypotetiska frågor, utan att handfast köra grejorna.

Som med språk, vilket är bäst? Det man kan, och mottagaren förstår.
PM om hur, säger Lasp, som är trött på alla utvikningar från det handfasta! ;-)
sneaky
Inlägg: 1621
Blev medlem: 22 juni 2009, 18:38:42

Re: Arduino enklare än PIC programmering ?

Inlägg av sneaky »

papper skrev: Problemt var att jag inte fick någon helhetsbild av hur PIC fungerar och hur hårdvaran och mjukvaran hänger ihop. Det är bara så oerhört mycket att lära sig på nytt när man går från högnivåspråk till assembler och mikroprocessor programmering. Assemblers syntax :shock:
Bara för att klargöra. Du vet att du inte MÅSTE använda assembler för att leka med PIC va? Du kan även köra med C om du vill och då hamnar du genast betydligt närmare din tidigare C#-kunskap. Ja, det är en hög tröskel att ta sig över när man börjar leka med micros (mycket efteresom man inte har en visuell feedback på samma sätt som i PC-världen) men när man väl tar det första steget utan att ramla i backen och får den där härliga "det funkar!"-känslan i magen så blir det snabbt mycket roligare :)
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Arduino enklare än PIC programmering ?

Inlägg av sodjan »

> Problemt var att jag inte fick någon helhetsbild av hur PIC fungerar...

OK, till *det* är databladet fel källa. Det beskriver hur *en* visst specifik
processormodell fungerar, inte hur det hela fungerar rent generellt. Det finns
det andra tutorials och annat introduktionsmaterial hos (t.ex) Microchip som
man kan hämta.

Sen finns det en uppsjö "tutorials" där ute på nätet, mycket av det är
dock av tvivelaktig kvalitet

> Det är bara så oerhört mycket att lära sig på nytt när man går från högnivåspråk
> till [...] mikroprocessor programmering.

Jo, och där är skillnaden mellan PIC och Arduino nog mindre än du tror. Assembler
eller C betyder också mindre. Kan/vill du inte läsa databladen så är det inget som
C på något sätt kan kompensera för.

> Det förstör ju hela nöjet med att koda...

Ja, där har du det första nybörjarfelet, att tro att det bara är att "koda". :-)
Microkontrollers (oavsett om det är "PIC", "AVR" eller "Arduino") är mycket mer
hårdvara och traditionell elektronik än vad dina C-sharp övningar har kommit i
kontakt med. Att "koda" kan ibland vara den lilla/enkla biten... :-)

> Menade vilken Arduino hårdvara som lämpar sig för nybörjare.

OK. Jag har inte full koll på det, men jag trodde att de alla i princip var anpassade för
nybörjare. Skiljer det inte mest på antalet I/O pinnar o.s.v. ? Aja, andra kan det bättre. :-)
Användarvisningsbild
adent
Inlägg: 4247
Blev medlem: 27 november 2008, 22:56:23
Ort: Utanför Jönköping
Kontakt:

Re: Arduino enklare än PIC programmering ?

Inlägg av adent »

Tänkte bara klargöra följande:

PIC: En familj små processorer.
AVR: En annan familj små processorer.

Arduino: en plattform byggd på en AVR, men med lite speciella utvecklingsverktyg (förenklade).

Finns ett gäng olika Arduinosar. Fördelen är att det finns mycket tillbehör och mycket färdiga bibliotek för massa rolig hårdvara. Det är också betydligt enklare att komma igång med. Men som många påpekar kommer man förr eller senare köra fast för att man inte riktigt vet vad som händer under skalet. Men hellre tuta och köra och be om hjälp då än att bara strunta i det imho.

Grundkonceptet i en AVR eller PIC är i alla fall att du i regel inte har ett operativsystem, du har en main-loop och Interrupt. Läs gärna lite om hur interrupt fungerar, du klarar dig långt utan dem, men de är himla bra sen.

Lycka till!

MVH: Mikael
Användarvisningsbild
Icecap
Inlägg: 26652
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Arduino enklare än PIC programmering ?

Inlägg av Icecap »

Och det har ju visat sig ett antal gångar tidigare att ett kunnande inom C#/C++ faktisk är en nackdel inom vissa delar av mikroprocessorvärlden. Problemet ligger oftast i att det inte finns ett OS och i att hantera interrupt.

Med mikroprocessorer har varje program en sorts eget OS inbyggd och utan en viss förståelse av hårdvaran brukar det bli ganska besvärligt, det är ju programmören som måste bygga detta "OS".

Tänk det som att utveckla Linux utan att känna till hårdvaran: drivrutinerna kan bli ganska besvärliga att få till men när de väl fungerar kan det i stort kvitta exakt vilken processor som används.

Om sedan hårdvaran består av PIC, AVR, ARM eller någon annan processorfamilj har ringe betydelse, problemen är i stort de samma.
Skriv svar