歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

實(shí)訓(xùn)報(bào)告-智能家居實(shí)訓(xùn)報(bào)告模板.doc

  • 資源ID:9345389       資源大小:362KB        全文頁數(shù):17頁
  • 資源格式: DOC        下載積分:9.9積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號:
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

實(shí)訓(xùn)報(bào)告-智能家居實(shí)訓(xùn)報(bào)告模板.doc

實(shí) 訓(xùn) 報(bào) 告嵌入式智能家居實(shí)訓(xùn)報(bào)告班級學(xué)號 1339124 姓 名 張德進(jìn) 實(shí)訓(xùn)地點(diǎn) E501 指導(dǎo)教師 龐春輝 完成日期 2015 年 12月 20日一、實(shí)訓(xùn)目的(1)具有閱讀程序能力,查閱相關(guān)資料能力,掌握程序修改能力(2)具備編寫代碼能力,掌握程序分析,編寫,調(diào)試能力。二、實(shí)訓(xùn)環(huán)境校內(nèi)環(huán)境:E501校外環(huán)境:工作單位以校內(nèi)實(shí)訓(xùn)為主,校外實(shí)訓(xùn)為輔。(1)硬件設(shè)備計(jì)算機(jī)。(2)軟件Eclipse。3、 技術(shù)介紹隨著社會、經(jīng)濟(jì)水平的發(fā)展,人們對家居品質(zhì)的要求也越來越高,要求居住環(huán)境舒適化、安全化,家居生活人性化、智能化。智能家居是3C技術(shù)(即)向傳統(tǒng)家電產(chǎn)業(yè)滲透發(fā)展的必然結(jié)果。從社會背景的層面來看,近年來信息化的高度進(jìn)展,通訊的自由化與高層次化、業(yè)務(wù)量的急速增加與人類對工作環(huán)境的安全性、舒適性、效率性要求的提高,造成家居智能化的需求大為增加;此外在科學(xué)技術(shù)方面,由于計(jì)算機(jī)控制技術(shù)的發(fā)展與電子信息通訊技術(shù)的成長,促成了智能家居的誕生?,F(xiàn)在的中國正迎來一個"數(shù)字城市"、"數(shù)字社區(qū)"建設(shè)與發(fā)展的熱潮,3G技術(shù)和互聯(lián)網(wǎng)應(yīng)用對智能家居的發(fā)展也起到很重要的推動作用,智能家居的日漸興起影響到人們生活的方方面面,改變了人們的生活習(xí)慣,提高了人們的生活質(zhì)量,促使家庭實(shí)現(xiàn)了生活現(xiàn)代化,給人們的家居生活帶來了全新的感受,它必將成為一種發(fā)展趨勢。目前市場上出現(xiàn)得智能家居控制系統(tǒng)主要有: (1)X-10系統(tǒng)(美國),該系統(tǒng)是利用電力線作為網(wǎng)絡(luò)平臺,采用集中控制方式實(shí)現(xiàn)。這套系統(tǒng)的功能較為強(qiáng)大,與其它家居控制系統(tǒng)如ABB、C_BUS等比起來更容易接收,使用也相對簡單。因?yàn)閷?shí)現(xiàn)同樣的功能,X-10家居控制系統(tǒng)是利用220v電力線將發(fā)射器發(fā)出的X-10信號傳送給接收器從而實(shí)現(xiàn)智能化的控制,因此采用這套系統(tǒng)不需要額外的布線,這也是這套系統(tǒng)的最大的一個優(yōu)勢,因?yàn)槠渌到y(tǒng)基本上都需要布低壓線,在墻上或地面開槽、鉆孔,施工難度大、費(fèi)用高、工期長。但由于缺乏在國內(nèi)市場推廣的條件且價(jià)格昂貴,該系統(tǒng)在國內(nèi)應(yīng)用極少。 (2)EIB系統(tǒng)(德國),該系統(tǒng)采用預(yù)埋總線及中央控制方式實(shí)現(xiàn)控制功能。但由于其工程要求復(fù)雜嚴(yán)苛,并且價(jià)格較高,因此一直無法打開國內(nèi)市場。 (3)8X系統(tǒng)(新加坡),該系統(tǒng)采用預(yù)處理總線跟集中控制方式來實(shí)現(xiàn)功能。它的優(yōu)點(diǎn)在于利用的產(chǎn)品對系統(tǒng)進(jìn)行擴(kuò)展,系統(tǒng)較為成熟,比較適合中國國情。但是由于系統(tǒng)架構(gòu)、靈活性及產(chǎn)品價(jià)格等方面還難以達(dá)到要求,所以目前在國內(nèi)還較少應(yīng)用。 對于我國的智能家居進(jìn)展目前,主要采用國外的一些技術(shù)產(chǎn)品,但也有一些企業(yè)推出了自己的產(chǎn)品,主要有: (1)e家庭(海爾),該系列產(chǎn)品以海爾電腦作為控制中心,各種網(wǎng)絡(luò)家電作為終端設(shè)備,海爾移動電話作為移動數(shù)字控制中心。海爾在技術(shù)上同微軟合作,利用微軟的Windows Me技術(shù)和海爾的網(wǎng)絡(luò)家電,使“e家庭”已具雛形,已推出了網(wǎng)絡(luò)洗衣機(jī)、網(wǎng)絡(luò)冰箱、網(wǎng)絡(luò)空調(diào)、網(wǎng)絡(luò)微波爐等一系列網(wǎng)絡(luò)家電。 (2)e-home數(shù)字家園(清華同方),該智能家居控制系統(tǒng)是專門針對中國家庭設(shè)計(jì)的,遵循國際技術(shù)標(biāo)準(zhǔn),采用嵌入式軟、硬件技術(shù),提供網(wǎng)絡(luò)、網(wǎng)絡(luò)節(jié)點(diǎn)及末端設(shè)備。產(chǎn)品以功能模塊開發(fā)為主,基于國外成熟的智能家居標(biāo)準(zhǔn)之上。其智能家居控制系統(tǒng)主要有以下三個部分: A系列:遵循EIB協(xié)議的家庭控制產(chǎn)品,適用于中高檔住宅區(qū)。 B系列:遵循X-10協(xié)議的家庭控制產(chǎn)品,適用于中檔住宅區(qū)。 易家三代:配電箱集中安裝式家庭控制產(chǎn)品。 國內(nèi)各大軟、硬件機(jī)構(gòu)正在積極的研制、開發(fā)更為符合市場的智能化家居設(shè)備,以解決當(dāng)前智能化產(chǎn)品實(shí)用性差、使用復(fù)雜及產(chǎn)品價(jià)格昂貴等缺點(diǎn),而技術(shù)創(chuàng)新性也逐步向國際先進(jìn)水平靠攏,這樣的未來值得期待。 4、存在的不足或有待深入研究解決的問題; 不足之處:由于我國的智能家居相對于國外起步較晚, 還缺乏統(tǒng)一明確的國際標(biāo)準(zhǔn),許多公司開發(fā)出的產(chǎn)品都是基于自己組的網(wǎng)絡(luò)和信息交換協(xié)議,很多產(chǎn)品是針對特定的組網(wǎng)環(huán)境開發(fā)的,部分核心技術(shù)沒有對外公布,技術(shù)復(fù)雜,直接導(dǎo)致了使用范圍的局限性。再者,缺乏對應(yīng)的第三方產(chǎn)品,各個接入設(shè)備之間不能兼容,互操作性差,不利于產(chǎn)品的擴(kuò)充,因而進(jìn)一步局限了產(chǎn)品的發(fā)展。再加上,有的系統(tǒng)成本過高,嚴(yán)重影響了產(chǎn)品的普及。因此設(shè)計(jì)一個符合國家國情和規(guī)范的集遠(yuǎn)程控制和本地控制為一體的智能家居控制系統(tǒng)是非常具有現(xiàn)實(shí)意義的,且勢在必行。 主要問題:根據(jù)前面提到的一些調(diào)查結(jié)果及數(shù)據(jù)可以看出,雖然目前智能家居系統(tǒng)有了一定的發(fā)展,并且市場上也開始出現(xiàn)相應(yīng)的產(chǎn)品,但從總體的發(fā)展來看,不容樂觀,特別是統(tǒng)一標(biāo)準(zhǔn)和權(quán)威產(chǎn)品的缺乏嚴(yán)重影響了家居智能化的發(fā)展。隨著科技的提高,經(jīng)濟(jì)的發(fā)展,人們的物質(zhì)生活水平的提高,對家居環(huán)境的要求也越來越高,作為家居智能化的核心部分智能家居控制系統(tǒng)也越發(fā)顯得重要。家居智能化控制的開發(fā)和建設(shè)是未來國家、經(jīng)濟(jì)發(fā)展的必然趨勢。 智能家居控制器可以為系統(tǒng)提供智能控制方案,使住戶的控制更便捷,更高效,更能為家庭的日?;顒庸?jié)約不必要的能耗。而且在現(xiàn)在這個注重綠色環(huán)保的世界里,智能的為住戶控制好空氣的濕度、溫度等,檢查分析空氣成分,讓住戶安心入住。同時,智能家居控制器可以根據(jù)住戶的要求調(diào)整方案,加強(qiáng)緊急處理,危機(jī)救護(hù)等急救控制,充分達(dá)到只要是“用戶想要的,就是我們追求的”宗旨。經(jīng)過2013年的哥本哈根會議,我國更加明確了節(jié)能減排,綠色建筑的目標(biāo),這就使住宅智能化凸顯出了其合理規(guī)劃,最大限度的節(jié)約能源的優(yōu)勢。如果我國大力推廣綠色建筑,僅在鋪設(shè)智能化系統(tǒng)上所需的新設(shè)備的生產(chǎn)上就有2000億到3000億人民幣的新市場。而中國“智能家居網(wǎng)絡(luò)”必在“智能化住宅”的框架下形成一個新型IT產(chǎn)業(yè),而這一切必將對未來幾十年我國房地產(chǎn)的健康有效發(fā)展起著深遠(yuǎn)的影響。 作為智能家居的核心系統(tǒng)的智能家居的控制系統(tǒng),它的設(shè)計(jì)功能的完善必將推動住宅智能化的發(fā)展。而系統(tǒng)功能的集成化、用戶使用的傻瓜化以及市場的平民化將是智能家居控制器的發(fā)展趨勢,系統(tǒng)也將逐步邁向綠色化。最終,我想全人類的夢想是智能家居控制系統(tǒng)將囊括所有的家事雜物,讓我們真正的享受舒適溫馨的家庭生活。4、 實(shí)訓(xùn)內(nèi)容#include <stdio.h>#include <string.h>#include "lpc11xx.h"#include "clkconfig.h"#include "gpio.h"#include "uart.h"#include "timer32.h"#include "ssp.h"#include "i2c.h"#include "wdt.h"#include "adc.h"#include "rom_drivers.h"#include "seg7led.h"#include "oled2864.h" #include "light.h"#include "acc.h"#include "key.h"#include "rfid.h"#include "tools.h"#include "spi_uart.h"#include "temp_hum.h"#include "collect_data.h"#include "led_spk_fan.h"#include "menu.h"extern void LED_Test(void);extern void Speaker_Test(void);extern void Fan_Test(void);extern void ADC_Test(void);extern void CAN_Test_ROM(void);extern void CAN_Test(void);#define ID_NUM 2#define ntype 1#define itype 2#define rtype 4#define transhead 0xaa#define LED_ON 0 #define LED_OFF 1#define FAN_ON 2#define FAN_OFF 3#define LED7_ON 4#define LED7_OFF 5#define SPEAKER_ON 6#define SPEAKER_OFF 7#define ANSWER 8 volatile uint32_t counter1 = 0;volatile uint32_t counter2 = 0;static const unsigned char aucCRCHi = 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40;static const unsigned char aucCRCLo = 0x00, 0xC0, 0xC1, 0x01, 0xC3, 0x03, 0x02, 0xC2, 0xC6, 0x06, 0x07, 0xC7,0x05, 0xC5, 0xC4, 0x04, 0xCC, 0x0C, 0x0D, 0xCD, 0x0F, 0xCF, 0xCE, 0x0E, 0x0A, 0xCA, 0xCB, 0x0B, 0xC9, 0x09, 0x08, 0xC8, 0xD8, 0x18, 0x19, 0xD9, 0x1B, 0xDB, 0xDA, 0x1A, 0x1E, 0xDE, 0xDF, 0x1F, 0xDD, 0x1D, 0x1C, 0xDC, 0x14, 0xD4, 0xD5, 0x15, 0xD7, 0x17, 0x16, 0xD6, 0xD2, 0x12, 0x13, 0xD3, 0x11, 0xD1, 0xD0, 0x10, 0xF0, 0x30, 0x31, 0xF1, 0x33, 0xF3, 0xF2, 0x32, 0x36, 0xF6, 0xF7, 0x37, 0xF5, 0x35, 0x34, 0xF4, 0x3C, 0xFC, 0xFD, 0x3D, 0xFF, 0x3F, 0x3E, 0xFE, 0xFA, 0x3A, 0x3B, 0xFB, 0x39, 0xF9, 0xF8, 0x38, 0x28, 0xE8, 0xE9, 0x29, 0xEB, 0x2B, 0x2A, 0xEA, 0xEE, 0x2E, 0x2F, 0xEF, 0x2D, 0xED, 0xEC, 0x2C, 0xE4, 0x24, 0x25, 0xE5, 0x27, 0xE7, 0xE6, 0x26, 0x22, 0xE2, 0xE3, 0x23, 0xE1, 0x21, 0x20, 0xE0, 0xA0, 0x60, 0x61, 0xA1, 0x63, 0xA3, 0xA2, 0x62, 0x66, 0xA6, 0xA7, 0x67, 0xA5, 0x65, 0x64, 0xA4, 0x6C, 0xAC, 0xAD, 0x6D, 0xAF, 0x6F, 0x6E, 0xAE, 0xAA, 0x6A, 0x6B, 0xAB, 0x69, 0xA9, 0xA8, 0x68, 0x78, 0xB8, 0xB9, 0x79, 0xBB, 0x7B, 0x7A, 0xBA, 0xBE, 0x7E, 0x7F, 0xBF, 0x7D, 0xBD, 0xBC, 0x7C, 0xB4, 0x74, 0x75, 0xB5, 0x77, 0xB7, 0xB6, 0x76, 0x72, 0xB2, 0xB3, 0x73, 0xB1, 0x71, 0x70, 0xB0, 0x50, 0x90, 0x91, 0x51, 0x93, 0x53, 0x52, 0x92, 0x96, 0x56, 0x57, 0x97, 0x55, 0x95, 0x94, 0x54, 0x9C, 0x5C, 0x5D, 0x9D, 0x5F, 0x9F, 0x9E, 0x5E, 0x5A, 0x9A, 0x9B, 0x5B, 0x99, 0x59, 0x58, 0x98, 0x88, 0x48, 0x49, 0x89, 0x4B, 0x8B, 0x8A, 0x4A, 0x4E, 0x8E, 0x8F, 0x4F, 0x8D, 0x4D, 0x4C, 0x8C, 0x44, 0x84, 0x85, 0x45, 0x87, 0x47, 0x46, 0x86, 0x82, 0x42, 0x43, 0x83, 0x41, 0x81, 0x80, 0x40;typedef struct /數(shù)據(jù)封裝uint8_t head; /數(shù)據(jù)頭 uint8_t dev_no; /房間號uint8_t type; /數(shù)據(jù)類型uint8_t len; /數(shù)據(jù)長度uint8_t ndata; uint8_t temp2; uint8_t hum2; uint8_t light2; uint8_t adc2; uint8_t acc3; uint8_t rfid4; uint_least16_t check; transdata; int32_txoff = 0; /初始化三軸信息 int32_tyoff = 0; int32_tzoff = 0; int8_tx = 0; int8_ty = 0; int8_tz = 0; /初始化三軸信息void SysTick_Handler(void)/線程 static uint32_tTick=0; static uint8_tcnt=0; Tick +; if(Tick = 500) cnt +;cnt &= 0x1f; else if(Tick >= 1000) counter1+;counter2+;Tick = 0; void collect_data(uint8_t *temp,uint8_t *hum,uint8_t *light)/顯示溫濕度和亮度函數(shù) uint8_t i; char buf16; uint32_tlight_data; i = Read_Temp_Hum(temp, hum);/采集溫濕度 I2CInit(I2CMASTER, 0); /初始化亮度函數(shù) light_init(); light_enable(); light_setRange(LIGHT_RANGE_4000); /初始化亮度函數(shù) light_data = light_read(); /采集亮度 light0 = (light_data >> 8); /左移八位,使光亮度值在整數(shù)位上 light1 = (light_data & 0xff); if(i != 0) OLED_ClearScreen(); /清屏 snprintf(buf, 16, "Temp: %d.%d ", temp0, temp1); OLED_DisStrLine(1, 0, (uint8_t *)buf); /顯示溫度 snprintf(buf, 16, "Hum: %d.%d ", hum0, hum1); OLED_DisStrLine(2, 0, (uint8_t *)buf); /顯示濕度 snprintf(buf, 20, "Light: %d ", light_data); OLED_DisStrLine(3, 0, (uint8_t *)buf); /顯示亮度if(temp0>30) /判斷溫度高位是否超過閥值GPIOSetValue(PORT3, 0, 0);/Turn on led1 speaker_op(1);/Turn on speaker GPIOSetValue(PORT0, 2, 0);/ Turn on Fanif(temp0<30) GPIOSetValue(PORT0, 2, 1);/ Turn off Fan GPIOSetValue(PORT3, 0, 1);/Turn off led1speaker_op(0);/Turn off speakerif(light_data < 100) /判斷是否需要開燈 GPIOSetValue(PORT3, 1, 0); /turn on led2else GPIOSetValue(PORT3, 1, 1); /turn off led2 void adc_set(uint8_t *adc) /顯示電壓信息函數(shù) char buf16; uint32_tadv; floatvol; ADCInit(ADC_CLK);/初始化電壓函數(shù) adv = ADCRead(0); /獲得電壓信息 vol = adv*3.3/1023; /轉(zhuǎn)化電壓信息 adv = vol*10; snprintf(buf, 21, "ADC: %d.%dV ", adv/10, adv%10); adc0 = adv/10; adc1 = adv%10; OLED_DisStrLine(4, 0, (uint8_t *)buf); /顯示電壓信息void acc_set_init(void)/初始化三軸函數(shù) I2CInit(I2CMASTER, 0); acc_init(); acc_read(&x, &y, &z); xoff = 0-x; yoff = 0-y; zoff = 0-z;void acc_set(uint8_t *abc)/顯示三軸信息函數(shù) charbuf16; acc_read(&x, &y, &z);/獲得三軸信息 x = x+xoff;/轉(zhuǎn)化三軸信息 y = y+yoff; z = z+zoff;/轉(zhuǎn)化三軸信息 abc0 = x; abc1 = y; abc2 = z; snprintf(buf, 20, "Acc x: %d ", x); OLED_DisStrLine(5, 0, (uint8_t *)buf);/ 顯示X軸信息 snprintf(buf, 20, "Acc y: %d ", y); OLED_DisStrLine(6, 0, (uint8_t *)buf); / 顯示Y軸信息 snprintf(buf, 20, "Acc z: %d ", z); OLED_DisStrLine(7,0,(uint8_t*)buf); / 顯示Z軸信息 if(x > 30 | x < -30 | y > 30 | y < -30 | z > 30 | z < -30) /判斷是否超過設(shè)定的閥值speaker_op(1); /turn on spear GPIOSetValue(PORT3, 0, 0);/Turn on led1elsespeaker_op(0);/Turn off speaker GPIOSetValue(PORT3, 0, 1);/Turn off led1 void send_data(uint8_t *data, uint8_t len)/發(fā)送信息函數(shù) uint8_t i = 0,buf16; for(i = 0;i<len;i+) ZigBee_PutChar(datai); /利用zigbee發(fā)送數(shù)據(jù)void send_zigbee(uint8_t *data)ZigBee_PutString(data);return;uint_least16_t usMBCRC16( uint8_t * pucFrame,uint8_t usLen )/CRC檢驗(yàn)函數(shù) uint8_t ucCRCHi = 0x0; uint8_t ucCRCLo = 0x0; int iIndex; while( usLen- ) iIndex = ucCRCLo *( pucFrame+ ); ucCRCLo = (uint8_t)( ucCRCHi aucCRCHiiIndex ); ucCRCHi = aucCRCLoiIndex; return (uint_least16_t)( ucCRCHi << 8 | ucCRCLo );void data_pakget_trans(transdata data)/發(fā)送M0板信息的中間函數(shù) uint8_t buf64 = 0; buf0 = data.head; buf1 = data.dev_no; if(data.type = itype) buf2 = data.type; buf3 = 11; buf4 = data.temp0; buf5 = data.temp1;buf6 = data.hum0;buf7 = data.hum1; buf8 = data.light0; buf9 = data.light1;buf10 = data.adc0; buf11 = data.adc1;buf12 = data.acc0; buf13 = data.acc1; buf14 = data.acc2; data.check = usMBCRC16(buf,15);/根據(jù)發(fā)送數(shù)據(jù)設(shè)置CRC檢驗(yàn)位 buf15 = data.check >> 8; buf16 = data.check & 0xff; send_data(buf,17); /發(fā)送信息和CRC檢驗(yàn)位 if(data.type = rtype) buf2 = data.type;buf3 = 4;buf4 = data.rfid0;buf5 = data.rfid1;buf6 = data.rfid2;buf7 = data.rfid3;data.check = usMBCRC16(buf,8); /根據(jù)發(fā)送數(shù)據(jù)設(shè)置CRC檢驗(yàn)位buf8 = data.check >> 8;buf9 = data.check & 0xff;send_data(buf,10);/發(fā)送信息和CRC檢驗(yàn)位 if(data.type = ntype) buf2 = data.type; buf3 = 1; buf4 = data.ndata; data.check = usMBCRC16(buf,5);/根據(jù)發(fā)送數(shù)據(jù)設(shè)置CRC檢驗(yàn)位 buf5 = data.check >> 8; buf6 = data.check & 0xff; send_data(buf,7); /發(fā)送信息和CRC檢驗(yàn)位 Led7_On(void)/數(shù)碼管顯示函數(shù) uint32_t i = 0; while(i < 10)Seg7Led_Put(i);i+;delay_ms(1000); int main(void)uint8_trd32 = 0;uint8_t *p;volatile uint8_t i = 0; uint8_t k;transdata data;uint_least16_t ccheck;uint32_tkey;p = rd; SystemInit(); /初始化M0設(shè)備 GPIOInit();/ Enables clock for GPIO CLKOUT_Setup(CLKOUTCLK_SRC_MAIN_CLK);/set clock source :main clock LPC_IOCON->PIO0_1 &= 0x07; LPC_IOCON->PIO0_1 |= 0x01;/* CLK OUT */ GPIOSetDir(PORT3, 0, 1);/ Set PIO3_0 to output GPIOSetValue(PORT3, 0, 1);/ PIO3_0 output 1, close LED1 GPIOSetDir(PORT3, 1, 1);/ Set PIO3_1 to outputGPIOSetValue(PORT3, 1, 1);/ PIO1_1 output 1, close LED2 GPIOSetDir(PORT0, 2, 1);/ Set PIO0_2 to output GPIOSetValue(PORT0, 2, 1);/ PIO0_2 output 1, close FAN LPC_IOCON->R_PIO1_1 &= 0x07; LPC_IOCON->R_PIO1_1 |= 0x01; GPIOSetDir(PORT1, 1, 1);/ Set PIO3_2 to outputGPIOSetValue(PORT1, 1, 1);/ PIO3_2 output 1,Speaker turn off Seg7Led_Init();/初始化數(shù)碼管 Seg7Led_Put( );/ Output SysTick_Config(48000); GPIOSetValue(PORT3, 0, 0);/ PIO3_0 output 0, Turn on LED1 GPIOSetValue(PORT3, 1, 0);/ PIO3_1 output 0, Turn on LED2 delay_ms(200); GPIOSetValue(PORT3, 0, 1);/ PIO3_0 output 1, Turn off LED1 GPIOSetValue(PORT3, 1, 1);/ PIO3_1 output 1, Turn off LED2 SPI_IOConfig(0); SPI_Init(0, 8, 2); /初始化M0板的顯示屏 OLED_Init_I(); UARTInit(115200); /初始化串口 NVIC_SetPriority(UART_IRQn, 2); printf("rnrnFS_11C14 Main Menurn"); delay_ms(250); SPI_IOConfig(1); /* 初始化zigbee發(fā)送設(shè)備 */ SPI_Init(1, 8, 2); SPI752_Init(1, 115200); /* 初始化zigbee發(fā)送設(shè)備 */ for(k =0 ; k<80 ; k+)/加延遲delay_ms(200);data.head = transhead;/數(shù)據(jù)頭 data.dev_no = ID_NUM;/設(shè)備號 data.type = ntype;/數(shù)據(jù)類型 data.ndata = 0x01;/設(shè)備已開啟的信息值 data_pakget_trans(data); /發(fā)送設(shè)備開啟函數(shù) acc_set_init(); /初始化三軸函數(shù) while(1) /GPIOSetValue(PORT0, 2, 6); /*if(k > 9) k = 0;Seg7Led_Put(k);k+;delay_ms(250);if(counter1 > 1)collect_data(data.temp,data.hum,data.light);/顯示溫濕度和亮度函數(shù)adc_set(data.adc);/顯示電池函數(shù)acc_set(data.acc); /顯示三軸函數(shù)data.type = itype;/設(shè)置發(fā)送數(shù)據(jù)類型data_pakget_trans(data); /發(fā)送數(shù)據(jù)counter1 = 0;if(ZigBee_GetChar(p) /接收上層發(fā)下來的命令 if (i < 6)/接收前5個命令符 p+; i+; else i = 0; p = rd; ccheck = usMBCRC16(p, 5);/將前5個命令符進(jìn)行CRC檢驗(yàn) ,獲得檢驗(yàn)位if (ccheck & 0xff) = p6) && (ccheck >> 8) = p5 ) if (p1 - 0 = ID_NUM) /如果設(shè)備號一致則執(zhí)行命令switch (p4) /如果有設(shè)備已開啟信息case LED_ON: GPIOSetValue(PORT3, 1, 0); /開led2break;case LED_OFF: GPIOSetValue(PORT3, 1, 1); /關(guān)led2break;case FAN_ON:GPIOSetValue(PORT0, 2, 0); /開風(fēng)扇break;case FAN_OFF:GPIOSetValue(PORT0, 2, 1); /關(guān)風(fēng)扇break;case LED7_ON:Led7_On();/數(shù)碼管倒計(jì)時break;case LED7_OFF:Seg7Led_Put( );/關(guān)數(shù)碼管break;case SPEAKER_ON: speaker_op(1); /開報(bào)警器break;case SPEAKER_OFF: speaker_op(0);/關(guān)報(bào)警器break;case ANSWER:GPIOSetValue(PORT0, 2, 6); /風(fēng)扇加速break; default: printf("not write commod"); break; /判斷是否有刷卡,返回值不為0則有人刷卡if(RFID_Test(data.rfid)/*!GPIOGetValue(PORT2, 8)*/)GPIOSetValue(PORT3, 0, 0); /刷卡顯示燈led1亮data.type = rtype; delay_ms(250);data_pakget_trans(data);GPIOSetValue(PORT3, 0, 1); /刷卡顯示燈led1滅/ Go to sleep to save power between timer interrupts _WFI(); 5、 實(shí)訓(xùn)總結(jié):綜上所述,本文通過對智能家居及其功能的介紹,展示智能家居的現(xiàn)代生活中的必要性。在介紹國外智能家居發(fā)展近況及國內(nèi)發(fā)展現(xiàn)狀后,對我國智能家居發(fā)展提出有利建議。最后,預(yù)想出我國未來智能家居的發(fā)展趨勢。6、 實(shí)訓(xùn)成績:

注意事項(xiàng)

本文(實(shí)訓(xùn)報(bào)告-智能家居實(shí)訓(xùn)報(bào)告模板.doc)為本站會員(jian****018)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!