在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統 > 設計應用 > 基于AT89S52單片機的家電控制系統設計

            基于AT89S52單片機的家電控制系統設計

            作者: 時間:2010-03-24 來源:網絡 收藏

            2 軟件
            2.1 即時開關與狀態(tài)返回
            即時開關與狀態(tài)返回都是在初始時按KEYl鍵進入操作的,完成此功能,需要調用鍵盤讀取子程序、燈泡開關子程序、數碼管顯示子程序、延時予程序等組合。其中鍵盤讀入子程序是整個軟件的基礎,在鍵盤沒有按鍵按下時,KEYl、KEY2、KEY3始終保持高電平,此時KEY值為0X38。而當某一個鍵被按下時,則該鍵位出現低電平。此時的KEY值必然出現變化,這樣,將該值與0X38相與,然后根據得出的新值,就可以判斷哪一個鍵被按下。
            軟件通常首先運行讀取鍵盤程序,當數碼管顯示哪一路被選中后,再次讀取鍵盤,以顯示該路電器的工作狀態(tài),并根據外部輸入決定開關操作。由于需要同時完成兩個功能,所以,在程序中。設定KEY2和KEY3對電器進行操作,而KEY1用來在狀態(tài)返回功能完成以后,指示該功能的結束,并開始即時開關功能。具體來說,就是先檢測哪個電器對應的按鍵被按下,然后調用顯示子程序在數碼管中顯示被選中的電器編號。狀態(tài)返回部分是檢測特定電器對應的管腳輸出為低電平還是高電平,若輸出為低電平,則調用顯示0的數碼顯示子程序,反之則調用顯示1的數碼顯示子程序。即時開關則可在按下電器對應的按鍵以后,將該電器(這里就是小燈泡)連接的Pl的某個端口進行取反操作,即工作狀態(tài)反向。
            2.2 時間顯示
            在確定KEY2按鍵被按下以后,程序將自動調用數碼顯示,并循環(huán)調用周期為1s的中斷程序,如果需要設定時間,則可通過外部輸入調用時間設定子程序來對時間進行調整。通過外部按鍵可改變秒、分鐘、小時所對應的變量的值,并將其帶入數碼顯示程序,在數碼管中顯示。在數碼顯示部分,應先確定段選和位選位,由于有秒、分鐘、小時三個部分,故需要連續(xù)6個顯示管,所以,在程序中要設定從第一個開始的6次循環(huán),每次分別將選中的數碼管的序號送到位選端,并將秒、分鐘、小時所對應的變量的值作為實參送到段選端,從而使數碼管依次顯示對應的時間信息。
            2. 3 定時開關
            通過定時開關可在初始時按KEY3鍵進入操作。該功能是整個的核心和難點,綜合運用到了之前幾種功能的思想。這里也有一個定時中斷子程序,但與之前以ls為基準、一分鐘循環(huán)60次的固定模式不同的是,這是在事先不清楚用戶的定時時間的情況下進行的,所以是以1分鐘為基數,即定時時間間隔必須為1分鐘的整數倍,但循環(huán)次數卻是一個全局變量。這個全局變量的值可通過用戶按鍵來實現。根據程序設定,若按下KEYl,則表示將該全局變量的值加60,若按下KEY2,則表示將該全局變量的值加1,即KEYl代表1小時,KEY2代表1分鐘。此后若再按下KEY3,則表示設定結束,此時全局變量的值表示進行1分鐘的定時的次數,在定時結束時,將該電器(這里就是小燈泡)連接的P1的某個端口進行取反操作,即可完成開關。這一功能的子程序流程圖如圖1所示。



            評論


            相關推薦

            技術專區(qū)

            關閉