Att gå från AVR till STM32F4 ARM

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

Re: Att gå från AVR till STM32F4 ARM

Inlägg av blueint »

Vad skulle ni säga om skillnaden mellan ARM och ARM-Cortex?
Användarvisningsbild
psynoise
EF Sponsor
Inlägg: 7226
Blev medlem: 26 juni 2003, 19:23:36
Ort: Landvetter

Re: Att gå från AVR till STM32F4 ARM

Inlägg av psynoise »

Vilken annan ARM-arkitektur tänker du på, ARM7 eller?
jappelino_1
Inlägg: 81
Blev medlem: 13 april 2010, 14:40:04
Ort: Stockholm

Re: Att gå från AVR till STM32F4 ARM

Inlägg av jappelino_1 »

Cortex är väl vad jag förstår ett försök att få till någon form av standard.

En del av kretsarna är pinkompatibla, det är dock inte pereferi delarna så lägsta lagret behöver nog skrivas om ifall man byter.

Det hade varit kul om fler körde Texas Stellaris ARM Cortex M4, det var ett stort intresse innan den kom pga priset $ 4,98

Nu verkar det som de som beställde använder dem som hyllvärmare, eller har jag fel?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46976
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Att gå från AVR till STM32F4 ARM

Inlägg av TomasL »

sodjan skrev:Min poäng var att Tomas erfarenheter från PIC18/PIC32 kanske inte är helt
rellevanta jämfört med ditt fall. Med tanke på att du skrev "Lät uppmuntrande."
Så länge som man skriver i C borde ett arkitekturbyte inte vara någon speciellt stort hopp.
Men ok, har man hållt på att traggla i assembler, och liten kunskap i C så kan nog hoppet vara stort.
Gissar att samma gäller om man skall börja med C++, och inte använt det förut.

Annars är det väl bara annorlunda funktionsanrop och konfigurering av periferienheterna, samt att interrupten naturligtvis hanteras olika.
Rick81
Inlägg: 755
Blev medlem: 30 december 2005, 13:07:09

Re: Att gå från AVR till STM32F4 ARM

Inlägg av Rick81 »

Har själv gått från PCI16/PIC18 till STM32F1/STM32F4. Jag rekommendera att använda coocox för att slippa krångla med länkfiler, startupfiler osv med GCC vilket jag tyckte vara största problemet med övergången.

ST har bra exempelkoder som man kan utgå från för DMA, ADC, RTC, UART, USB osv...

När man väl fått igång så finns det mycket trevliga funktioner. Jag gjorde tex en "gitarrfrekvensanalysator" med följande upplägg:
* Kopplade elgitarr till förstärkarsteg med OP-förstärkare
* Kopplad förstärkare till 12 bit ADC på stm32
* Kopplade ADC till DMA och till timer
* Värden samplades med 10 kHz (har jag för mig)
* Satte upp så man fick ett interrupt vid varje 1024 värden, dvs processorn kunde köra fritt när dessa 1024 samplades då samplingen sköttes i bakgrunden av DMA och timer
* Vid varje 1024 värdes intterupt så kopplades DMA om till en annan buffer medan processorn gjorde FFT på de precis samplade 1024 värden
* FFT svar skickades sedan till PC via USB/UART
Tyckte själv att denna konstruktion blev ganska häftig och det behövdes bara en OP förstärkarkrets, allt annat sköttes intern i STM32. Att göra denna konstruktion i PIC16/18 hade varit en utmaning.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46976
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Att gå från AVR till STM32F4 ARM

Inlägg av TomasL »

Pic32 och MPLAB har inget krångel med länkningsskript osv.
Användarvisningsbild
LHelge
Inlägg: 1772
Blev medlem: 2 september 2007, 18:25:31
Ort: Östergötland
Kontakt:

Re: Att gå från AVR till STM32F4 ARM

Inlägg av LHelge »

Det har inte Coocox heller, skulle du däremot sätta ihop en egen toolchain till PIC32 med Eclipse/GCC/OpenOCD är jag övertygad om att du skulle behöva hacka lite länkscript och makefiler. Nu behöver man ju inte det om man inte vill eftersom det finns gratisalternativ utan begränsningar. Vill minnas att C32 kostar en del om man vill kunna köra fullt ut med optimering och allt. Ska man ändå betala finns det en uppsjö av olika IDE:er som fungerar till STM32-serien. Keil, Atollic och IAR brukar rekommenderas av ST själva, men det finns ett gäng till, nackdelen med dessa jämfört med coocox är att de är begränsade till 32k stora applikationer.

Vad gäller programmeringen är det mycket riktigt inte någon större tröskel, det är arkitekturen med alla dess periferienheter som tar ett tag att komma underfund med hur de funkar. Jag som använt både 8/16/32 bitars PIC:ar och Cortex-M3/4 skulle jämföra övergången mellan PIC:arna som trehjuling/cykel/moped medan Cortex-M3/4 är som en Hayabusa i sammanhanget. Jävligt läskigt i början, direkt olämplig i vissa situationer men det känns lite tråkigt att hoppa upp på cykeln igen när man väl prövat den.

En talande jämförelse är om man kollar på referensmanualen för PIC32-familjen jämfört med STM32F3. 5/25 Mb, 250/1000 sidor.

Som vanligt går det inte säga att den ena är bättre än den andra, de har sina tillämpningar helt enkelt.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 46976
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Att gå från AVR till STM32F4 ARM

Inlägg av TomasL »

En talande jämförelse är om man kollar på referensmanualen för PIC32-familjen jämfört med STM32F3. 5/25 Mb, 250/1000 sidor.
Nja det stämmer inte riktigt, Det du refererar till är enbart databladet för hårdvaran, dvs i princip enbart de elektrisk specifikationerna och pin-outen.
Referens för hårdvaran är ca 1200 sidor, sedan tillkommer referensen för CPU'n ca 3000 sidor eller så.

Sedan utöver det tillkommer naturligtvis referensen för implementationen av kompilatorn samt APIerna, totalt ytterligare ett par tusen sidor, typ

Så att göra den jämförelsen du gjorde är direkt felaktig
Skriv svar