在读者继续专注于界面主题
(流氓剥夺按钮和编码器)这一主题的延续中,他们完全没有想到将界面从微控制器转移到手机或计算机的建议只是使用
BlackBox代码生成器的众多选择之一。 一段时间过去了,项目正在开发中,是时候专门编写代码生成器本身了。
让我提醒您,
BlackBox代码生成器根据用户的描述以预定义的格式生成用于处理交换协议的源代码(
JAVA,C#,C )。 这是一个常规的JAVA文件,您需要对其进行编辑,才能将一组
数据描述批注连接到JAVA项目并遵循一
小组规则 。
描述了交换协议,程序包,通道,主机,通信接口,网络拓扑并指明了您需要源代码所使用的语言(JAVA,C#,C)之后,我们检查是否没有错误,文件是否已成功编译。
然后,我们将信函的来源作为附件发送到邮寄地址
OneBlackBoxPlease@outlook.com 。
服务器定期获取提交的规范,并检查其正确性。
以所需的编程语言生成规范中排序的源代码。
之后,它将创建几个测试,并通过它们运行源。
如果所有测试均成功,则将生成的代码,最后通过的测试以及使用订购的API的示例打包到归档文件中,并发送给收件人。
如果检测到错误,则将可能的延迟通知给发件人,
BlackBox支持将
处理该问题。
例如,您发送的档案的内容
可能看起来像这样。
最近,为了确认成熟度并证明
BlackBox的功能,创建
了一个
项目,将有关用于控制无人设备
MAVLink 的广为人知的协议
的程序包信息转换为BlackBox格式。
在MAVLink中,协议描述为
XML格式 。 在BlackBox格式中,
此文件如下所示 。
当然,与MAVLink相比,BlackBox具有多种多样的数据类型,因此该项目仅演示了BlackBox功能的一部分。
在此处阅读有关转换项目的更多信息。
该项目的结果已得到确认-BlackBox可以轻松替换MAVLink。 所有测试均成功通过,一切正常。 但是,为了在MAVLink的上下文中利用BlackBox的所有功能,您将不得不修改协议的描述。
总结:
如果您在编写分布式应用程序时正在考虑交换协议,则可能对已使用的协议的性能不满意,或者在扩展协议时会因查找错误和痛苦而感到厌烦,请尝试
BlackBox 。
除了在分布式应用程序中的显而易见的应用程序外,使用
BlackBox还可以轻松地例如:用
JAVA,C#,C ,
创建自己的最佳格式以将信息上传到文件,然后阅读。
而且,当然……将微控制器的控制接口转移到操作员那边。