Суть - НЕТ. Как правило, вы не можете написать приложение на C, которое «работает» на TinyOS.
TinyOS использует nesC, поэтому вы не можете напрямую использовать уже существующее приложение C с TinyOS. Помните, что компилятор NesC принимает приложение TinyOS, написанное на nesC, в качестве входных данных, а затем компилирует его и выводит приложение C. Это приложение C затем подается в компилятор микроконтроллера, который компилирует его и загружает в микроконтроллер. Так что, если у вас уже есть законченное приложение на C, тогда возникает вопрос: зачем вам его компилировать с помощью компилятора TinyOS nesC.
Обычная задача, которую люди хотят выполнить, состоит в том, чтобы включить чистый код C (из какой-либо библиотеки или самостоятельно написанный) в приложение TinyOS. Это может быть достигнуто путем включения обычных заголовочных файлов C и последующего вызова функций C, как это обычно делается в C. Фактический код C может быть расположен в самом заголовочном файле (например, файл CRC.h в дистрибутиве TinyOS имеет C-код в заголовке) или может быть в другом C-файле. Подобно тому, как вы сделали бы это в C.