embedded - ARM Development on Linux -
i have purchased tiva c series launchpad tm4c123g evaluation kit texas instruments. kit contains small pcb arm cortex m4f microcontroller. want start writing software microcontroller. used program avr 8-bit microcontrollers using avr studio on windows. heard shoud easy program arm-based microcontrollers on linux, , since linux main platform, simple ide work more or less used avr.
for several days have been searching ide , tools job. surprise, few run on linux, , none open source or freeware. can true? not want spend several hundred dollars try out programming cortex m4f. nor want learn 1 ide , later when found out not enough or expensive. used linux , open source way of doing things , shocked nobody seem doing serious embedded arm programming open source tools on linux. please correct me if wrong.
i have no plans running linux on cortex m4f - want program normal microcontroller.
texas instruments recommends 1 of following tool chains on cover of evaluation kit:
- code composer studio ide: full functional board locked
- keil: 32kb address limited
- iar: 32kb address limited
- mentor embedded sourcery codebench: 30-day full functional
i have been recommended red studio code_red.
neither open source or free , have limitations. seems me code composer studio , red studio linux compatible.
i stumbled upon yet product, rowley crossworks, linux compatible still commercial , expensive.
is true there no open source alternative? of products seem use eclipse , gcc, 1 should able without these commercial packages, right? can't find tutorial or guide explaining how set embedded arm programming. need know how program device after compiling.
i want started soon. advice , ideas appreciated :-)
it's same, no matter eval board have: stm32 discovery, lpcxpresso, ti launchpads. cheap, recommended ides limited: code size limited, windows only, or bound specific linux distribution.
in experience choice depends on long-term goals:
- do want share code avr 8-bit (or pic32, renesas rx 32, ...)?
- is mid-term/long-term goal have build system based on
make
? - do need tab-completion and/or integrated debugger?
- do want try other eval boards in future (without being forced install yet ide)?
or want 1 , running quickly. in case use 1 of recommended ides impression.
on other hand, 32-bit microcontrollers have used (cortex-m0/3/4, pic32, renesas rx) can programmed gcc
. far know code red, mentor, , mplabx use gcc
(or modified gcc
).
so there possibility use eclipse
makefile
project, , gcc
. have tried twice, did not work me, because share libraries between different targets, , found difficult pass around defines in eclipse.
so ide makefile
, emacs
, , gcc
, , have switched using c++: might advantage of using gcc
.
both possibilities (eclipse makefile project or editor make) not "off shelf": require time, patience, , favourite internet search engine.
update
i not aware of complete tutorial on how setup gcc + make based environment, describe basic steps did years ago (with changes).
- get binary distribution of gcc arm https://launchpad.net/gcc-arm-embedded
the following steps stm32 specific:
get 1 of discovery boards, example stm32 value line discovery.
get flash utility: using stlink (
git clone https://github.com/texane/stlink.git
). includes gdb backend well.there various examples available, search "stm32vl discovery blink" (i cannot recommend 1 here, 1 used has vanished)
as alternative (or follow-up): peripheral firmware examples
you find gnu ld compatible linker script in
project/examples/gpiotoggle/truestudio/stm32_flash.ld
you find gnu compatible startup in
libraries/cmsis/cm3/devicesupport/st/stm32f10x/startup/truestudio/startup_stm32f10x_ld_vl.s
you find other required library include files , sources in .zip archive well
look @ gpiotoggle project (
project/examples/gpiotoggle
)write makefile compile, link, , flash
Comments
Post a Comment