新聞中心

EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 基于藍(lán)牙技術(shù)的無(wú)線顯示屏系統(tǒng)設(shè)計(jì)

基于藍(lán)牙技術(shù)的無(wú)線顯示屏系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2010-03-24 來(lái)源:網(wǎng)絡(luò) 收藏

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

本文引用地址:http://m.butianyuan.cn/article/157552.htm


用戶程序以Linux操作上的Bluez協(xié)議棧為平臺(tái)進(jìn)行開(kāi)發(fā)。主機(jī)應(yīng)用程序采用GCC編譯器進(jìn)行編譯,顯示終端應(yīng)用程序采用arm-linux-gcc編譯器進(jìn)行交叉編譯。
3.1藍(lán)牙部分程序
該部分采用了藍(lán)牙socket編程。通過(guò)建立藍(lán)牙RFCOMM協(xié)議層的socket進(jìn)行連接。連接建立成功之后可以調(diào)用函數(shù)recv或者read讀取主機(jī)發(fā)來(lái)的數(shù)據(jù),主機(jī)端則對(duì)應(yīng)地采用函數(shù)send或者write發(fā)送數(shù)據(jù)。通信結(jié)束之后可以調(diào)用函數(shù)close結(jié)束連接。
主機(jī)和顯示終端藍(lán)牙模塊都有固定的藍(lán)牙地址,主機(jī)端直接和固定藍(lán)牙地址的顯示終端設(shè)備進(jìn)行連接。一臺(tái)主機(jī)可以和多個(gè)顯示終端進(jìn)行通信,在不同的顯示終端上顯示圖像和字符。
藍(lán)牙初始化部分參考程序如下:

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



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉