基于PSTN 的城市電梯安全呼叫系統設計
管理主機軟件部分選用uC/OS-II 操作系統,將其移植到LPC2114 處理器上,移植過(guò)程在此不作討論。主程序流程框圖如圖3-2 所示。
圖 3-2 管理主機主程序流程圖
根據功能要求,劃分系統任務(wù)為:液晶顯示任務(wù)、按鍵檢測任務(wù)、設置/查詢(xún)任務(wù)、信號音檢測任務(wù)、號碼分析任務(wù)、系統自檢任務(wù)及通話(huà)任務(wù)等七個(gè)任務(wù)。 1) 液晶顯示任務(wù)
每隔1 秒從時(shí)鐘芯片DS1302 讀取當前時(shí)鐘,根據當前狀態(tài)指示液晶顯示不同內容,待機狀態(tài)下顯示系統日期和時(shí)鐘,通話(huà)狀態(tài)下顯示通話(huà)時(shí)間。 2) 按鍵檢測任務(wù)
鍵盤(pán)掃描任務(wù)不斷掃描按鍵,如果檢測到按鍵,記錄鍵值并延時(shí)20 毫秒,20 毫秒后仍有按鍵并且鍵值與之前相同時(shí)判斷為有效按鍵,通過(guò)調用OSMboxPost(KeyMbox,0,err)函數將有效鍵值發(fā)送到鍵值消息郵箱KeyMbox,由其他任務(wù)取用。 3) 設置/查詢(xún)任務(wù)
當按下SET 鍵時(shí),產(chǎn)生外部中斷EINT1,其中斷服務(wù)程序喚醒設置/查詢(xún)任務(wù)。根據系統輸入的號碼,可分別進(jìn)入系統時(shí)鐘設置、遠程呼叫中心專(zhuān)線(xiàn)電話(huà)設置、自動(dòng)轉外線(xiàn)延時(shí)時(shí)間設置、系統自動(dòng)監測范圍設置。
進(jìn)入預置狀態(tài)后,設置/查詢(xún)任務(wù)調用OSMboxPend(KeyMbox,20, err),等待按鍵, 根據輸入的首位按鍵,進(jìn)入相應設置功能的子程序。如按下“8”鍵,進(jìn)入設置轉外線(xiàn)呼叫延時(shí)子程序;按“9” 鍵進(jìn)入設置遠程監控中心號碼子程序;按“0” 鍵進(jìn)入設置系統時(shí)間子程序;按“1” 鍵進(jìn)入設置自檢范圍子程序;按“上翻/下翻”鍵進(jìn)入查詢(xún)通話(huà)記錄子程序;按“查詢(xún)”鍵進(jìn)入查詢(xún)未接電話(huà)子程序;長(cháng)按“查詢(xún)”鍵3 秒進(jìn)入自檢結果查詢(xún)子程序。 4) 信號音檢測任務(wù)
當有公共電話(huà)網(wǎng)外線(xiàn)呼入或內部網(wǎng)絡(luò )轉撥遠程監控中心時(shí),通話(huà)任務(wù)喚醒信號音檢測任務(wù)。任務(wù)通過(guò)采集LM567 芯片的輸出引腳,并根據信號音的信號標準判斷是否忙音及回鈴音,以事件標志的形式反饋給通話(huà)任務(wù),使其進(jìn)行自動(dòng)掛機處理及記錄通話(huà)時(shí)間。 5) 號碼分析任務(wù)
當有電梯分機呼叫時(shí),管理主機的MT8870 芯片接收DTMF 信號,并產(chǎn)生EINT3 外部中斷。根據內部通信約定,一幀數據包括起始碼、分機號、校驗碼及結束碼。在EINT3 的中斷服務(wù)程序中,將收到的數據存入數組,如果收到結束碼就表示一幀數據接收完畢,通過(guò)OSMboxPost()函數將數組首地址發(fā)送到已創(chuàng )建好的InCallMbox 消息郵箱,并且喚醒號碼分析任務(wù)。
在號碼分析任務(wù)中,通過(guò)調用OSMboxPend(InC allMbox,0,err)來(lái)取得先前中斷中存入的數組數據,對號碼進(jìn)行檢查并校驗,如號碼正確則發(fā)送給通話(huà)任務(wù),最后掛起自身任務(wù)。6) 通話(huà)任務(wù)
當用戶(hù)摘機或有公網(wǎng)外線(xiàn)呼入時(shí)會(huì )產(chǎn)生摘機中斷和振鈴中斷,在各自的中斷服務(wù)程序中調用OSFlagPost()函數以事件標志的形式通知通話(huà)任務(wù)。
在通話(huà)任務(wù)中,任務(wù)不斷查詢(xún)當前的事件標志,根據有無(wú)摘機、是否有振鈴、有無(wú)內部呼叫等,來(lái)判斷主機當前的狀態(tài),進(jìn)入相應處理子程序。如收到內線(xiàn)呼叫碼并且通過(guò)號碼分析任務(wù)檢驗,則表示有內線(xiàn)呼叫請求,進(jìn)入內線(xiàn)呼叫本機處理程序;如有振鈴中斷,表示有外線(xiàn)呼入請求,進(jìn)入外線(xiàn)呼叫本機處理程序;如果本機未通話(huà)且處于摘機狀態(tài),則進(jìn)入本地呼叫內外線(xiàn)處理程序。這里給出了內線(xiàn)呼叫主機處理程序的流程圖,如圖3-3 所示。
評論