【RT-Thread作品秀】基于加速度計的智能燈光控制系統(tǒng)
作者:明哲
概述
這個項目靈感來源于實際生活中。我家住在農(nóng)村,在晚上起夜上廁所是一件難事,雖然對年輕人來說是比較簡單的,但是對于老年人確是一件比較麻煩是事情,最主要的是在醒來后去開燈是十分危險的。為了解決這個問題我想到一個自動開燈的方案,就是通過手環(huán)來時間開燈。整體分文手環(huán)部分、主控部分、燈光控制部分、以及屏幕顯示部分。
開發(fā)環(huán)境
RT-Thread版本:4.0.3
開發(fā)工具及版本:RT-Thread Studio 1.1.5 keil5
RT-Thread使用情況概述
RT-Thread主要使用組等分別為:finsh命令、DFS、POSIX、SPI、串口、Pin與lic。自己還將ucGUI移植到了RT-Thread中。
硬件框架
硬件部分主要是采用開發(fā)板作為系統(tǒng)核心、手環(huán)采用STM32單片機。其中燈光控制部分采用LED模擬,藍(lán)牙使用HC05藍(lán)牙模塊。手環(huán)部分主要是加速度計與電源模塊,電源主要是鋰電池供電,這個我已經(jīng)成功的制作了一個電源管理模塊。電源管理模塊主要是對USB以及鋰電池電壓實現(xiàn)變換,其中充電芯片使用MCP73833,電池升壓部分使用TPS61230,降壓部分使用TLV75733。
軟件框架
軟件模塊說明
main.c文件主要用于初始化,以及開啟線程
Display.c用于存放GuI創(chuàng)建的窗口、按鈕等控件以及GUI測試函數(shù)
ugui_config.h用于配置uGUI。
ugui.c用于存放GUI 函數(shù)。
Ugui_port.c 主要是液晶屏底層驅(qū)動與Gui驅(qū)動之間的配置
演示效果
代碼地址在附件。
比賽感悟
隨著RT-Thread大賽結(jié)束,我的作品最終沒有達(dá)到我理想的要求而結(jié)束。這是我參加工作后第一次參加這樣的比賽,經(jīng)過這次比賽之后感觸頗多,學(xué)到的東西也很多。
首先,總結(jié)分析一下失敗的原因。最主要的是時間的把控,由于工作比較繁忙,我趁著自己的空閑時間完成了整體的框架,作為一名硬件工程師我也是第一次接觸OS系統(tǒng),雖然很難,但是我仍然享受著比賽的過程。雖然時間比較緊張,但是我還是完成了整體的框架制作。
然后,總結(jié)一下經(jīng)過這次比賽的收獲。經(jīng)過這次比賽之后,自我感覺到自己收獲了很多的東西,與書本上學(xué)到的所不同。雖然這次比賽以失敗而宣告結(jié)束,但是我覺得在這次比賽的全過程中,包括RT-Thread系統(tǒng)的學(xué)習(xí),這也為我以后的工作又添加了一份新的技能。在這個過程中也讓我學(xué)會了做事必須嚴(yán)謹(jǐn)、認(rèn)真。
最后感謝電路城的官方人員給我們這次機會,可以接觸到這么優(yōu)秀的國產(chǎn)嵌入式系統(tǒng),也不由余力的創(chuàng)辦這次大賽,謝謝。