<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 單片機在家電控制系統中的應用

單片機在家電控制系統中的應用

作者: 時(shí)間:2009-08-04 來(lái)源:網(wǎng)絡(luò ) 收藏

111110 C0hOFF

SPEED

MODE

TIMER


SWING

COOL 1-關(guān)機 0-開(kāi)機

11-低 10-中 01-高

11-正常 10-自然 01-睡眠

1111-無(wú) 1110-0.5小時(shí)…

0000-7.5小時(shí)

1-無(wú) 0-導風(fēng)

1-無(wú) 0-冷風(fēng) LED的掃描端口是確定的六個(gè)值,控制端口的數據由輸入狀態(tài)變量來(lái)決定。 當系統處于開(kāi)機狀態(tài)下,掃描端口是011111時(shí),表示選中(圖2)LED矩陣的第一行,此時(shí)系統控制第一行兩個(gè)燈的亮滅。首先來(lái)看看這兩個(gè)燈各代表什么意思,第一個(gè)表示‘導風(fēng)’連接到PA0端口,第二個(gè)表示‘冷風(fēng)’連接到PA1端口。 從狀態(tài)字的定義來(lái)看,SWING=1,無(wú)導風(fēng),則燈滅,反之SWING=0,燈亮;由于MCU的PA0端口通過(guò)反相器連接到該燈的陽(yáng)極,所以PA0=1,燈滅,PA0=0,燈亮,因此PA0的值直接等于狀態(tài)變量SWING。同理,PA1=COOL。 在其它5個(gè)不同的掃描端口賦值下,根據控制燈和狀態(tài)字的意義,可以得出如表2的結果,表中的(0)、(1)、(2)、(3)表示該狀態(tài)字的第0、1、2、3位的值。當系統處于關(guān)閉狀態(tài)時(shí),所有指示燈是滅的,因此對于6個(gè)掃描端口值,控制端口PA1-PA0恒等于11,不驅動(dòng)LED。


表2 開(kāi)機狀態(tài)下控制端口、輸入狀態(tài)字和掃描序號的關(guān)系 掃描序號 PA7-PA2 PA1 PA0 5 011111 COOL(0) SWING(0) 4 101111 SPEED(0) NOT(SPEED(0) AND SPEED(1)) 3 110111 TIMER(0) SPEED(1) 2 111011 TIMER(1) NOT(MODE(0) AND MODE(1)) 1 111101 TIMER(2) MODE(0) 0 111110 TIMER(3) MODE(1) 事實(shí)上,5個(gè)控制輸出信號也是與當前的狀態(tài)變量密切相關(guān)的,它們的賦值計算方法與PA1、PA0相同。 2.2 紅外碼流檢測 紅外碼流檢測采用查詢(xún)方式。在實(shí)時(shí)中斷服務(wù)程序中,每隔2ms檢查是否有紅外按建鍵輸入,進(jìn)行引導碼的查詢(xún)捕獲。一旦捕獲后,執行碼流檢測子程序,該子程序包括讀取碼字和判斷碼字兩步。讀取碼字是一個(gè)對紅外信號進(jìn)行數據采樣的過(guò)程,判斷碼字是一個(gè)數據匹配的過(guò)程。 2.3 軟件設計中的幾個(gè)問(wèn)題 (1)時(shí)間匹配 在主程序處理紅外碼流的檢測過(guò)程時(shí),仍然會(huì )產(chǎn)生實(shí)時(shí)中斷。如上所述,紅外碼流用采樣的辦法進(jìn)行數據的讀取,則采樣間隔的大小將直接影響到對紅外信號的正確接收。如果采樣間隔太大,得到的數據不夠精確,不足于分辨1/0比特;但是如果采樣間隔太小,小于中斷服務(wù)程序執行一次的時(shí)間,則采集的數據會(huì )變小,導致錯誤判斷。因此中斷服務(wù)程序應該寫(xiě)得盡量簡(jiǎn)短。 (2)紅外碼流檢測方式 紅外碼流的檢測可以采用外中斷方式或查詢(xún)方式,在本設計中采用查詢(xún)方式。因此該定義了外中斷的級別比實(shí)時(shí)中斷高,一旦產(chǎn)生外中斷,實(shí)時(shí)中斷請求將被忽略,不執行掃描過(guò)程,因此會(huì )產(chǎn)生部分應該點(diǎn)亮的指示燈沒(méi)有點(diǎn)亮的現象。 數據匹配是一個(gè)把采集后的數據與預設定的數值進(jìn)行比較的過(guò)程。預設定的數值可以從紅外波形理論計算得出,但是理論值與實(shí)際值總會(huì )存在一些差異,因此最好的解決辦法是預先寫(xiě)一段數據采集程序并記錄下這些數據代替理論值,作為預設定的數值進(jìn)行比較。 SST65P54R工作電壓為2.2~3.2V,功耗小,適用于。另外,本文中的軟件開(kāi)發(fā)模塊易于推廣成控制器的通用軟件模塊。


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 應用 控制系統 家電 單片機

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>