Marc's LPC800 compilation environment+lib

Discussion created by lpcware Employee on Jun 15, 2016
Latest reply on Jun 15, 2016 by lpcware
Content originally posted in LPCWare by MarcVonWindscooting on Sat Mar 01 12:12:59 MST 2014

I just made available my environment and library I use for programming LPC8xx devices.
You need Perl, binutils and gcc (arm-none-eabi-*), bash and GNU make.
No IDE, no GUI, no CMSIS, no code-bloat, no redundancy. Just your favourite editor and make.

I don't urge you to use the environment, but I do urge you to look at some concepts of it:
  [*] __stopping_that_excessive_use_of_unneccessary_and_hard_to_type_underscores.
  [*] new/readable approach of defining peripheral register files (lib/c-lpc8/lpc8/*.h)
  [*] use a C dialect, that is powerfull enough: --std=gnu99
  [*] use generators, when the language is lacking features: util/{unionize.pl,slice.pl}
  [*] extract highly re-usable code and put it in library (lib/c-any/*) of its own
  [*] massive use of inline static, if applicable.
  [*] look at programs/multitask/
  [*] under all circumstances, look at c-any/fifo*.h, especially the parsing.

You can find it here: lpc8

Any comments are welcome.