19. 鈦極OS之TiOWMaster

鈦極OS之TiOWMaster

 

  1-Wire總線是一個簡單的信號傳輸電路,可通過一根共用的數據線實現主控制器與一個或一個以上從器件之間的半雙工雙向通信。具體可參考https://baike.baidu.com/item/1-Wirehttps://en.wikipedia.org/wiki/1-Wire

  TiJOS Framework提供TiOWMaster來支持1-Wire主機功能,其將OW Master按照port分組,共支持256組,組號範圍0-255,即:port0-port255;其中每組內按照io劃分16條輸入輸出,輸入輸出號範圍0-15,即:io0-io15;每條輸入輸出都支持指定模式的單獨設置。

 

  Java包

  tijos.framework.devicecenter

 

  TiOWMaster工作模式定義
項目 參數 說明
工作模式 MODE_STANDARD/MODE_OVERDRIVE 標準模式/高速模式

  TiOWMaster方法定義

  TiOWMaster類中主要的方法:

 

方法 說明
TiOWMaster open(int portID, int... ioIDs) 靜態方法,通過指定port和io集合打開OW Master,返回TiOWMaster對象
void close( ) 關閉當前對象
setWorkMode(int ioID, int mode) 設置工作模式
void reset(int ioID) 復位I/O
int readBits(int ioID, int bits) 讀I/O位數據
void writeBits(int ioID, int value, int bits) 寫I/O位數據
 

  TiOWMaster類中他方法的技術說明請參考TiJOS Framework說明文檔。

 

  TiOWMaster對象創建與銷燬

  TiOWMaster對象的創建需要調用open靜態方法,傳入指定port和io集合參數,返回創建的接口對象。

  TiOWMaster對象的銷燬需要調用close方法。

  1. <font size="3">...
  2. int owPort0 = 0;
  3. int owIo0 = 0; //定義io集合
  4. int owIo1 = 1;
  5. TiOWMaster ow0 = TiOWMaster.open(owPort0, owIo0, owIo1);
  6. ...
  7. ...
  8. ...
  9. ow0.close();</font>
複製代碼  
  TiOWMaster模式設置

  TiOWMaster模式設置通過setIoMode方法設置,設置參數爲ioID和工作模式。

  1. <font size="3">...
  2. ow0.setIoMode(owIo0, TiOWMaster.MODE_STANDARD); //io0工作在標準模式
  3. ow0.setIoMode(owIo1, TiOWMaster.MODE_OVERDRIVE); //io1工作在高速模式
  4. ...</font>
複製代碼

  注意:模式支持受平臺特性限制,設置時須瞭解平臺特性。

 

  TiOWMaster輸入輸出

  TiOWMaster的輸入輸出操作通過reset、readBits和writeBits方法完成。

  1. <font size="3">...
  2. ow0.reset(owIo0);
  3. ow0.writeBits(owIo0, 0x80, 8);
  4. int value = ow0.readBits(owIo0, 8);
  5. ...
  6. ow0.reset(owIo1);
  7. ow0.writeBits(owIo1, 0x01, 1);
  8. int value = ow0.readBits(owIo1, 2);
  9. ...</font>
複製代碼
  
  更多詳細介紹請見鈦雲物聯官網:www.tijos.net
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章