Re:Bare Metal STM32 Programming and a Quadcopters Awakening
by rct42 on Wednesday March 06, 2019 @03:07AM
(#19317153)
Unfortunately, iffy IDEs are pretty common in the embedded world. I too dislike Keil's uVision IDE, but sometimes you need to take the bad with the good. At work I use Keil + MDK-Pro and now and again also use ETM trace for debugging really tricky problems. AFAIK armcc also produces higher performing binaries than arm gcc (but this probably irrelevant in a lot of use cases).
Re:Bare Metal STM32 Programming and a Quadcopters Awakening
by ncmncm on Tuesday March 05, 2019 @11:00PM
(#19316307)
Yes, gcc and clang are overwhelmingly superior for all purposes.
Let me advise against growing dependent on IDEs. They make it easy to get started, but soon begin to hold you back. Vim, meanwhile, takes some practice, but it repays so much, year in and year out. I have never heard of anyone who learned and then abandoned it.
Re:Bare Metal STM32 Programming and a Quadcopters Awakening
by nereye on Wednesday March 06, 2019 @03:58AM
(#19317401)
FWIW, Atollic was bought by ST [0], that IDE is now free, including professional features [1].
[0] https://www.electronicsweekly.com/news/business/st-buys-2017...
Re:Bare Metal STM32 Programming and a Quadcopters Awakening
by Goz3rr on Wednesday March 06, 2019 @04:38AM
(#19317571)
Atollic TrueSTUDIO is completely free without limitations since ST bought it and it uses GCC and normal linker description files AFAIK.
My personal preference is to use VS Code with the GNU Arm Embedded Toolchain as well though.
Go for gcc or clang with cmake (or even just make) and use qt creator or visual studio code or others. You will get cmake based auto complete, access to a proper IDE color scheme of your choice, get to use your own compiler (clang, gcc, etc), and it's much more flexible. And for debugging be able to use a much more capable ozone from segger, or even gdb enabled backend in qt creator or clion.
My work flow for example is cmake and gcc regarding tooling, qt creator or visual studio code which works with cmake to give me proper context aware auto complete, and clang-tidy as a linter running in the background. I am incredibly productive with this, and am able to make use of c++17's features to go for true zero cost abstractions, while shifting checks from runtime to the compiler via types and static asserts and whatnot.
Plus, this is far more portable. No longer having to worry about project files working across diffirent versions of keil (this bit me in the ass at my last company). It's just a simple text file.