基于ARM的視頻安全監控終端的設計與實現
本設計采用CS8900A擴展網絡接口,它是CIRRUS LOGIC公司生產的16位以太網控制器,通過內部寄存器的設置來適應不同的應用環境。S3C2410通過地址、數據、控制線以及片選信號線對CS8900A網絡芯片進行控制和通信。CS8900A與S3C2410的連接如圖3所示,CS8900A由S3C2410的nGCS3信號選通,CS8900A的INTRQ0端用來產生中斷信號,與S3C2410的16位數據總線相連,地址線使用了A[24:0]。
CS8900A以太網控制芯片通過DMA通道進行數據的傳輸。首先設置好傳輸控制和傳輸地址寄存器的參數,依次從指定的數據存儲區域讀取數據,送入內部發送緩沖器中,用MAC對數據進行封裝發送。一組數據發送完后,請求DMA中斷,由S3C2410進行處理。
RS-232接口與PC機串行總線相連,通過PC機對嵌入式系統進行相關信息顯示和控制。而JTAG接口主要是對系統進行調試,還可將程序燒寫到Flash中。
系統的軟件設計
(1)在硬件上搭建一個軟件平臺,搭建嵌入式Linux軟件開發平臺需要完成UBOOT移植、嵌入式Linux操作系統內核移植以及嵌入式Linux操作系統的設備驅動程序的開發等工作。
(2)在軟件平臺的基礎上,開發系統的應用程序。借助交叉編譯工具,開發視頻監控終端上運行的采集、壓縮、傳輸程序。
構建基于S3C2410的Linux平臺
Linux具有許多優點,如開放源碼;功能強大的內核,支持多用戶、多線程、多進程、實時性好、功能強大穩定;大小功能可定制;支持多種體系結構。
構建嵌入式Linux開發平臺需要先構建交叉編譯環境,如圖4所示。一套完整的交叉編譯環境包括主機和目標機。在開發中主機是一臺裝有紅帽公司的FedoreCore 2操作系統的PC機,目標機是基于S3C2410的視頻監控終端。選用的交叉編譯器是GCC3.3.4 for ARM版,嵌入式Linux內核源代碼包版本號為2.6.8RC。
2.6.8RC版的Linux內核源代碼包中包含了所有的功能模塊。系統中只用到了其中的一部分。因此,編譯內核之前首先要配置內核,裁減掉冗余的功能模塊,經過定制的內核才符合系統設計。具體步驟如下:
評論