新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于PSTN 的城市電梯安全呼叫系統設計

        基于PSTN 的城市電梯安全呼叫系統設計

        作者: 時間:2009-06-17 來源:網絡 收藏

        3.2 管理主機

        管理主機部分選用 操作,將其移植到LPC2114 處理器上,移植過程在此不作討論。主程序流程框圖如圖3-2 所示。

        圖 3-2 管理主機主程序流程圖

        根據功能要求,劃分任務為:液晶顯示任務、按鍵檢測任務、設置/查詢任務、信號音檢測任務、號碼分析任務、自檢任務及通話任務等七個任務。 1) 液晶顯示任務

        每隔1 秒從時鐘芯片DS1302 讀取當前時鐘,根據當前狀態指示液晶顯示不同內容,待機狀態下顯示系統日期和時鐘,通話狀態下顯示通話時間。 2) 按鍵檢測任務

        鍵盤掃描任務不斷掃描按鍵,如果檢測到按鍵,記錄鍵值并延時20 毫秒,20 毫秒后仍有按鍵并且鍵值與之前相同時判斷為有效按鍵,通過調用OSMboxPost(KeyMbox,0,err)函數將有效鍵值發送到鍵值消息郵箱KeyMbox,由其他任務取用。 3) 設置/查詢任務

        當按下SET 鍵時,產生外部中斷EINT1,其中斷服務程序喚醒設置/查詢任務。根據系統輸入的號碼,可分別進入系統時鐘設置、遠程中心專線電話設置、自動轉外線延時時間設置、系統自動監測范圍設置。

        進入預置狀態后,設置/查詢任務調用OSMboxPend(KeyMbox,20, err),等待按鍵, 根據輸入的首位按鍵,進入相應設置功能的子程序。如按下“8”鍵,進入設置轉外線延時子程序;按“9” 鍵進入設置遠程監控中心號碼子程序;按“0” 鍵進入設置系統時間子程序;按“1” 鍵進入設置自檢范圍子程序;按“上翻/下翻”鍵進入查詢通話記錄子程序;按“查詢”鍵進入查詢未接電話子程序;長按“查詢”鍵3 秒進入自檢結果查詢子程序。 4) 信號音檢測任務

        當有外線呼入或內部網絡轉撥遠程監控中心時,通話任務喚醒信號音檢測任務。任務通過采集LM567 芯片的輸出引腳,并根據信號音的信號標準判斷是否忙音及回鈴音,以事件標志的形式反饋給通話任務,使其進行自動掛機處理及記錄通話時間。 5) 號碼分析任務

        當有分機時,管理主機的MT8870 芯片接收DTMF 信號,并產生EINT3 外部中斷。根據內部通信約定,一幀數據包括起始碼、分機號、校驗碼及結束碼。在EINT3 的中斷服務程序中,將收到的數據存入數組,如果收到結束碼就表示一幀數據接收完畢,通過OSMboxPost()函數將數組首地址發送到已創建好的InCallMbox 消息郵箱,并且喚醒號碼分析任務。

        在號碼分析任務中,通過調用OSMboxPend(InC allMbox,0,err)來取得先前中斷中存入的數組數據,對號碼進行檢查并校驗,如號碼正確則發送給通話任務,最后掛起自身任務。6) 通話任務

        當用戶摘機或有公網外線呼入時會產生摘機中斷和振鈴中斷,在各自的中斷服務程序中調用OSFlagPost()函數以事件標志的形式通知通話任務。

        在通話任務中,任務不斷查詢當前的事件標志,根據有無摘機、是否有振鈴、有無內部呼叫等,來判斷主機當前的狀態,進入相應處理子程序。如收到內線呼叫碼并且通過號碼分析任務檢驗,則表示有內線呼叫請求,進入內線呼叫本機處理程序;如有振鈴中斷,表示有外線呼入請求,進入外線呼叫本機處理程序;如果本機未通話且處于摘機狀態,則進入本地呼叫內外線處理程序。這里給出了內線呼叫主機處理程序的流程圖,如圖3-3 所示。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 中方县| 临漳县| 林芝县| 时尚| 玉屏| 永川市| 武安市| 浦城县| 甘泉县| 道真| 宝清县| 垫江县| 阳西县| 旬邑县| 澄城县| 大竹县| 金塔县| 高碑店市| 东阳市| 明溪县| 竹山县| 南昌市| 河北区| 遵义县| 高州市| 鸡东县| 宜川县| 旺苍县| 天台县| 贵定县| 张家口市| 定西市| 青冈县| 紫金县| 灵寿县| 绩溪县| 六枝特区| 东乡族自治县| 孝义市| 朝阳区| 隆尧县|