我们为微控制器产品提供了一系列PC演示程序。程序通常连接到微控制器板上的USB HID芯片。 USB芯片充当通信桥,允许程序通过SPI / I2C / UART与微控制器通信。程序可以配置微程序,并获取状态信息以显示给用户。
我们现在正在寻求使用单板PC构建一些独立的演示。我们希望尽可能多地重用现有的演示应用源代码。理想情况下,我们可以按原样运行它们。
有没有人对最佳前进方向有什么建议?基本选项似乎是WinCE或XP Embedded板。 WinCE主板似乎可以降低功耗,从电池寿命的角度来看,这将是一个优势。
我们现有的演示使用Borland Builder下的C ++或Delphi构建。
提前致谢。
编辑:请参阅下面的答案,并提供董事会成员的信息。
答案 0 :(得分:1)
Free Pascal / Lazarus可以将某些形式的Delphi应用程序编译为WiNCE / arm。甚至是视觉的。
答案 1 :(得分:0)
WinCE没有Delphi版本,因此您需要重写应用程序。这同样适用于Borland Builder的控制库。只有使用了普通的Win32 API,您才能轻松地将应用程序移植到WinCE。您可能还会遇到硬件访问部分的问题。串行端口驱动程序可能无法正常工作。此外,您需要找到一个可以充当USB主机并提供HID驱动程序的WinCE板(这不是很常见)。
总之,我相信使用Windows XP Embedded主板会更好。这些应该按原样运行您的应用程序。
答案 2 :(得分:0)
作为更新,以及将来的参考,我想我会在这里向WinCE主板供应商发布我们讨论的结果。警告:我实际上没有尝试过这个。
最重要的是,没有一种直接的方式来做我们希望的事情(即,重新编译我们现有的演示应用程序以在WinCE下运行)。原因是Windows桌面版中存在的通用HID驱动程序和标准API在WinCE中不存在。
要与WinCE中的HID设备通信,您需要实现自定义HID驱动程序。这需要支持允许用户模式应用程序与驱动程序通信的接口,并构建要发送到物理设备的HID报告。由于此接口本身是自定义的,因此需要相应地更新应用程序代码。
WinCE应用程序开发通常使用Visual Studio和Microsoft编译器完成。向我们推荐的方法是:
所有这些令人头疼的最终结果是,为了避免与此方法相关的时间和学习曲线,我们将选择运行XP的电路板。然后我们可以直接使用我们现有的演示应用程序。权衡的是,我们必须忍受大幅缩短的电池寿命。