freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于物聯(lián)網(wǎng)技術(shù)的智能家居系統(tǒng)畢業(yè)設(shè)計(jì)論文(參考版)

2024-09-02 10:58本頁面
  

【正文】 另外,上層應(yīng)用程序是在 qtopia 中編譯的,而智能家居系統(tǒng)每個模塊必須互不干擾,其中一個模塊發(fā)生故障應(yīng)不影響其他模塊的運(yùn)行,要實(shí)現(xiàn) 每個模塊能單獨(dú)工作,這里用到了多線程的技術(shù),為每個模塊創(chuàng)建 Timer 定時器,把每個模塊的程序放在定時器函數(shù)中運(yùn)行 , 下面分別詳細(xì)介紹本設(shè)計(jì)的幾個模塊的調(diào)試過程。 cdev 結(jié)構(gòu)體、 file_operations 和用戶空間調(diào)用驅(qū)動的關(guān)系如圖 所示。 梁力源:基于物聯(lián)網(wǎng)技術(shù)的智能家居系統(tǒng) 26 本系統(tǒng)設(shè)計(jì)中用到的設(shè)備都是指字符設(shè)備驅(qū)動,這里主要講解字符設(shè)備及其相關(guān)內(nèi)容。本設(shè)計(jì)就是用動態(tài)可加載方式逐個模塊調(diào)試好,調(diào)試好后在直接編譯進(jìn)內(nèi)核中,然后開機(jī)就運(yùn)行應(yīng)用程序。內(nèi)核模塊可以單獨(dú)編譯,在運(yùn)行時被鏈接到內(nèi)核,作為內(nèi)核的一部分在內(nèi)核空間中運(yùn)行。 應(yīng) 用 程 序系 統(tǒng) 調(diào) 用用 戶 態(tài)驅(qū) 動 程 序硬 件 接 口 / 總 線內(nèi) 核 態(tài) 圖 驅(qū)動程序運(yùn)行原理 Linux 中的大部分驅(qū)動程序,是以內(nèi)核模塊的形式編寫的,內(nèi)核模塊是 Linux 內(nèi)核向外部提供的一個接口。應(yīng)用層通過系統(tǒng)調(diào)用進(jìn)入內(nèi)核層,內(nèi)核層根據(jù)系統(tǒng)調(diào)用號來調(diào)用驅(qū)動程序?qū)?yīng)的接口函數(shù)。從本質(zhì)上講設(shè)備驅(qū)動程 序主要負(fù)責(zé)硬件設(shè)備的數(shù)據(jù)讀寫、參數(shù)配置與中斷處理。每個硬件模塊在嵌入式開發(fā)中稱為設(shè)備,每個設(shè)備想要 運(yùn)行都要在 Linux 內(nèi)核中編寫設(shè)備驅(qū)動程序。分別對虛擬機(jī)安裝 ,交叉編譯環(huán)境、在 Linux 服務(wù)器上安裝交叉編譯工具鏈、嵌入式 Linux 內(nèi)核的配置和編譯, YAFFS32文件系統(tǒng)的實(shí)現(xiàn) ,以及嵌入式軟件開發(fā)層次等。 ? /tmp 存放臨時文件,通常是空目錄,一些需要生成臨時文件的程序用到的 /tmp 目錄梁力源:基于物聯(lián)網(wǎng)技術(shù)的智能家居系統(tǒng) 24 下,所以 /tmp 目錄必須存在并可以訪問。 ? /mnt 存放臨時掛載某個文件系統(tǒng)的掛接點(diǎn),通常是空目錄,也可以在里面創(chuàng)建一引起空的子目錄,比如 /mnt/cdram /mnt/hda1 。 ? /usr 存放的是共享、只讀的程序和數(shù)據(jù),這表明 /usr 目錄下的內(nèi)容可以在 多個主機(jī)間共享,這些主要也符合 FHS 標(biāo)準(zhǔn)的。 ? /home 系統(tǒng)默認(rèn)的用戶文件夾,它是可選的,對于每個普通用戶,在 /home 目錄下都有一個以用戶名命名的子目錄,里面存放用戶相關(guān)的配置文件。 ? /lib 存放共享庫和可加載(驅(qū)動程序),共享庫用于啟動系統(tǒng)。下面做簡單介紹: ? /bin 存放 root 與普通賬號的命令,由于這些命令在掛接其他文件系統(tǒng)之前就可以使用,所以 /bin 目錄和根文件系統(tǒng)在同一個分區(qū)中。這些存放在同一個分區(qū)中的基本且必需的文件合起來稱為根文件系統(tǒng)。 根文件系統(tǒng),是 Linux/Unix 系統(tǒng)啟動的一個重要的組成部分,也是操作系統(tǒng)正常工作的必要組成部分。這種機(jī)制有利于用戶和操作系統(tǒng)的交互。然后執(zhí)行“ make menuconfig‖,打開內(nèi)核配置界面,配置好內(nèi)核后通過執(zhí)行“ make zImage‖命令編譯內(nèi)核,編譯結(jié)束后2020屆計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)畢業(yè)設(shè)計(jì)(論文) 23 在 /arch/arm/boot 目錄下生成 Linux 內(nèi)核映像文件 zImage。 Linux 內(nèi)核源代碼很龐大,想要短時間內(nèi)讀懂大部分內(nèi)核源代碼幾乎是不可能的,此次設(shè)計(jì)用的是開發(fā)板自帶的內(nèi)核,版本號是 。一個內(nèi)核不是一套完整的操作系統(tǒng)。技術(shù)上說 Linux 是一個內(nèi)核。 Linux 最早是由芬蘭黑客 LinusTorvalds 為嘗試在英特爾 x86架構(gòu)上提供自由免費(fèi)的類 Unix 操作系統(tǒng)而開發(fā)的。 定制 Linxu 內(nèi)核 Linux 是最受歡迎的自由電腦操作系統(tǒng)內(nèi)核 。 此次開發(fā)板引導(dǎo)程序用的是 Supervivi,它是友善之臂基于 vivi 改進(jìn)的一個簡單易用的 Bootloader。因此,在嵌入式世界里建立一個通用的 BootLoader 幾乎是不可能的。通過這段代碼實(shí)現(xiàn)硬件的初始化,建立內(nèi)存空間的映射圖,為操作系統(tǒng)內(nèi)核準(zhǔn)備好硬件環(huán)境并引導(dǎo)內(nèi)核的啟動。 ( 3) 文件系統(tǒng),包括了系統(tǒng)命令和應(yīng)用程序。 嵌入式軟件開發(fā)層次 本設(shè)計(jì)的軟件系統(tǒng) 一個嵌入式 Linux 系統(tǒng)從軟件角度來看可以分為三個層次: ( 1) 引導(dǎo)加載程序,包括固化在固件中的 boot 程序 (可選 ),和 Bootloader 部分兩大部分。 ? 最后啟動 NFS 服務(wù)。 必須解壓安裝好 root_qtopia 目標(biāo)板文件系統(tǒng)包。下面介紹 NFS 服務(wù)器的安裝和配置。通過使用 NFS,用戶和程序可以像訪問本地文件一樣訪問別的系統(tǒng)上的文件。 (1)將 復(fù)制到某個目錄下如 tmp\,然后進(jìn)入到該目錄,執(zhí)行解壓命令: cd /tmp tar xvzf –C / (2) Step2:把編譯器路徑加入系統(tǒng)環(huán)境變量,運(yùn)行命令 gedit /root/.bashrc 編輯 /root/.bashrc 文件,在最后一行添加: export PATH=$PATH: /opt/FriendlyARM/toolschain/保存退出, 注銷系統(tǒng)后,使設(shè)置生效,重新登錄系統(tǒng) (不必重啟機(jī)器,開始 logout 即可 ),在命令行輸入 armlinuxgcc – v,若沒有輸出錯誤信息即表示建立交叉編譯環(huán)境成功。 建立交叉編譯環(huán)境 在 Linux 平臺下,要為開發(fā)板編譯內(nèi)核,圖形界面 Qtopia, bootloader,還有其他一些應(yīng)用程序,均 需要交叉編譯工具鏈。 在操作終端上創(chuàng)建工作目錄 /opt/FriendlyARM/mini2440,在此終端上解壓安裝源代碼,此次用的是內(nèi)核自帶的內(nèi)核源代碼 : 。 梁力源:基于物聯(lián)網(wǎng)技術(shù)的智能家居系統(tǒng) 20 第 3 章 建立 Linux 開發(fā)環(huán)境 搭建開發(fā)環(huán)境 安裝虛擬機(jī)、 Linux 操作系統(tǒng)、源代碼及其他工具 本設(shè)計(jì)是在虛擬機(jī)上安裝 Linux操作系統(tǒng) Fedora 版本而進(jìn)行。 本章小 結(jié) 本章通過對智能家居的分析,確定了系統(tǒng)總體架構(gòu)設(shè)計(jì),然后針對其方案進(jìn)行軟硬件選型。系統(tǒng)主要采用 C 語言作為基本開發(fā)語言,在嵌入式開發(fā)中,語言的可移植性很重要。 CRAMFS 文件系統(tǒng)是專門針對閃存(如 NorFlash)設(shè)計(jì)的只讀壓縮的文件系統(tǒng),采用實(shí)時解壓縮方式,小巧且速度快。目前, Mini2440 開發(fā)板支持 Yaffs2。2020屆計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)畢業(yè)設(shè)計(jì)(論文) 19 在版本方面,選擇 內(nèi)核的 arm linux,該內(nèi)核在原有內(nèi)核的基礎(chǔ)上進(jìn)行了一定程度的裁減,同時也是專門支持 ARM 系統(tǒng)芯片的 Linux 版本,這也為后期的進(jìn)一步裁減做好了鋪墊的工作。 嵌入式操作系統(tǒng)選擇了嵌入式Linux[10]。 智能家居系統(tǒng)并不需要很嚴(yán)格的實(shí)時性,而且在本系統(tǒng)的設(shè)計(jì)中,關(guān)鍵任務(wù)將可以由可編程器件實(shí)現(xiàn),僅向系統(tǒng)提供一個狀態(tài)信息。國內(nèi)產(chǎn)品必然需要 對中文的支持。成本是需要綜合權(quán)衡以后進(jìn)行考慮的,選擇某一系統(tǒng)可能會對其它一系列的因素產(chǎn)生影響,如對硬件設(shè)備的選型、人員投入、以及管理和與其它合作伙伴的共同開發(fā)之間的溝通等許多方面的影響。操作系統(tǒng)的選擇會對成本有著重要的影響。 ( 5) 成本。要分析產(chǎn)品是否對系統(tǒng)底層有改動的需求,這種改動是否伴隨 著產(chǎn)品特色。 ( 4) 系統(tǒng)定制能力。近來的市場需求顯示,越來越多的嵌入式系統(tǒng),均要求提供全功能的 Web 瀏覽器。集中精力研發(fā)出產(chǎn)品的特色,其他功能盡量由操作系統(tǒng)附加或采用第三方產(chǎn)品,因此操作系統(tǒng)的可利用資源對 于選型是一個重要的參考條件, Linux 和 WinCE 都有大量的資源可以利用,這是他們被看好的重要原因。 ( 3) 可利用資源。軟件的通用性和軟件的性能通常是矛盾的,即通常以損失某些特定情況下的優(yōu)化性能為代價。當(dāng)進(jìn)行嵌入式軟件開發(fā)時, 可移植性是要重點(diǎn)考慮的問題。 ( 2) 可移植性。制定產(chǎn)品時間表與選擇操作系統(tǒng)有關(guān)系,實(shí)際產(chǎn)品和一般演梁力源:基于物聯(lián)網(wǎng)技術(shù)的智能家居系統(tǒng) 18 示是不同的,上市時間和功能完善同樣重要。 一般而言,在選擇嵌入式操作系統(tǒng)時,可以遵循以下原則 [9]。目前,網(wǎng)絡(luò)上研究 WinCE 的開發(fā)團(tuán)隊(duì)越來越多,其資源也逐漸豐富起來,可以說是新的趨勢。 Windows CE 為工作、家庭及其間的任何一部分開啟了動態(tài)的、嶄新的開發(fā)遠(yuǎn)景。但由于 PalmOS 采用開發(fā)式架構(gòu),全球有很多 PlamOS 用戶都投入到其軟件開發(fā)工作中,使其應(yīng)用軟件非 常豐富,這也成為 PlamOS 操作系統(tǒng)成功的一個重要因素之一。從 1996 年 4月 發(fā)布至今, PlamOS 逐步鞏固了其在 PDA 市場上的霸主地位。 ? PalmOS 在個人數(shù)字助理( PDA)市場上, PalmOS 全球知名、使用人數(shù)最多的 PDA 操縱系統(tǒng)。 VxWorks 采用 GNU 類型的編譯和調(diào)試器,它的大多數(shù) API 函數(shù)都是專有的。 VxWorks 支持各種主流的 32 位處理器,如 X8 Motorola MC68xxx、 Clodfile、PowerPC、 MIPS,ARM 等。由于免費(fèi)、源碼開放、規(guī)模較小,μ C/OSII 不僅在眾多的商業(yè)領(lǐng)域中獲得了廣泛的應(yīng)用,而且被大學(xué)所接納,作為教學(xué)用的嵌入式實(shí)時操作系統(tǒng)。 μ C/OSII 主要面向中小型嵌入式系統(tǒng),具有執(zhí)行效率高、占用空間小、結(jié)構(gòu)簡潔、實(shí)時性能優(yōu)良和可擴(kuò)展性強(qiáng)等特點(diǎn),最小內(nèi)核可編譯至 2KB,一般情況下占用 10KB數(shù)量級。 ? μC/OS II μ C/OS是美國人 Jean Labrosse 在 1992年開發(fā)的一個嵌入式操作系統(tǒng) [8],并于 1998年推出了它的升級版本μ C/OSII。 ( 6) 軟件資源豐富:幾乎每一種通用程序在 Linux 上都能找到,從而減輕了開發(fā)的工作量。 ( 4) 完善的網(wǎng)絡(luò)通信和文件管理機(jī)制: Linux 支持所有標(biāo)準(zhǔn)的 Inter 網(wǎng)絡(luò)協(xié)議,并且很容易移植到嵌入式系統(tǒng)當(dāng)中。 嵌入式 Linux 的主要特 征如下: ( 1) 高性能、可裁剪的內(nèi)核 :其獨(dú)特的模塊機(jī)制使用戶可以根據(jù)自己的需要,實(shí)時地將某些模塊插入到內(nèi)核或從內(nèi)核中移走,很適合與嵌入式系統(tǒng)的小型化需要。嵌入式 Linux(EmbeddedLinux)是指對標(biāo)準(zhǔn) Limix 進(jìn)行小型化裁剪處理后,可固化在存儲器或單片機(jī)中,適合于特定嵌入式應(yīng)用場合的專用 Linux 操作系統(tǒng)。 ARM 的 I/O 口輸出電壓高電平為 ,直接接上繼電器后電平被拉低,無法控制繼電器的閉合。一個典型簡單的功率驅(qū)動環(huán)節(jié)就是繼電器的驅(qū)動。 圖 繼電器原理圖 ARM 是一個弱電器件 ,一般情況下它們大都工作在電壓為 5V甚至更低、驅(qū)動電流在 mA 級以下,而要把它的輸出用于一些大功率場合,比如控制步進(jìn)電機(jī),很顯然是不可行的。故在電路中起著自動調(diào)節(jié)、安全保護(hù)、轉(zhuǎn)換電路等作用。它具有控制系統(tǒng)(又稱輸入回路)和被控制系統(tǒng)(又稱輸出回路)之間的互動關(guān)系。 圖 isd1760 語音芯片 接線引腳圖 2020屆計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)畢業(yè)設(shè)計(jì)(論文) 15 繼電器 由于家電電器工作電壓是 220V,而單片機(jī)工作電壓是 5V,因而監(jiān)控家電時需要引入繼電器。此芯片內(nèi)有振蕩器,可通過外部電阻來調(diào)節(jié)其振蕩頻率;還有帶自動增益控制( AGC)的話筒運(yùn)放,模擬線路輸入。 ISD1700 系列錄放芯片可工作于獨(dú)立按鍵模式和 SPI 控制模式。我們把光電傳感器的輸出引腳接單片機(jī)的 EINT5/GPF5 中斷引腳,程序中設(shè)定低電平觸發(fā),當(dāng)有小偷靠近保險(xiǎn)柜或家居其他重要財(cái)產(chǎn)時,系統(tǒng)能捕捉到這一信號從而做出反應(yīng)。 本設(shè)計(jì)試圖把光電傳感器安裝在家庭保險(xiǎn)柜或其他重要的財(cái)產(chǎn)出,當(dāng)小偷或其他非家庭主人試圖靠近保險(xiǎn)柜等重要財(cái)產(chǎn)處能自動觸發(fā)語音報(bào)警,從而達(dá)到防盜的目的。光電傳感器是以光電器件作為轉(zhuǎn)換元件的傳感器。 MQ2 的主要特征如下: ? 工作溫度: 10℃~ +50℃ ? 報(bào)警濃度: ~ %FT ? 工作濕度: 10~ 90% ? 工作電源: 12VDC/9VDC ? 信號輸出:常開 /常閉 ? 安裝方式:吸頂 ? 外殼:阻燃樹脂 ? 產(chǎn)品尺寸:直徑 105mm 厚度 32mm 圖 MQ2 引腳接線圖 根據(jù) MQ2 的工作原理(其電導(dǎo)率隨著氣體濃度的增大而增大,其電阻是電導(dǎo)率的倒數(shù),所以隨著煙霧濃度的增大其電阻是減小的)并且參考圖 MQ2Datasheet 上的測試電路,在根據(jù)圖 的電路圖,可以得到 煙霧傳感器的輸出電壓如式 所示。 MQ2 氣體傳感器對液化氣、丙烷、氫氣的靈敏度高,對天然氣和其它可燃蒸汽的檢測也很理想。當(dāng)傳感器所處環(huán)境中存在可燃?xì)怏w時,傳感器的電導(dǎo)率隨空氣中可燃?xì)怏w濃度的增加而增大。本系統(tǒng)將 DS18B20 的信號線與 S3C2440 的 GPE0 引腳連接,如下 面 圖 所示。 ( 3) VDD 為外接供電電源輸入端(在寄生電源接線方式時接地)。 圖 DS18B20 封裝及原理圖 DS18B20 引腳功能說明如下: ( 1) DQ 為數(shù)字信號輸入 /輸出端。 ? 工作電壓: 3~5V/DC。 ? 不需要外圍任何元件。 ? 先進(jìn)的單總線數(shù)據(jù)通信。 DS18B20 以超小的體積、超低的硬件開銷,具有耐磨耐碰,體積小,使用方便, 封裝形式多樣,適用于各種狹小空間設(shè)備數(shù)字測溫和控制領(lǐng)域。 下面圖
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1