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