Arduino eller "naken" AVR med allt vad det innebär?

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Manneh
Inlägg: 151
Blev medlem: 15 juli 2012, 22:52:44
Ort: Sundsvall

Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av Manneh »

----->LÄS TEXTEN INNAN DU SVARAR. ÖNSKAR EJ PAJKASTNING! <-----

Jag vill gräva ner mig lite mer i atmels utbud. Hittills har jag klarat mig bra med arduino men det skulle vara roligt att testa lite "ren" AVR.

Det jag undrar är om jag kommer få någon nytta av att skippa arduino och fokusera på MCUn i sig. Som jag har förstått det så är ganska mycket redan gjort om man använder en arduino (med andra ord begränsat(?)). Detta är ingen begränsning jag har känt av och anledningen till att jag vill fördjupa mig är endast för att det intresserar mig.

Det jag har luskat fram att jag behöver är:
En processor.
En programmerare.
Lämplig bootloader.
Diverse komponenter för att allt ska rinna som det ska.

Det jag saknar:
Kunskapen.

Jag vill alltså ha lite fördelar med "ren" AVR så att jag känner att tiden jag är redo att lägga ner inte är helt i onödan ;)

Om någon har tips på litteratur, filmer eller annat som kan hjälpa mig lära så mottages detta gärna.
eqlazer
Inlägg: 923
Blev medlem: 22 september 2007, 13:53:45
Ort: Göteborg

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av eqlazer »

För det du vill göra så finns det ingen anledning att byta bort Arduinon. Det du ska göra är att inte använda dig utav deras utvecklingsmiljö utan kör någon annan och skriv "riktig" C-kod.
Arduino-hårdvaran och dess bootloader kan du fortfarande använda dig utav.
Manneh
Inlägg: 151
Blev medlem: 15 juli 2012, 22:52:44
Ort: Sundsvall

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av Manneh »

Okej. Projekten jag håller på med nu så använder jag inte arduinos. Utan lösa processorer. Det alltså smartast att bränna in arduino-bootloadern och köra på som att det vore en vanlig arduino?

Känns inte lika roligt men mycket enklare.
Användarvisningsbild
adent
Inlägg: 4246
Blev medlem: 27 november 2008, 22:56:23
Ort: Utanför Jönköping
Kontakt:

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av adent »

Ja, det är nog det enklaste, men ärligt talat är det inte särskillt svårt annars heller.
(Du behöver ingen boot-loader om du nöjer dig med att trycka in programmet via ISP-kontakten, jag har inte haft boot-loader i några av mina små projekt)

Jag har bara kört med gcc och miljön runt det. Allt man behöver finns i WinAVR-paketet.

Sedan har man mycket dokumentation här: http://www.nongnu.org/avr-libc/

Skapa en main.c inkludera filer som ev. behövs enligt länken ovan och gör det du vill i koden.
Största problemet är att hitta en bekväm Makefile som bygger åt dig, men det finns
massor. Bara öppna Makefilen i en editor och ändra att den bara ska bygga main.c
och sedan vilken processor du har och vilken port din avr-programmerare är ansluten till och vad du har för typ av programmerare,

Sen är det bara att skriva make i ett dos-fönster och sedan nått i stil med make upload, klart.

MVH: mikael
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av sodjan »

Jag förstår inte frågan riktigt. Du vet ju tydligen redan hur du vill
göra (d.v.s köra "naken" AVR direkt), det är väl bara att köra på.

> Det alltså smartast att...

Det finns inget som är "smartast" !
Bara ett antal olika lösningar som passor olika bra i olika sammanhang.
Bara du kan avgöra vad som passar bäst för just dig. Det framgår
inte vad dina AVR'er ska "göra" så det är lite svårt att svara på.

> Det jag saknar:
> Kunskapen.

Om vadå? Det finns så många olika sidor av myntet, så det går inte
att svara generellt på det. Det är mycket bättre att du sätter igång
och sedan tar du problemen/frågorna allt eftersom de dyker upp.

> För det du vill göra så finns det ingen anledning att byta bort Arduinon.

Du vet mer än jag om vad han "vill göra". Så vitt jag ser så framgår det
ingenting i tråden som kan användas till att avgöra om Arduino (-miljön)
är det mest lämpliga eller inte. Det som framgår är att det också
ska vara "roligt" och, ja, det är ju väldigt subjektivt... :-) :-)
Användarvisningsbild
Icecap
Inlägg: 26650
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av Icecap »

En Ärdudum är som sådan inte begränsat. Visst tar bootloadern plats men det är inte så värst mycket.

Det jag ser som problemet med Ärdudum är dessa "smarta" rutiner som följer med för drivning av detta och hint. Visst, de gör jobbet i många fall men jag är lite gammaldags: man vet inte helt säkert exakt vad de gör och hur de gör det och det är långt ifrån säkert att de är portabla till ett icke-Ärdudum miljö. I det hela tagit är det fel med rutiner som är "låsta" till ett speciellt miljö.

Jag har kört ett projekt där jag använde AVR Studio samt en AVRISP mk. 2. Det var i ren ANSI C, ingen rutiner utan källkod osv. Det behövs ingen bootloader (det är ju därför man har AVRISP'n) eller liknande och det fungerade ganska bra.

Men jag har ju skapat många drivrutiner själv, t.ex. kommunikation med LCD-moduler, interruptstyrd serieportskommunikation, EEPROM kommunikation osv. och behöver man en funktion kan man fint testa systemet på en Ärdudum, även om man vill bygga det som "diskret" krets, ett proof-of-concept ska ju egentligen bara avslöja om det man har planerat rent faktisk kan göra jobbet.

Sedan vet jag inte vilka begränsningar (om någon) som Ärdudum har, det kan vara interrupt, minne eller liknande så det har jag inte vägt in men skulle man vilja bygga enheter som man ämnar att använda som en "färdig funktion" kan det vara ganska mycket billigare i hårdvara att lämna Ärdudum-miljön, speciellt för amatörer som ju oftast har tid men knappt med pengar.

Och som extra komponenter för att en AVR ska göra jobbet: en keramisk resonator (om inte frekvensen behöver vara väldig exakt), en 100nF keramisk kondensator och ett pull-up motstånd, det räcker.

Vill man göra det enkelt för sig är det bra med en 6 pinnars stiftlist (2x3) som ICSP-kontakt, då är det bara att trycka programmeringsdonet på och det fungerar.
Användarvisningsbild
Lennart Aspenryd
Tidigare Lasp
Inlägg: 12607
Blev medlem: 1 juli 2011, 19:09:09
Ort: Helsingborg

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av Lennart Aspenryd »

Varför inte kolla in Brage!
Jag köpte en slik häromdagen på www.lawicel-shop.se

http://www.lawicel-shop.se/find.aspx?ln ... ring=Brage
Billigare blir det inte tror Lasp
Användarvisningsbild
PHermansson
EF Sponsor
Inlägg: 4340
Blev medlem: 22 december 2004, 00:46:38
Ort: Särestad Grästorp
Kontakt:

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av PHermansson »

Icecap skrev:En Ärdudum är som sådan inte begränsat. Visst tar bootloadern plats men det är inte så värst mycket.

Det jag ser som problemet med Ärdudum är dessa "smarta" rutiner som följer med för drivning av detta och hint. Visst, de gör jobbet i många fall men jag är lite gammaldags: man vet inte helt säkert exakt vad de gör och hur de gör det och det är långt ifrån säkert att de är portabla till ett icke-Ärdudum miljö. I det hela tagit är det fel med rutiner som är "låsta" till ett speciellt miljö.

...

Och som extra komponenter för att en AVR ska göra jobbet: en keramisk resonator (om inte frekvensen behöver vara väldig exakt), en 100nF keramisk kondensator och ett pull-up motstånd, det räcker.

Vill man veta vad Arduino-rutinerna gör så öppnar man dem i en textredigerare och läser koden, de är inte kompilerade vid leverans.
Vad gäller komponenter så behöver man inget extra för att köra med Arduino vs "ren" AVR. Det är en standarduppkoppling, till denna kopplas en USB/seriell-omvandlare. Den enklaste Arduino du kan bygga har en MCU, en avkopplingskondensator, ett pullup-motstånd för reset samt en resetknapp.
Manneh
Inlägg: 151
Blev medlem: 15 juli 2012, 22:52:44
Ort: Sundsvall

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av Manneh »

sodjan:

Det adent menade med att arduinon duger till allt jag vill är för att jag just skrev att den gör det. Jag har aldrig stött på ett problem som inte går att lösa på en arduino bara för att det är en arduino. Enda anledningen att jag vill lämna arduino-hårdvaran iallafall är för att det är roligt att göra egna kretskort och känna att det är jag som gjort detta. Det blir inte legokänsla.

Icecap:

Jag har allt detta. Dock ingen keramisk resonator. Duger inte en vanlig kristall? Har ett gäng Atmega328P och 16MHz kristaller till dessa. Har ännu inte testat dessa varken på laminat eller kopplingsdäck. Fick hem dom häromdagen.


Jag tror inte någon av er förstår riktigt vad det är jag vill åstakomma. Detta är ett resultat av dålig formulering från min sida..
Jag vill alltså endast fördjupa mina kunskaper för skojs skull, inte för att jag i dagsläget är begränsad av arduinon vare sig i hårdvara eller mjukvara.
Kan även flika in att jag inte riktigt vet på hur djupt vatten jag ger mig in på här. Ni erfarna får gärna berätta. Som total novis, hur svårt är det att komma igång helt utan arduino och dess IDE med färdiga bibliotek?
nifelheim
Den första
Inlägg: 2490
Blev medlem: 27 mars 2008, 22:31:16
Ort: stockholm

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av nifelheim »

Manneh skrev:........ fokusera på MCUn i sig.
Då tycker jag det är assembler som gäller, databladet i vänsterhanden hela tiden.

Kanske börja med att konvertera någon enkel fungerande rutin med inline assembler i ditt C/C++ program?

Titta på Arduinos bootloader och skriva en egen bootloader?
perra_e
Inlägg: 983
Blev medlem: 13 februari 2009, 16:26:53
Ort: Jönköping

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av perra_e »

Om du har en Arduino Leonardo skall det enligt schemat för den finnas en kontakt för ISP (In-System Programing).
http://arduino.cc/en/uploads/Main/ardui ... tic_3b.pdf

Vad du behöver för att komma igång med "Ren" programmering för en Atmel är i så fall:
1. Atmel Studio. Den laddar du ner från atmels hemsida. http://www.atmel.com/tools/ATMELSTUDIO.aspx
2. En programmerare som stöds av AVR Studio för ISP. Jag kör själv med en AVR ISP MKII. Det finns massor på eBay t.ex. Både orginal och kloner.

Det finns fler sätt och fler verktyg, men detta är vad jag kör och det är relativt enkelt och en bra uvecklingsmiljö tycker jag.

--Per
Användarvisningsbild
Icecap
Inlägg: 26650
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av Icecap »

Manneh: såklart duger det bra med kristall + lastkondensatorer! Man vinner noggrannhet med kristall men kristall kostar mer och är mer känsliga rent mekanisk.
Användarvisningsbild
adent
Inlägg: 4246
Blev medlem: 27 november 2008, 22:56:23
Ort: Utanför Jönköping
Kontakt:

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av adent »

Jag tror inte det var jag som skrev det du citerade mig på.

Jag förstår precis din känsla. Jättekul att ha gjort allt från grunden.

Nu fanns iofs inte Arduinon när jag började. Men AVR:en är inte alls svår i sig. Faktiskt riktigt enkel. Googla och kolla youtube.

Själv började jag med en AVR, en lysdiod med ett motstånd och en programmeringskabel som bara är en rak sladd från parallellporten. Hårdvara för 50 kronor eller så. En breadboard oxo då
som processorn satt i.

Jag gillar WinAVR/avr-gcc för att den är baserad på open source. Men AVR-Studio sägs vara trevligt.

Hittar ingen bra tutorial såhär på stående fot dock :(
sodjan
EF Sponsor
Inlägg: 43251
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av sodjan »

> Jag vill alltså endast fördjupa mina kunskaper för skojs skull,

Helt OK, och jag såg det som den viktigaste punkten i ditt första inlägg
helt enkelt därför att det övriga egentligen inte spelar något större roll. :-)

> Kan även flika in att jag inte riktigt vet på hur djupt vatten jag ger mig in på här.

Inte speciellt djupt därför att...

> Som total novis...

det är du ju inte, eftersom du har kört en del med Arduino. En hel del måste
man i alla fall kunna för att programmera Arduino, sådant som hur I/O rent
elektriskt fungerar o.s.v.

Men, fundera inte så himla mycket! Kör hårt! :-)
Om inte "naked AVR" var så kul som det lät, så är det ju bara att
köra Ardunio i alla fall (på original eller egen hårdvara).
Manneh
Inlägg: 151
Blev medlem: 15 juli 2012, 22:52:44
Ort: Sundsvall

Re: Arduino eller "naken" AVR med allt vad det innebär?

Inlägg av Manneh »

adent:

Sorry! Såg lite fel.

Ni andra:

Det låter ju inte som att det är allt för svårt. Jag kan ju arduino men jag antog att det är ett helt annat hav om man ska adressera allt manuellt. jag får helt enkelt dyka in med huvudet först och se vad som händer.

Blir lite förvånad att ingen har tips på litteratur eller liknande. Alla kan väl inte vara självlärda. Eller? :humm:

Tack för alla svar. Är ny här på forumet och jag gillar det redan :bravo:
Skriv svar