《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 藍牙技術的無線顯示屏系統(tǒng)設計
藍牙技術的無線顯示屏系統(tǒng)設計
摘要: 藍牙技術是一種用于替代有線電纜的短距離無線通信技術,。它是由多家公司發(fā)起的SIG組織制定的無線通信技術標準,,目的是取代現有的PC,、打印機、傳真機,、移動電話和家庭網關等設備上的有線接口,,為個人提供語音數據和普通數據的無線傳輸。藍牙設備的工作頻段選在全世界范圍內都可以自由使用的2.4 GHz的ISM頻段,;成本低,功耗低,,體積小,,通信距離短,,安全性高,能夠同時傳送普通數據和語音數據,,可以組成微微網和散射網等,。它已經廣泛應用在移動電話、PDA,、無線耳機,、筆記本電腦等眾多設備上。ISM頻段是對所有無線電系統(tǒng)都開放的頻
Abstract:
Key words :

引言

        藍牙技術是一種用于替代有線電纜的短距離無線通信技術,。它是由多家公司發(fā)起的SIG組織制定的無線通信技術標準,,目的是取代現有的PC、打印機,、傳真機,、移動電話和家庭網關等設備上的有線接口,為個人提供語音數據和普通數據的無線傳輸,。藍牙設備的工作頻段選在全世界范圍內都可以自由使用的2.4 GHz的ISM頻段,;成本低,功耗低,,體積小,,通信距離短,安全性高,,能夠同時傳送普通數據和語音數據,,可以組成微微網和散射網等。它已經廣泛應用在移動電話,、PDA,、無線耳機、筆記本電腦等眾多設備上,。ISM頻段是對所有無線電系統(tǒng)都開放的頻段,,因此使用其中的某個頻段都會遇到不可預測的干擾源。例如某些家電,、無繩電話,、汽車房開門器、微波爐等,,都可能是干擾,。為此,藍牙技術還特別設計了快速確認和跳頻方案,,以確保鏈路穩(wěn)定,。

        本文介紹一種藍牙無線顯示屏系統(tǒng)的設計方案。使用藍牙技術可以短距離無線控制顯示終端,實現圖像和字符數據的無線傳輸和顯示,,免去了有線連接所帶來的缺陷,,可以應用在多種領域。

1系統(tǒng)總體設計

        該無線圖形顯示屏系統(tǒng)主要由兩部分組成:主機部分和顯示終端部分,。主機負責控制命令以及需要顯示數據的發(fā)送,,顯示終端部分負責接收和顯示。系統(tǒng)結構如圖1所示,。

        主機部分由裝有Linux操作系統(tǒng)的PC機和BlueCore4藍牙模塊通過USB接口連接組成,。

        顯示終端由以ARM9微控制器S3C2440A為核心的嵌入式Linux平臺加上BlueCore4藍牙模塊以及LCD液晶顯示屏組成。Linux操作系統(tǒng)安裝在NAND FLASH中,,并連接了64 MB的外擴RAM,。由于S3C2440A接口比較豐富,所以系統(tǒng)硬件具有較好的擴展性能,。

        系統(tǒng)通過藍牙協(xié)議棧的RFCOMM協(xié)議層進行通信,。RFCOMM協(xié)議提供串行數據傳輸,并能在2臺藍牙設備之間同時維持多達60個連接,,可以同時支持遺留串行端口應用程序以及其他應用程序中的OBEX協(xié)議,。藍牙協(xié)議棧的結構框圖如圖2所示。

        系統(tǒng)的工作過程為:系統(tǒng)初始化以后,,主機和顯示終端建立藍牙連接,。連接成功以后,主機應用程序通過藍牙模塊向顯示終端發(fā)送顯示的命令,,顯示終端根據對應命令進行接收圖像數據或者字符數據等操作,,然后通過LCD控制器將數據發(fā)送到LCD液晶顯示屏。系統(tǒng)連接成功以后,,顯示終端可以根據收到的數據實時地顯示不同的圖像和字符數據,,直到主機發(fā)出退出命令系統(tǒng)后結束通信。

2系統(tǒng)硬件設計

         主機端和顯示終端都使用了CSR公司BlueCore4-ROM芯片組成的藍牙無線收發(fā)模塊,。BlueCore4系列符合2.0版藍牙標準,,并與現有1.1版和1.2版藍牙設備完全兼容。這里采用的BlueCore4-ROM芯片具有很高的集成度,,需要很少的外圍露件,。它提供了UART、USB2.0等主機接口,,并且提供了PCM音頻接口以及SPI接口,。具有支持微微網和散射網,低功耗,,和手機良好兼容,,可以和802.11協(xié)議共存等優(yōu)點,。BlueCore4藍牙模塊結構如圖3所示。

        PC主機使用USB接口和BlueCore4藍牙模塊連接,,對應的藍牙模塊同樣通過USB接口和S3C2440A的USB-HOST接口進行連接,。USB接口具有即插即用的優(yōu)點,。通過Linux操作系統(tǒng)的支持,,該模塊還可以使用通用的USB藍牙適配器替代。BlueCore4藍牙模塊部分參考電路原理如圖4所示,。

        LCD液晶屏和S3C2440A微控制器之間通過S3C2440A內建的LCD控制器接口進行連接,。LCD液晶屏這里采用了3.5 in的L35T32,該液晶屏顯示像素為240×320,,可顯示16位色彩,,并可以方便地擴展為更大尺寸的液晶屏。S3C2440A的USB-HOST接口和LCD控制器接口部分參考電路原理,。LCD控制器接口連線主要包括:VD0到VD23(R,、G、B三色分色信息),,VCLK(數據傳輸時鐘),,HSYNC(行同步信號),VSYNC(場同步信號),,VDEN(數據使能),,LCD_PWREN(顯示使能)。

3系統(tǒng)軟件設計

        系統(tǒng)軟件同樣分為主機部分和顯示終端部分,。這里主要分析顯示終端部分軟件的設計,,主機部分與其類似。顯示終端部分程序包括:LCD液晶屏初始化,,藍牙設備的初始化,,藍牙連接的建立和圖像字符數據的傳輸顯示等幾個部分。程序流程如圖6所示,。

        用戶程序以Linux操作系統(tǒng)上的Bluez藍牙協(xié)議棧為平臺進行開發(fā),。主機應用程序采用GCC編譯器進行編譯,顯示終端應用程序采用arm-linux-gcc編譯器進行交叉編譯,。

3.1藍牙部分程序設計

        該部分采用了藍牙socket編程,。通過建立藍牙RFCOMM協(xié)議層的socket進行連接。連接建立成功之后可以調用函數recv或者read讀取主機發(fā)來的數據,,主機端則對應地采用函數send或者write發(fā)送數據,。通信結束之后可以調用函數close結束連接。

        主機和顯示終端藍牙模塊都有固定的藍牙地址,,主機端直接和固定藍牙地址的顯示終端設備進行連接,。一臺主機可以和多個顯示終端進行通信,在不同的顯示終端上顯示圖像和字符。

        藍牙初始化部分參考程序如下:

3.2 LCD液晶屏部分程序設計

        LCD液晶屏部分程序采用了Linux內核驅動程序的framebuffer編程接口,。framebuffer為圖像硬件設備提供了一種抽象化處理,,允許應用程序通過定義明確的界面來訪問圖像硬件設備。軟件無須了解任何涉及硬件底層驅動的東西,。通過framebuffer,,應用程序可以用mmap函數把顯存映射到應用程序虛擬地址空間,將要顯示的數據寫入內存空間就可以在屏幕上顯示出來,。LCD顯示屏初始化和清屏部分參考程序如下:

        LCD液晶屏初始化和藍牙socket初始化連接完成以后,,便可以通過藍牙發(fā)送圖像和字符數據。藍牙接收顯示圖像和字符兩個部分的程序類似,,都是通過調用函數recv或者read讀取主機發(fā)來的命令,,經過程序判斷然后以相同的方式接收數據。字符部分數據接收和顯示參考程序如下:

        該段程序利用接收到的字符數據得到對應的顯示字庫數據,,然后通過frambuffer顯示接口顯示到LCD液晶屏上面,。源程序帶有顯示字庫文件,該文件通過編譯并嵌入可執(zhí)行代碼,,然后下載到顯示終端文件系統(tǒng),。系統(tǒng)這里只添加了英文字庫和對應的顯示代碼,可以正常顯示英文字符,。如果需要,,通過添加中文字庫和少量顯示代碼就可以很方便地實現中文字符的顯示。圖像部分程序則是將接收到的位圖數據通過frambuffer顯示接口直接顯示到LCD液晶屏上面,。

        為了在顯示終端的Linux操作系統(tǒng)上使用藍牙協(xié)議棧,,需要在交叉編譯嵌入式Linux內核時將所需的藍牙支持選項選上,并將所需的Bluez藍牙庫編譯安裝到終端文件系統(tǒng)中,。用戶應用程序同樣通過交叉編譯得到可執(zhí)行代碼,,然后下載到終端文件系統(tǒng)運行。

        該系統(tǒng)可以應用在公共信息顯示屏,,如大廳廣告信息屏,、建筑物提示標志等地方,可以避免有線連接的缺陷,。系統(tǒng)通過擴展后還可以同移動電話,、PDA、無線耳機,、無線揚聲器交換數據,。

4結論

        在嵌入式Linux操作系統(tǒng)上通過已有的藍牙協(xié)議棧進行藍牙開發(fā),通過藍牙協(xié)議層無線收發(fā)數據,,可以不用關心藍牙底層驅動的實現,。用戶可以通過各種上層協(xié)議進行更復雜的通信,,通過藍牙SCO協(xié)議層還可以發(fā)送音頻數據。因此嵌入式Linux操作系統(tǒng)平臺上進行藍牙無線顯示屏系統(tǒng)的開發(fā)較為方便,,并且具有擴展性能好的優(yōu)點,。

此內容為AET網站原創(chuàng),未經授權禁止轉載,。