前段时间,我在圣诞节期间收到了一套LEGO Mindstorms NXT,现在我想用C ++编写它。
我在这里和其他地方环顾四周,找不到一个“感觉正确”的跨平台,开源,OOP C ++库,包括lestat和nxtOSEK。
所以,我已经决定,除非我能找到一个我喜欢的,否则编写我自己的图书馆对我来说是一次很棒的学习经历。
我做了一些研究,并决定通过蓝牙与它进行通信最简单,而不是将我的程序编译为NXT机器代码。
我也希望这能以OOP风格完成,这意味着NXT砖,电机,传感器等将作为对象存在。
所以,我的问题是:在开始这项工作之前我需要知道什么?我在哪里可以得到很好的参考(除了这里,特定于NXT)?对于像蓝牙通信这样的东西,还有什么其他像样的“基础”库?
*顺便说一句,如果有必要的话,我全都是使用boost和STL。
或者,我相信如果我不需要重新发明轮子,那么如果有一个体面的C ++ OOP蓝牙通信NXT库,请告诉我!
答案 0 :(得分:3)
我之前看过这样做。
从这里开始:http://bricxcc.sourceforge.net/
在此页面上,您可以下载它的来源。我最终做的是将我的C源代码编译为NXT砖可以理解的字节代码。
这允许我为C添加一些自定义扩展,虽然我花了很多时间将C编译成适合NXT内存的字节代码中的紧凑形式:)
如果您想使用现有的C实现,请查看此图表:http://www.teamhassenplug.org/NXT/NXTSoftware.html
有关NBC(下一字节代码)的列表,请从此页面开始。我发现它非常有帮助。
答案 1 :(得分:1)
我用过这个,我不知道你是否检查过它:
http://www.norgesgade14.dk/bluetoothlibrary.php
该库支持通过蓝牙连接读取各种传感器数据,并支持控制电机。
此外,可以轻松修改库,我发现重新配置它非常容易。
答案 2 :(得分:1)
您可以在此处找到原始的NXT ++ 0.6库:
http://nxtpp.clustur.com
https://sourceforge.net/projects/nxtpp/forums/
不幸的是,这个网站没有更新。
我将一个新版本NXT ++ 0.7与一些修复程序分开,并通过USB或蓝牙支持多个砖块:
https://github.com/dbworth/nxt-plus-plus
有关详细信息,请参阅自述文件。
另一位用户Piotr为HiTechnic传感器多路复用器和乐高色彩传感器增加了对NXT ++ 0.6-2的支持:
http://wmii.uwm.edu.pl/~artem/downloads.html
问候,
大卫。
答案 3 :(得分:0)
让我们看看NXT ++的可能性,直方图过滤, https://www.youtube.com/watch?v=PDYtjWgvsxg 它基于支持多路复用器的最新版本, 来自http://wmii.uwm.edu.pl/~artem和下载部分,