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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 如何基于嵌入式Linux設計家居監(jiān)控系統(tǒng)?

          如何基于嵌入式Linux設計家居監(jiān)控系統(tǒng)?

          作者: 時間:2018-08-07 來源:網(wǎng)絡 收藏

          本文引用地址:http://www.ex-cimer.com/article/201808/385610.htm

          3) 清空發(fā)送/ 接收緩沖區(qū)

          為了避免以前的數(shù)據(jù)的干擾,必須對緩沖區(qū)的數(shù)據(jù)進行清空之后才能把數(shù)據(jù)讀入緩沖區(qū),這樣做的目的是為了避免不必要的數(shù)據(jù)干擾。

          4) 從串口讀寫數(shù)據(jù)

          串口的數(shù)據(jù)讀/寫使用的是標準的讀/寫函數(shù)(read()和write())。

          5)關閉串口

          關閉串口為下次再使用串口提供方便。關閉串口的函數(shù)是close()函數(shù)。

          2.6彩信的發(fā)送

          Linux系統(tǒng)中的視頻子系統(tǒng)為Video4Linux,他為應用程序提供了一個完整、統(tǒng)一的API函數(shù),視頻應用程序只要調(diào)用這些API就能完成對視頻捕捉設備的操作。設備的節(jié)點文件在#mknod/dev/videoc810

          1)打開設備

          用open()函數(shù)來打開設備。

          fVideo=open(“dev/video”,O_RDWR);

          2)獲得設備參數(shù)

          Ioctl(fVideo,VIDIOCGCAP,vcap);

          3)設置圖像采集參數(shù)

          Ioctl(fVideo,VIDIOCGPICT,vcap);

          4)圖像采集

          Ioctl(fVideo,VIDIOCMCAPTURE,mem);

          5)等待采集結束,由于采集需要一段時間,所以應用程序需要有一個相應的等待期

          Ioctl(fVideo,VIDIOCSYNC,mem,frame);

          6)將采集的圖像數(shù)據(jù)寫入文件

          Write_jpeg(buf++mb.offsets[0],mem);

          7)清空內(nèi)存映射

          Munmap(but,mb.size);

          8)關閉設備

          Close(fVideo);

          得到圖像數(shù)據(jù)后,再把數(shù)據(jù)進行MMS的封裝,首先是加上MMS頭部分的數(shù)據(jù)封裝,再對SMIL部分封裝,這里主要是指定顯示MMS的相關信息,最后對每個輸入的多媒體信息進行編碼。最后通過GPRS模塊把信息發(fā)送出去。

          3系統(tǒng)功能的測試結果

          本文測試基于jpeg格式標準的視頻數(shù)據(jù)的采集、傳輸以及顯示。由攝像頭完成視頻數(shù)據(jù)的采集,通過由GPRS封裝后把圖像數(shù)據(jù)傳輸?shù)绞謾C。紅外感應到有人進入時,攝像頭取下的圖像照片,并再通過GPRS模塊把圖像發(fā)到用戶的手機上,從而完成了有效的監(jiān)控動作。


          上一頁 1 2 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁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); })();