繁體中文
外接USB、串口設備
來源: | 作者:environment-380 | 發布時間: 2022-06-07 | 4284 次瀏覽 | 分享到:
本文主要介紹錢箱口,usb 口和串口的使用方式。

1. 簡介


外設介面 LAN 口,錢箱口, usb2.0 口,串口,耳機孔等通用通信介面。

本文主要介紹錢箱口,usb 口和串口的使用方式。


2. 介面說明



2.1 錢箱口


錢箱口使用RJ12介面。 開發者可以通過向錢箱口發送數據來控制錢箱。


錢箱開發者文檔及資源文件


2.2 串口



串口使用 RJ11 介面,開發者可以通過串口的數據發送來控制外設。 商米設備的RJ11為四線,不支持硬流控(部分外設默認開啟硬件流控,這些設備無法通過RJ11連接商米主機)。


由於安全考慮,不支持串口節點遍歷,但可以直接打開埠進行通信



  • D2mini、T1、T1mini:機器底座串口的節點路徑 /dev/ttyHSL1

  • T2、S2、T2lite、X2、T2mini:/dev/ttyHSL3

  • N1、D2、D1s單屏:/dev/ttyS1

  • N1、D2、D1s、S2cc、雙屏:/dev/ttyS3

  • D2s_KDS、D2_2nd:  /dev/ttyS0 ( 或者軟鏈接 /dev/sunmi/pub/serial)

串口參考demo JNI參考



通信文檔事例:Jaynes 串口電子秤通信文檔(不同電子秤通信協議需參考每家廠商提供的 文檔)


2.3 USB 口



支持 USB2.0 協議的 USB 設備。USB 通信開發者文檔


SunmiOS支持的USB轉串口晶元列表


  • 目前支持的USB轉串口晶元有:CH341、FT系列、PL2303、CP210X系列

  • 插入USB轉串口線或者板子會生成:/dev/ttyUSERx節點,其中x:表示序號0,1,2,3.....

  • 使用USB轉串口時請勿使用USB調試線,二者互斥,只能同時使用一個功能


2.3.1 獲取 USB 設備的 PID/VID



方法1: java代碼


try {    //獲得外接USB輸入設備的信息    Process p=Runtime.getRuntime().exec("cat /proc/bus/input/devices");    BufferedReader in = new BufferedReader(new InputStreamReader(p.getInputStream()));    String line = null;    while((line = in.readLine())!= null){ }    String deviceInfo = line.trim();    //對獲取的每行的設備信息進行過濾,獲得自己想要的。 } catch (Exception e) {    // TODO: handle exception e.printStackTrace(); } // deviceinfo中包含每個設備的pid和vid


方法2: adb命令



adb shell cat /proc/bus/input/devices


2.3.2 通用 USB 外設HID設備默認支持 HID 協議設備(鼠標鍵盤掃碼槍等),可即插即用。



HID 掃碼槍


HID掃碼槍可即插即用:連接商米設備,在商米設備上打開一個可編輯框並獲取焦點,掃碼。此時編輯框應該被輸入條碼或者二維碼內容。


從代碼獲取掃碼內容可參考USB 外設通信谷歌開發者文檔


U盤


支持的U盤格式: FAT32:可讀可寫;NTFS:可讀不可寫 ;exFAT:不支持


攝像頭


商米支持 USB UVC 攝像頭 (如LogitechC170,C100,C525)Demo源碼


2.3.3 商米讀寫器側邊欄可接入商米讀卡器(刷卡槽介面)


商米讀卡器包含兩部分:一部分為磁條卡刷卡,磁條卡刷卡可參考商米讀卡器開發包和讀卡器demo。另一部分為nfc,nfc為android原生介面,可參考android nfc開發文檔



第三方通用讀寫器商米目前已經支持四款第三方usb通用讀寫器,開發者可參考商米提供的demo做讀卡寫卡操作。


  1. 上海億矽智能科技有限公司 UM002讀卡器

  2. 深圳市德卡科技有限公司 T10讀寫器(需支持android版本,電源充電版)

  3. 香港龍傑智能卡有限公司 ACR1281U-C1讀寫器

  4. 香港龍傑智能卡有限公司 ACR1281U-K1讀寫器



​新聞分類
熱門資訊