Beslutsångest (val av AVR)

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
N3vYn
Inlägg: 22
Blev medlem: 15 januari 2010, 20:41:36
Ort: Lugnås
Kontakt:

Beslutsångest (val av AVR)

Inlägg av N3vYn »

Disclaimer: Jag kanske kan uppfattas som en smula övertydlig i detta inlägg, men då jag ej är helt 100 på detta med uC's än tycker jag det är bättre att vara övertydlig än att uppfattas som ignorant och lat.

Hej,

Efter att ha funnit mycket nöje i att leka med min Arduino, har jag bestämt mig för att börja koda uC's "på riktigt".

Min initiala tanke var att detta nog ej är så svårt, delvis pga Arduinon och delvis pga drygt tio års programmerings-erfarenhet i diverse C-derrivat.
Men efter att ha läst igenom varenda nybörjartråd i denna forumdel(ja, jag började längst bak på sidan 66 och har läst mig fram till sidan 1), så har denna tanke försvunnit någonstans ;)

Mitt val av uC har efter mycket eftertanke fallit på AVR-familjen, då det verkar finnas en väldigt stor community kring dessa.
Valet av uC är naturligtvis ej hugget i sten och kan säkerligen förändras vid senare tillfälle, men AVR är mitt val av start-plattform pga communityn som jag upplever vara störst.
Valet av programmerare som skall inhandlas har hamnat på AVRISP mkII.
Språket jag kommer att skriva i är Assembler, då detta verkar ge en bättre bild av hur uC'n faktiskt fungerar.

Har hitintills läst igenom en del svårsmält(har en känsla av att största inlärningströskeln är att lära sig läsa all denna information) dokumentation från Atmel.
Nu är jag framme vid att börja läsa databladet, och det är här mitt problem ligger:

Jag har i dagsläget ingen egen fungerande skrivare, och är hänvisad till att antingen förstöra ögonen vid skärmen, eller mygla utskrifter på jobbet när alla andra gått hem.
Eftersom mina ögon är mig väldigt kära så har jag valt det senare alternativet, men då kommer jag bara skriva ut datablad för 1 uC då de är på rätt många sidor.

Jag känner lite att jag har två olika alternativ när det gäller val av uC:
1. en uC som jag kan göra "allt" med, utan att behöva gå upp till någon större modell. Min tanke går mot ATmega328p.
2. en uC med högst begränsad mängd resurser, i syfte att lära mig att ej slösa med resurser i onödan. Någon modell av ATtiny?

Så jag skulle vara ytterst tacksam om någon här kan tänka sig att hjälpa mig bli av med lite beslutsångest.

//Micke

PS.
Skulle vilja ge en liten känga till många andra skapare av nybörjartrådar som ej återkommit med resultat av sista lösningsförslag, hade alla gjort detta hade det underlättat för andra nybörjare ;)
DS.
Användarvisningsbild
Icecap
Inlägg: 26659
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Beslutsångest (val av AVR)

Inlägg av Icecap »

En eloge för att du faktisk har läst först och frågar sedan!!! Mer sånt! :bravo:

Och sedan: att JAG inte gillar den processorfamilj är en bisak men har du inget speciellt att bygga men mest vill "smaka på" bör du välja en processor med mycket av allt! På detta vis behöver du inte att känna begränsningarna i hårdvaran, känner du för det kan du kommunicera via seriell port, trycka på ett LCD, mäta spänning med AD-omvandlare osv.

När du sedan vill göra en specifik grej kan du "banta ner" till den processor som kan just vad du behöver och ha kvar din experimentplattform. Portningen av t.ex. ett LCD till en annan port är ju enkel.

Och ytterligare en eloge för att du vill gå assemblervägen, inte för att det är det programmeringseffektivaste språk men, i mina ögon, det mest förståelseseffektiva språket!
När du väl "kan" processorn och fattar alla dessa register och skit som ska ställas kan du enkelt migrera till C eller annat vettigt som ger mer programmeringseffektivitet men i nuläget är det ett mycket bra val du har gjort.
Senast redigerad av Icecap 16 januari 2010, 09:05:01, redigerad totalt 1 gång.
thepirateboy
EF Sponsor
Inlägg: 2109
Blev medlem: 27 augusti 2005, 20:57:58
Ort: Borlänge

Re: Beslutsångest (val av AVR)

Inlägg av thepirateboy »

Bra val av MCU. AVR är en modern och enkel MCU att hantera, samt som sagt bra community.

ATmega328PA/ATmega168PA/ATmega88PA/ATmega48PA är den familj som ger mest för pengarna, det finns ingen
anledning att välja något annat om du gör prylar för hemmabruk. Den största fördelen med Tiny är att den har mindre kapsel.
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Beslutsångest (val av AVR)

Inlägg av blueint »

Att köpa en skrivare att använda hemma är kanske en bra investering.. :)
Användarvisningsbild
jesse
Inlägg: 9240
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: Beslutsångest (val av AVR)

Inlägg av jesse »

Icecap kan ha rätt i varje enskilt fall då du gör ett projekt. Men jag förstår att du vill lära dig en processor som du vill ha som standard i allt du gör ett tag framöver.

Storleken kan ju ingen tipsa om egentligen om du inte vet ungefär vilka resurser du kommer att använda. UART t.ex. är ju trevligt att ha, om du vill ha kontakt med omgivningen. Och i så fall faller tiny... De flersta Tiny faller också bort så fort du vill ha många "pinnar".

Om du ska börja i Assembler så antar jag att du kommer att köra ganska måttliga projekt ett tag, så du borde inte behöva någon jätteprocessor ( = mycket flashminne).

Jag föreslår också att du ger dig på familjen Atmega 48/88/168/328 .... De är förhålladevis enkla och billiga, men har ändå lagom mycket "jox" och bra med I/O pinnar.

Börja att skaffa ett gäng Atmega48 - om du inte måste använda mycket RAM minne så är den väldigt prisvärd. Skulle du sedan behöva t.ex. en 168 eller 328 så byter du bara ut kretsen i princip - kapseln är detsamma och koden ska fungera till 99% (det är minnesadresseringen och stackpekaren som kan skilja av naturliga skäl). 328 behöver du knappast skaffa om du inte vet med dig att du ska använda så mycket minne ( bara onödigt dyrt).

En bra egenskap som finns hos flera attiny-processorer (t.ex. attiny 261/461) är att de har differentiell mätning med ADC, något som tyvärr många "mega" saknar. Men dessa processorer är något annorlunda (och du måste alltså ladda ner ännu ett datablad!) och saknar UART och SPI viket ä ger minuspoäng.

(den senaste modellen heter atmega48/88/168/328 PA, som ersätter tidigare modeller P, men det är inte säkert att du hittar att köpa dem än, jag antar att skillnaden är försumbar)

Och så glöm inte att läsa Per Foyers bok Mikroprocessorteknik.

"Den här boken handlar om mikroprocessorteknik och behandlar hur denna teknik används i datorsystem. Boken är inriktad på hur programmering av mikroprocessorer går till på låg nivå. Denna typ av programmering utförs vanligen i assembler och kräver grundläggande kunskap om hårdvaran. Därför ges en introduktion i datorteknik i början av boken, bland annat beskrivs von Neumann-arkitekturen och för datorn elementära komponenter såsom CPU och minne.

Boken använder sig av de populära microcontroller-kretsarna ur AVR-familjen för att exemplifiera olika saker. Dessa kretsar kan kallas för enchipsdatorer, då de förutom CPU även innehåller minne (RAM, EEPROM och flash-ROM) samt I/O-portar. Denna konstruktion gör dem flexibla och billiga att använda i en rad sammanhang, exempelvis i undervisning.

Boken är främst avsedd för studerande vid högskolor och universitet på grundläggande kurser i mikroprocessorteknik. Den ger en bra grund för vidare studier i programmering av datorer."
Senast redigerad av jesse 15 januari 2010, 22:23:45, redigerad totalt 2 gånger.
Gimbal
Inlägg: 8687
Blev medlem: 20 april 2005, 15:43:53

Re: Beslutsångest (val av AVR)

Inlägg av Gimbal »

Håller med övriga här, experimentera med den större avr'en och välj de mindre när du vet exakt vad du ska bygga och kan speca precis vad du behöver.
N3vYn
Inlägg: 22
Blev medlem: 15 januari 2010, 20:41:36
Ort: Lugnås
Kontakt:

Re: Beslutsångest (val av AVR)

Inlägg av N3vYn »

Jag får tacka så hemskt mycket för era synpunkter, då blir det nog några av ATmega 48/88/168/328 som inhandlas, antagligen 48:an.

Icecap: Tack för lovorden, även om det för mig är självklart att ta in så mycket information som möjligt på egen hand. Kanske har något med mitt jobb som supporttekniker att göra? :)

thepirateboy: Ja, jag har fått den uppfattningen om att just de ger mest värde per krona, så blir som sagt en ATmega48 :)

blueint: Klart det är en bra investering, men det är ju en prioriteringsfråga och jag känner att kapslar, komponentsatser och sådant hamnar en bit över skrivare ;)

jesse: Tack för informativt inlägg om skillnaderna mellan processorerna! Boken ligger för övrigt redan i en varukorg och väntar på löning :)
Senast redigerad av N3vYn 16 januari 2010, 17:50:39, redigerad totalt 1 gång.
johano
Inlägg: 1943
Blev medlem: 22 januari 2008, 10:07:45
Ort: Stockholm

Re: Beslutsångest (val av AVR)

Inlägg av johano »

jesse skrev:...UART t.ex. är ju trevligt att ha, om du vill ha kontakt med omgivningen. Och i så fall faller tiny... De flersta Tiny faller också bort så fort du vill ha många "pinnar".
Nja, ATTiny2313 har iaf. USART
Tycker den är en väldigt trevlig "förpackning" som är rätt lagom stor...

/johan
Användarvisningsbild
jesse
Inlägg: 9240
Blev medlem: 10 september 2007, 12:03:55
Ort: Alingsås

Re: Beslutsångest (val av AVR)

Inlägg av jesse »

jo, det är väl undantaget. Tyvärr har den ingen ADC, annars hade den varit toppen.
Användarvisningsbild
Swech
EF Sponsor
Inlägg: 4750
Blev medlem: 6 november 2006, 21:43:35
Ort: Munkedal, Sverige (Sweden)
Kontakt:

Re: Beslutsångest (val av AVR)

Inlägg av Swech »

Jag hade nog rekommenderat att börja med en Tiny... plåga den rejält :D
och när man är varm i kläderna byta upp sig till Mega...

Det blir inte ett sådant mastigt datablad att börja med.
Tillochmed en Tiny24 går att ha mycket kul med..

Swech
hatten
Inlägg: 94
Blev medlem: 9 maj 2008, 22:16:23
Ort: Uppsala

Re: Beslutsångest (val av AVR)

Inlägg av hatten »

Välkommen till forumet!

Jag tycker att du är helt rätt ute vad gäller tillverkare, kretsar, ja till och med programmerare. Assembly som programmeringsspråk är bra att börja med, som tidigare konstaterats, men jag råder dig att migrera till något högnivåspråk (läs: C) direkt du känner dig redo och inte en minut senare. Vad gäller databladet så är det av absolut yttersta vikt, men i mina ögon mer som referens än som något att sträckläsa. Vill du spara papper så kan du som en början printa ut de "beskrivande" delarna av intressanta moduler, och lämna de många registerbeskrivningarna på hårddisken tills dess de blir aktuella. Det blir ett lagom roligt jobb att sitta och manuellt välja ut sidor för utskrift men jämfört med att läsa alla 66 sidor i detta underforum så får det väl räknas som en baggis :)

Glöm inte att du behöver lite grundläggande elektronikhårdvara också, typ labbplattor, kopplingstråd, enstaka spänningsregulatorer och passiva komponenter. En enkel LCD-display eller PC-kommunikation (tex någon UART->USB-kabel) underlättar enormt mycket vid felsökning.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47013
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Beslutsångest (val av AVR)

Inlägg av TomasL »

Eftersom du är hemma i diverse C-derivat, och vill göra allt, är valet naturligtvis en PIC32.
PIC18 är iofs inte helt fel det heller. Dock kan den naturligtvis inte göra allt som en 32a kan göra

Fördelar:
Microchip har de erkänt bästa databladen bland alla uC-tillverkare.
Det finns ett enormt stöd från uChip med app och design-notes med källkod.
PIC communityn är större (är övertygad om detta)

He He nu bäddar jag för ett krig mellan PIC och AVR.

Oavsett vilket, alla applikationsvarianter du kan tänka dig finns att ladda hem från uChips site, en del med och en del utan kod.

Edit och tillägg.
ASM i PIC världen är lika enkelt eller svårt som alla andra (så länge man avhåller sig från de första i 16 serien).

Deras utvecklingsverktyg MPLAB är helt kostnadsfritt och inkluderar både C och ASM med stöd för deras närmare 700 olika processorer, detta inkluderar stort sett samtliga bibliotek och supportverktyg.

En annan nog så viktig sak är uChips errator, där de i detalj talarar om vad som ite fungerar som tänkt är samt hur man skall kringå kiselfelen, de är nästan unika i detta sammanhang, med just information.
Användarvisningsbild
E85
Inlägg: 1274
Blev medlem: 29 maj 2007, 16:24:19
Ort: Övik

Re: Beslutsångest (val av AVR)

Inlägg av E85 »

Om du vill göra "allt" så kan du ju även prova STM32 stamp. Jag har en sån som jag programmerar i C med gratis kompilator.

Men varför köpa ny mikrokontroller? Arduinon har väl ISP och det sitter väl en 328 eller 168 på dom redan? Köp en AVR-ISP500 t.ex (edit: såg att du valde mkII men går ju bra det me) så kan du programmera arduinon "på riktigt".
hatten
Inlägg: 94
Blev medlem: 9 maj 2008, 22:16:23
Ort: Uppsala

Re: Beslutsångest (val av AVR)

Inlägg av hatten »

Jaha, ja det var väl bara en tidsfråga innan de icke-troende skulle komma hit och förstöra denna gemytliga tråd :)

Förr eller senare känner du kanske behovet att flytta upp till något kraftfullare men jag tycker absolut inte att en 32-bitarsdator är det naturliga insteget. Varför inte köpa en FPGA-plattform direkt, isåfall. Skulle du mot förmodan snegla på 32-bitar redan idag så håller jag med E85 om ARM.

EDIT; Klickade på STM32-länken. Cortex-M3 med "serial debug mode" och diverse godis för $25, jösses! Vet inte hur jag ska få tid över att leka med den, men en sån måste jag ha..
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 47013
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Beslutsångest (val av AVR)

Inlägg av TomasL »

PIC32 kostar bara nån eller två $ typ, dvs skitbillig.
Starterkitet har jag sett för tre hundringar typ.
Skriv svar