新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 基于3G手機的視頻監控系統設計與實現

        基于3G手機的視頻監控系統設計與實現

        作者: 時間:2012-05-01 來源:網絡 收藏
        : mode??Write) ;

          long iTemp = 0;

          while ( 1)

          {

          rcv = r ecv ( s, buffer, 1024, 0) ;

          if ( rcv = = 0)

          {

          break;

          }

          file. Wr ite( buffer, rcv) ;

          iTemp + = rcv ;

          }

          file. Close( ) ;

          send( s, “ [ ! %] ” , 4, 0) ; / / 發送接收文件結束請求

          int ret1= send( pDlg> m_hSo cket, buffer, iSize, 0) ;

          / / 發送文件的名稱和大小

          / / 發送文件

          if ( iEnd= = SOCKET_Error)

          {

          strError. Format( _T( “ Send File: %d”) , er ro r= WSAGetLast Error( ) ) ;

          AfxM essag eBox ( strErr or) ;

          break;

          }

          iT mp + = iEnd;

          pDlg> m_pro gr ess. Set Pos( iTmp) ;

          Sleep( 10) ;

          / / 判斷發送是否成功、結束處理

          if ( iTmp = = lFileSize)

          {

          }

          CSt ring st rTemp= “發送文件結束” ;

          / / 回復對方接收完畢

          pDlg> SendMessag e( NULL, NULL) ;

          pDlg> m_cState. SetWindowTex t( st rTemp) ;

          / / shutdow n( ) ;

          ExitThread( 0) ;

          return 0;

          4 應用軟件設計及實驗結果

          操作系統與硬件平臺間采用虛擬串口進行通信,EVC 在實現串口數據通信中存在2 個局限性: 一是EVC 不支持串口通信控件MScomm, 另一個是WinCE不支持重疊I/ O 操作。因此, 要采用WinCE 的API 函數和多線程技術進行數據串口通信的底層開發[ 10] 。

          Window s API 函數將串口視為文件, 對于串口的操作類似于對于普通文件的操作。在EVC 環境中, 通過調用CreateFile 函數來打開串口, 設置串口讀寫模式:

          H ANDLE m _ hComm = Cr eateFile ( szPor t, GENERIC _READ| GENERIC _WRIT E, 0, NULL, OPEN _ EXISTING, 0,NULL) ;因為WinCE 不支持重疊I/ O, 所以CreateFile 的第6 個參數不能設置為: FILE _ FLAG _ OVER _LAPPED, 這里設置成通用常數“ 0”, 否則串行通信處理將被系統信息阻塞。

          打開串口以后, 可以使用串口初始化函數SetCommState( ) 來獲取串口當前的配置, 如串口號、波特率、奇偶校驗、數據位、停止位等:

          BOOL CGSM W_CameraDlg: : OpenPo rt ( UINT port No , / * 串口號* /

          UINT baud, / * 波特率* /

          UINT parity, / * 奇偶校驗* /

          UINT databits, / * 數據位* /

          UINT sto pbits / * 停止位* / )

          初始化緩沖區的信息:

          Purg eComm( m _ hComm, PURGE _ TXCLEAR | PURGE _RXCLEAR) ;

          m _ hReadCloseEv ent = CreateEvent ( NULL, T RUE,FALSE, NU LL) ;

          m_ hReadT hread = Cr eateThread ( NU LL, 0, ReadT hr ead Func, this, 0, m_dw ReadT hreadID) ;

          應用程序開發是在EVC 集成開發環境中進行的。

          用EVC 的AppWizard 向導建立基于MFC 的對話框程序架構, 在進行頁面布局“圖像顯示區域”、“初始化”、“接聽”、“撥號”、“掛機”等按鈕后, 為各種按鈕添加各種消息響應時間以及完成對各按鈕進行的設置, 以響應用戶期待的命令。“初始化”按鈕是進行3G 網絡的初始化。“接聽”按鈕就是響應3G 手機發送給開發板的命令,“撥號”按鈕所需進行的設置有對方號碼、撥號時發送的消息以及服務器IP 和端口號, 設置完這些就可進行撥號等待響應了;“掛機”按鈕實現退出應用程序和關閉攝像頭驅動的功能。實現這些按鈕的單擊事件響應函數的添加是比較容易的, 在EVC 環境中直接雙擊按鈕, 進入代碼編輯區就可進行編程調試。這里給出“初始化”和“撥號”按鈕的部分代碼, ……后面為省略的部分。

          OpenPor t( 7, 115200) ; / / AT Com

          if ( m_hComm ! = INVALID_H ANDLE_VALU E) / / 如果初始化按鈕被按下

          {

          / / 3G 初始化

          UpdateData( TRUE) ;

          SendCommand( “ATE0 r n” ) ; / * 取消回顯命令* /

          …}

          else

          {

          st r = “WCDMA 沒有連接上”;

          Messag eBox ( st r) ;

          return;

          }

          …

          CStr ing str ( “AT D”) ;

          UpdateData( TRUE) ;

          m_hut. EnableWindow( TRUE) ;

          st r+ = m_RecvTele;

          st r+ = “ ; r n”;

          UpdateData( ) ;

          SendCommand( str ) ; / * 讀取SIM 中的第一條短信* /

          …

          系統應用軟件開發完成之后, 在3G 手機應用程序中打開手機主控端軟件, 單擊 初始化按鈕完成 撥號前的設置, 將信息發送給Micro2440 開發板, 等待響應,順利地采集圖片并最終顯示到3G 手機上, 圖4 為主控終端軟件界面及圖片顯示結果。

          5 結 語

          該系統實現基于9 平臺和WinCE 操作系統,通過CMOS 攝像頭采集現場照片信息, 然后通過WCDMA 無線網絡連接到萬維網服務器, 手機端設計出滿足條件的軟件, 最終在3G 手機上實現圖片監控的功能。該系統具有實時性較好、成本較低、便于攜帶等優點, 非常適合在安保、交通、手持設備、家電、學校巡防等方面的應用, 它是實現部分的重要組成部分。

          目前只實現了圖像的傳輸及在3G 手機上的顯示, 視頻部分的傳輸顯示, 由于時間原因, 還暫時沒有完成。下一步將采用合適的視頻壓縮編碼算法如H. 264,MPEG4 編解碼技術, 實現功能。

          基于3G手機的視頻監控系統設計與實現

          圖4 3G 手機主控終端軟件界面及圖片顯示結果

          參考文獻

          [ 1] 喻亮。 系統的結構特征與研究概況[ J] 。 企業科技與發展, 2010( 8) : 55-57.

          [ 2] 謝園園, 孫發勤。 基于系統的遠程醫療監護終端的設計與模擬實現[ J] 。 金陵科技學院學報, 2006, 22( 3) : 34-36.

          [ 3] 許雪梅, 郭遠威, 吳愛軍, 等。 基于Window s CE50 的無線監控系統研究[ J] 。 現代電子技術, 2009, 32( 2) : 25-29.

          [ 4] 趙曉軍, 任明偉, 蘇海霞, 等。 基于 的嵌入式無線系統[ J] 。 微型機與應用, 2010, 29( 16) : 54-56.

          [ 5] 查婧, 劉波, 曹劍中。 嵌入式與網絡傳輸系統[ J] 。電子器件, 2009, 32( 3) : 646-648.

          [ 6] 李伶, 李太君。 基于3G 的手機遠程監控系統[ J] 。 通信技術,2010, 43( 9) : 130-132.

          [ 7] 焦鉻, 易小波, 李仁發。 基于嵌入式Inter net 的遠程視頻監控系統設計[ J] 。 計算機技術與發展, 2009, 19( 5) : 176-179.

          [ 8] 錢華明, 劉英明, 張振旅。 基于S3C2410 嵌入式無線視頻監控系統的設計[ J] 。 計算機測量與控制, 2009, 17( 6) : 1132-1134.

          [ 9] 王靜。 基于S3C2440 和TCP/ IP 網絡的紅外線圖像采集和處理系統[ D] 。 南京: 南京理工大學, 2008.

          [ 10] 劉慶亮, 劉建成。 WinCE 下多線程串口通信在導航系統中的應用[ J] 。 軟件導刊, 2010, 9( 3) : 77-79.

          [ 11] 李文新, 王廣龍, 陳建輝, 等。 基于WinCE 的數字羅盤集成電路I2 C 驅動程序開發[ J] 。 電子測量技術, 2009, 32( 10) :73-76.

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 兰州市| 苏尼特左旗| 普兰店市| 日照市| 榆树市| 金门县| 桐柏县| 平江县| 马尔康县| 罗平县| 石泉县| 苍山县| 黎川县| 准格尔旗| 宾川县| 宁强县| 郑州市| 屏南县| 克什克腾旗| 韶山市| 建德市| 毕节市| 富裕县| 饶平县| 龙江县| 苍溪县| 孟连| 蒙阴县| 开远市| 张家口市| 临桂县| 桑植县| 宜州市| 曲松县| 子长县| 阿克陶县| 岚皋县| 祁连县| 甘洛县| 东安县| 周宁县|