一、項(xiàng)目簡介
項(xiàng)目名稱:基于LPC55S06的智能車載溫控
該車內(nèi)溫度自動(dòng)調(diào)節(jié)控制系統(tǒng)是基于LPC55S06平臺(tái),預(yù)期使用FreeRTOS系統(tǒng),實(shí)現(xiàn)DS18B20車外溫度實(shí)時(shí)采集線程、DTH11車內(nèi)溫濕度實(shí)時(shí)采集線程、OLED顯示字符線程,溫度變化滿足設(shè)置條件,則啟動(dòng)步進(jìn)電機(jī)。這里使用步進(jìn)電機(jī)模擬空調(diào)運(yùn)轉(zhuǎn)狀態(tài)。由于年底時(shí)間緊迫,這里暫且使用裸機(jī)程序?qū)崿F(xiàn)該基本功能。
二、項(xiàng)目背景
人工智能引領(lǐng)時(shí)代潮流,現(xiàn)在的汽車電子發(fā)展越來越火,以人為本。舒適的車內(nèi)環(huán)境會(huì)讓人身心愉悅,使用該自動(dòng)調(diào)節(jié)系統(tǒng)可實(shí)現(xiàn)冬暖夏涼,一鍵開啟即可自動(dòng)最優(yōu)化調(diào)溫 ?,F(xiàn)在市面上大多數(shù)小轎車都需要人工手動(dòng)設(shè)置車內(nèi)空調(diào)溫度,車內(nèi)車外溫度差并沒做參考。這款產(chǎn)品能夠更好得滿足人們對(duì)于車內(nèi)溫度的人性化設(shè)置需求。
三、需求分析
項(xiàng)目運(yùn)用到多個(gè)傳感器,兼容低功耗設(shè)計(jì),使用OLED屏實(shí)時(shí)顯示溫度值及電機(jī)運(yùn)行狀態(tài),需要MCU有一定的高效穩(wěn)定性。LPC55S06是基于Cortex-M33內(nèi)核,運(yùn)行頻率高達(dá)96MHz,且支持FreeRTOS開源操作系統(tǒng),完全滿足當(dāng)前項(xiàng)目需求。
四、功能設(shè)計(jì)
借助LPC55S06-EVK開發(fā)板實(shí)現(xiàn)預(yù)設(shè)功能。該項(xiàng)目基于LPC55S06-EVK做為主控,使用到四個(gè)外設(shè),即一個(gè)DS18B20做為車外溫度采集傳感器,一個(gè)DHT11做為車內(nèi)溫濕度采集傳感器,OLED屏做為GUI顯示設(shè)備,顯示當(dāng)前車內(nèi)外溫度值,人體體感合適溫度范圍值設(shè)定為20℃~28℃,當(dāng)車內(nèi)采樣溫度值在該范圍則不觸發(fā)步進(jìn)電機(jī)(空調(diào))運(yùn)行;當(dāng)車內(nèi)采樣溫度低于20℃,且車內(nèi)車外溫差在5℃或以上,則開啟步進(jìn)電機(jī)順時(shí)針旋轉(zhuǎn)(空調(diào)制熱模式);當(dāng)車內(nèi)采樣溫度高于28℃,且車內(nèi)車外溫差在5℃或以上,則開啟步進(jìn)電機(jī)逆時(shí)針旋轉(zhuǎn)(空調(diào)制冷模式)。LPC55S06-EVK板卡外設(shè)豐富,硬件接口分布如下圖所示:
由于DS18B20與DHT11采用單總線通訊,因此如果條件允許的情況下可采用多個(gè)傳感器級(jí)聯(lián)。板卡與應(yīng)用到的外設(shè)模塊的連接示意圖如下圖所示:
五、實(shí)物連接
六、參考文檔及源碼
官方參考文檔:
LPCXpresso55S06UM.pdf (994.61 KB)
LPC55S06-EVK-QSG.pdf (342.52 KB)
spf-47516_a1.pdf (2.4 MB)
DS18B20.pdf (261.92 KB)
DHT11濕溫度傳感器使用范例.pdf (388 KB)
DHT11中文說明書.doc (338 KB)
0.96OLED屏驅(qū)動(dòng)芯**冊(cè).pdf (1.35 MB)
基于MCUXpresso IDE的工程參考源碼:
lpcxpresso55s06.zip (5.11 MB)
七、項(xiàng)目總結(jié)與視頻
雖然開發(fā)調(diào)試過程中遇到些許阻礙,但從項(xiàng)目中受益匪淺,進(jìn)一步熟悉了NXP官方推薦的MCUXpresso IDE。原本計(jì)劃使用MDK開發(fā),但沒想到的是一開箱,點(diǎn)燈就不順利,工程編譯完成了,但燒錄卻遇到問題,換了SDK版本、MDK版本,在“led_blinky”點(diǎn)燈例程上都沒得到解決,但是在“freertos_hello”參考例程上又能順利調(diào)試、下載。問題貼:
https://www.nxpic.org.cn/module/forum/thread-802496-1-1.html
由于板卡集成的MicroUSB既能用做Link2硬件調(diào)試器,又能做為串口輸出接口,所以一旦數(shù)據(jù)線接口接觸不良,則會(huì)導(dǎo)致調(diào)試下載失敗或串口輸出異常。調(diào)試過程中,串口輸出溫度值顯示亂碼,有待優(yōu)化。本項(xiàng)目暫且采用裸板程序基本實(shí)現(xiàn)外設(shè)的驅(qū)動(dòng),后面有時(shí)間再在FreeRTOS上實(shí)現(xiàn)實(shí)時(shí)監(jiān)控功能。單總線設(shè)備要求的時(shí)序還是比較嚴(yán)格的,使用MCUXpresso IDE中的“配置工具”下的引腳設(shè)置后覆蓋掉原有的“pin_mux.c”,“pin_mux.h”等源文件,不熟悉設(shè)置GPIO口的上拉、下拉輸入,推挽輸出,調(diào)試比較吃力。
調(diào)試效果視頻如下:
基于LPC55S06的車內(nèi)智能溫控設(shè)計(jì)
https://v.youku.com/v_show/id_XNjM3MTQyNjg4NA==.html
https://v.youku.com/v_show/id_XNjM3MTQyNjg4NA==.html