我正在使用功能强大的 32 位微控制器 STM32F4(具有 192K RAM 和 1024K 闪存)做一个项目。我正在使用 C。我希望创建的系统由这个控制器(我称之为“主机”)和一个小模块(“客户端”)组成。
客户端只包含一个内存库和一个 LED 控制器,它们都使用相同的数据线 (I2C) 连接到主机。主机可以从内存中读取并发送命令来控制客户端上的 LED 输出。
我希望能够直接在客户端的内存上编写代码。然后在运行时,主机将从客户端拉取代码并运行它——代码将被限制为做两件事:
- 以任意方式操作变量
- 根据这些变量向 LED 驱动器发送命令。
我想要这些限制,以便任何人都可以为客户端编写代码,而不会对主机进行恶意操作。为此,我正在寻找一种在微控制器上运行脚本语言解释器的方法。然后,客户端上的代码将是文本格式,并将在主机上进行解释。
我已经研究过 eLua,但看起来它需要我将主机上的所有 C 代码实现为 Lua 库,我想避免这种情况。有谁知道一个解决方案,我可以只连接到 I2C 库并运行简单的脚本而不会太痛苦?
如果没有,有什么东西可以让我自己构建这个简单的解释器吗?
如果需要,我可以提供任何澄清。