整體介紹
供水系統(tǒng)基于STM32H750芯片開發(fā)的,該系統(tǒng)的操作臺(tái)主要有兩個(gè)部分,一個(gè)是LCD觸摸屏控制還有onenet云平臺(tái)控制,該系統(tǒng)具有遠(yuǎn)程監(jiān)測(cè)水位控制水泵的功能,適合一些養(yǎng)殖場(chǎng)或者種植場(chǎng)等一些靈活供水的場(chǎng)所。該系統(tǒng)可以遠(yuǎn)程無線控制實(shí)用性較強(qiáng)。
開發(fā)工具和環(huán)境
主控:STM32H750
外設(shè):ESP8266WIFI模塊,L298N驅(qū)動(dòng)模塊,AD采集
編程開發(fā)配置環(huán)境:RT-Thread Studio,STM32CubeMX,Env,Keil uVision5,TOUCHGFX
RT-Thread使用情況概述
內(nèi)核部分:調(diào)度器,信號(hào)量,消息隊(duì)列。
調(diào)度器:創(chuàng)建多個(gè)線程來實(shí)現(xiàn)不同的工作。
信號(hào)量:用來同步線程。
消息隊(duì)列:用來實(shí)現(xiàn)線程之間傳遞的數(shù)據(jù)。
軟件包部分:
Webclient:提供設(shè)備與 HTTP Server 的通訊的基本功能。
pahomqtt,:本軟件包是在 Eclipse paho-mqtt 源碼包的基礎(chǔ)上設(shè)計(jì)的一套 MQTT 客戶端程序。
Onenet:是 RT-Thread 針對(duì) OneNET 平臺(tái)連接做的的適配,通過這個(gè)軟件包,可以讓設(shè)備在 RT-Thread 上非常方便的連接 OneNet 平臺(tái),完成數(shù)據(jù)的發(fā)送、接收、設(shè)備的注冊(cè)和控制等功能。
cJSON:C語言實(shí)現(xiàn)的極簡的解析 JSON 格式的軟件包。
at_device:是由 RT-Thread AT 組件針對(duì)不同 AT 設(shè)備的移植文件和示例代碼組成,目前支持的 AT 設(shè)備有:ESP8266、M26、MC20、RW007、MW31、SIM800C 以及 SIM76XX 系列設(shè)備等。
硬件框架
軟件架構(gòu)
軟件模塊說明
創(chuàng)建了兩個(gè)線程(一個(gè)用來AD采集另一個(gè)用來向ONENET上傳數(shù)據(jù)),一個(gè)動(dòng)態(tài)互斥量實(shí)現(xiàn)AD采集和ONENET上傳數(shù)據(jù)線程的同步
作品照片
演示視頻
比賽感悟
RT-Thread操作系統(tǒng)是我接觸的第一個(gè)操作系統(tǒng),通過這次比賽我第一次利用操作系統(tǒng)編寫程序,在操作系統(tǒng)的框架下編寫程序的邏輯性更加清晰程序運(yùn)行時(shí)芯片的內(nèi)存分配更加合理.
RT-Thread官網(wǎng)提供的資料非常豐富和全面,很適合新手學(xué)習(xí),在此非常感謝RT-Thread平臺(tái)為我們提供了一個(gè)這么好的平臺(tái)。