摘? 要: 一種新的有線傳呼對講系統的設計方法。該系統以單片機EM78P447SB為主控制器,通過信號發射芯片HT9200B和接收芯片MT8870等外圍器件,實現了按鍵輸入撥號進行個呼、部分呼、群呼、來電顯示以及音樂鈴聲等功能。
關鍵詞: EM78P447SB單片機? HT9200B芯片? MT8870芯片? 有線傳呼對講系統
?
對于家居空間越來越大的居民(如樓中樓、別墅等)及在一棟大樓中辦公的公司或部門,方便、廉價的通信是必不可少的,而低成本、功能較強的有線傳呼對講系統能滿足這一需求。
1?系統設計
每個傳呼對講機主要由單片機控制模塊和傳呼對講模塊二部分組成。將所有的單機用1條總線連接起來就構成了有線傳呼對講系統,其系統框圖如圖1所示。
?
?
單機加電后,將開關K1置于待機、撥號狀態,等待對方來電或本機進行撥號。
(1)若是對方來電,則對方來電信號經消側音電路,到達MT8870。MT8870將該信號解碼后,由單片機采集、識別,判斷是否呼本機。如果是,則輸出音樂鈴聲并顯示來電;如果不是,機器不再響應,仍處于接收待機狀態。在這個過程中,開關K2可以打開。
(2)若是本機撥號,還需將開關K2閉合。這時,如果總線上有信號(如通話或撥號),本機器對講部分的喇叭就會發出聲音,但需等待;如果喇叭沒有發出聲音,表明總線是空閑的,可以進行撥號。撥號過程:由鍵盤撥出要呼叫機器的號碼,并在按下每一個數字的同時輸出顯示。如果按錯了,長按*鍵(約3秒)即可消除。確認按鍵正確后,再按一下*鍵即可將已按鍵號碼和本機號碼一起發送出去,該二進制信號經HT9200B編碼成DTMF信號,再經TDA2822M放大和消側音電路加到總線上,傳輸出去。按鍵撥號發送完畢后,將K2打開,K1撥向對講狀態,等待對方回音,從而進入對講狀態。
要注意的是,由于每部機器都可設置本機惟一的號碼,也可以設置一些公用號碼,如部分的和群體的。因此,可以通過鍵盤撥號,實現個呼、部分呼、群呼等。
2?單片機控制模塊
本模塊采用EMC(臺灣義隆電子有限公司)生產的單片機EM78P447SB為主控制器來設計單片機控制模塊電路。硬件電路如圖2所示。
?
?
2.1 單片機與鍵盤、7節顯示器的接口設計
4個7節顯示器與4×3鍵盤共用掃描電路。電路的掃描原理是:在7節顯示器移位到下一個顯示的同時,去讀回鍵盤的輸入線加以判斷即可讀到該行的按鍵。P64~P67是掃描線,設計為輸出模式;P50~P53為按鍵的輸入線,設計為輸入模式。P60~P63設計為輸出模式,將掃描的按鍵號碼的BCD碼經74LS47譯碼后供7節LED顯示,而晶體管9012和1.5kΩ電阻組成的放大電路驅動每個7節LED,并且該放大電路可作為開關使用,從而控制各自的7節LED是否被點亮。此外,來電顯示也可由P60~P63輸出到7節顯示器顯示。
機器加電后,處于待機狀態。#鍵為進入撥號狀態的控制鍵,長按該鍵(約3秒),就進入撥號狀態。撥號完成后,按動*鍵,即可將已按鍵的號碼連同本機號碼發送出去。已按鍵的號碼為要呼叫的機器,發送的本機號碼是為被呼叫機器來電顯示用的。撥號過程中,如果按錯了鍵,可長按*鍵(約3秒)進行消除。撥號發送完成后,機器又進入待機狀態。
按鍵和顯示必須配合進行。這里要解決的問題較多,如機械按鍵彈跳的問題。1個按鍵1次只送出1個編碼,必須是該按鍵放開后再按下才會送出相同的編碼和掃描法編程等。以上問題,可以用軟件來解決(軟件的主要設計在參考文獻[1]有較詳細的敘述)。
2.2 單片機與HT9200B的接口設計
EM78P447SB單片機具有價格便宜、速度快等特點,本設計使用HT9200B作為發射芯片,并采用并行傳輸模式(硬件電路見圖2)。
HT9200B是專為μC接口而設計的DTMF發射芯片,廣泛用于安全系統、住宅自動化、通信系統等。它與μC有串行/并行2種接口方式。HT9200B的并行工作方式為:提供4位數據輸入引腳D0~D3以產生DTMF信號,置高電平以選擇并行工作方式,它的11引腳CLK和12引腳DATA(為串行模式設計的)不用,均設計為上拉。輸入數據代碼應先準備好,然后將
置低電平,從DTMF引腳發送DTMF信號。注意:從
的下降沿到DTMF信號輸出的延時大約6ms。
因此,單片機與HT9200B的接口設計中,用EM78P447SB單片機的P70~P73分別與HT9200B的數據輸入端D0~D3相連接;用單片機的P74引腳與HT9200B的引腳相連接,以控制HT9200B的串行/并行工作模式;用單片機的P75引腳與HT9200B的
引腳相連接,以控制HT9200B的發送控制信號,并將P70~P75設置為輸出模式。
2.3 單片機與MT8870的接口設計
MT8870是DTMF接收芯片,工作性能十分穩定。它的編碼方式與HT9200B的編碼方式完全一致。當音頻信號來到被MT8870解碼后,MT8870的第15引腳S1D會由高電平1向低電平0跳變,故將該腳與單片機的中斷引腳/INT相連接。輸出的二進制編碼信號Q1~Q4由使能端TOE控制。當TOE為高電平時,打開輸出鎖存器,輸出與當前輸入的DTMF信號相對應的二進制編碼;當TOE為低電平時,Q1~Q4呈高阻狀態,可直接掛在數據總線上。因此,用單片機的P77引腳控制MT8870的TOE端,并采用中斷方式接收數據。也就是說,當信號線上的音頻信號經消側音電路來到時,MT8870就會將音頻信號轉換成二進制碼,轉換完成后,S1D就會出現一個下降沿信號,從而向單片機申請中斷。單片機執行中斷服務子程序,將TOE置為高電平后,就可以從MT8870采集數據了。每次中斷,就采集1個數字。這里將單片機的P54~P57設計為輸入模式,分別與MT8870的數據線Q1~Q4相連接。
2.4 發聲電路
由單片機的P76引腳輸出聲頻脈沖,經晶體管9013和3kΩ電阻等組成的放大電路驅動8Ω的喇叭發聲。
當某一機器將所撥號碼與本機號碼發出時,線上所有的機器均接收,并將前4個號碼與本機的號碼比較,如果相符,就調用發聲子程序(軟件設計可參考文獻[1]),由P76引腳輸出,使喇叭發出一段音樂聲。音樂停止后,再取出接收到的后4個數字(對方機器的號碼)由P6口的P60~P63輸出顯示,即實現了來電顯示。這樣循環3次后,再清除接收號碼計數器并返回到主程序的入口地址。在這個過程中,若切換電源到對講電路,雙方即可通話。
3?傳呼對講模塊
該模塊只需要1個音頻功率放大集成電路TDA2822M、消側音電路以及其他很少器件即可。該模塊的硬件電路如圖3所示。
?
每片TDA2822M內含2個集成運放。TDA2822M的1個集成運放的輸入端7腳既接MIC也接HT9200B的DTMF引腳以接收DTMF信號,并將該信號放大后由引腳1輸出。為了避免回音的影響,將這個信號先經過消側音電路,再放到信號線上。另一方面,來自信號線上的音頻信號經消側音電路,再經TDA2822M的另一個集成運放的輸入端6腳放大后,由TDA2822M的3腳輸出,使喇叭發聲。
4? 軟件設計
本系統的軟件設計工作量較大,而且要用軟件解決按鍵彈跳、按鍵確認、掃描顯示、號碼的接收和發送等問題。系統軟件主要包括:按鍵撥號、號碼顯示子程序,發聲、來電顯示子程序,發送號碼子程序,中斷服務子程序,延時子程序等。由于EM78P447SB單片機硬件中斷入口地址均為001H,并且在這里按鍵撥號、號碼顯示子程序和發聲、來電顯示子程序均用到了TCC(計時/計數器)中斷功能,因此,中斷服務子程序包括外部中斷接收號碼子程序,按鍵撥號、號碼顯示所用到的TCC中斷子程序,發聲、來電顯示所用到的TCC中斷子程序三部分。系統主程序流程如圖4所示。
?
?
系統的初始化,除了分配一些功能寄存器、定義一些常量、設置EM78P447SB單片機的輸入輸出口的工作模式、本機的惟一號碼和其他的公用號碼外,還要將HT9200B設置為并行傳輸模式,清除P5、P6、P73個口的寄存器以及接收號碼計數器等一些功能寄存器及開中斷等。
主程序一開始,要使能/INT外部中斷屏蔽寄存器以便允許/INT外部中斷申請;關閉TCC中斷屏蔽寄存器以便禁止TCC中斷申請。但要注意,執行按鍵撥號、號碼顯示子程序和發聲、來電顯示子程序時,要先使能TCC中斷屏蔽寄存器并關閉/INT外部中斷屏蔽寄存器。
判斷是否按動發送*鍵的處理方法是:取出第5個按鍵與*鍵比較。如果已按動,則發送號碼;如果未按動,則延時10秒左右。延時10秒左右程序可以先禁止TCC中斷申請,再采用執行指令的方法進行延時。
執行按鍵撥號、號碼顯示子程序和發聲、來電顯示子程序的基本編寫方法可參考文獻[1]。本系統還附加了一些功能,如清除已按鍵的數字、進入撥號模式等。下面重點介紹發送號碼子程序和中斷服務子程序。
????發送號碼子程序流程圖如圖5所示。無線發射時,要取出所播對方的號碼與本機號碼共8個數字逐一發出。接收端接收時,需計數。計數滿8個后,再將前4個數字與本機號碼比較,通過后調用發聲、來電顯示子程序。發送號碼子程序執行前,必須先關中斷,否則會由于單片機的中斷而引起發送失敗。
?
?
中斷服務子程序流程圖如圖6所示。其中,/INT是外部中斷。接收號碼子程序流程圖如圖7所示。按鍵撥號、號碼顯示子程序和發聲、來電顯示子程序所用到的TCC中斷子程序可參考文獻[1]。
?
?
5?結束語
該系統充分利用軟件實現了較多的功能,因此所用元器件極少。雖然目前市場上通信設備很多,但這種小巧、功能較強、成本低廉的有線傳呼系統在某些場合也有它的生存空間。此外,還可以將本系統的對講時信息加密等功能進一步完善,并可以根據國家信息產業部無線電管理委員會公布的公眾對講機的技術規范做成功能更強、使用更方便的無線傳呼對講機,以滿足人們郊外旅游,特別是對一些移動通信信號達不到的地區的通信需求,滿足一些需要頻繁通信的如大超市、大酒店、運動會等的通信需求。若要做成無線傳呼對講機,可以考慮在這個系統的基礎上再解決無線發射、接收等問題。
?
參考文獻
1 鄧錦城.EM78447入門與實作.臺北:臺灣宏友圖書開發股份有限公司,2000