色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

畢業設計競賽選題推薦 | 嵌入式Linux應用之環境監測項目實戰(含文檔及源碼)

華清遠見工控 ? 2024-12-23 10:50 ? 次閱讀

01 引言

在當今快速發展的科技時代,環境監測已經成為眾多領域中不可或缺的一部分。從城市規劃到工業生產,從農業管理到健康生活,環境監測技術的應用無處不在,為人類提供了對自然環境變化的實時洞察,幫助我們做出更加科學合理的決策。

環境監測的核心在于通過各類傳感器收集溫度、濕度、光照、空氣質量、氣體成分、水質和噪聲等數據,并傳輸至嵌入式終端設備進行處理和分析。嵌入式終端設備作為系統的“大腦”,不僅負責讀取傳感器數據,還能夠根據預設算法執行智能判斷,觸發相應的控制命令或預警機制,從而實現自動化管理和優化資源配置。

舉例來說,在智慧農業領域,土壤濕度傳感器和光照傳感器被廣泛應用于灌溉系統和光合作用輔助系統,在智能家居環境中,溫濕度傳感器與空氣凈化器相結合,可以根據室內空氣狀況自動調節工作模式,保持舒適的居住環境;而在工業場景中,有害氣體檢測傳感器能夠及時發現并報告異常排放,防止環境污染事件的發生。

02 項目介紹

《環境監測項目》是一個智能傳感器控制系統,項目實戰平臺是基于華清遠見自主研發的嵌入式Linux教學級開發板——FS-MP1A開發板。該開發板主控為STM32MP157,集成2個Cortex-A7核和1個Cortex-M4核。A7核上可以跑Linux操作系統,在本項目中主要是Linux+Qt應用開發,M4核要通過A7核啟動,在本項目里,M4主要是用于實現對傳感器的控制和數據讀取。

項目可以通過軟件指令輕松管理傳感器,讓它們按照我們的需求工作。M4芯片收集傳感器的數據,并將這些信息顯示在屏幕上,讓我們一目了然。而且,系統還能根據我們設定的條件自動做出反應,比如溫度高了就自動開風扇,讓傳感器變得更加智能和方便。

wKgZO2do0AaAH_MdAABatCNmd4g62.jpeg

03 項目涉及技術點

①通過STM32CubeIDE,配置A7啟動M4的程序

②通過虛擬串口進行下發消息,實現功能

③接收消息,呈現到UI界面上

04 項目實現

項目總體設計

wKgZO2do0AaABsC-AAC1lxDCgeY376.png

以下內容主要講解,如何使用我們提供的項目源碼,將項目在開發板上運行起來。

  • M4部分功能概述

M4 核部分主要實現兩個功能,首先可以接收 A7 核發送的指令,根據指令控制風扇、蜂鳴器以及 LED燈工作,同時 M4 部分可以采集環境光、溫濕度傳感器數據,將采集數值打包成 JSON 字符串然后發送給 A7。另外,通過按鍵可以控制數碼管顯示采集的溫濕度、環境光數據。

  • cubeIDE功能配置

首先打開cubeIDE,創建一個新工程,進入cubeMX 配置界面,因為需要實現A7與M4 通信,需要配置IPCC與OPENAMP部分,如下圖所示:

wKgZO2do0AeAKiS4AAHd11Q2GM0084.png

(配置 IPCC)

wKgZPGdo0AeAUWrqAAIrMqsmExA854.png

(配置OPENAMP)

配置I2C1用于采集溫濕度、環境光傳感器數據,這里分別選擇PF14、PF15 引腳用作I2C1_SDA 和I2C1_SCL功能。

wKgZPGdo0AeAbibBAAImkEpNsqY096.png

(配置 I2C1)

因為需要用到數碼管顯示采集的傳感器數值,這里通過 SPI 進行控制,使用 SPI 默認引腳,分別對PE11、PE12、PE13 和 PE14 配置為 SPI4_NSS、SPI4_SCK、SPI4_MISO 和 SPI4_MOSI。切換到 SPI4 標簽,勾選給“M4”,“Mode”選擇“Full-Duplex-Master”,使用硬件片選,選擇“Hardware NSS Output Signal”,其配置如下圖所示。

wKgZO2do0AeAX11LAAJYuT86KpI790.png

(配置SPI4)

擴展板 LED 燈對應的GPIO 引腳分別為PE8、PE10、PF10,這里左鍵點擊設置為GPIO_Output

wKgZPGdo0AeADuTCAAQtassoXIQ158.png

(配置引腳為輸出)

可以通過按鍵中斷控制數碼管顯示的數值,這里配置擴展板的按鍵為 PF9,如下所示

wKgZO2do0AeALzqNAAQTQp_F4sw761.png

(配置外部中斷)

另外,這里還需要對剛才配置的 I/O 引腳設置“ Pin Reservation”給“ Cortex-M4”,否則 STM32CubeMX不會生生成 GPIO 初始化相關代碼。具體操作:在剛才選擇的引腳上,鼠標右鍵選擇“ Pin Reservation”->“ Cortex-M4”。

wKgZO2do0AmAalLyAADBszrSSTU366.png

(選擇Cortex-M4)

打開GPIO 標簽,對 PF9 引腳進行配置

wKgZPGdo0AeAWEeyAAIFBgTDMt8784.png

實驗中還用到了蜂鳴器與風扇,查看原理圖得,對應管腳分別為 PB6 與 PE9,分別配置為 TIM4 與TIM1 功能,在本次實驗中,系統默認時鐘頻率為 64MHz,TIM 配置如下所示

wKgZO2do0AeALLguAAKBUpIN5Fw256.png

(配置 TIM4)

wKgZPGdo0AeAfAVhAAJYJuBxPB0633.png

(配置 TIM1)

如果實現開發板與電腦串口通信,這里可以通過 485 總線實現,即配置UART5,如下所示

wKgZPGdo0AeAB04tAAGqDxS3_oE099.png

(配置 UART5)

wKgZO2do0AiANgTbAABHhVNiCd0150.png

(配置 UART5)

另外,在本次實驗中,A7 與 M4 數據通信和數碼管顯示相當于同時運行,可以通過配置 FreeRTOS 實現多任務運行。切換到中間件“Middleware”的“FREERTOS”,默認自動勾選給 M4 了,然后接口“Interface”選擇“CMSIS_V2”。為了運行其他任務,這里需要切換到“Tasks and Queues”標簽,可以看到看到默認有個“defaultTask”任務,我們點擊“Add”再新增一個任務,如圖所示

wKgZO2do0AiAQNwDAAIO8y5xBPs384.png

(配置 FreeRTOS)

上述配置完成以后,還要注意一點,因為用到 FreeRTOS,這里我們不能為每一種外設生成頭文件,如下所示

wKgZO2do0AiAZIkiAABafls0Iuo891.png

配置完成以后保存,然后生成初始化代碼,其間會出現如下提示框,選擇“Yes”

wKgZPGdo0AiAflU6AAA56RXirdc954.png

編譯 qt 界面應用程序

①導入 sdk

sdk 位置在【08-Qt 綜合項目開發教程\工具軟件\sdk\arm-fsmp1x-linux-gnueabihf_sdk-buildroot.tar.gz】,將源碼拷貝到虛擬機中進行解壓并進入到工程目錄下

wKgZO2do0AiAAZnJAAASazacCbo406.pngwKgZPGdo0AiADJGfAAAsHlHveO0691.png

(示例圖)

重定向 sdk 位置

wKgZPGdo0AiAYE5rAAAHHtf_qm0306.png

獲取應用程序源碼

源碼位置【08-Qt 綜合項目開發教程\08-環境監測項目\01-環境監測項目配套示例代碼\7 寸屏幕程序源碼】中的 8_EnvironmentalTest 文件,將源碼拷貝到虛擬機中進行解壓并進入到工程目錄下(這里以 7 寸屏幕為例)

wKgZO2do0AiAIp3iAAAQ8EBY5N8880.png

打開 qt 工程編譯

在 qt 中導入 8_EnvironmentalTest 文件中的.pro 文件,導入完成,如下圖所示:

wKgZPGdo0AmAaObRAAMvItipmo0341.png

選擇好自己配置的編譯器,點擊如圖所示左下角圖標進行編譯。

wKgZPGdo0AiAOAjlAABhB2wvRvI791.png

編譯完成會生成編譯好的文件,和工程文件在相同目錄下。

wKgZO2do0AiAHtPXAABL26jX-74473.png

(查看 build 文件)

wKgZPGdo0AiADE1MAADAv1eO1-E430.png

(查看 build 文件)

拷貝可執行文件

通過有線直連的方式將路由器和開發板用網線連接,電腦連接路由器的 wifi,讓開發板和電腦是同一網段。

首先我們在開發板上使用 ifconfig 命令獲得 ip

wKgZO2do0AmAMl8LAADd8w3pYEw257.png

可以看到我的開發板 ip 為 192.168.3.18,再通過 scp 命令將可執行文件拷貝到開發板當中,將命令中的 ip 換為你的開發板 ip

傳輸成功后會在開發板的【~】目錄下看到可執行文件

wKgZPGdo0AmABfo8AAAZyWMAPdE377.png

(示例圖)

應用程序運行

使用下面的命令執行可執行程序

wKgZO2do0AmAIfsxAAAZSmzkA5Q855.pngwKgZPGdo0AmAHP3fAABoV8KiFsU261.png

(運行可執行程序)

可以看到下面的界面。然后我們可以參照 2.4.1 章節開始操作,去實現我們相應的模塊。

wKgZPGdo0AmAZSMSAAMm7TNMLSA000.png

(示例圖)

除了上面如何將項目在板子上跑起來外,項目說明文檔內容還包括項目功能演示、項目源碼分析以及SQLite安裝及系統命令等,詳細項目文檔目錄如下圖。

wKgZO2do0AmAJvxPAAJOExNajYA14.jpeg

后臺私信小雯老師(備注:環境監測),免費領取《環境監測》項目完整文檔、項目源碼。

05 硬件平臺

《環境監測》是一個Linux+Qt的綜合項目,硬件平臺是華清遠見FS-MP1A開發板(主控STM32MP157)

開發板簡介

FS-MP1A開發板是華清遠見自主研發的一款高品質、高性價比的Linux+單片機二合一的嵌入式Linux教學級開發板,也是ST官方推薦的一款STM32 Linux開發板。

搭配仿真器、顯示屏、攝像頭、資源擴展板等豐富的擴展模塊,可拓展物聯網、人工智能等相關技術學習,還可以拓展豐富的項目實戰,非常貼合企業當下開發需求,是一款嵌入式Linux入門進階必備開發板!

wKgZPGdo0AmAHnvPAAJzoqvEfCo910.png

FS-MP1A開發板配套豐富的學習資源,包括開發教程、視頻課程及Linux+Qt綜合項目案例??蓪崙?strong>“音樂播放器、智慧家庭、智能工業電表、智能出行助手、智能貓眼、環境監測、智能安防、智能語音識別”等10余個項目案例,涉及家居、醫療、農業多種應用方向,在案例中使用了多種物聯網和嵌入式技術,包括Qt開發、linux應用開發、linux驅動開發、物聯網云端接入、MQTT協議、json字符串等知識點。“硬件+項目”的優勢,也使其廣泛應用于高校教學、學生畢設以及個人開發學習。

配套學習路線推薦

wKgZO2do0AqAaWpsAAJmmDgBodw73.jpeg

嵌入式linux開發建議從應用層開始學起,因為容易快速上手并獲得成就感。這個方向主要是依靠經驗,不斷地積累不同行業的項目開發經驗,會讓你在職場上更有優勢。

wKgaoWc8PGiAea6SAACAtA6-hks792.png

對于初學者,在找工作前,也可以多做一些項目案例練手,在實戰中去理解并應用技術。有精力的話,最好可以基于我們的開發板去拓展一些功能更豐富的項目,做更多技術上的創新拓展,去參加一些競賽,DIY一些更接近實際產品的項目,這樣的經歷,也會為你的簡歷及面試加分不少。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5082

    文章

    19109

    瀏覽量

    304836
  • Linux
    +關注

    關注

    87

    文章

    11295

    瀏覽量

    209347
  • 監測
    +關注

    關注

    2

    文章

    3597

    瀏覽量

    44508
  • 畢業設計
    +關注

    關注

    7

    文章

    225

    瀏覽量

    15493
收藏 人收藏

    評論

    相關推薦

    畢業設計競賽選題推薦 | 嵌入式Linux用之智能貓眼項目實戰文檔源碼

    01引言在智能家居日益普及的今天,智能貓眼作為一項新興的安全監控解決方案,正逐漸成為家庭和商業環境中的重要組成部分。它不僅繼承了傳統貓眼的基本功能,還融合了現代通信技術、圖像處理技術以及
    的頭像 發表于 12-23 14:12 ?22次閱讀
    <b class='flag-5'>畢業設計</b><b class='flag-5'>競賽</b><b class='flag-5'>選題</b>推薦 | <b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>應<b class='flag-5'>用之</b>智能貓眼<b class='flag-5'>項目</b><b class='flag-5'>實戰</b>(<b class='flag-5'>含</b><b class='flag-5'>文檔</b>及<b class='flag-5'>源碼</b>)

    【畢設項目參考】嵌入式Linux 10+項目推薦,附項目文檔/源碼/視頻

    又是一年畢設季,針對即將開始畢業設計的大學生,我們匯總了10+嵌入式linux項目,供同學們參考。這些項目覆蓋了多個領域,希望可以為同學們提
    的頭像 發表于 11-19 15:21 ?442次閱讀
    【畢設<b class='flag-5'>項目</b>參考】<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b> 10+<b class='flag-5'>項目</b>推薦,附<b class='flag-5'>項目</b><b class='flag-5'>文檔</b>/<b class='flag-5'>源碼</b>/視頻

    入門?畢設?競賽項目練手?STM32/嵌入式/物聯網學習,有這幾款開發板就夠了!

    針對STM32單片機、嵌入式Linux、物聯網初學者,我們精心梳理了從“入門到項目進階”完整學習路徑,并配有詳細的教程、視頻講解、源代碼以及豐富的實戰案例資料??蓮V泛用于高校教學、學生
    的頭像 發表于 10-10 16:31 ?313次閱讀
    入門?畢設?<b class='flag-5'>競賽</b>?<b class='flag-5'>項目</b>練手?STM32/<b class='flag-5'>嵌入式</b>/物聯網學習,有這幾款開發板就夠了!

    【免費分享】嵌入式Linux開發板【入門+項目,應用+底層】資料包一網打盡,附教程/視頻/源碼...

    ?想要深入學習嵌入式Linux開發嗎?現在機會來了!我們為初學者們準備了一份全面的資料包,包括原理圖、教程、課件、視頻、項目、源碼等,所有資料全部免費領取,課程視頻可試看(購買后看完整
    的頭像 發表于 09-05 10:45 ?273次閱讀
    【免費分享】<b class='flag-5'>嵌入式</b><b class='flag-5'>Linux</b>開發板【入門+<b class='flag-5'>項目</b>,應用+底層】資料包一網打盡,附教程/視頻/<b class='flag-5'>源碼</b>...

    嵌入式linux開發的基本步驟有哪些?

    嵌入式Linux開發是一個復雜的過程,涉及到硬件選擇、操作系統移植、驅動開發、應用程序開發等多個方面。以下是嵌入式Linux開發的基本步驟,以及每個步驟的說明。 硬件選擇 在開始
    的頭像 發表于 09-02 09:11 ?480次閱讀

    嵌入式linux開發板怎么操作

    嵌入式Linux開發板是一種基于Linux操作系統的嵌入式系統開發平臺。它通常包括一個處理器、內存、存儲器、輸入/輸出接口等硬件組件,以及一個基于L
    的頭像 發表于 09-02 09:09 ?373次閱讀

    嵌入式linux開發板芯片的工作原理

    嵌入式Linux開發板是一種基于Linux操作系統的嵌入式系統開發平臺,它廣泛應用于工業控制、智能家居、智能交通、醫療設備等領域。 嵌入式
    的頭像 發表于 09-02 09:07 ?380次閱讀

    什么是光伏環境監測

    光伏環境監測站是一種專門為太陽能光伏發電系統設計的綜合監測設備,它具備監測多種氣象數據的能力,以提供全面、精確的環境信息,確保光伏系統的高效運行。首先,光伏
    的頭像 發表于 06-24 10:42 ?569次閱讀
    什么是光伏<b class='flag-5'>環境監測</b>?

    觸翔工業嵌入式工控主板在環境監測的應用

    觸翔工業嵌入式工控主板在環境監測領域的應用極為廣泛,主要得益于其在惡劣環境下的高可靠性、穩定性以及對復雜數據處理能力,以下是一些關鍵應用示例:
    的頭像 發表于 05-22 16:57 ?388次閱讀
    觸翔工業<b class='flag-5'>嵌入式</b>工控主板在<b class='flag-5'>環境監測</b>的應用

    嵌入式學習-飛凌嵌入式ElfBoard-項目分享|基于ELF 1S開發板完成的物聯網開源項目

    ,與ELF 1S開發板邊緣中控進行端對端通信的,開發板邊緣中控可以轉發手機APP的控制指令到無線網絡模塊,以及接收邊緣中控上報的環境監測數據。 整個項目已經開源到Gitee,歡迎各位嵌入式初學者或愛好者
    發表于 05-16 09:19

    飛凌嵌入式-ElfBoard-項目分享|基于ELF 1S開發板完成的物聯網開源項目

    ,與ELF 1S開發板邊緣中控進行端對端通信的,開發板邊緣中控可以轉發手機APP的控制指令到無線網絡模塊,以及接收邊緣中控上報的環境監測數據。 整個項目已經開源到Gitee,歡迎各位嵌入式初學者或愛好者
    發表于 05-16 09:12

    環境監測的革新者:UWB模塊在環境監測系統中的應用研究

    隨著環境污染和氣候變化等問題日益突出,環境監測成為了保護生態環境和人類健康的重要手段。超寬帶(UWB)技術以其高精度、低功耗的特點,為環境監測系統的發展提供了新的解決方案。UWB模塊作
    的頭像 發表于 04-12 15:03 ?409次閱讀

    嵌入式人工智能的就業方向有哪些?

    操作系統使用及C高級編程 數據結構與算法 二:嵌入式Linux應用工程師,Linux網絡開發工程師 文件IO 并發程序設計 項目實戰:基于
    發表于 02-26 10:17

    嵌入式自學好書推薦

    令、編輯器VI、編譯器GCC、調試器GDB以及Make項目管理工具、Shell和Makefile腳本編寫等知識,并搭建嵌入式開發環境。推薦書籍:《Linux從入門到精通》。 無論從就
    發表于 01-11 15:13

    基于樹莓派的環境監測系統

    作為環境監測系統的核心 樹莓派是一款低成本的單片機計算機,支持各種操作系統,如Linux等。它具有強大的處理能力和豐富的輸入輸出接口,使得它成為一個理想的環境監測系統的核心。樹莓派可以通過傳感器獲取
    的頭像 發表于 01-04 15:15 ?2541次閱讀
    主站蜘蛛池模板: 久久久午夜精品福利内容| 美女与男人对肌免费网站| 老司机福利在视频在ae8| 秋霞鲁丝片Av无码| 亚洲成人精品| 99久久国产宗和精品1上映| 国产色婷婷亚洲99麻豆| 摸老师丝袜小内内摸出水| 天天躁人人躁人人躁狂躁| 中文字幕在线免费视频| 国产福利视频第一导航| 美女露出乳胸扒开尿口| 午夜影院c绿象| JEALOUSVUE成熟老师APP| 果冻传媒妈妈要儿子| 胖老太与人牲交BBWBBW高潮| 亚洲国产精品嫩草影院久久| jlzzzjizzzjlzzz亚洲| 激情内射亚州一区二区三区爱妻| 热の中文 AV天堂| 中文亚洲大香伊蕉不卡一区| 国产成人精品免费视频大全可播放的 | 在线精彩视频在线观看免费| 闺蜜撬开我的腿用黄瓜折磨我| 久久亚洲高清观看| 亚洲AV无码专区国产精品麻豆| writeas雷狮直播| 久久视频在线视频| 新新电影理论中文字幕| yy8090韩国理伦片在线| 麻豆沈芯语| 亚洲午夜精品A片久久不卡蜜桃 | 国产欧美另类久久久品| 欧美在线亚洲综合国产人| 怡红院美国分院一区二区| 后入式狂顶免费视频| 色欲AV精品人妻一区二区三区| 91精品一区二区三区在线观看| 国产综合无码一区二区色蜜蜜| 日本漫画大全无翼乌| 88福利视频|