<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于嵌入式Linux操作系統(tǒng)的可視化安全倒車系統(tǒng)

          基于嵌入式Linux操作系統(tǒng)的可視化安全倒車系統(tǒng)

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

            2.5 語(yǔ)音報(bào)警模塊與LCD顯示模塊

            語(yǔ)音報(bào)警模塊采用的是安徽中科大訊飛信息科技有限公司生產(chǎn)的XF-S3011中文語(yǔ)音合成芯片。它是一款針對(duì)應(yīng)用領(lǐng)域而設(shè)計(jì)的單芯片處理器,具有合成任意中文文本的能力。XF-S3011通過串口(UART)接收上位機(jī)發(fā)送的命令和數(shù)據(jù),命令和數(shù)據(jù)是以幀的方式進(jìn)行封裝與發(fā)送,允許發(fā)送的數(shù)據(jù)最大長(zhǎng)度為200個(gè)字節(jié)。其驅(qū)動(dòng)電路是用三極管驅(qū)動(dòng)方式設(shè)計(jì)的。當(dāng)超聲波測(cè)得的距離小于所設(shè)置的閾值時(shí),由S3C2 440發(fā)送控制命令給XF-S3011,啟動(dòng)語(yǔ)音報(bào)警提醒駕駛員注意。顯示模塊使用的是東華3.5寸TFT LCD(分辨率是320×240),采用下的Frame. Buffer設(shè)備來(lái)驅(qū)動(dòng)LCD。

            3 軟件設(shè)計(jì)

            本文選擇操作。它具有可裁剪、內(nèi)核穩(wěn)定、功能強(qiáng)大、支持多種硬件平臺(tái)等特點(diǎn)。首先,在一臺(tái)裝有操作的PC機(jī)(宿主機(jī))上建立一個(gè)交叉編譯開發(fā)環(huán)境,把S3C2440控制模塊作為目標(biāo)板。然后,采用移植性較好的C語(yǔ)言在PC機(jī)上編寫本設(shè)計(jì)所需的底層驅(qū)動(dòng)程序及頂層的應(yīng)用程序,再利用交叉編譯調(diào)試工具編譯、鏈接生成可執(zhí)行代碼,最后向目標(biāo)板移植。

            3.1 視頻圖像采集及LCD顯示程序的設(shè)計(jì)

            第l步,采用動(dòng)態(tài)加載ZC0301組芯片的USB攝像頭驅(qū)動(dòng)程序spca5xx。此驅(qū)動(dòng)程序源代碼由4個(gè)部分組成:設(shè)備模塊的初始化模塊、卸載模塊、上層軟件接口模塊和數(shù)據(jù)傳輸模塊。把它放在kernel/driver/usb下解壓,打補(bǔ)丁。在編譯系統(tǒng)內(nèi)核時(shí),在arm Linux的kernel目錄下進(jìn)行make menueonfig;在*>下選擇MulTImedia device下的Video for linux,加載Vide04linux模塊,為視頻采集設(shè)備提供編程接口函數(shù)和相關(guān)數(shù)據(jù)結(jié)構(gòu);(M)選中SPCA5XX這一項(xiàng)。

            第2步,使用Linux的Video4linux來(lái)訪問USB攝像頭設(shè)備,進(jìn)行視頻圖像采集,捕獲實(shí)時(shí)的數(shù)據(jù)流。程序流程如圖5所示。

            

          程序流程

            為程序定義數(shù)據(jù)結(jié)構(gòu):

            

          程序定義數(shù)據(jù)結(jié)構(gòu) linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評(píng)論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();