android 串列埠通訊選擇

2021-07-22 13:16:20 字數 745 閱讀 8239

問題描述:

android晶元一般使用arm的,都支援串列埠通訊,google有乙個專案專門用來支援串列埠開發的:android_serialport_api,參考自

上圖中用與android與串列埠裝置通訊的方案有四種:

第一種是直接用sdk的bluetoothsocket類來進行藍芽通訊,外部裝置再用藍芽轉串列埠進行控制。這種方式有較高延時,藍芽模組需要供電,低頻寬。

第二種是使用usb轉rs232方式(使用核心驅動和使用android驅動兩種方式),這種方式不需要硬體改動,不需要另外的供電,延時很小且有較高頻寬。但是android裝置需要硬體上支援usb host介面(一般android平板支援,android手機一般是沒有的),另外可能需要root以改變/dev/ttyusb0檔案許可權來載入乙個核心模組。開發需要使用android_serialport_api。

第三種是最容易的方案,直接使用串列埠進行連線,但是這種方式相容性不好,只有少數裝置支援,而且串列埠不支援流控制(由android提供的usb host api決定的)。使用時也用android_serialport_api。

第四種是將android作為usb從機,外部裝置作為usb主機與之通訊,這種方式幾乎與所有android裝置相容(一般都有usb從口),無需root,低延遲,高頻寬。

android 串列埠通訊

因為工作需要,從未接觸過串列埠的我被老闆欽定了.查了幾天資料之後,終於搞出了乙份能用的demo 是別人寫好的,對android serialport api 的乙個依賴.接入這個依賴之後,照著提示去做基本就可以搞定了.需要注意的是,如果你接收到的資料不完整,可能是你使用的串列埠被占用了 我自己開發的...

android串列埠通訊

串列埠通訊 serial communications 的概念非常簡單,串列埠按位 bit 傳送和接收位元組。串列埠用於ascii碼字元的傳輸。通訊使用3根線完成,分別是地線 gnd 傳送 tx 接收 rx 由於串列埠通訊是非同步的,埠能夠在一根線上傳送資料同時在另一根線上接收資料。其他線用於握手,...

android 串列埠通訊開啟失敗

谷歌開源serialport api 按照步驟將serialport jni jnilibs加入,在build.gradle中新增 sourcesets serialport serialport new serialport new file path baudrate,0 這裡path是指串列埠...