無(wú)需PC機控制的離線(xiàn)電話(huà)自動(dòng)通知系統設計

圖3 DTMF信號生成與呼叫及狀態(tài)檢測電路
撥號完成后,MCU設置MT8888工作在呼叫監聽(tīng)模式,進(jìn)行呼叫狀態(tài)監聽(tīng)。MT8888通過(guò)2引腳檢測電話(huà)線(xiàn)上傳輸信號,MCU通過(guò)讀取 MT8888的IRQ/CP引腳輸出的脈沖頻率和脈沖個(gè)數即可分析出呼叫狀態(tài)。若線(xiàn)路上傳輸的是450 Hz的音頻信號,而且是持續1 s后4 s無(wú)的循環(huán)信號,則為回鈴音信號,即處于振鈴狀態(tài);如果線(xiàn)路上傳輸的是450 Hz的音頻信號,而且0.35 s通0.35 s斷的循環(huán)信號,則為忙音信號,即處于線(xiàn)路忙或掛機狀態(tài)。
在語(yǔ)音播報過(guò)程中,系統同樣使用另一塊MT8888芯片構成的DTMF檢測電路,檢測當前電話(huà)接聽(tīng)者的按鍵動(dòng)作,以判斷其是否按下確認按鍵。系統根據按鍵狀態(tài)保存本次通話(huà)或通知的狀態(tài)。
4 上位機控制軟件設計
上位機控制軟件中主要包括:電子名片管理模塊,可以完成聯(lián)系人基本信息和電話(huà)號碼的管理(包括增刪改查等功能);名片分組管理模塊;電話(huà)通知信息管理模塊,具有通知語(yǔ)音的錄制、被通知對象(即電話(huà)號碼)的選取以及將數據下載到離線(xiàn)通知裝置等功能;通知信息查詢(xún)模塊,可以完成通知狀態(tài)的查詢(xún)和補通知控制,也可以對當前或歷史通知內容和狀態(tài)進(jìn)行查詢(xún)。
電話(huà)通知信息和通知指令來(lái)自上位機控制軟件.上位機在將預通知的電話(huà)號碼和語(yǔ)音數據打成通知命令數據包后,通過(guò)串口發(fā)送給下位機,使下位機啟動(dòng)脫離計算機管理的離線(xiàn)自動(dòng)通知過(guò)程。另外,上位機還可以發(fā)送獲取通知狀態(tài)命令包,由串口通信中斷服務(wù)程序完成當前通知狀態(tài)的上傳任務(wù)。
圖4為離線(xiàn)電話(huà)自動(dòng)通知裝置的處理流程。離線(xiàn)自動(dòng)通知裝置上電運行,進(jìn)行必要的初始化后,通過(guò)通知狀態(tài)標志來(lái)判斷是否啟動(dòng)自動(dòng)通知過(guò)程。通知標志由中斷服務(wù)程序根據接收到的命令包設置,如果為“真”則裝置轉入通知過(guò)程執行,否則繼續查詢(xún)狀態(tài)標志。在進(jìn)入通知過(guò)程后,首先讀取預通知的第一個(gè)電話(huà)號碼,再進(jìn)行模擬摘機準備撥號。為了可靠地實(shí)現模擬摘機,要求在摘機前后都要先判斷摘機狀態(tài),只有在掛機狀態(tài)下才能摘機,摘機有效后才能撥號。MCU控制撥號完畢后,從閃存中讀取語(yǔ)音數據以8000 Hz的頻率發(fā)送給D/A轉換器,進(jìn)行播放通知語(yǔ)音。在播放通知語(yǔ)音的過(guò)程中,通過(guò)DTMF信號檢測模塊監測線(xiàn)路上的DTMF信號,以判斷接聽(tīng)通知者是否按下確認鍵進(jìn)行接聽(tīng)確認。如確認,系統將保存通知狀態(tài),否則通知一個(gè)循環(huán)后進(jìn)行重復通知。當一個(gè)電話(huà)通知完畢后,系統繼續讀取下一個(gè)預通知電話(huà)號碼,進(jìn)行下一個(gè)電話(huà)的通知,直到所有通知被確認或超出重復通知次數為止。
結語(yǔ)
本文根據電話(huà)通知系統的特點(diǎn),設計了無(wú)需PC機實(shí)時(shí)控制的電話(huà)自動(dòng)通知系統。系統中的PC機只是起到一個(gè)信息管理作用,具體的電話(huà)通知由離線(xiàn)電話(huà)自動(dòng)通知裝置自動(dòng)完成,其工作 77不需要PC機的實(shí)時(shí)管理或控制,是一個(gè)離線(xiàn)通知裝置, 可以實(shí)現在下班且PC機關(guān)機的狀態(tài)下進(jìn)行電話(huà)通知,能夠提高電話(huà)的使用效率和節省能源消耗。

圖4 離線(xiàn)電話(huà)自動(dòng)通知處理流程
評論