新聞中心

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

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

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

本文引用地址:http://m.butianyuan.cn/article/201808/385610.htm

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

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

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

串口的數(shù)據(jù)讀/寫使用的是標(biāo)準(zhǔn)的讀/寫函數(shù)(read()和write())。

5)關(guān)閉串口

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

2.6彩信的發(fā)送

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

1)打開設(shè)備

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

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

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

Ioctl(fVideo,VIDIOCGCAP,vcap);

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

Ioctl(fVideo,VIDIOCGPICT,vcap);

4)圖像采集

Ioctl(fVideo,VIDIOCMCAPTURE,mem);

5)等待采集結(jié)束,由于采集需要一段時(shí)間,所以應(yīng)用程序需要有一個(gè)相應(yīng)的等待期

Ioctl(fVideo,VIDIOCSYNC,mem,frame);

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

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

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

Munmap(but,mb.size);

8)關(guān)閉設(shè)備

Close(fVideo);

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

3系統(tǒng)功能的測(cè)試結(jié)果

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


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

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

關(guān)閉