2017-04-19 82 views

回答

1

串口和大部分I/O都沒有在Red中實現。

請查看紅色Trello board以瞭解剩餘部分的概覽。

0

正如DocKimbel提到的,大多數IO支持尚未實現,但這並不意味着您無法在Red/System中手動實現該功能。

如果您正在編譯Windows,以下信息是相關的。

爲了保持簡單,我建議按照this article的前半部分所述的輪詢方法。

其實你需要的大多數功能已經在simple-io.reds中。特別是,你必須使用簡單-io的背景下,以下功能:

  • CreateFileA的
  • ReadFile的
  • WriteFile的

您可能還需要DeleteFileA,並且GetLastError。 simple-io不會導入它們(只有DeleteFile上的寬字符串變體),因此您必須自己通過從kernel32.dll導入它,stdcall模式。您還需要導入SetCommState()

BOOL WINAPI SetCommState(
    _In_ HANDLE hFile, 
    _In_ LPDCB lpDCB 
); 

您將需要一個DCB (Device Control Block)結構爲第二個參數。

一旦你在紅/系統級別工作,你可以將每個基本的com功能包裝在一個例程中!抽象出一些低級的c方面,並將低級代碼暴露給你的Red代碼。