王偉++唐軍
摘 要:針對傳統(tǒng)營銷存在的問題并結(jié)合網(wǎng)絡(luò)營銷優(yōu)勢,提出了一種基于嵌入式Linux的遠(yuǎn)程銷售管理系統(tǒng)。該系統(tǒng)將Samsung S5PV210微控制器作為銷售管理終端,控制器通過I?2S和I2C總線與音頻編解碼芯片WM8960進行數(shù)據(jù)交互,CMOS攝像頭負(fù)責(zé)采集圖像信息,系統(tǒng)收集的數(shù)據(jù)借助以太網(wǎng)或WiFi模塊傳送到云服務(wù)器,利用云平臺數(shù)據(jù)中轉(zhuǎn),可實現(xiàn)音頻和圖像數(shù)據(jù)遠(yuǎn)程發(fā)送和接收。該系統(tǒng)的使用轉(zhuǎn)變了營銷模式,整體設(shè)計結(jié)構(gòu)簡單、運行穩(wěn)定,用戶可以實時遠(yuǎn)程視頻對話銷售。
關(guān)鍵詞:嵌入式;CMOS攝像頭;云服務(wù)器;遠(yuǎn)程銷售
中圖分類號:TP274 文獻標(biāo)識碼:A 文章編號:2095-1302(2017)07-00-02
0 引 言
近年來,隨著互聯(lián)網(wǎng)技術(shù)的快速發(fā)展,網(wǎng)絡(luò)營銷以一種全新的方式深入大眾生活的方方面面,對傳統(tǒng)營銷形成了巨大沖擊。然而,由于網(wǎng)絡(luò)營銷缺少對真實物品的直接感知,加之網(wǎng)絡(luò)廣告夸大宣傳,導(dǎo)致網(wǎng)絡(luò)營銷并不能完全取代傳統(tǒng)營銷。因此,加快轉(zhuǎn)變網(wǎng)絡(luò)營銷模式,促進消費,對于國民經(jīng)濟增長具有重要意義。
基于嵌入式Linux的遠(yuǎn)程銷售管理系統(tǒng)克服了原有營銷模式的弊端。相對于網(wǎng)絡(luò)銷售而言,該系統(tǒng)不僅支持線上瀏覽物品信息、網(wǎng)上交易以及網(wǎng)上評價,而且通過云平臺,商家可以借助系統(tǒng)設(shè)計的語音、攝像頭模塊實現(xiàn)與客戶終端設(shè)備的信息交互,通過面對面交流,用戶可以直接感知商品,促進公平交易,保障消費者利益,具有廣闊的商業(yè)前景。
1 系統(tǒng)總體設(shè)計
基于嵌入式Linux的遠(yuǎn)程銷售管理系統(tǒng)主要分為移動終端、云平臺和嵌入式平臺三部分,系統(tǒng)整體結(jié)構(gòu)如圖1所示。
云平臺是系統(tǒng)數(shù)據(jù)中轉(zhuǎn)的橋梁,負(fù)責(zé)接收來自移動終端和嵌入式平臺的音頻圖像數(shù)據(jù)并轉(zhuǎn)發(fā)到終端設(shè)備。嵌入式平臺是系統(tǒng)的硬件核心,由WiFi模塊、語音模塊、攝像頭模塊等組成,通過相關(guān)配置,WiFi模塊可以直接連接到路由器,語音模塊和攝像頭模塊是系統(tǒng)數(shù)據(jù)采集單元,嵌入式平臺將采集的數(shù)據(jù)通過WiFi模塊發(fā)送至云服務(wù)器。移動終端設(shè)備主要針對手機等手持設(shè)備,通過云平臺提供應(yīng)用程序編程接口,可以方便地開發(fā)Android平臺應(yīng)用程序。
2 系統(tǒng)硬件設(shè)計
2.1 控制器模塊
遠(yuǎn)程銷售管理系統(tǒng)嵌入式平臺選用高性能Samsung S5PV210微處理器作為核心控制器,此模塊具有豐富的接口資源,擁有150個通用I/O接口、6路ADC、3路I2C等。此外,芯片內(nèi)部集成高性能圖像處理引擎,可支持硬件解碼多種格式1080P高清視頻。不僅如此,S5PV210還支持多類型音頻接口,通過I2S外接WM8960音頻編解碼芯片,實現(xiàn)音視頻同步輸出[1]。
基于S5PV210處理器在圖像、音頻等方面的性能優(yōu)勢,將其作為銷售管理系統(tǒng)終端控制器。
2.2 LCD顯示模塊
LCD顯示模塊也是本系統(tǒng)研究的重點。LCD顯示模塊主要用于可視對講、來電提醒,此外,LCD還用于信息輸入等功能,用戶借助LCD可以上傳數(shù)據(jù),查看當(dāng)前銷售狀態(tài)、客戶訪問量、客戶評價等信息,是用戶與客戶交換信息的媒介。
LCD主要分為TN型、STN型、TFT型,該系統(tǒng)運行嵌入式Linux,要求支持觸屏控制,所以選用LCD-S70液晶顯示模塊。該模塊亮度高、視角廣,支持音視頻混播,同步控制VS、HS引腳高低電平,可以切換LCD數(shù)據(jù)使能模式和同步模式[2],圖像和控制信號經(jīng)S5PV210控制器寫入LCD寄存器,從而控制圖像數(shù)據(jù)顯示。
2.3 CMOS攝像頭模塊
圖像采集模塊選用一種基于圖像傳感器的CMOS攝像頭,圖像通過鏡頭折射到傳感芯片表面轉(zhuǎn)化為模擬電信號,經(jīng)過模數(shù)轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字信號,后經(jīng)DSP芯片處理后,輸出數(shù)字圖像[3]。
OV7670是一種價格低、采集圖像速度快、支持FIFO緩存器的CMOS攝像頭。該模塊具有8位數(shù)據(jù)并行輸出接口,所有的寄存器只能通過SCCB接口設(shè)置,支持不掉電和掉電兩種節(jié)電模式。當(dāng)MCU讀取速度無法匹配攝像頭采集圖像速度時,可以將數(shù)據(jù)暫存于緩存中。模塊與控制器連接如圖2所示。
2.4 音頻編解碼模塊
系統(tǒng)在視頻對話中為減少音頻數(shù)據(jù)占用的系統(tǒng)存儲空間,采用WM8960音頻編解碼芯片將音頻數(shù)據(jù)進行編解。
該芯片內(nèi)部集成有專用的麥克風(fēng)接口和耳機驅(qū)動器,同時具有信噪比為98 dB的數(shù)模轉(zhuǎn)換器和信噪比為95 dB的模數(shù)轉(zhuǎn)換器。WM8960與控制器S5PV210通過I2S和I2C總線進行數(shù)據(jù)交互[4],如圖3所示。原始的音頻信號經(jīng)芯片模數(shù)轉(zhuǎn)換器轉(zhuǎn)換為數(shù)字信號,經(jīng)I2S總線傳輸?shù)娇刂破鳎ㄟ^控制器中轉(zhuǎn)把音頻數(shù)據(jù)存儲到內(nèi)存單元。當(dāng)需要播放音頻時,控制器從內(nèi)存取出數(shù)據(jù),經(jīng)I2S總線將數(shù)據(jù)傳輸給WM8960芯片,通過數(shù)模轉(zhuǎn)換器將數(shù)字化音頻信號還原為模擬信號。其中,I2C總線主要負(fù)責(zé)傳輸控制信號。
3 系統(tǒng)軟件設(shè)計
3.1 嵌入式Linux系統(tǒng)開發(fā)
嵌入式Linux開發(fā)主要包括三部分,即嵌入式Linux系統(tǒng)移植、驅(qū)動程序開發(fā)、應(yīng)用程序開發(fā)。
3.1.1 嵌入式Linux系統(tǒng)移植
該嵌入式開發(fā)基于Fedora 9.0平臺,在Linux系統(tǒng)移植之前,首先使用arm-linux-gcc-4.5.1工具建立交叉編譯環(huán)境,解壓安裝后運行arm-linux-gcc -v命令檢查是否安裝成功。其次,編寫內(nèi)核引導(dǎo)加載程序Bootloader,通過引導(dǎo)加載程序初始化設(shè)備,建立內(nèi)存空間關(guān)系映射[5]。上述工作完成后,進行下一步配置和編譯內(nèi)核,本實驗采用Linux-3.0.8版本內(nèi)核,執(zhí)行make命令進行編譯,生成zImage內(nèi)核文件。最后,用mkyaffs2image-mlc2工具制作適用于MLC NAND Flash文件的系統(tǒng)映象[6],制作完成后,移植嵌入式Linux系統(tǒng)。其整體流程如圖 4所示。
3.1.2 嵌入式Linux驅(qū)動程序開發(fā)
該系統(tǒng)驅(qū)動開發(fā)包括LCD驅(qū)動、網(wǎng)絡(luò)驅(qū)動、音頻驅(qū)動和攝像頭驅(qū)動等。Linux系統(tǒng)為外顯設(shè)備提供了標(biāo)準(zhǔn)幀緩存接口,幀緩存最重要的數(shù)據(jù)結(jié)構(gòu)體為fb_info,靈活修改VAR和FIX兩個參數(shù)是開發(fā)的關(guān)鍵;網(wǎng)絡(luò)驅(qū)動開發(fā)分為四層,主要編寫函數(shù)完善設(shè)備驅(qū)動功能層及填充net_device結(jié)構(gòu)體[7];音頻驅(qū)動采用OSS驅(qū)動,首先需要注冊混音器和數(shù)字信號處理器,混音器接口實現(xiàn)文件系統(tǒng)的打開和I/O控制,數(shù)字信號處理器接口主要完成文件讀寫操作;CMOS攝像頭屬于字符類設(shè)備,驅(qū)動開發(fā)需要三步,即初始化設(shè)備、配置相關(guān)寄存器和控制數(shù)據(jù)傳送,同時必須考慮并發(fā)控制。
3.1.3 嵌入式Linux應(yīng)用程序開發(fā)
嵌入式Linux應(yīng)用程序開發(fā)針對用戶實現(xiàn)與云平臺的數(shù)據(jù)交互,本系統(tǒng)基于Qt開發(fā)應(yīng)用程序界面,使用designer工具設(shè)計系統(tǒng)圖形界面。首先以ui文件名作為參數(shù)輸入命令啟動designer創(chuàng)建基于QWidget的窗體,修改窗口大小以適應(yīng)LCD液晶顯示,然后在窗體放置基本控件,改變控件屬性,并為控件添加事件響應(yīng)[8]。界面設(shè)計完成后開始編寫代碼,主要編寫程序入口函數(shù)、窗口頭文件、窗口源文件以及項目文件等。程序編譯時生成PC端應(yīng)用程序,再使用交叉編譯工具生成嵌入式Linux應(yīng)用程序,最后借助Photoshop等圖像軟件生成48×48像素PNG文件為程序添加圖標(biāo)。
3.2 Android應(yīng)用程序開發(fā)
Android平臺App開發(fā)主要針對客戶端,通過App訪問云數(shù)據(jù)庫,同時實現(xiàn)與云平臺音視頻數(shù)據(jù)交互。應(yīng)用程序開發(fā)前,需要搭建開發(fā)環(huán)境,下載安裝JDK和SDK,配置環(huán)境變量。配置完成后,打開Eclipse安裝ADT。Android應(yīng)用程序開發(fā)首先應(yīng)建立xml布局文件,放置基本控件,然后開發(fā)Java應(yīng)用程序文件,借助云平臺提供的API接口可以很容易地實現(xiàn)手機與云平臺數(shù)據(jù)交互。
4 結(jié) 語
基于嵌入式Linux的遠(yuǎn)程銷售管理系統(tǒng)在設(shè)計上將嵌入式技術(shù)、云技術(shù)以及安卓開發(fā)技術(shù)應(yīng)用在銷售管理行業(yè),改變了傳統(tǒng)銷售模式,彌補了網(wǎng)絡(luò)營銷的不足。該系統(tǒng)最大的創(chuàng)新點就是建立了用戶和消費者之間溝通的橋梁。消費者借助手機App不僅可以瀏覽用戶銷售信息,還能通過鏈接建立視頻對話通道,真正實現(xiàn)遠(yuǎn)程面對面交易,讓消費者直接感知商品,從根本上解決了傳統(tǒng)網(wǎng)絡(luò)營銷夸大宣傳,欺騙消費等問題,具有很高的實用價值。
參考文獻
[1]劉麗.嵌入式WM8960音頻驅(qū)動及多線程播放器的設(shè)計[D].哈爾濱:哈爾濱工業(yè)大學(xué),2015.
[2]張伽偉,周安棟,羅勇.ARM11嵌入式系統(tǒng)Linux下LCD的驅(qū)動設(shè)計[J].液晶與顯示,2011,26(5):660-664.
[3]李宇成,黃堂猛.基于S5PV210的1080P網(wǎng)絡(luò)攝像頭設(shè)計[J].計算機工程與設(shè)計,2014,35(11):3813-3819.
[4]肖青青,王甦,段勁生.音頻控制技術(shù)在現(xiàn)代農(nóng)業(yè)中的功能研究進展[J].天津農(nóng)業(yè)科學(xué),2017,23(1):40-43.
[5]嚴(yán)菊明.基于ARM嵌入式系統(tǒng)的通用Bootloader的設(shè)計與實現(xiàn)[D].南京:東南大學(xué),2005.
[6]張海峰.嵌入式Linux內(nèi)核及其驅(qū)動開發(fā)[J].紅外,2003(10):26-31.
[7]何劍鋒,鄔文彪,李宏穆,等.嵌入式Linux系統(tǒng)的Qt/Embedded圖形界面開發(fā)[J]. 電子工程師,2007(7):46-48.
[8]朱園.嵌入式Linux設(shè)備驅(qū)動的研究與開發(fā)[D].北京:北京郵電大學(xué),2008.
[9]呂文輝.基于S5PV210的物聯(lián)網(wǎng)視頻壓縮傳輸系統(tǒng)的設(shè)計與實現(xiàn)[D].成都:電子科技大學(xué),2016.