PIC | AVR | ARM | o. motsv.

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: PIC | AVR | ARM | o. motsv.

Inlägg av blueint »

AVR = Linjär/rak minnesarkitektur
PIC = oops ;)

AVR = Kompilatorer till dom flesta miljöer, och dessutom fria varianter som t.ex GCC
PIC = I huvudsak inriktat på MS-Win, och allt annat på undantag.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46989
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PIC | AVR | ARM | o. motsv.

Inlägg av TomasL »

Bluint, nu får du ge dig,
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: PIC | AVR | ARM | o. motsv.

Inlägg av blueint »

Minnesaddresseringen på PIC är mer diskontinuerlig. Och fria kompilatorer eller ens en som övh kör under unix kom riktigt sent.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46989
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PIC | AVR | ARM | o. motsv.

Inlägg av TomasL »

Äh, skitsnack, på vissa lowrange ja, men inte på midrange och definitivt inte på PIC32.

Sent och sent, GCC finns ju för PIC32, sedan ett antal år tillbaka.
Att MPLAB inte funnits för nått annat OS än Win har ju med behoven att göra, finns inte behovet, så finns det inte, och eftersom, gissar jag 99% av alla professionella utvecklare kör WIN, så....
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: PIC | AVR | ARM | o. motsv.

Inlägg av sodjan »

> AVR = Linjär/rak minnesarkitektur
> PIC = oops ;)

AVR = Rörig minnes hantering med uppdelning i ett mindre antal "register" (av olika typ dessutom)
och "RAM" där man i princip enbart kan göra load/store.

PIC = Allt read/write minne är likvärdigt och man kan göra "allt mot allt". På de flesta aktuella
modeller kan minnet läsas linjärt för hantering av större bufferter/arrayer o.s.v. Det finns inga
instruktioner som enbart fungerar mot en begränsad del av read/write minnet.

> Minnesaddresseringen på PIC är mer diskontinuerlig.

Den hårda uppdelningen mellan "register" och "RAM" på en AVR är betydligt mer definitiv.
De flesta av dagens PICs kan även adressera *hela* read/write minnet linjärt.
Dessutom är det irrelevant. Både assembler och kompilatorer döljer den underliggande
arkitekturen (d.v.s det faktum att RAM/GPR är uppdelat i delar/banker).

Råder det någon som helst tvekan om varför en sådan frågeställning som den
som hela tråden bygger på är ganska meningslös ?
Rick81
Inlägg: 755
Blev medlem: 30 december 2005, 13:07:09

Re: PIC | AVR | ARM | o. motsv.

Inlägg av Rick81 »

Vad gäller processorer är det som sagt projektberoende vilken man ska välja men för nybörjare kan jag ge mina synpunkter:

PIC/AVR/MSP:
* Lätt att lära
* Smidig för labbruk då de oftast finns i hålmonterade
* Begränsade interface tex oftast endast 1 modul av tex UART. Har de RS232, SPI, I2C, USB, PWM, Ethernet, adomvandlingar.
* Enkel assembler
* Strömsnål
* Lämpliga för mindre display
* Mer som en microcontroller än processorer då de främst används för att interface med komponenter och oftast inte gör så tunga beräkningar
* Relativt lite RAM och Flashminne
* Lågt pris
* Lämpliga för enkla projekt eller för mindre delar i större projekt


ARM9, Cortex, Finns i uppsjö av varianter jag går in på STs (STR912, STM32) för det är de jag använt:
* Medel nivå på att lära sig
* Inte så smidiga för labbruk då de bara finns som ytmonterade
* Kraftfull prestanda (för mikroprocessor), från upp till 168 MHz på 32 bit
* Snabba nog att hantera färgdisplayer
* Ganska mycket RAM och Flashminne som kan utökas
* Flexibel och kraftfulla HW moduler: text 3 UART, 2 SPI, I2C, 12 bit AD, USB, Ethernet, CAN, DAC, EMI, PWM (upp till 16 st), 8 timers där de flesta kan kopplas till DMA vilket avlastar CPU betydligt vid datortung kommunikation
* DSP lib för bla FFT finns
* Inbyggd realtids klocka
* Strömsnål
Lågt pris
* Lämpliga för de flesta embedded projekt, även relativt komplicerade där PIC/AVR/MSP inte räcker till

x86
* Svår att lära
* Oerhört kraftfull
* Drar mycket ström
* Endast lämpliga för PC projekt och inte för embedded projekt
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46989
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PIC | AVR | ARM | o. motsv.

Inlägg av TomasL »

Det där stämmer inte riktigt.

PIC kan utan problem konkurrera med ARMar.
x86 är alldeles utmärkt för embedded-projekt.
Rick81
Inlägg: 755
Blev medlem: 30 december 2005, 13:07:09

Re: PIC | AVR | ARM | o. motsv.

Inlägg av Rick81 »

Jag skulle gärna vilja se en PIC som kan mäta sig med STM32F4. Har du länk?

PIC32 är dock hyfsat kraftfulla. Men det är väl ändå PIC18 som ligger närmst STM32 i pris?

Finns säkert projekt där x86 platsar men det är väl ändå mer undantag än regel att man använder x86 i inbyggda system. Det finns en anledning att tex mobiler nästan alltid har ARM arkitektur.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46989
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PIC | AVR | ARM | o. motsv.

Inlägg av TomasL »

Tja, PIC32 är ju billigare än PIC18, så.

Nej naturligtvis har jag inga länkar då det är fullständigt ointressant.
Vad jag reagerade på var dit kategoriska sätt att dela in processorer i kategorier.
Det hela handlar till syvende och sist om kravspec, inget annat.
Det existerar inga processorer som är dåliga/bra/lätta/svåra osv i all oändlighet.

Vad det handlar om är rätt pryl för jobbet, sen må det vara AVR/MCP/PIC/ARM/MIPS/x86- whatever.
Behöver du en x86 i ditt inbäddade system, skall du naturligtvis använda en sådan, räcker det med en PIC10 så använd en sådan.
Rick81
Inlägg: 755
Blev medlem: 30 december 2005, 13:07:09

Re: PIC | AVR | ARM | o. motsv.

Inlägg av Rick81 »

Jag tror att nybörjare får mer nytta av en "guideline" som säger vilken processor som är lämplig till olika projekt än det ständiga svaret i denna tråden "välj rätt processor för projektet", vilket visserligen är sant (som jag även skrev) men inte så givande om man inte är väl insatt i de olika processor familjerna och det kräver mycket tid att sätta sig in i dem.
Användarvisningsbild
Icecap
Inlägg: 26652
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: PIC | AVR | ARM | o. motsv.

Inlägg av Icecap »

Den guideline är snudd på omöjlig att ge! Vill du ha råd om vilken processor du kan välja ska du helt enkelt beskriva projektet, då får du svar!
Ber du snällt får du med stor sannolikhet också svar på varför just den processortyp/modell är vald ut och detta är ju vad du vill ha.
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: PIC | AVR | ARM | o. motsv.

Inlägg av sodjan »

> Jag tror att nybörjare får mer nytta av en "guideline" som säger vilken processor som är lämplig till olika projekt

Den guiden finns helt enkelt inte.
Kan det vara så jäkla svårt att beskriva vad det är man vill göra istället ?
Efter ett par projekt så fattar man och kan välja processor efter behov själv.
Användarvisningsbild
Repaterion
Inlägg: 597
Blev medlem: 4 februari 2011, 00:57:32
Ort: Gustavsfors (Lite till vänster om världens utkant)

Re: PIC | AVR | ARM | o. motsv.

Inlägg av Repaterion »

@Sodjan

Men om man inte vet vad man vill göra, utan bara vill testa.
Är det bättre att börja med en PIC16F54 än en PIC32FXXX eller vad nu de heter, om man tänker så då.

Fast det är väll koden i slutänden som styr i vilket fall som helst.

Jag antar att det är så han tänker lite grand, fast i detta fall kanske det blir som att skaffa en Ferrari för att köra 50 fast tvärt om, vet knappt själv vad skriver just nu men jag hoppas att du ser hur jag menar. :roll:

Fast det är två saker som är lite komiskt i denna tråd och det är att två säger att det är helt omöjligt att komma med någon som helst form av råd tips etc utan projekt, sedan har det endå kommit några egna erfarenheter av processorfamiljerna från andra... hur gjorde de då? :humm:
Användarvisningsbild
lgrfbs
Inlägg: 7313
Blev medlem: 28 januari 2005, 15:48:53
Ort: X-län
Kontakt:

Re: PIC | AVR | ARM | o. motsv.

Inlägg av lgrfbs »

Måste hålla med om att göra det baklänges dvs. MCU->Idé->Projekt känns just det baklänges, det blir bättre med: Idé->Projekt->välj MCU och övriga komponenter.
Användarvisningsbild
Icecap
Inlägg: 26652
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: PIC | AVR | ARM | o. motsv.

Inlägg av Icecap »

Repaterion: Jag har jobbat med Intel Z80, Intel I80C196, 80C320, PIC i en hel del olika tappningar och storlekar, Fujitsu F²MC-16LX, Renesas M16C och lite till. Med alla dessa har projektet definierat vad som har varit bäst till att lösa uppgiften!

Och hur man väljer?
* Ta reda på vilka hårdvarubehov som finns! Det kan vara UART, Capture-enhet(er), Timer(en eller fler) osv. VAR NOGA MED DETTA PUNKT!!!
* Ta reda på ung. hur mycket arbetsminne som behövs, det är lättast att uppskatta RAM-minnet, prog. minnet blir lite som det blir. Ha reserv!
* Processorhastigheten är inte så ofta avgörande, man kan mycket mer än många tror vid låga hastigheter - men ha koll på om det finns hastighetskrav!
* Ta reda på priser, kapslingar och annat lagom viktigt samt vad det betyder för projektet.
* Kolla vilka programmeringsspråk som finns och om det verkar fungera för programmören, ha även koll på hur enkelt det är att uppdatera i fält om det är ett kommersiellt produkt, ska man ha en speciell mojäng och fibbla med speciella program är det fel väg att gå!
* Nu är det ett rimligt begränsat antal man kan välja mellan, om de är likvärda väljer man den billigaste!

Vill du lära dig får du klura ut VAD du kunde tänka dig att göra först!
* Vill du t.ex. på vägen lära dig kommunicera seriellt behöver du minst en UART.
* Vill du mäta tider behöver du en Capture-enhet.
* Vill du göra någon vettig programmering behöver du ganska sannolikt en Timer - eller fler.
Osv. osv. osv.

Det är inte "bättre" att börja med X eller Y, det är bättre att börja! Alla µC kan klara att blinka en lampa, vill du ha ett billigt sätt köper du en PICKit3 samt några PIC18Fnånting med 40 pinnar i DIL-kapsel. Då har du minne nog, pinnar nog och hårdvaru nog att leka väl och länga och när du har tänket på hur man gör ett vettigt program kan du enkelt migrera till snart sagt vilken µC som helst, de är alla mycket lika i grunden.

Det känns lönlöst att skriva detta då det verkar vara svårt att få in det på ljustavlan men det kan finnas andra som kan förstå saken så för deras skull...
Senast redigerad av Icecap 17 november 2011, 08:42:23, redigerad totalt 1 gång.
Skriv svar