选择 RTOS、CPU 和 IDE 来帮助将 .NET 应用程序一分为二:嵌入式(固件)应用程序和 Windows(.NET)应用程序
2 回答
方程式中的变量太多...我想您应该首先选择 CPU(根据您的技术要求和观点),然后咨询制造商/社区,了解该内核可用的生态系统(编译器、工具、RTOS、调试器、IDE、模拟器、演示板、入门套件等)
RTOS、TCP/IP、文件系统和USB不需要紧密集成(即你不一定需要一个已经包含所有这些的RTOS),完全有可能,实际上独立获取所有这些组件并集成并不难他们自己。这将为您提供最广泛的解决方案选择。例如,我已经成功地将 Keil 的 RTX 内核(通过他们的 ARM 工具链免费)与ELM FatFs和 STMicroelectronics 的 STM32 USB 库集成。也就是说,Keil 还提供了一个扩展(非免费)库,其中包括 TCP/IP、USB 和更易于集成的文件系统。
然而,有许多可能的集成解决方案,作为一站式商店,Segger 提供了可以轻松集成的单独的 RTOS、TCP/IP、USB 和文件系统库。f 成本是一个问题 eCos 是一个开源操作系统,包含所有这些内容,以及一个由贡献代码和库组成的大型生态系统。
为了在 PC 上与 .NET 紧密耦合,在嵌入式系统上使用 .NETmicro 可能会更好,但这不是实时的,需要大约 300Kb 才能启动,而对于带有 USB、TCP/IP 的 RTOS 可能需要 30Kb和一个文件系统。
您在标题中提到了 CPU 选择,但在问题中没有提到。您需要考虑性能要求和 I/O 能力。显然,如果它支持以太网和片上 USB,那将是一个好的开始。许多微控制器都有这些外围设备,但单一架构的供应商选择最广泛,可以在基于 ARM 的设备中找到。我建议您查看 STM32 或 Freescale Kinetis 设备,它们是具有多种片上外设组合和开发板选择的 ARM Cortex M3/4 设备。