《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于ARM920T的紅外通信系統的設計
基于ARM920T的紅外通信系統的設計
來源:微型機與應用2010年第24期
施文娟
(鹽城師范學院 物理科學與電子技術學院,江蘇 鹽城 224002)
摘要: 提出了采用以基于內核ARM920T的嵌入式微處理器S3C2440A為核心,以基于嵌入式Linux的ZHX1403為紅外收發器的紅外通信系統的設計方案。設計了紅外收發器在嵌入式Linux操作系統下的驅動程序,并給出了紅外通信系統應用的設計編程方法。
Abstract:
Key words :

摘  要: 提出了采用以基于內核ARM920T的嵌入式微處理器S3C2440A為核心,以基于嵌入式LinuxZHX1403為紅外收發器的紅外通信系統的設計方案。設計了紅外收發器在嵌入式Linux操作系統下的驅動程序,并給出了紅外通信系統應用的設計編程方法。
關鍵詞: 紅外通信;ARM920T;S3C2440A;Linux;ZHX1403

    目前,嵌入式系統已經進入了蓬勃發展的時代,越來越多的帶紅外通信功能的嵌入式設備走進人們的生活當中。紅外通信是利用紅外光進行通信的一種空間通信方式。紅外通信標準IrDA(Infrared Data Association)是目前IT和通信業普遍支持的近距離無線數據傳輸規范。盡管通信距離只有幾米,卻有很多優勢:紅外連接比有線連接更安全可靠,并且避免了因線纜和連接器磨損和斷裂造成的檢修;它的小型化和低成本,很適合應用在便攜式產品中;并且紅外通信成本低廉,跨平臺適應性好,傳輸速率高,適宜用于低成本、跨平臺、點對點高速數據連接,尤其適用于嵌入式系統。
1 IrDA標準簡介
    紅外標準IrDA的章程是建立通用的、低功率電源的、半雙工紅外串行數據互聯標準、支持近距離、點到點、設備適應性廣的用戶模式。建立該標準是在各種設備之間較容易地進行低成本紅外通信的關鍵。
    IrDA就是一個點對點的協議,用在近距離進行異步串行傳輸。IrDA規范1.0定義了數據傳輸率最高到115.2 kb/s的紅外通信;規范1.1將數據傳輸率提高到4 Mb/s,并保持了對版本1.0產品的兼容; 規范1.2定義了最高速度為 115.2 kb/s下的低功耗選擇;規范1.3將這種低功耗選擇功能推廣到1.152 Mb/s和4 Mb/s[1],規范1.4廢棄并替代了規范1.3,定義了最高速度為16 Mb/s下的低功耗選擇[2]。
2 紅外通信系統的總體方案
    基于ARM920T的紅外通信系統由軟、硬件兩部分組成。硬件部分包括基于ARM920T內核的微處理器S3C2440A及存儲器等硬件開發平臺和基于紅外收發器ZHX1403的紅外通信模塊兩部分;軟件部分包括紅外通信模塊驅動程序、紅外通信應用程序和嵌入式Linux操作系統三部分。
3 紅外通信系統的硬件設計
3.1 硬件開發平臺

    嵌入式系統硬件開發平臺采用S3C2440A為控制器。S3C2440A是32 bit RISC處理器,內嵌ARM920T核。它的低功耗,簡潔,美觀和全靜態設計特別適用于對成本和功耗敏感的應用場合。S3C2440A提供手持設備和低功率的一般應用的方案,以及高性能的微控制器解決方案[3]。
    S3C2440A有如下特點:(1)最高可達400 MHz的主頻;(2)內部集成LCD控制器(高達4 K彩色STN和256 K色TFT)液晶顯示專用的DMA;(3)3路異步串行通信接口(支持IrDA1.0,64 B的FIFO發送和64 B的FIFO接收);(4)IIS音頻編解碼器接口;(5)內置看門狗定時電路及實時時鐘(RTC);(6)內部集成兩路USB主控制器和1路USB設備控制器(版本1.1);(7)4路PWM定時器,1通道內部定時器/看門狗定時器;(8)130個通用I/O端口,24通道外部中斷源;(9)8路10 bit ADC和觸摸屏接口;(10)增強型ARM架構的MMU支持WinCE、嵌入式Linux操作系統。
3.2 紅外通信模塊
    ZHX1403是ZiLOG公司出品的一款專用于PDA、網絡應用、醫療電子、手持式設備的紅外收發器,且與IrDA1.4協議標準兼容[4]。它支持所有紅外通信協議支持的SIR紅外傳輸速率,采用半雙工串行傳輸方式,并具有Always On技術,使得長時間的紅外功能開啟成為可能,為紅外設備的應用增加了更多的可能性。它具有極小巧的外型尺寸(7.3 mm×2.8 mm×1.9 mm),應用電路的空間也是非常小,只需要外接兩個外部元件,與其他支持IrDA標準的收發器間的典型數據連接距離可達1 m。
    ZHX1403有7個引腳,依次是NC、Vcc、GND、SD、RXD、TXD、LEDA。ZHX1403與S3C2440 處理器連接電路如圖1所示。LEDA通過一個外接的電阻接到Vcc上,給紅外管提供工作電流。ZHX1403接收數據輸出端口TXD與S3C2440A的GPH4/TXD1連接,ZHX1403發送數據輸入端口RXD與S3C2440A的GPH5/RXD1。掉電模式使能控制端SD與S3C2440A的GPB0/TOUT0連接,用來將內部的電路控制在關閉模式。ZHX1403把接收到的數據通過GPH5/RXD1傳送給S3C2440A,S3C2440A把預發送的數據通過GPH4/TXD1發送給ZHX1403的TXD端口,再通過紅外收發器發射管發送。

4 紅外通信系統的軟件設計
4.1 紅外通信協議的實現

    紅外數據通信標準包括基本協議和特定應用領域的協議兩類。類似于TCP-IP協議,它是一個層式結構,其結構形成一個棧,如表1所示[5]。

    其中有3個基本的規范和協議,即為必要協議:(1)紅外物理層協議 IrPHY(Infrared Physical Layer);(2)紅外連接訪問協議層 IrLAP(Infrared Link Access Protocol);(3)紅外連接管理協議層 IrLMP(Infrared Link Management Protocol)。以上每一層的功能是為上一層提供特定的服務。其中物理層協議制定了紅外通信硬件設計上的目標和要求,處于最底層。其他兩層屬于軟件協議的范圍,負責對鏈接進行設置、管理和維護。
    在IrLMP協議上層的協議都屬于可選的紅外數據通信協議,可用于特定應用領域的規范和協議:(1)流傳輸協議(TinyTP);(2)對象交換協議(IrOBEX);(3)模擬串口層協議(IrCOMM);(4)局域網訪問協議(IrLAN);(5)信息訪問服務協議(IAS)。
    驅動部分是協議棧的最主要部分,包括了IrLAP、IrLMP、TinyTP、IAS、IrOBEX、IrCOMM和IrLAN等協議。IrLAP、IrLMP是兩個必選的軟件協議。物理層上的第一層為IrLAP,它的功能是支持鏈路初始化、設備地址目錄、解決沖突、創建連接、數據交換、接觸連接和鏈路關閉,并且規定了紅外數據包的幀結構及紅外通信的錯誤檢測方法。IrLMP提供建立在IrLAP連接上的多路復用及數據鏈路管理。TinyTP對數據傳輸進行流控制。IAS提供一個設備所擁有的相關服務檢索表。IrOBEX提供文件和其他數據對象的交換服務。IrCOMM使當前的應用能夠在IrDA平臺上使用串、并口通信,而不必進行轉換。IrLAN能為筆記本電腦和其他設備開啟IR局域網通道[6]。
    整個紅外協議棧比較龐大,在嵌入式系統中,由于微處理器的速度和存儲器容量的限制,沒有必要實現整個紅外協議棧,可以將協議棧簡化,根據實際需求,有選擇地實現自己需要的協議和功能[7]。
4.2 紅外通信模塊驅動程序的設計
    (1)初始化
    IrDA不是單純的串口物理通信規范,而是一種網絡傳輸控制標準。在Linux操作系統下,紅外通信是作為一類特殊的網絡設備來支持的。Linux必須按網絡設備驅動方法來組織紅外數據的網絡傳輸。在linux/net/irda中有紅外設備的代碼??梢杂孟旅娴暮瘮党跏蓟粋€紅外設備:
    struct net_device *alloc_irdadev(int sizeof_priv)
    {
        return alloc_netdev(sizeof_priv,”irda%d”,irda_device_
setup);
    }
    當內核啟動或加載網絡驅動模塊的時候,就會調用初始化過程。首先檢測網絡物理設備是否存在,通過檢測系統中的紅外串行接口完成,然后初始化與紅外相關的寄存器,隨后構造設備的device數據結構,用檢測到的數值對device中的變量初始化。最后向Linux內核中注冊該設備并申請內存空間。
    (2)數據包的發送和接收
    數據包的發送和接收是實現嵌入式Linux操作系統下紅外驅動程序中兩個最關鍵的過程[8]。首先在網絡設備驅動加載時,通過device域中的init函數指針調用紅外設備的初始化函數對設備進行初始化。初始化成功后可以通過調用紅外設備的打開函數打開設備,申請紅外中斷,啟動隊列。數據包的發送通過調用s3c2440_irda_hard_xmit函數,禁止接收,關閉中斷,將上層交付的數據幀放入到低層驅動的緩沖區中。進入發送模式,允許發送中斷,在中斷服務時把底層驅動緩沖區中的數據發送到紅外接口。
    數據包的接收通過中斷來完成。當有數據到達時,就會產生中斷信號,紅外設備驅動功能層就調用接收中斷處理程序,讀取URXH(串口接收緩沖寄存器)中的數據。
4.3 紅外通信程序設計
    應用層的網絡編程一般利用套接字建立雙方的虛擬連接。紅外通信的Socket稱為紅外套接字(IrSock)。在Linux中,每一種協議都有自己的網絡地址數據結構,均以sockaddr_開頭。Linux內核在af_irda.c文件中實現了IrDA套接字。定義紅外套接字如下:
    struct sockaddr_irda{
    sa_family_t sir_family;//協議類型,一般是AF_IRDA
    _u8 sir_lsap_sel;
    _u32 sir_addr;
    char sir_name[25];
    }
    分配完套接字后,用bind綁定地址,用listen建立偵聽,等待接收客戶連接。使用send和recv與客戶端通信,最后使用closesocket關閉連接。
    本文在以基于ARM920T內核的微處理器S3C2440A為核心的嵌入式開發平臺上詳細介紹了嵌入式Linux操作系統下紅外通信系統的設計和實現過程。通過對照硬件規范,可以實現嵌入式Linux操作系統下將紅外協議移植到特定的嵌入式系統中。在嵌入式Linux操作系統下紅外通信系統的開發對今后的嵌入式系統的應用研究具有較強的實用性,使紅外技術能在嵌入式系統中得到廣泛的應用。
參考文獻
[1] 張曉紅,SASDAT S,喬為民,等.紅外通信IrDA標準與應用[J].光電子技術,2003,23(4):261-265.
[2] Infrared Data Association(IrDA).Infrared Data Association Serial Infrared Physical Layer Specification,Version1.4[EB/OL].[2005-5-30].http://www.irda.org/standards/specifications.asp.
[3] S3C2440A 32-BIT CMOS Microcontraller User’s Manual[R].Samsung Electronics,2004.
[4] ZHX1403 SIR UltraSlim transceiver product specification[R].ZiLOG Worldwide Headquarters,2002.
[5] 葉輝.紅外通訊協議在嵌入式系統中的實現[J].電子技術應用,2004,30(7):68-71.
[6] 邱磊,肖兵.基于IrDA協議棧的紅外通信綜述[J].無線通信技術,2004,13(4):28-32.
[7] 陳祖爵,王繼鳳,王加民.基于嵌入式Linux的紅外通信系統設計[J].計算機工程與設計,2009,30(4):816-818,854.
[8] 周亦敏,佟國香.基于Linux的紅外網絡通信的實現[J].
     儀器儀表學報,2005(Z2):478-481.

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美在线二区| 国产一区二区三区无遮挡| 亚洲午夜影视影院在线观看| 欧美午夜寂寞影院| 国产精品入口| 亚洲国产成人精品女人久久久| 久久久久久尹人网香蕉| 国产精品电影观看| 国产日韩欧美制服另类| 韩国av一区二区三区| 久久综合伊人77777蜜臀| 一区二区亚洲精品| 国产九九视频一区二区三区| 欧美日本网站| 1024成人网色www| 欧美午夜精品久久久久久孕妇| 久久久xxx| 久久久在线视频| 在线成人av网站| 欧美日韩福利视频| 亚洲婷婷免费| 国产尤物精品| 羞羞色国产精品| 欧美猛交免费看| 亚洲专区在线视频| 亚洲一区www| 在线日韩av永久免费观看| 欧美在线视频播放| 亚洲精品久久久久久久久久久| 久久精品国产在热久久| 亚洲第一精品影视| 久久成人一区| 在线午夜精品自拍| 欧美片第一页| 裸体素人女欧美日韩| 欧美国产乱视频| 亚洲美女电影在线| 亚洲欧美视频在线| 欧美日韩1区2区| 这里只有精品在线播放| 久久久久久91香蕉国产| 欧美天堂在线观看| 欧美日一区二区三区在线观看国产免| 欧美日韩人人澡狠狠躁视频| 欧美巨乳在线| 亚洲看片一区| 好看的日韩av电影| 亚洲成人在线网站| 老巨人导航500精品| 永久免费视频成人| 国产精品理论片| 久久精视频免费在线久久完整在线看| 欧美视频日韩| 欧美一级黄色网| 蜜桃精品久久久久久久免费影院| 免费日韩成人| 国产精品成人aaaaa网站| 一区二区三区三区在线| 日韩天天综合| 国产麻豆精品久久一二三| 国产欧美91| 国产精品夜夜夜| 欧美va日韩va| 国产精品久久久久久久免费软件| 国产精品成人一区二区网站软件| 亚洲美女免费精品视频在线观看| 亚洲少妇自拍| 国产精品乱子乱xxxx| 蜜桃av一区二区| 欧美另类人妖| 久久精品99| 国产精品99久久久久久久vr| 欧美日韩国产麻豆| 亚洲综合999| 久久综合九色综合欧美就去吻| 在线看片一区| 欧美精品日韩精品| 亚洲国产精品久久久久婷婷884| 亚洲高清久久网| 国产精品普通话对白| 日韩视频中文字幕| 国产精品乱人伦一区二区| 欧美大秀在线观看| 亚洲深夜福利| 亚洲欧美日韩国产成人| 麻豆精品视频在线观看视频| 久久久综合免费视频| 亚洲午夜精品| 国产精品一区二区a| 亚洲欧美日韩在线综合| 国产精品久久激情| 老鸭窝亚洲一区二区三区| 国精产品99永久一区一区| 国产精品va| 国产精品视频xxxx| 亚洲一区二区3| 欧美成人精品高清在线播放| 国产精品一区二区三区乱码| 久久精品av麻豆的观看方式| 久久岛国电影| 亚洲人成网站色ww在线| 亚洲第一页中文字幕| 久久精品在线播放| 欧美成人在线免费观看| 欧美中文在线免费| 国产亚洲日本欧美韩国| 国产精品一区视频网站| 亚洲小说欧美另类婷婷| 亚洲麻豆av| 国产精品麻豆成人av电影艾秋| 国产一区二区三区免费不卡| 亚洲欧洲一区二区在线播放| 国产精品自拍视频| 国产精品久久综合| 国产精品久久久久久久久久直播| 久久免费视频网站| 日韩性生活视频| 亚洲一区视频在线观看视频| 国产精品视频免费一区| 免播放器亚洲| 国产精品女人久久久久久| 亚洲欧美日韩精品久久亚洲区| 在线观看视频亚洲| 国产亚洲精品aa| 亚洲一区在线播放| 欧美精品123区| 亚洲第一成人在线| 海角社区69精品视频| 欧美一区二区三区免费看| 亚洲精品国产精品乱码不99| 宅男精品视频| 一区二区三区精品视频在线观看| 91久久夜色精品国产九色| av成人国产| 欧美视频免费在线| 你懂的视频一区二区| 夜夜嗨av一区二区三区四区| 国产日韩精品在线观看| 午夜宅男久久久| 免费成人高清在线视频| 欧美在线视频免费| 国产精品国产福利国产秒拍| 老司机成人在线视频| 欧美日韩另类一区| 欧美精品首页| 亚洲人成人一区二区三区| 在线播放亚洲| 欧美婷婷在线| 一区二区三区四区五区在线| 欧美在线观看一区二区三区| 久久久九九九九| 亚洲在线观看视频| 在线日韩欧美| 亚洲一区区二区| 一区二区日韩免费看| 亚洲一区二区三区在线看| 欧美福利一区| 欧美精品麻豆| 欧美精品手机在线| 亚洲第一精品在线| 亚洲免费视频中文字幕| 欧美日韩欧美一区二区| 亚洲第一精品夜夜躁人人爽| 欧美色123| 欧美亚洲第一页| 国产精品自在欧美一区| 欧美综合第一页| 久久天天躁狠狠躁夜夜爽蜜月| 欧美日韩精品免费观看视频| 国产一区二区中文字幕免费看| 国产精品一区三区| 国产午夜精品理论片a级大结局| 国产精品另类一区| 美女精品网站| 91久久在线播放| 女同一区二区| 香蕉国产精品偷在线观看不卡| 性色av一区二区三区| 久久精品99国产精品日本| 欧美女同在线视频| 欧美片第一页| 国产酒店精品激情| 一区二区三区在线视频播放| 99精品视频免费在线观看| 免费不卡亚洲欧美| 欧美日韩三区四区| 欧美在线视频不卡| 激情小说亚洲一区| 国产欧美1区2区3区| 亚洲图片在区色| 狂野欧美激情性xxxx| 欧美黄色免费网站| 久久国产精品高清| 欧美激情国产高清| 中文久久乱码一区二区| 国产午夜一区二区三区| 国产欧美亚洲一区| 欧美日本一区二区三区| 久久中文字幕导航| 亚洲国产精品热久久| 亚洲欧美中文字幕| 久久夜色精品国产噜噜av| 国产一区导航| 欧美一区二区在线看| 中国av一区| 狠狠狠色丁香婷婷综合久久五月| 欧美专区日韩专区| 国产精品久久久久免费a∨大胸| 中文一区二区在线观看| 久久天天躁狠狠躁夜夜av| 欧美黑人国产人伦爽爽爽| 亚洲精品美女在线观看播放| 亚洲欧美日本伦理| 亚洲成色www久久网站| 国产精品久久91| 欧美日韩精品一区二区| 久久久久久久欧美精品| 国产综合在线看| 亚洲精品1区| 91久久一区二区| 欧美日韩ab片| 国产一区二区成人| 欧美经典一区二区| 亚洲激情电影在线| 国产欧美韩国高清| 国内精品久久久久久久影视蜜臀| 国模一区二区三区| 亚洲高清在线播放| 亚洲欧洲日产国产综合网| 欧美女同视频| 亚洲亚洲精品在线观看| 久久久久一区二区| 亚洲性视频网站| 日韩午夜一区| 午夜欧美精品| 欧美成人首页| 国产精品久久久久秋霞鲁丝| 欧美精品激情在线观看| 欧美日韩天天操| 欧美精品一区在线| 嫩模写真一区二区三区三州| 国内精品免费午夜毛片| 一区二区高清在线观看| 久久久成人精品| 久久天天躁夜夜躁狠狠躁2022| 国产亚洲亚洲| 一区二区三区精品视频| 亚洲欧美制服中文字幕| 国产精品久久久久久久久久免费看| 国产一区香蕉久久| 亚洲日本中文字幕免费在线不卡| 中文亚洲欧美| 乱人伦精品视频在线观看| 国产精品成av人在线视午夜片| 老司机精品福利视频| 久久精品视频在线免费观看| 亚洲国产一区二区a毛片| 国产一区二区三区最好精华液| 久久久久国产精品一区| 久久久成人精品| 亚洲一区精品电影| 午夜在线视频观看日韩17c| 国产精品夜夜夜| 亚洲免费高清视频| 久久成人免费网| 欧美日韩视频| 欧美经典一区二区| 亚洲国产精品激情在线观看| 模特精品在线| 久久九九久精品国产免费直播| 欧美午夜不卡在线观看免费| 国内精品国产成人| 欧美视频手机在线| 另类春色校园亚洲| 亚洲国产精品va在线看黑人| 国产人成精品一区二区三| 亚洲精品乱码久久久久久按摩观| 在线看片日韩| 在线播放视频一区| 亚洲高清久久网| 国产亚洲va综合人人澡精品| 一区二区在线视频观看| 欧美三区在线视频| 欧美成人性生活| 欧美电影在线免费观看网站| 久久久夜色精品亚洲| 欧美一区二区三区四区在线观看| 久久久久久**毛片大全| 亚洲欧美精品中文字幕在线| 亚洲国产精品va| 国产精品久久久久久超碰| 国产精品国产成人国产三级| 欧美国产欧美亚州国产日韩mv天天看完整| 亚洲一级片在线看| 亚洲精品一区二区三区蜜桃久| 在线免费观看日本一区| 欧美国产一区二区| 欧美一区二区三区视频在线观看| 欧美第一黄网免费网站| 久久夜色精品国产欧美乱极品| 国产日韩一区二区三区在线播放| 一区在线电影| 一本色道久久综合狠狠躁的推荐| 蜜臀久久99精品久久久久久9| 亚洲一卡久久| 欧美日韩福利在线观看| 国产精品成人观看视频免费| 欧美视频在线观看免费网址| 亚洲电影一级黄| 一本色道**综合亚洲精品蜜桃冫| 国产资源精品在线观看| 韩国一区二区三区美女美女秀| 国产精品自在在线| 久久一区二区视频| 亚洲激情在线视频| 欧美日韩一区二区在线观看| 亚洲精品午夜| 雨宫琴音一区二区在线| 欧美一区二区视频97| 黄色成人免费网站| 欧美日韩精品免费看| 亚洲视频电影图片偷拍一区| 欧美视频免费在线| 亚洲午夜精品一区二区三区他趣| 国产在线精品一区二区夜色| 亚洲影院污污.| 一区二区三区.www| 国产亚洲视频在线观看|