Fórum témák

» Több friss téma
Fórum » ARM - Miértek hogyanok
 
Témaindító: gtk, idő: Jún 26, 2007
Lapozás: OK   146 / 146
(#) HiMen válasza csatti2 hozzászólására (») Nov 1, 2019 /
 
Arduino IDE-vel lehet STM32 -t programozni ? Mit kell hozzá letölteni (linux) , mert a menüjében nem látom felsorolva az alaplapok között.
(#) cross51 válasza rolandgw hozzászólására (») Nov 1, 2019 /
 
Ezt megnézem majd.
Még egy kérdés mivel itt egy vektoron van az RX TX Error megszakítás jól gondolom, hogyha mondjuk az RXNE it kezelem és közben be jön egy TXE akkor nem szakíthatja meg saját magát?
(még PIC18 assembly-nél emlékszem, hogy ott tiltotta a global it engedélyezést it-be lépéskor és az ISR végén vissza kellet kapcsolni, de itt nem tudom, hogy van)
(#) csatti2 válasza HiMen hozzászólására (») Nov 1, 2019 / 1
 
Például az olcsó blue pill-t. Link
(#) csatti2 válasza cross51 hozzászólására (») Nov 1, 2019 /
 
Önmagát nem tudja megszakítani egy megszakítás, lévén nem magasabb a prioritása saját magánál. Más megszakítás viszont megszakíthatja, ha magasabb a prioritása (azaz a hozzárendelt prioritásérték alacsonyabb, csakhogy könnyebb legyen belezavarodni ).
(#) cross51 válasza csatti2 hozzászólására (») Nov 1, 2019 /
 
Az, hogy más megszakítja jelenleg nem érdekel, csak van olyan kontroller ahol differens vektoron vannak a TX, RX, error it-k és ott nem feltétlen jó, ha az rx it-t megszakítja egy error it (bár ezen még azért gondolkoznom kell, mert az se biztos, hogy rossz )
A prioritás értéket már kérdeztem, mert bele zavarodtam utána természetesen logikus volt, hogy miért így van, de én a felső api részen invertálni szoktam, hogy olvashatóbb legyen.
(#) HiMen válasza csatti2 hozzászólására (») Nov 1, 2019 /
 
Nagyon szuper! Köszi!

Az Arduino IDE-t már ismerem, nagyon örülök, hogy az STM32 -is megy vele!
A
Idézet:
„CubeMX - Truestudio”
vagy a
Idézet:
„Keil”
(többről egyenlőre nem hallottam) nyújt valami többet amiért érdemes lenne beletanulnom?
(#) benjami válasza HiMen hozzászólására (») Nov 1, 2019 / 1
 
Arduino ide:
- csak azt a néhány típust támogatja, amihez megcsinálták
- nincs debug lehetőség (ill. csak annyi, hogy printf-el kiiratgatod a változóid értékeit)
- összetettebb programnál az 1db *.ino-ba mindent beletéve áttekinthetetlenül hosszú lesz
Truestudio, Keil:
- mindegyik stm32 típus támogatva van
- debug / trace lehetőség
- fordító optimalizálási lehetőségek használata
- ram-ból futtatható kód készítése, debuggolása (fejlesztéskor a flash 'kopásának' elkerülésére és a gyorsabb programfeltöltés miatt hasznos lehetőség)
- több forrásfájl használata
- a nativ c kód kevésbé erőforrásigényes mint az arduino által használt c++ (a keil/truestudio-ban is van lehetőség c++ kódot csinálni, keverhető is az asm, a c és a c++ forrás
Biztos van még ezeken kívül más is, de hirtelen ennyi jutott az eszembe.
(#) HiMen válasza benjami hozzászólására (») Nov 1, 2019 /
 
Meg vagyok győzve
(#) vargham válasza benjami hozzászólására (») Nov 2, 2019 /
 
A debugba beleértendő: CPU regiszter lista az aktuális értékekkel, változók értékének kijelzése akrá grafikusan is, változók értékének változtatása futásidőben, call stack, stb.
(#) cross51 válasza HiMen hozzászólására (») Nov 2, 2019 / 2
 
Szerintem bármelyik 32 bites kontroller arduino stack-el ágyúval verébre szituáció.
Az arduino leginkább blocking kódot használ mindenre így elvész arra a teljesítmény pl.: while() polling arra, hogy UART-on ki ment-e egy adat byte.
Meg ott a delay_ms függvény is amit én "bűnnek" tartok, mivel x ms-re megállítja a procit (persze interrupt-ot tud kezelni).

Amúgy, ha mondjuk egy mega/uno-val is megelégszel arra tudsz kódot írni Atmel Studio-ban is (ami visual studio alapú) és ott van maga a Visual Studio-hoz is a VisualMicro.
ARM-es controller-t is lehet visual studio-ban programozni (bár ez fizetős) de ott van a visual studio code video ami ingyenes és szerintem messze jobb még az is mint bármelyik java-án alapuló "memória temető".
(#) cross51 válasza csatti2 hozzászólására (») Nov 2, 2019 /
 
Egy más jellegű kérdés.
Van egy tömb azt akarom, hogy a startup ne inicializálja, megtaláltam, hogy be kell rakni egy section-be eddig oké, de ha az a linker script-et nem módosítom (hozzáadok egy .noinit section-t és erre hivatkozok) akkor a build után azt látom, hogy ez a section be került a flash-be is és a ram-ba is és flash és ram szinten is helyet foglalnak a section-be írt változók ez normális?
(#) csatti2 válasza cross51 hozzászólására (») Nov 2, 2019 /
 
A section-ok a linker scriptnek fontosak. Ha ott nem adod meg, hogy hova menjen akkor honnan kellene tudnia, hogy ezt csak a flash-ben szeretnéd tárolni? Ugyanolyan változónak fogja tekinteni, mint a többit.
(#) csatti2 válasza cross51 hozzászólására (») Nov 7, 2019 /
 
Köszi a VS Code-os tippért, nagyszerű cucc.

Pont valami ilyesmit kerestem mostanában, mert az aktuális projektemben többféle mikrokontrollert is használok (ráadásul különböző gyártóktól) és szerettem volna egységes projektként kezelni az egészet egy IDE alatt, de makefile alapon (SEGGER Studio jó lenne, de nem akarok többé IDE-től függni, Atmel Studio -> EmBitz -> Atollic TrueStudio -> STM Studio ... Grrrr). Az Android Studio-t mondjuk így sem úszom meg...

Ugyan kis ideig eltartott, míg összeraktam a saját toolchain-emet rá és kikísérleteztem a szükséges JSON-okat, de most már szépen működik a debug és a fejlesztés is (intellisense is 100%-os, ami gyakran kínszenvedés volt másutt). Simán tudok különböző ARM-okra is (Nordic, STM) vagy akár Win32-re is fordítani (Win32 a GUI szimulátor ha kell, most épp nem kell majd, de egy korábbi projektemen leteszteltem).
(#) vargham válasza csatti2 hozzászólására (») Nov 7, 2019 /
 
Tudsz leírást linkelni? Kösz.
(#) cross51 válasza csatti2 hozzászólására (») Nov 7, 2019 /
 
Örülök, hogy ezt mondod egyszer csak a gyártók is rá jönnek, hogy a java...
(Nem tudom ki mondta, de valaki említette régebben, hogy azért a Java körül forog az egész ipar, mert mikor elindult a modern IDE dolog akkor a java volt nyílt forrású csak a VS zárt volt)

A VS Code-hoz még kevés a doku így nehéz vele elindulni (adott esetben) a Studio-hoz a Visual GDB miatt elég sok doksi van már.
Érdemes egyébként utána olvasni mit tud a VS GDB mert szerintem többet tud kb mint bármelyik IDE.

Az Android studio-hoz biztos több supportot találsz, de a Visual Studio-ban tudsz C#-ban Android-ra fejleszteni.

Én háklis vagyok a kód színére és én a Visual Studio színeit preferálom a legjobban, de a VS Code-ban nem tudsz pontosan VS Studio színt össze rakni.
(#) csatti2 válasza vargham hozzászólására (») Nov 8, 2019 /
 
Több leírásból raktam össze én is.
Itt a template workspace-m, amin dolgozom éppen. Egyelőre két nordic minta projektet lehet belőle fordítani (a debug-ot is teszteltem), illetve egy generált STM32-st.
Időzáras link a template projektre
Találsz egy setup.txt-t a tőkönyvtárban, ott vannak a telepítési instrukciók a toolchainre és a kötelezően beállítandó környezeti változók.
Ha nem akarsz bajlódni a telepítésekkel (a környezeti változókat azért be kell állítani), itt az aktuális toolchain-em:
Időzáras link a toolchain-re

Az intellisense helyes működéséhez először le kell fordítani a projekteket a build task-okkal. Ekkor automatikusan legenerálódik az a fájl, aminek alapján véigig tud menni a projektfán.
Következő: »»   146 / 146
Bejelentkezés

Belépés

Hirdetés
Lapoda.hu     XDT.hu     HEStore.hu