国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FT311D的Android移動設(shè)備硬件接口拓展設(shè)計(jì)※

2014-08-27 08:34張佳進(jìn)陳立暢唐愛云
關(guān)鍵詞:串口平板芯片

張佳進(jìn),陳立暢,唐愛云

(1.云南農(nóng)業(yè)大學(xué)基礎(chǔ)與信息工程學(xué)院,昆明650201;2.云南農(nóng)業(yè)大學(xué)工程技術(shù)學(xué)院;3.云南省招標(biāo)采購局)

引 言

目前,移動市場已經(jīng)急劇地改變了IT 行業(yè)的格局,市場正在向智能手機(jī)和平板電腦等移動計(jì)算設(shè)備傾斜。因此,很多傳統(tǒng)的PC軟件的開發(fā)也正在迅速地向移動平臺遷移,Android智能手機(jī)和平板電腦移動設(shè)備逐步成為重要的計(jì)算應(yīng)用平臺。

由于考慮系統(tǒng)硬件體積、功耗、成本等因素,除了常用的USB接口外,基于Android的智能手機(jī)或平板電腦往往缺乏硬件拓展接口,這某種程度上限制了這些智能移動設(shè)備與物理世界的信息交互能力,例如外界傳感器數(shù)據(jù)的獲取,外部執(zhí)行裝置的控制和在車載系統(tǒng)、POS機(jī)、智能醫(yī)療保健儀器設(shè)備中的應(yīng)用等[1-2]。

FT311D接口芯片能為Android手機(jī)或平板電腦提供USB轉(zhuǎn)外部UART、GPIO、PWM、I2C、SPI等硬件接口,無需安裝USB驅(qū)動,全面兼容USB2.0接口,不需要軟件移植,不受Android操作系統(tǒng)升級的影響,只需安裝對應(yīng)的APK 就能實(shí)現(xiàn)數(shù)據(jù)通信,這有利于解決Android移動設(shè)備硬件接口的擴(kuò)展難題[3]。

本文介紹了基于FT311D 的Android 移動設(shè)備的USB轉(zhuǎn)外圍硬件接口拓展方案,主要內(nèi)容包括FT311D的硬件特點(diǎn)及其在Android平臺下的軟件開發(fā)方法。

1 FT311D接口芯片

FT311D芯片是由美國FTDI公司研制生產(chǎn)的面向Android移動設(shè)備的USB 轉(zhuǎn)外部硬件接口解決方案。FT311D 芯片直接集成了USB 通信協(xié)議棧,它分別支持USB轉(zhuǎn)UART、GPIO、PWM、I2C、SPI。FT311D 芯片系統(tǒng)功能如圖1所示[4]。

圖1 FT311D芯片系統(tǒng)功能示意圖

當(dāng)FT311D的外圍接口配置為UART 串口模式時,該接口作為具有流控制的基本異步串行UART 端口使用。FT311D 的UART 支持的波特率為300~921 600 baud。其I2C總線主控端接口可以連接到支持125kbps的I2C總線從控端接口。另外通用接口GPIO 可以配置為提供多路脈沖寬度調(diào)制(PWM)輸出信號,這些輸出可用于控制電機(jī)、制動器、傳感器、DC/DC轉(zhuǎn)換器或AC/DC電源的PWM 信號以及玩具、照明應(yīng)用、家用電器和工業(yè)設(shè)備等。

圖2為FT311D芯片引腳定義,F(xiàn)T311D 系統(tǒng)原理框圖如圖3所示,主要引腳的功能略——編者注。

FT311D 分別支持UART、GPIO、PWM、I2C、SPI硬件接口,具體接口類型由CNFG2、CNFG1和CNFG0引腳決定。接口的類型定義及其對應(yīng)引腳略——編者注。

圖2 FT311D芯片引腳定義

圖3 FT311D系統(tǒng)功能框圖

2 軟件開發(fā)

基于Android開發(fā)平臺的軟件開發(fā),F(xiàn)T311D 硬件接口應(yīng)用程序主要包括兩部分,即用戶層User Layer和接口層Layer,詳見圖4。

圖4 FT311D硬件接口驅(qū)動程序框架

用戶層面向高層應(yīng)用程序開發(fā),程序員不需要過多考慮Android設(shè)備與FT311D接口芯片通信的具體細(xì)節(jié),只需要借助相應(yīng)的用戶函數(shù)即可實(shí)現(xiàn)USB轉(zhuǎn)GPIO/UART/I2C/SPI/PWM 接口的驅(qū)動程序設(shè)計(jì)。而接口層則具體來執(zhí)行用戶層提供的API函數(shù)功能,實(shí)現(xiàn)FT311D 與Android系統(tǒng)間的USB通信功能,涉及具體的通信協(xié)議和數(shù)據(jù)包格式等。FTDI公司提供了用戶層和接口層的Java類文件,可以很方便地編譯到用戶的應(yīng)用程序中[5]。

3 系統(tǒng)應(yīng)用開發(fā)實(shí)例

接下來主要介紹FT311D作為UART 串行通信接口時的驅(qū)動程序開發(fā)方法。在實(shí)際開發(fā)應(yīng)用中,基于Android手機(jī)開發(fā)環(huán)境,F(xiàn)T311D硬件串口驅(qū)動軟件開發(fā)的著力點(diǎn)是UART Layer的API函數(shù)的正確使用。與圖4類似,圖5是UART 串行通信驅(qū)動程序框圖。圖6為基于FT311D串行口,Android平板電腦與桌面PC串行通信實(shí)驗(yàn)實(shí)物圖。

圖5 UART串行通信驅(qū)動程序框圖

圖6 Android平板電腦與桌面PC串行通信實(shí)驗(yàn)

3.1 FT311-UART Layer

FT311-UART Layer 提供了UART 接口類的用戶API函數(shù)。

3.1.1 SetConfig函數(shù)

函數(shù)SetConfig(int baudRate,byte dataBits,byte stopBits,byte parity,byte flowControl)的功能是設(shè)置串行通信幀格式包括通信波特率、停止位、校驗(yàn)位等,在使用串口前,必須先使用該函數(shù)來進(jìn)行正確的設(shè)置。

baudRate波特率:最小是300,最大值是921 600,默認(rèn)值是9 600。

dataBits數(shù)據(jù)位:7位或8位。

stopBits停止位:1或2位。

Parity校驗(yàn)位:0代表沒有校驗(yàn);1為奇校驗(yàn);2為偶校驗(yàn)。

flowControl流控:0為沒有,1代表有流控。

3.1.2 SendData函數(shù)功能

SendData(byte numBytes,char[]buffer)向FT311D UART 串行口發(fā)送數(shù)據(jù)。其中numBytes是發(fā)送的字節(jié)數(shù),最大值是256;buffer是所發(fā)送數(shù)據(jù)的地址指針。

3.1.3 ReadData函數(shù)功能

ReadData(byte numBytes,byte[]buffer,byte[]actualNumBytes)從FT311D UART 串行口讀取數(shù)據(jù)。

numBytes是接收的字節(jié)數(shù);buffer是所發(fā)送數(shù)據(jù)的地址指針;actualNumBytes是實(shí)際接收到的數(shù)據(jù)個數(shù)。

3.2 FT311D串口通信代碼示例

基于上述API函數(shù),示例代碼主要包括FT311D串行口配置、數(shù)據(jù)發(fā)送與接收。

上述示例顯示,基于FT311D接口芯片,面向Android移動設(shè)備的USB轉(zhuǎn)外部UART、GPIO、PWM、I2C、SPI接口功能方案,具有硬件連接簡單、軟件開發(fā)方便易行的特點(diǎn)。

結(jié) 語

FT311D芯片通過USB轉(zhuǎn)多種物理接口的方式拓展Android移動設(shè)備的應(yīng)用領(lǐng)域,進(jìn)一步增強(qiáng)Android移動系統(tǒng)與外部物理世界的信息交互能力。同時FT311D 硬件成本較低,開發(fā)方便,無需安裝USB 驅(qū)動,全面兼容USB2.0接口,不需要進(jìn)行軟件移植,同時不受Android操作系統(tǒng)升級的影響,因此以FT311D 為核心的Android移動系統(tǒng)硬件接口拓展解決方案是值得推廣應(yīng)用的。

編者注:本文為期刊縮略版,全文見本刊網(wǎng)站www.mesnet.com.cn。

[1]Z Wang,A Stavrou.Exploiting smart-phone usb connectivity for fun and profit[C]//Proceedings of the Annual Computer Security and Applications Conference(ACSAC),2010.

[2]Cheng-Min Lin,Kuo-Chen Lang,Yi-Lun Chu,et al.An Implementation for Connecting Android Powered Device to External World[C]//The 2nd International Conference on Innovations in Bio-inspired Computing and Applications,2011:303-305.

[3]FT311D[EB/OL].[2013-09].http://www.ftdichip.com/Products/ICs/FT311D.html.

[4]FT311D Datasheet[EB/OL].[2013-09].http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT311D.pdf.

[5]L C Png.A fully integrated audio,video,and data VLC transceiver system for smartphones and tablets[C]//IEEE International Symposium on Consumer Electronics(ISCE 2013),2013:249-251.

猜你喜歡
串口平板芯片
芯片會議
屬于你的平板電腦
關(guān)于射頻前端芯片研發(fā)與管理模式的思考
淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
平板對縫焊接視覺跟蹤試驗(yàn)及異常數(shù)據(jù)分析
出彩的立體聲及豐富的畫面層次 華為|平板M6
數(shù)字電源內(nèi)部數(shù)據(jù)傳輸?shù)拇谕ㄐ欧椒▽?shí)現(xiàn)
USB接口的多串口數(shù)據(jù)并行接收方法探索
多通道采樣芯片ADS8556在光伏并網(wǎng)中的應(yīng)用
串口技術(shù)的實(shí)物調(diào)試和虛擬仿真聯(lián)合教學(xué)模式
阳信县| 康平县| 深圳市| 禄丰县| 石门县| 蒙城县| 新和县| 盐亭县| 宝山区| 德庆县| 和林格尔县| 陇南市| 隆化县| 盐山县| 内丘县| 阿巴嘎旗| 南靖县| 仙居县| 张家港市| 方城县| 宣城市| 桦甸市| 收藏| 开江县| 石泉县| 神木县| 京山县| 泰安市| 瑞安市| 延川县| 子长县| 郎溪县| 拜城县| 新泰市| 荃湾区| 泾阳县| 抚远县| 明光市| 方城县| 逊克县| 顺平县|