开发者

Embedded systems development folder structure

I'm starting a big project to run on a PIC32, and like every big project, code organization it's very important. Likewise, folder structure too.

In desktop software development I use my own folder structure (very similar 开发者_开发百科to Maven), but like every applications we make, desktop and embedded implementations will have differences.

So, in your embedded systems project, what's your folder structure? Is there any "maven like standard" to embedded systems?


This is just "my folder structure" and by no means ultimate, but the project has a couple years, the product is already deployed and upgrades still actively developed - and I found the structure quite comfortable to use.

as separate projects:

  • Firmware (main, monolithic app for doing The Thing)
  • WWW (control over HTTP)
  • misc tools
  • Lang (translations of all strings)
  • Common (a set of structures, defines and the likes included and shared by all).

Then, within Firmware:

  • cpp (sources)
    • Appmanager (central point binding them all)
    • Events (event pump, task pump, also threading)
    • gfx (built-in screen GUI)
    • Net (TCP/IP based communication)
    • Interface (all other I/O - rs232, CAN, touchscreen, LCD screen, SPI etc)
    • Log
    • Utils (utility classes)
    • subdirectories for all major modules of the algorithm. Config file access, input processing, computation, overseer, watchdog,
  • data (config files)
  • [root directory] (short, trivial main.cpp and global_include.h which is included from every file - major configuration #defines.)
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜