




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
智能家居系統(tǒng)設計一一基礎系統(tǒng)開發(fā)與設計摘要隨著現(xiàn)代的科學技術以及經濟的不斷發(fā)展,家庭生活的在人們心中占據(jù)的比例要求也在逐步提高。而新式的智能家居化生活得到了許多年輕人的青睞。隨著物聯(lián)網的快速發(fā)展,智能家居和新興起的物聯(lián)網概念結合而形成的新型智能家居,逐漸得到了廣泛的認可,并逐漸有較為成熟的成品出現(xiàn)在廣大人們的視野。但是在今天這個智能家居才剛開始有了崛起的苗頭的時期,一套完整的智能家居的設備,相對于普通的家庭來說是一筆價格昂貴的巨款,而且國內的各品牌的智能家居產品并不兼容,無形中增加了購買的難度,削減了消費者的購買欲望和熱情,盡管每個品牌的產品在各個方面各有自己獨特的技術側重點。一般的家庭無法實現(xiàn)最劃算的購買方式,難以承受其高昂的價格。針對這一現(xiàn)象,穩(wěn)定、全面、低成本、兼容性強的智能家居產品將有助于人們在價格和功能之間找到滿足需求的途徑。本次論文中的智能家居采用stm32f1系列開發(fā)板。該系列開發(fā)板技術成熟,程序與操作系統(tǒng)易于移植,成本低廉。就是本課題中智能家居系統(tǒng)的最大特點。本次畢業(yè)設計主要針對智能家居系統(tǒng)中開發(fā)板的人機交互界面,也就是基礎操作的界面的設計。本系統(tǒng)主要由硬件系統(tǒng)及軟件系統(tǒng)兩個部分組成,軟件部分分主要由我使用MDK編程軟件進行操作界面的功能設計。以KeiluVision4為軟件開發(fā)平臺,編寫嵌入式開發(fā)版的操作界面以及操作反饋功能,通過串行通信技術實現(xiàn)STM32使命令能夠下達給下位機從而達到實現(xiàn)調節(jié)燈光,燈光開關,控制溫度,控制濕度,家庭環(huán)境實時數(shù)據(jù)監(jiān)控等功能,使得智能家居系統(tǒng)得以順利運行。關鍵詞:智能家居系統(tǒng);STM32;界面設計;操作界面;KeiluVision4;緒論1.1智能家居系統(tǒng)研究背景隨著現(xiàn)代的科學技術以及經濟的不斷發(fā)展,家庭生活的在人們心中占據(jù)的比例要求也在逐步提高。電子行業(yè)的發(fā)展速度飛漲,而新式的智能家居化生活得到了許多年輕人的青睞。智能產品的概念宣傳鋪天蓋地,形成一股智能熱,人類科幻電影或者電視劇中幻想的智能家居生活也越來越接近。傳統(tǒng)普通家具只能夠通過手動的方式控制家居的啟動關閉的方式已經逐漸不足以滿足現(xiàn)代年輕人的生活方式。而智能家居的出現(xiàn)能夠完美解決此類問題,它能夠提供給人們一個對家的遠程監(jiān)控以及遠程控制的平臺,也能夠自動監(jiān)測、自動檢測、自動控制調節(jié)家的環(huán)境,不再需要人為的去操作控制。伴隨著物聯(lián)網的快速發(fā)展,由智能家居和物聯(lián)網結合而形成的新型智能家居系統(tǒng)逐漸出現(xiàn)在廣大人們的視野,并得到了廣泛的認可,智能家居的發(fā)展已呈現(xiàn)出不可阻擋的趨勢,也成為了往后的家居生活主流。但是如今一套完整的智能家居設備價格昂貴,而且國內的各品牌的智能家居產品并不能兼容成一個系統(tǒng),每個品牌的產品在各個方面各有自己獨特的技術側重點,使用戶在選擇的時候回面臨選擇和將就的難題,一般的家庭無法實現(xiàn)性價比最高的購買方式。針對這一現(xiàn)象,穩(wěn)定、全面、成本低廉、兼容性強、而且需要符合人性化操作,操作必須足夠簡單容易上手,并且符合現(xiàn)代人們對于智能化產品的審美觀念的,開放式的容易實現(xiàn)用戶拼接擴展不同的實用的功能的智能家居系統(tǒng)是相當?shù)赜斜匾摹?.2國內外對智能家居發(fā)展歷程以及研究國外國內1984年首次提出智能家居概念1994年首次接觸智能家居概念1984年CityPlaceBuilding首個智能家居2004年中國家庭網絡標準產業(yè)聯(lián)盟“e家佳”系列1994年比爾?蓋茨智能化豪宅2005年國內智能家居遭遇信任危機陷入低谷,國外智能家居公司入侵。1999年微軟智能家庭2007年中國第一智能家居社區(qū)“深圳紅樹西岸”落成。2001年日本H-IT-S智能家居2012年響應國家“三網合一”(電信網、互聯(lián)網、電視網)號召。中國智能家居產業(yè)聯(lián)盟CSHIA成立2007年LivingTomorrow的智能家居展示館2013年科思頓智慧家(SCISTON)國內智能家居元老級別2016年扎克伯格家的智能家居2014年-2020年井噴期:海爾U-home,京東智能,小米米家,美居,華為智能家居等國內多個智能家居系統(tǒng)開始問世從上面的表格中我們可以看出,智能家居的概念以及首個智能家居的出現(xiàn)都在國外,他們的起點比我國內的早,而且從上面的數(shù)據(jù)中可以看出在國外的智能家居屬于高科技為家境富裕的人的專屬,是高科技與富有的表現(xiàn)。而我國把智能家居概念引進本土化之后,在國內的發(fā)展,經歷了四個很有趣的時期,這四個時期分別是剛開始接觸到智能家居的概念的萌芽期、以及開始有國內第一個嘗試吃螃蟹進行高資金打造智能家居的開創(chuàng)期、以及前期智能家居吹上了天然后無法實現(xiàn)之前夸大的功能失去了消費者的信任,無法有任何新的進步的徘徊期、以及現(xiàn)在能夠基于5G物聯(lián)網概念重新開始融合轉變的融合演變期。在萌芽期和開創(chuàng)期由于邁的步子過大,宣傳過于夸張,炒作過于厲害,投入的資金過少,導致接近了十年的時間里智能家居的功能都受到了消費者的懷疑,進而導致其沒有進一步的發(fā)展。而其他的國外的智能家居的嗅到了商機,齊齊入侵國內的市場,使本來就有些進行不順利的國內智能家居發(fā)展受到了阻礙。直到2012年后,國家提出了“三網合一”的概念,也就是電信網、互聯(lián)網、電視網三網合一,打造新的形式,才進入了融合演變期。在2012年到2019年國內的智能家居系列的產品才呈現(xiàn)出井噴型地爆發(fā),特別是在已有4G的技術上能夠很好地實現(xiàn)物聯(lián)網,以及接近5G的開始使用更加增加了物聯(lián)網的功能性,物聯(lián)網的發(fā)展重新定義了智能家居的概念,使之前抱有懷疑的態(tài)度國內消費者對其重新認識,并開始對智能家居對定義進行了再一次的拓展,使其不僅僅局限于假智能家居的局面。物聯(lián)網的發(fā)展還極其快速地開辟并擴大了新型智能家居的新的巨大的市場空間,使得新型智能家居的未來的發(fā)展道路以及發(fā)展的走向,形式以及變得不再那么像云中樓閣。物聯(lián)網的發(fā)展還使得之前完全沒有多少群眾信賴的智能家居產業(yè)規(guī)模迅速地得到了巨大的增大,開拓并且加寬了智能家居的發(fā)展的方向,進一步深化了智能家居的內涵,使得智能家居的發(fā)展再次得到良好的延伸,使得智能家居能夠“死灰復燃”,并且直接在近幾年出現(xiàn)了及其令人嘆為觀止的爆發(fā)期。以至于近些年來,被人們覺得食之無味,棄之可惜的智能家居,再次變得熾手可熱,完全不減當年的熱情。也不同于之前的粗制濫造,市場上逐漸出現(xiàn)了大量的優(yōu)質的智能家居產品并且充斥著亂七八糟的假冒偽劣產品開始逐漸減少。就我個人在去年到今年的這個疫情影響十分嚴重的期間所能夠收集到的最新鮮最完善并且暫時形成了一份小而完整的資料而言。我就在這里舉幾個例子說一下我所能夠了解到的國內的一些比較發(fā)展的好的幾家智能家居產品,首先我們就不得不說一下一直都在傳的沸沸揚揚的小米的智能家居系統(tǒng)“小米米家”,“小米米家”在我的心理其實也就那樣,比不算是比較出名的,小米米家在我看來就只是占據(jù)了一個天時地利人和,在科技達到了能實現(xiàn)的程度,并且處于市場的高熱產品,群眾對于這個產品十分感興趣的情況下打開了市場。就像是小米的大當家雷軍說過的一句名言,“只要是在風口上,等風一來,哪怕是一頭躺著的豬都能夠飛起來?!憋@而易見的事情就是,小米這個“小米米家”的這頭豬是真的站在了風口上并且飛了起來,而且飛起來的事情幾乎家喻戶曉。與其手機打著同樣性價比策略的智能家居。目前小米公司已經成功地與我國的三大服務商之一的中國電信,兩家公司開始攜手發(fā)起了一個5G聯(lián)合創(chuàng)新的大項目進行。小米的決策就是,通過與中國電信的合作來對市場的搶先搶占,以打造全套智能家居為賣點,發(fā)展?jié)撛诘目蛻?,從而實現(xiàn)能夠打造小米5G+智慧園區(qū)產業(yè)生態(tài)的策略。小米此舉在國內占據(jù)了大部分的市場份額,有期望可以將許多消費者潛移默化成為潛在用戶。除此之外小米已經研發(fā)出了能夠通過訓練來學習的人工智能語音“小愛同學”,作為智能家居的主要控制中樞進行控制。其功能已經十分接近了近期來熱度居高不下的漫威漫畫中的《鋼鐵俠》中的最新型人工智能管家星期五。電影中的人工智能管家星期五就會自動處理鋼鐵俠的豪宅的門禁開關,電力供應,防盜系統(tǒng),來客提醒,緊急情況預警等等。除了接受鋼鐵俠的指令之外,還具有一定的自我思考能力,甚至在一些情況下還能夠對主人提出建議。這樣的智能家居是人人都夢寐以求的。要實現(xiàn)這種功能十分強大的智能家居系統(tǒng)還是十分困難的,但是我們已經有了一個好的開頭,除了小米的“小愛同學”,阿里的“天貓精靈”也是得到了不少人的關注,并對它寄予厚望。但是起步已經晚了小米幾年的“天貓精靈”的智能程度距離“小愛同學”還是有相當大的路程要走,在這點上阿里的智能家居發(fā)展程度稍遜小米。其實這都表明了一種方向,那就是以后的智能家居能夠做到不僅僅是聽從主人的命令,還會在適當?shù)臅r機對主人提出建議?;蛘呤窃谥魅耸チ俗灾髋袛嘁庾R比如突然病發(fā)的時候,智能家居系統(tǒng)中能夠對突發(fā)的情況處理地非常好。真正做到智能的智能家居。其次,格力的智能家居的概念提出的非常早,雖然格力是主要經營是空調,但是在其他家電方面也開始了嘗試,并且格力自2019年起對智能家居有了成果,格力向等待了幾年的大眾們展現(xiàn)了它的成果,格力的智能家居也是如上部分提到的模式,也就是創(chuàng)建了一個AI人工智能語音系統(tǒng),但是這個AI人工智能語音系統(tǒng)加載在的地方就讓我不得不感到格力的腦洞奇大,甚至感到驚艷。這個AI人工智能語音系統(tǒng)仍然是加載在了格力的主打產品中一一空調。但是這個空調除此之外還有些不一樣,它是一個帶有巨大的觸摸電容屏幕顯示屏的空調。以這個加載了AI人工智能語音系統(tǒng)和空調的結合體一-AI語音空調(光伏空調系統(tǒng))形成了這一整套被命名了一個富含了對智能家居的厚望以及熱愛和希望的名字的“美居”智能家居系統(tǒng)。這個十分神奇的智能家居系統(tǒng)是除了以AI語音空調(光伏空調系統(tǒng))為中心,集合了近些年來格力努力想要嘗試發(fā)展的方向的所有產品。雖然頗有些自產自銷的意思,但是格力畢竟是國內數(shù)一數(shù)二的家電公司,雖然它自己研發(fā)的洗衣機在市場上上反響平平,自主研發(fā)的加濕器在市場上也沒占到什么市場。從空調之中獨立出來的但是又關系緊密的空氣凈化器被調侃不跟空調一起賣的處境,自主研發(fā)的煙機灶具因為沒有什么知名度與曝光,連帶著想要發(fā)展的熱水器也遭受到了一些影響。但是,當這個“美居”智能家居系統(tǒng)出現(xiàn)在大眾的眼前的時候,我們才知道,格力已經是圖謀甚大,而且已經開始了自己的嘗試和突破。結合格力這幾年的嘗試與表現(xiàn)來看,格力對進軍全屋智能家居的市場已經是勢在必得。而且它的自主研發(fā)的除了空調之外的其它家用電器的質量有保障的,只是缺少宣傳或者一個好的平臺表現(xiàn)出來而已。而且格力的智能家居強調自家有光伏發(fā)電系統(tǒng),強調零碳、環(huán)保概念,有優(yōu)勢,其封閉的系統(tǒng)能夠做到極少的可能會出現(xiàn)個人的數(shù)據(jù)隱私問題的困擾。當然缺點這個家居系統(tǒng)是封閉的,不支持其它品牌智能家電。所以一旦決定使用這個智能家居系統(tǒng)的時候,就必須購買一整套的家電來形成系統(tǒng)。由此可以看出,智能家居無論在國內還是國外都有良好的發(fā)展前景,形式一片大好,但是國內各家智能家居的公司各自為戰(zhàn),產品互不兼容,我覺得這是一個弊端,現(xiàn)在智能家居碰到5G時代,即將迎來再一次快速發(fā)展,各家應該統(tǒng)一標準,有自己的特點,但是也許需要互相支持別家產品融入自家系統(tǒng),協(xié)議與技術標準開始慢慢融合,促進競爭發(fā)展,才是智能家居行業(yè)的未來發(fā)展方向。1.3可行性分析:從發(fā)展現(xiàn)狀來說,嵌入式開發(fā)板目前已經開發(fā)完善出許多款式,開發(fā)可視化操作系統(tǒng)界面以及實現(xiàn)智能家居系統(tǒng)中的各種功能。從經濟方面來說,STM32系列開發(fā)板無一都是專為要求要盡可能高性能的、而且低成本、低功耗又低的系列產品。在使用的過程中,減少了前期的投入,在后期的使用中也減少了后續(xù)的經濟輸出,大大提高了競爭力。從技術方面來說,本系統(tǒng)開發(fā)基于C語言。使用Keil4已經出現(xiàn)了許多年,它的集成開發(fā)環(huán)境不敢說最好也可以排進所有軟件的前十里面,而我們的想法是使用現(xiàn)在開發(fā)技術已經成熟的應用,使用現(xiàn)如今已經趨于成熟的開發(fā)語言。讓我們設計的系統(tǒng)能夠得以保障它的正常安全使用,做到質量與性能都能夠出彩的地步。在追求穩(wěn)定的同時還要追求對產品的創(chuàng)新設計。在我們學習的專業(yè)知識中可以使用相應的編程進行實現(xiàn),進行的一系列智能算法在網上也有豐富的例子可以供給我們學下參考學習。從發(fā)展趨勢來說,現(xiàn)在的智能化開始提高,人們手中最經常接觸的就是智能手機,而我們的STM32單片機已經可以做到和智能手機一樣簡單易用、自由、低風險這三個特點。而且我們即將設計的,是一款界面操作相當?shù)睾唵蔚模枪δ苡心茏龅绞秩娴?,無論在何種情況下都能夠的實現(xiàn)實用性強、操作必須要簡單、無論是老人還是小孩都要易于上手、符合人們日常生活中的人性化需求的的界面。一、智能家居開發(fā)板操作界面設計2.1整體思路STM32開發(fā)板的操作界面設計,屬于人機交互的重要部分。所以在整個界面上必須做到操作簡單,設計合理且符合當下人們對與操作界面的審美。所以STM32開發(fā)板開機之后的主界面,需要擁有日期與時間功能。并且擁有四大功能模塊。分別為燈光控制功能、環(huán)境功能、安防功能、娛樂功能。點擊燈光功能之后,能夠對臥室,以及客廳,廚房的燈光開關以及亮度進行為人的操控,也可以開啟智能模式,讓智能程序根據(jù)光度傳感器感應到的外界光感強度從而對燈光進行開關以及亮度調整。點擊環(huán)境功能之后,能夠接收到溫度傳感器以及干濕度傳感器傳遞回來顯現(xiàn)在STM32開發(fā)板屏幕的參數(shù),從而進行對于室內的溫度調節(jié)以及室內干濕度的調節(jié);可以根據(jù)自身的需求手動操控屋子窗簾的打開與關閉。也可以開啟智能模式,讓智能程序根據(jù)主人的日常使用情況,以及外界的溫度傳感器,以及季節(jié)性的多種因素進行判斷從而對室內的溫度以及干濕度進行調整;根據(jù)主人在屋內的活動情況,以及屋外的亮度是否符合打開的條件,以及是否周六日等情況從而判斷是否應該打開窗簾,或者關閉窗簾。從而給主人一個舒適的環(huán)境。點擊安防功能之后,可進入STM32開發(fā)板的安防系統(tǒng),對安防系統(tǒng)的運行進行設置。點擊娛樂系統(tǒng)之后,能夠進入音樂播放模式。在四個功能進入之后,在左上角我們會設置一個按鈕,它的功能就是通過點擊該按鈕,然后操作界面就會回到主界面,此處涉及到了多級界面的設計,是多級界面的初步實現(xiàn)思路。2.2操作界面的設計方案首先,STM32基礎系統(tǒng)的操作界面,分為主界面和二級界面。在主界面中可以進入到二級界面,而二級界面中有能夠回到主界面的按鈕。所以我首先需要通過工具與編程來實現(xiàn)一個主界面和四個二級界面的設計繪制,以及通過編寫程序將兩者聯(lián)通在一起,形成一個初級的操作界面。如下圖2.1所示,為我為操作界面設計的初級的操作界面萬案圖。圖2.1初級的操作界面方案圖其次,由于操作界面的設計需要借用到軟件進行控件繪制,但是繪制的控件并不能符合當下人們的審美要求,所以需要對界面進行美化,以及控件的位圖置換,以及字體的美化。二、硬件選擇3.1STM32F103ZET6開發(fā)板我的系統(tǒng)操作界面所需要使用到的系統(tǒng)主控芯片的選擇當然是選擇是正點原子的STM32F103ZET6嵌入式開發(fā)板,它使用的是以ARMCortex-M3作為主要內核驅動的的嵌入式開發(fā)板,雖然AT89C51相比價格雖然高了一點,但是性能上是其好幾倍。STM32F103ZET嵌入式開發(fā)板所擁有的外設也比51單片機所有的要豐富的多,幾乎足以支撐起許多高級的應用。最值得稱贊的地方就是這款開發(fā)板不只是擁有56個中斷而是擁有更多中斷的84個中斷,并且在我需要的時候,作為中斷輸入無論是哪一個引腳都可以做到。也不用擔心編程的優(yōu)先級別問題,有16個可編程優(yōu)先級可以供我隨意選擇。所以本系統(tǒng)的開發(fā)板采用正點原子公司集成的精英開發(fā)板。如圖3.1所示。槌塊喋口CAN搓口R梆5r飾[『出一rLCDl世磚器Jeon■出JO口USBSLAVE24C02EEPWMCAN.1ISB槌塊喋口CAN搓口R梆5r飾[『出一rLCDl世磚器Jeon■出JO口USBSLAVE24C02EEPWMCAN.1ISB14.驟口HACkSWD旳JU油律Bi1事口L鉅卡毎口I在背助W25Q|2i8I.邱M「0<工D灌像][DS1SB20V1L_i_J1聲礎」1乎7噸「1」TALt£NTEKJ圖3.1STM32F103ZET6開發(fā)板由于開發(fā)板的自身工作性質的原因,STM32F103ZET6開發(fā)板最多只能在零下-40°C到+85°C的溫度范圍內才能夠正常進行工作,而且開發(fā)板的輸入的電源電壓范圍必須為2.0-3.6v,否則會出現(xiàn)燒毀電路板的情況。為了確保應用中的低功耗,需要一系列節(jié)能模式。STM32F103ZET6開發(fā)板中一共擁有三種根據(jù)使用者的不同需求而設計的三種不同的低功率以及低消耗的運行模式。分別是模仿電腦系統(tǒng)中的睡眠模式、以及相當于關機的停機模式、以及待機模式。方便使用者在需要的時候能夠在使用最低功耗運行、使用最短啟動時間和使用多種喚醒事件之中來回靈活選擇,從而達到功能的更加靈活的使用,達到最佳的使用效果。(1) 睡眠模式STM32F103ZET6嵌入式開發(fā)板的睡眠模式中,設置為只有CPU停止進行工作,而其他的所有外設繼續(xù)處于不停歇的工作狀態(tài),并且只要發(fā)生了發(fā)生中斷或者觸發(fā)了事件的時候才會使得CPU被喚醒來雞血工作。(2) 停機模式在STM32F103ZET6嵌入式開發(fā)板的停機模式之中,設置了必須要在保證SRAM的內容以及寄存器的內容不會出現(xiàn)數(shù)據(jù)丟失導致出現(xiàn)錯誤的的情況下,停機模式所能夠達到的對于開發(fā)板的電能消耗達到的最低的設定。所有嵌入式開發(fā)板的內部1.8V部分停止進行供電,在設置中會關閉一些振蕩器的引腳,使其不能夠繼續(xù)占用電能消耗。(3) 待機模式在STM32F103ZET6嵌入式開發(fā)板的待機模式之中,設置了在待機模式下可以達到。關閉了嵌入式開發(fā)板內部的不必要使用到的電壓調壓器,從而做到使開發(fā)板的電量消耗達到了一個最低的數(shù)值。在此狀態(tài)下所有嵌入式開發(fā)板的內部1.8V部分停止進行供電,所以必須切斷供電;在設置中會關閉一些振蕩器的引腳,使其不能夠繼續(xù)占用電能消耗;在嵌入式開發(fā)板進入了待機模式之后,將不會再保存SRAM的內容以及寄存器的內容,只是將它進行清除,只會為后備寄存器保留一些重要的的內容使其能夠在接下來的喚醒狀態(tài)之中能夠正常地進行工作。在這些豐富的外設配置的幫助下,STM32F103ZET6嵌入式開發(fā)板能夠開發(fā)出適應多種場合的設備使用的功能實現(xiàn)以下的功能:系統(tǒng)操作界面的設置以及內部包含的應用功能的控制一些比較常見的屬于家用式的簡單醫(yī)療設備例如血壓計,智能體溫計等等一些就像游戲手柄或者游戲搖桿專門用于操作的PC游戲的設備可應用于一些比較小型的輕工業(yè)的工業(yè)應用或者產品:比如一些可編程控制設備、自動升降機、智能掃地機器人等?;诙喾N場景能夠應用到的自動警報通知使用者的系統(tǒng)、室溫調控系統(tǒng),燈光控制系統(tǒng),濕度控制系統(tǒng)和暖氣通風空調系統(tǒng)等四、開發(fā)工具介紹4.1KeilMDK5.14編程軟件對于本次畢業(yè)設計所用到的軟件,第一個就要提到了的軟件就是KeilMDK5.14編程軟件,這款軟件在我的畢業(yè)設計的整個過程中都是與它打交道。是近十年來單片機、嵌入式開發(fā)板的開發(fā)所必須的工具排行第一名。據(jù)我所知,Keil這個軟件是美國的KeilSoftware公司開發(fā)的一款PC應用程序,專門用于編寫51單片機的程序并且進行燒錄寫入的。后來好景不長因為經營不善該公司不得不將此類軟件交出去以換取ARM公司的收購,最后在經過了兩家公司的共同研發(fā),終于研發(fā)出了KeilMDK5系列編程軟件這個專門用來進行嵌入式開發(fā)板和51單片機進行調試以及燒錄程序修改程序的神器。并且提別貼心地特意為用戶添加了部分ARM的芯片,可以編譯STM32等ARM內核的程序,為基于Cortex系列以及ARM系列處理器設備提供了一個十分強大操作簡單的界面,以及搭建了一個十分完整而強大不易出錯的開發(fā)環(huán)境。KeilMDK5.14的設計概念就是為了方便用戶能夠快速地學會編程并專為微控制器的應用,簡單易學到了極點,只需要半天的時間就能掌控基礎的操控知識oKeilMDK5.14的功能更是空前的強大,雖然在現(xiàn)在不是最新版本,但是卻是現(xiàn)階段最穩(wěn)定的最實用的軟件,它能夠對簡單的51單片機以及許多類型的嵌入式開發(fā)板進行操作和應用。而且KeilMDK5.14編程軟件使用的是簡單易學易理解的C語言匯編語言,對于剛開始接觸C語言的新人以及剛上手的使用者都是十分友好的。KeilMDK5.14編程軟件的操作界面十分的簡單明了,深受國內的許多愛好者的喜 愛。最主要的原因是由于STM32精英開發(fā)板帶有ST-LINK調試接口,所以可以直接在KeilMDK5.14編程軟件上面燒錄程序進入開發(fā)板進行調試,十分的方便,ST-LINK調試器燒錄燒錄所需要的時間是使用axf文件來進行燒錄的類似FlyMCU等燒錄工具的兩倍。KeilMDK5.14編程軟件如下圖4.1所示。fin?iew refwiffaKJjmi刑“bfchm寧0#1ai1?‘1F■MH」" Q&r|4|?#尊|陽■協(xié)以h質■srg」SA +-PlEH1MiL>yiGro11Jgtiui.r?fchJ知1『:-地5■WM.L?//皿心lllLElKC'£?引rig>.曰心ryiLli)//國£3irvR1UErm=KUl;■E[:-JAl>51=.?.1 -a-Ml■MlzIDBin?11;Lie頃T0H_£4TFgTfb恥eiLUJIH ^hlQUl^。手任用式F:ejguLU/i'U£ZF:5TJU1T 丄『x=J?r= zed*fa:iurchiiE'udiMCLna-xuliu^aaaleeD5YITW11?//U5-IREHP壓,WLL0C1N>brcaki131=■?KiK'T]reFrtJLZMT:II-JPMJIL9>J-Ta ■KWQii-'ElaipriAq-bhDLnltaii莊|\JLKC-SU.EFLZ5HCTiK=fiHR-HJtfTI?r曷irr^LLHLE1 wuediI'Sd)1上白!K■於IKPVL±tcut*E_日CIT臨—虹 flscb.Eic-kC.uuid-anz.By'^rjetjan"?AUC(KI].C(HEL混:rwre頃心明Ccan■?HCTjnCRr:CH =a-1ucoin_w)i.TiTQWXfiD/DtfKi?i±#1Wbcc?kj131■:ar-abM RiLEUED:壬(JL32壓員IMMI-J.MZL33breahj11LJFATFS■MISLAE.->r?匿[M^KjCEMO皿Bl313TLM-rCD3UTTUS]zi'iBch上丄口t?hltj-與m五心蝦4UiErfcTCcrExL游cbmB_]ruriHMflDUlXLWW三丄如初1:14.IM,^lEM4j=dW(LEB<EBrEKMH^n|H:L-U-HH_I?tl?tGiMiauipdsg-^liainiJL4I3-riagr-lr*h£M^C:LW電#>HF】Cftn卻-RllEMEDl11?irib1-圖4.1KeilMDK5.14編程軟件4.2XCOMV2.3串口調試助手這款軟件的名字為XCOMV2.3的專門用于串口進行監(jiān)控以及調試的開源免費軟件,是用于單片機開發(fā)串口調試的相關工具,STM32開發(fā)板的系統(tǒng)界面設計需要使用到的定時器的功能,需要通過串口調試助手XCOM去進行模擬定時器的工作流程,然后通過串口調試助手顯現(xiàn)出來的數(shù)據(jù)進行比較和修改。從而達到解決一些無法從表面解決的問題。XCOMV2.3串口調試助手雖然在現(xiàn)在不是最新版本,但是卻是現(xiàn)階段最穩(wěn)定的軟件,其他類型的串口調試軟件能夠做其到十分之三四就非常不錯的了。當然XCOMV2.3串口調試助手界面的設計就不會使我失望,還是一如既往的簡潔明了以及方便操作。自動識別串口的功能能夠減少我們在接入串口的時候錯誤以及提醒,做到十分的準確以及快速。通過操作的窗口還可以查找并查看接收到的當前數(shù)據(jù)的信息以及歷史數(shù)據(jù)的信息。單條發(fā)送與多條發(fā)送的功能大大減少了使用的繁雜步驟使得效率能夠得到提高。能夠對嵌入式開發(fā)板進行定時發(fā)送與16進制發(fā)送,并且在運行的時間內能夠不間斷地自動循環(huán)地像軟件間記錄數(shù)據(jù)。是一個不可多得的助手。其操作界面如下圖4.2所示。圖4.2XCOMV2.3串口調試助手4.3FlyMcu仿真軟件FlyMcu仿真軟件,是屬于一款比較老舊的用于對stm32串口進行燒錄的燒錄器,但是燒錄的時候必須要注意嵌入式開發(fā)板的專屬于BOOT口與USB口必須要做到有一端接地。想要燒錄程序的話,必須等到FlyMcu仿真軟件連接上通訊,并且在仿真軟件使用界面的下邊選擇選項:DTR的低電平復位,RTS高電平進Bootloader,如此一來,我才能夠將需要寫入的HEX文件寫入我的需要燒錄的串口,能夠很方便地燒寫程。而且該軟甲還有一個功能,那就是能夠使用讀器件信息來查看在調試的工程以及可能出現(xiàn)的問題。而且在距離上一次開發(fā)出來的FlyMcu的最新的仿真軟件在很多場合能夠做到比傳統(tǒng)的編程座編程的還有具有不可比擬的優(yōu)勢,比如能夠燒錄十分快。而且FlyMcu仿真軟件可以將已經寫入的程序快速的擦除干凈,從而能夠避免程序未被擦除干凈而引發(fā)的未知的問題。FlyMcu仿真軟件如下圖4.3所示。
圖4.3FlyMcu仿真軟件4.4GUIBuilder由于單獨地編寫出一個操作界面是十分繁雜而且容易出錯的任務,這個時候我們就需要用到一款操作簡單但是又十分高效的軟件來對我們的設計進行輔助。這個時候我們就要用到GUIBuilder,GUIBuilder一款剛好符合我的要求的軟件,雖然脫離C語言的大量設計,但是有時在C語言的基礎上應用的軟件。它的操作十分的簡單。創(chuàng)建一個能夠存放各種小控件的窗口,能夠對控件所在的位置,大小以及命名進行設置。并且能夠根據(jù)自己的使用需求從而對控件進行選擇以及屬性的更改。全程無需使用到C語言,但是會在創(chuàng)建的窗口之中生成一盒C文件。并且可以在EMWI中直接進行加載,并且可以通過使用C語言的程序編程,使得它能夠再一次增加功能。控件的多樣化幾乎囊括了多有的事件,為使用者提供了相當完善的的事件處理的框架,讓設計者能夠按照需求來對整個窗口進行設計,甚至于整體性處理。其操作界面如下圖4.4所示。圖.4.4GUIBuilder4.5BmpCvtST使用GUIBuilder應用程序繪制系統(tǒng)操作界面,由于其功能欠缺,因此只能設計一個初步的界面。但是為了符合當下人們對于智能化產物的審美標準,需要對操作界面進行一系列的美化,比如說需要用到的按鈕部分,可以通過使用自己的位圖來代替原本的控件圖形來增加美觀,就要用到這款用于轉化位圖的軟件,它其中一個功能是可以將一個bmp圖像文件轉成一個c文件。然后通過概念控件按鈕的位圖進行置換美化。BmpCvtST將圖片轉換成位圖,就可以大大減少了讀取圖片使用的時間,從而達到更高的流暢性以及美觀性。轉換位圖的軟件操作界面如下圖4.4所示位圖4.5.轉換位圖的軟件操作界面賢I對M量童g.Zfl淵由M?匚g尚障日|縄|???|二--舊國直話— —31崙□r威1兇三[虱■laulvdf-Cf賢I對M量童g.Zfl淵由M?匚g尚障日|縄|???|二--舊國直話— —31崙□r威1兇三[虱■laulvdf-Cf[QILb.hS-mmg"Mi.n-rrtrnMI_*n*in_SHflME叫[|JHHiM;:lh■aFn?*fCUIRMiEI!;inMi1F癇I_専磁T_幻tfiMECQMtoQf當對-H-onHonnounouHOAHH.51#*glu*B?HU輪Ifc恥#>k恥#岷由靱加:3也ritidHIIHnounOIDCIH編IKgHoAnH.mg軸*-?0.diAn,-IT±JISo>T±JISo>>Ofa7心ILnI.tollWK曲律.-sWk a> ->!S*>^LD.MILUyHwlj? 圖4.6轉換位圖轉換的程序代碼4.6PhotoshopPhotoshop簡稱PS,隨著近幾年逐漸增加了它的知名力,Photoshop開始廣泛應用到各個行業(yè)之中,其針對圖像的處理能力令人感覺到嘆為觀止。當然,在本次畢業(yè)設計之中,我們不需要使用到PS的令人感到驚訝的能讓人搞頭換面的功能,也不是讓人就像是不用去韓貨整容都能變得好看地不行的功能。而是使用PS能夠對圖層的操控以及修改,做到設計一些操作界面所需要的功能按鈕,以及一些進度條的美化。因為現(xiàn)在的智能化手機的普及,幾乎人手一部的智能手機,已經極大地提高了人們對于操作界面的美觀方面的需求,所以,對界面進行一系列的美化還是勢在必行的。畢竟制作精美的小飾品都會獲得人們的喜愛,更何況智能家居的操作系統(tǒng)呢,此舉可以提高智能家居嵌入式開發(fā)板在市場上的競爭力。所以使用這個軟件是因為我需要對即將轉化的位圖進行繪制。以及圖層分離。比如開關的按鈕,如下圖4.7所示。Photoshop的操作界面圖4.8所示。E)圖4.7.按鈕開關圖圖E)圖4.7.按鈕開關圖圖4.8Photoshop的操作界面五、開發(fā)環(huán)境的搭建5.1操作系統(tǒng)UCOSIIIUCOS是一個操作系統(tǒng),用于Micrium公司生產的內核的可搶占調度的操作系統(tǒng)。UCOS目前有兩個版本:UCOSII版本以及UCOSIII版本。本次設計使用了實時操作系統(tǒng)是UCOSIII版本。UCOSIII是一個可以進行刪除和被刪除的多任務內核。它的任務的數(shù)量以及優(yōu)先級都是沒有限制的。UCOSIII提供實時操作系統(tǒng)所需的所有功能,其中就包括資源文件的保管和整理、對文件進行同步運行操作以及保存、對正在進行的任務進行交換以及變更等,有效地避免了多個線程讀寫數(shù)據(jù)的不可預測的后果同時,開發(fā)者必須匹配每個線程數(shù)據(jù)訪問是同步的,也就是說,當一個線程訪問數(shù)據(jù)并沒有結束,其他線程不能訪問相同的數(shù)據(jù)。UCOSIII任務管理因為該系統(tǒng)的上位機需要做到多個任務并行,像是EMWIN界面的觸摸操作,GSM模塊短信發(fā)送等,每個人物都需要自己獨立運作,ucos的多任務管理使CPU資源的利用達到了最大化,讓每個任務輪流占有CPU的使用權,然后頻繁的切換任務,這樣宏觀地看起來就像是多個CPU在同時執(zhí)行多個任務一樣了。而UCOSIII所帶來的多任務處理的功能的特別的優(yōu)點是可以充分利用硬件資源達到最佳的工作效率。在這里舉個例子,在正常運行中,當我們的單個任務運行到了延遲函數(shù)的那一部分的時候,而我的CPU恰好就處于空閑狀態(tài)中;而如果我是在多任務系統(tǒng)中,當我的任務遇到延遲的命令,或者在等待資源文件的調用的時候,這個系統(tǒng)能夠自動在CPU有空余能力的狀態(tài)下運行下一個任務。當滿足當前的任務的要求的時候,此時任務狀態(tài)能夠返回到前一個任務,這樣系統(tǒng)就能夠充分利用CPU來提高效率,而不是一直單線程地完成一項任務再完成下一個任務,這樣就大大提高了效率。雖然在系統(tǒng)的設定中,每個任務都有自己的優(yōu)先級。當多個任務都在已經準備就緒的時候,系統(tǒng)將會根據(jù)屬于的任務的優(yōu)先級進行對比,然后對它們進行優(yōu)先級從前到后的排序。一旦具有比當前任務更高優(yōu)先級的任務出現(xiàn)在就緒狀態(tài),CPU的使用權限就被剝奪了高優(yōu)先級任務。為了防止出現(xiàn)兩個任務間相互等待而形成死鎖的情況,UCOSIII每次等待都會進行超時檢測。要使用UCOSIII至少需要4K以上的RAM,因為內核就占了4K,加上每個任務自己的堆棧空間,本設計使用了大概16K的任務堆棧,STM32F103精英板的SRAM有64K,還有將近一般可以使用,所以也足夠了。UCOSIII內存管理說到內存大小,UCOSIII也有一套自己內存管理方案,在很大程度上,提高了內存的利用率。系統(tǒng)在進行初始化的時候,會自動分配進行任務所需要的內存空間,并將分配出來的所有的空間在一個鏈表中進行有序的排列。一旦系統(tǒng)需要進行任務,使用到應用程序內存時,系統(tǒng)就能夠直接從鏈表中選取合適的空間進行調用。當釋放內存時,內存將直接返回到空位置。它在內存列表中。使用這種方法可以避免產生內存碎片,并且可以在恒定的時間內分配內存空間。UCOSIII的移植移植UCOSIII不像ARM移植LINUX的時候還需要移植UBOOT,內核還有文件系統(tǒng),移植過程別提令人多煩惱了,還會有各種各樣的問題出現(xiàn)。相比之下移植UCOSIII只需要把相應的文件放到工程里面一起編譯再添加編譯路徑即可,實在方便。首先準備一個沒有UCOSII的基礎工程,然后去官方下載UCOSIII的源碼,分好類放進對應的文件夾中:uC-CPU文件夾里是與CPU相關的文件。uC-Lib文件夾里是一些代替標準C庫的文件,如tolower(),memcpy(),rand()ouCOS-III文件夾里的就是UCOSIII的源碼,包含了一些內核功能模塊、中斷處理的任務代碼、信息處理代碼、信號量管理代碼、任務管理的代碼等。以下兩個文件夾需要自己創(chuàng)建UCOS-BSP文件夾放的是與單片機相關的板級支持包bsp.c和bsp.h。UCOS-CONFIG文件夾里的則是一些配置文件。5.2Stemwin圖形界面開發(fā)在實際應用中,往往需要制作一個UI界面來實現(xiàn)人機交互。對于簡單的UI,我們可以自己直接編寫代碼,簡單的圖形界面開發(fā)我們可以直接繪畫2D圖形來模擬各種控件。但是如果需要用到比較復雜的交互方式,這種方法就會顯得很笨重,代碼很難編寫,對于那些復雜的交互方式和界面自己寫代碼的話難度就會很大,而且這樣寫出的界面看上去也不美觀。這個時候我們就要到第三方的圖形軟件庫了。為了便于開發(fā)并且降低開發(fā)的難度便于新手的上手,我們可以使用第三方的軟件來協(xié)助進行開發(fā)一一GUI庫。GUI庫的存在使新手們設計UI界面變得簡單了不少,入門的門檻也降低了不少。而STM32上最流行最受小白門喜愛的GUI庫是UUGGUI,雖然說UUGGUI已經降低了不少門檻使新手們能夠安穩(wěn)度過前期的修煉,但是UCGUI的進階版本一一emWin也逐漸進行簡化使得小白們感受到友好°STemWin軟件是STGGER公司獨家授權給ST的emWin版本,該芯片可以免費使用STemWin,STemWin針對ST芯片進行了優(yōu)化。以下是針對開發(fā)環(huán)境所進行的環(huán)境搭建。5.2.1Stemwin的移植
跟移植UCOSIII一樣,都是先從官網下載源碼,Stemwin的源碼在ST官網上能找到。移植方式有無操作系統(tǒng)和帶操作系統(tǒng)兩種,區(qū)別就是一些文件是分OS版和非OS版的,還有就是GUIConf.h文件要進行相應的修改。在上述移植好UCOSIII的工程中將EMWIN源碼分好類放進對應的文件夾中:修改工程文件代碼如下:#ifndefGUICONF_H#defineGUI_NUM_LAYERS2//#defineGUI_NUM_LAYERS2//顯示的最大層數(shù)//不使用操作系統(tǒng)//不支持觸摸〃默認字體〃支持鼠標〃支持窗口管理〃支持存儲設備〃使用設備指針#defineGUI_OS(0)#defineGUI_SUPPORT_TOUCH(0)#defineGUI_DEFAULT_FONT&GUI_Font6x8#defineGUI_SUPPORT_MOUSE(1)#defineGUI_WINSUPPORT(1)#defineGUI_SUPPORT_MEMDEV(1)#defineGUI_SUPPORT_DEVICES(1)#endi在GUIConf.h文件中,我們可以自行對Emwin進行定義,定義我們是否需要使用操作系統(tǒng)、是否需要顯示鼠標的團、是否需要顯示窗口管理這些信息,而且我們還可以自行定義Emwin的字體以及大小。這些都十分方便我對Emwin的操作系統(tǒng)的可操作性進行調試。觸摸屏移植:首先,我們需要移植觸摸屏部分,因為我們需要一個觸屏的部分來迎合當前現(xiàn)代化智能家居的觸屏控制部分,因為據(jù)調查,現(xiàn)在83%的消費者都是希望能夠使用到虛擬按鍵而不是實體按鍵。而且STemWin是有觸摸屏功能的,所以這是非常必要的。然后,我們需要在整個工程中去添加GUI_X_Touch_Analog.c這個文件,創(chuàng)建一個Config文件夾,用來存放的emWin的配置文件Inc文件夾存放的是Stemwin函數(shù)的頭文件,包括各種控件Config文件夾存放的是emWin的配置文件,可更改分配給emwin的內存大小、是否支持觸摸、是否使用操作系統(tǒng)等。而inc文件夾存放的文件,全部都是StemWin控件的相關函數(shù)的頭文件。使用操作系統(tǒng)或者裸機下的驅動文件就存放在OS文件夾里。Lib文件夾存放的就是StemWin的函數(shù)庫。在工程左側中添加emwin文件然后添加編譯路徑即可六、操作界面的繪制以及功能按鍵6.1主界面的繪制STM32F103ZET6開發(fā)板的操作界面主要有四個功能入口。系統(tǒng)操作的主界面操作思路如圖6.1所示。系統(tǒng)操作的主界面設計樣式如圖6.2所示圖6.1系統(tǒng)操作的主界面操作思路HomrHomr圖6.2系統(tǒng)操作的主界面設計樣式分別為安防功能,燈光功能,環(huán)境功能,娛樂功能。點擊各個功能所在的圖標可以直接進入到該功能界面進行操作。通過左上角的Home按鈕可以回歸到主界面。6.2燈光功能操作界面AulaHandAulaHand圖6.3燈光系統(tǒng)界面由圖中可以看到,臥室、客廳、廚房、衛(wèi)生間的燈光的開關都是各由一個按鈕來進行控制。而燈光的亮度均有亮度條可以進行亮度調整。而且在燈光系統(tǒng)操作界面中,還有手動模式以及自動模式,最后最上角有一個Home鍵,只需要點擊就可以回到主界面。而它們手動進行模式如下。圖6.4燈光功能的手動模式思路圖自動模式情況下,以臥室燈光為例子:圖6.5自動模式的臥室燈光運
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 氣候變化對農業(yè)的影響考題及答案
- 2024年基礎經濟學與基金試題及答案
- 2025年靶向給藥材料項目建議書
- 增強競爭力的寵物殭葬師試題及答案總結
- 2025外墻保溫工程涂料合同
- 注冊會計師考試中的模擬考試使用技巧及試題及答案
- 2024年投資咨詢工程師考試復習攻略與試題
- 物流服務與戰(zhàn)略決策的關系試題及答案
- 有效的機構投資策略試題及答案
- 2025企業(yè)合同準則:原設備租賃合同
- 《土木工程材料》課件 03水泥-土木工程材料
- (2024年)肺栓塞的護理課件
- (2024年)治療肩周炎課件
- 《新聞評論》課件 第四章 新聞評論的基本類型
- 基因工程病毒疫苗-課件
- 超市產品質量與風險防控培訓
- 中考英語語法填空總復習-教學課件(共22張PPT)
- 機場安檢防爆培訓課件模板
- 一到六年級語文詞語表人教版
- 2024年浙江杭州地鐵運營分公司招聘筆試參考題庫含答案解析
- 2024年九省聯(lián)考新高考 數(shù)學試卷(含答案解析)
評論
0/150
提交評論