基于嵌入式Linux操作系統的可視化安全倒車系統
2.5 語音報警模塊與LCD顯示模塊
語音報警模塊采用的是安徽中科大訊飛信息科技有限公司生產的XF-S3011中文語音合成芯片。它是一款針對嵌入式應用領域而設計的單芯片處理器,具有合成任意中文文本的能力。XF-S3011通過串口(UART)接收上位機發送的命令和數據,命令和數據是以幀的方式進行封裝與發送,允許發送的數據最大長度為200個字節。其驅動電路是用三極管驅動方式設計的。當超聲波測得的距離小于所設置的閾值時,由S3C2 440發送控制命令給XF-S3011,啟動語音報警提醒駕駛員注意。顯示模塊使用的是東華3.5寸TFT LCD(分辨率是320×240),采用嵌入式Linux下的Frame. Buffer設備來驅動LCD。
3 系統軟件設計
本文選擇嵌入式Linux操作系統。它具有可裁剪、內核穩定、功能強大、支持多種硬件平臺等特點。首先,在一臺裝有Linux操作系統的PC機(宿主機)上建立一個交叉編譯開發環境,把S3C2440控制模塊作為目標板。然后,采用移植性較好的C語言在PC機上編寫本設計所需的底層驅動程序及頂層的應用程序,再利用交叉編譯調試工具編譯、鏈接生成可執行代碼,最后向目標板移植。
3.1 視頻圖像采集及LCD顯示程序的設計
第l步,采用動態加載ZC0301組芯片的USB攝像頭驅動程序spca5xx。此驅動程序源代碼由4個部分組成:設備模塊的初始化模塊、卸載模塊、上層軟件接口模塊和數據傳輸模塊。把它放在kernel/driver/usb下解壓,打補丁。在編譯系統內核時,在arm Linux的kernel目錄下進行make menueonfig;在*>下選擇MulTImedia device下的Video for linux,加載Vide04linux模塊,為視頻采集設備提供編程接口函數和相關數據結構;(M)選中SPCA5XX這一項。
第2步,使用Linux的Video4linux來訪問USB攝像頭設備,進行視頻圖像采集,捕獲實時的數據流。程序流程如圖5所示。

為程序定義數據結構:

評論