Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | Last revisionBoth sides next revision | ||
bare_metal [2015/11/29 20:15] – external edit (unknown user) | bare_metal [2016/11/12 15:17] – link to related pages. david_cary | ||
---|---|---|---|
Line 23: | Line 23: | ||
======Strategies====== | ======Strategies====== | ||
+ | |||
+ | People typically create a bare-metal application on a PC with a cross-compiler such as a [[compiler for arm]], and then transfer the executable to the target hardware using a bootloader such as the [[LPC1114 Bootloader]]. | ||
Compilers usually support building for bare metal, but need additional parameters, like '' | Compilers usually support building for bare metal, but need additional parameters, like '' | ||
Line 29: | Line 31: | ||
Precompiler-optimisations. It's a good idea to let the precompiler do one-time calculations as much as possible. Then only the result is stored in the binary, saving the calculation effort at runtime. [[Teacup Firmware]] uses this strategy a lot, making it about double as fast and half as big as compareable printing firmwares. | Precompiler-optimisations. It's a good idea to let the precompiler do one-time calculations as much as possible. Then only the result is stored in the binary, saving the calculation effort at runtime. [[Teacup Firmware]] uses this strategy a lot, making it about double as fast and half as big as compareable printing firmwares. | ||
+ |
bare_metal.txt · Last modified: 2018/05/27 16:10 (external edit)