C ++中嵌入式友好的命令解析器

问题描述 投票:3回答:3

我的用例是生成和解析AT命令

我正在寻找类似于Boost.Spirit或https://github.com/ColinH/PEGTL的东西,但对嵌入式环境(mbed OS)友好,并且不需要像前面提到的那样强大。 mbed OS ATParser以另一种方式摆动,对我的品味来说有点太弱/扫描(对于ATParser人来说没有任何不确定性)

Boost.Spirit我无法在这种环境下进行编译,除了有点复杂之外,我还因为类似的原因尝试使用PEGTL而犹豫不决。

c++ parsing boost mbed
3个回答
0
投票

下面的项目也许你在寻找:

CMDB:一个命令解释器,支持使用的已定义命令,子系统,宏,帮助和参数解析。

https://developer.mbed.org/users/wvd_vegt/code/CMDB/


0
投票

看起来我正在自己动手。如果它不符合stackoverflow规则,我会在这里发布链接。


0
投票

不是特定于AT,但这看起来很有希望:embedded-commandline

要使用它,看起来像你:

  • 创建一个继承自Outputter的类,它为您的平台实现putchar()puts()成员函数。 (您将对类的实例的引用传递给DumbLineEditorCommandManager构造函数。)
  • 创建从Command派生的类,并为每个命令实现execute()成员函数。
  • 实例化CommandManager。使用每个派生的CommandManager::addCommand()s的实例调用Command
  • 实例化DumbLineEditor,将对CommandManagerOutputter的引用传递给它的构造函数。
© www.soinside.com 2019 - 2024. All rights reserved.