我知道TinyOS本身是用nesC编写的,而用nesC编写的应用程序在TinyOS中执行。我们可以开发运行在TinyOS上的C语言应用程序吗?
发布于 2019-01-08 01:33:30
简而言之,答案是否定的。通常,您不能用C编写在TinyOS上“运行”的应用程序。
TinyOS使用nesC,所以你不能在TinyOS中直接使用已经存在的完整的C应用程序。请记住,NesC编译器将用nesC编写的TinyOS应用程序作为输入,然后编译它并输出C应用程序。然后,该C应用程序被馈送到微控制器的编译器,后者对其进行编译并将其上载到微控制器。因此,如果你已经有了一个完整的C应用程序,那么问题是,为什么你需要用TinyOS的nesC编译器来编译它。
人们想要完成的一项常见任务是在TinyOS应用程序中包含纯C代码(来自某个库或自己编写)。这可以通过包含普通的C头文件,然后像在C中通常所做的那样调用C函数来实现。然后,实际的C代码可以位于头文件本身(例如,TinyOS发行版中的CRC.h文件的头文件中包含C代码),也可以位于其他C文件中。类似于你在C中做的事情。
https://stackoverflow.com/questions/54065099
复制相似问题