2

我正在开发基于 LPC17XX+FreeRTOS 的设备固件。我的开发环境是Eclipse + GCC,代码是C。最终产品的要求是:

  1. 运行 RTOS 并执行一些周期性任务(例如执行健康检查)的“基本固件”。
  2. 基本固件需要支持一个 API,该 API 将具有一些用于数据操作/延迟/定时的功能以及一些用于使用设备端口和 I/O 的功能。
  3. 用户可以使用此 API 构建自己的应用程序。
  4. 用户应用程序需要驻留在闪存的空白空间中。(它将通过串口发送到设备,我打算使用 IAP 将其保存在闪存上)
  5. 我想将应用程序作为“基础固件”的新任务启动。

第 1 步和第 3 步相当容易实现。我不确定实现 2,3 和 4 的最佳方法是什么。到目前为止,我已经查看了动态链接、跳转表、覆盖等,我有点迷失了。有人可以概述一下正确的实施步骤吗?

一些相关问题:

  1. 为提供基于 API 的应用程序/模块开发和加载的产品开发固件的任何其他方式?
  2. 我需要向用户提供什么才能使用 API?我的 API 源代码会公开吗?

我愿意接受任何想法,谢谢:)

4

0 回答 0