新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于Windows和USRP數字對講機收發系統設計

        基于Windows和USRP數字對講機收發系統設計

        作者:張興龍 曾捷 劉莉莉 粟欣 時間:2013-09-23 來源:電子產品世界 收藏

          而用VC開發通信協議程序比較方便,的通用驅動UHD也是用VC開發的,相比較與Simulink和Labview,在VC上開發,更具優勢,更適合本項目的開發。并且Simulink和Labview都只支持2,開發還不是很成熟,工具也不方便[4][5]。本次驗證系統采用的是1,USRP1采用的是USB2.0接口,相對于USRP2以太網接口簡單方便,母版上采用的是Altera的芯片,容易開發,并且價格便宜。所以,采用USRP1在上用VC進行開發。

        本文引用地址:http://www.104case.com/article/170161.htm

        USRP在上開發接口

          UHD是由Ettus Resarch開發的,為其產品提供宿主驅動(host driver)和API。本次設計在平臺下,采用UHD驅動。在安裝UHD驅動時,需要安裝cmake,Boost,libUSB等插件,然后解壓UHD源碼,通過cmake交叉編譯實現,可以得到UHD下面的各個項目工程。Boost和libUSB這兩個庫在cmake編譯中都需要進行配置,否則編譯過不去。這些插件主要作用就是將UHD下面的Linux源代碼通過cmake等交叉編譯生成Windows下面的C代碼。

          安裝好后可以連接上USRP,通過里面的測試實例,可以看到USRP是否正確連上。正確連上會顯示如下信息:圖中的參數是可配置的。

          然后,我們就可以調用UHD下面的一些API函數,在本次項目中主要參考的就是底層的send()和recv()。里面的程序全是通過類來實現的。在Windows平臺上,USRP提供的可配參數主要如表2所示。

          但是send()和recv()收發不滿足規定的要求,并且在進行收發轉換時,時序處理不過來。為了方便上層調用,將配置分為三部分,對UHD下面的接口函數進行了重新封裝,如表3所示。

          在configure()里面主要是創建了一個USRP,它花時較長,需要返回一些USRP的子板和母版信息,還要導入一些映像文件,所以采用單獨分開配置,在程序調用之前配置一次就可以。configure_recv()和configure_send()主要是配置一些收發的具體參數,就是上面介紹的主要參數。這樣將配置分開,是為收發轉換準備的,方便上層調用。Mod_send()主要負責將上層來的數據進行調制然后調用底層send()將數據發送出去,Demod_recv()主要負責調用底層recv()并將接收的數據解調返回給上層。

        收發系統實現及測試

          系統平臺搭建

          系統平臺基于軟件無線電的架構,基帶處理部分按照協議由軟件模塊來實現,包括組幀、同步、信道接入、BPTC信道編碼等,這部分主要在PC機上完成。射頻部分由硬件模塊USRP完成,采用400M的射頻子板,與PC之間通過USB2.0進行通信。語音模塊由AMBE-1000來完成,本次系統中語音板是插在一個51最小系統上,51最小系統主要負責AMBE-1000語音板的驅動和它與PC機之間的串口通信。具體系統架構如圖3。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        linux相關文章:linux教程


        模數轉換器相關文章:模數轉換器工作原理


        數字通信相關文章:數字通信原理


        數字濾波器相關文章:數字濾波器原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 甘洛县| 浪卡子县| 邛崃市| 都安| 蓬莱市| 青川县| 灵武市| 石城县| 宁阳县| 旬邑县| 宾川县| 花莲市| 洛浦县| 营山县| 乐平市| 新营市| 镇宁| 衡山县| 郑州市| 湾仔区| 巴东县| 集安市| 改则县| 北宁市| 合川市| 武清区| 秭归县| 民和| 乐亭县| 隆回县| 资中县| 陇西县| 车险| 正蓝旗| 无为县| 阿拉善左旗| 合作市| 拉孜县| 永胜县| 济源市| 封丘县|