當前位置:編程學習大全網 - 編程語言 - 單片機怎麽與交換機連接

單片機怎麽與交換機連接

單片機在程控交換機中的應用摘 要:本文介紹單片機在程控交換機中的應用, 使用五個ATMEL 公司的AT89C52 和AT89C51 作為主控制器和從控制器, 多機通訊, 硬件結構清晰, 模塊化程序結構。0 引言國內單片機多機通信方向技術開發應用已有相當長時間,在智能化儀器、工業自動控制、家用電器機電壹體化等方面的應用成果尤為顯著。本文介紹AT 系列單片機多機通信在程控交換機中應用。多機程控交換機將1 至2 條電話外線擴展成4 繩路、12 個分機容量, 可以多部分機同時通話而互不幹擾(可以內外線混用); 分機可以為電話機、傳真機、答錄機和電腦等任何電訊產品。1 硬件結構簡介本程控交換機應用AT 系列單片機, CPU 使用壹個AT89C52 和四個AT89C51, 進行多機通信, 如圖1 所示。其中壹個CPU(AT89C52)作為上位機, 實現分機摘機/ 掛機查詢、分機振鈴等功能。四個CPU(AT89C51)作為下位機, 各控制壹根繩路, P10、P11 口作為CPU 地址, CPU 進行查詢外線來電、分機掛線(內線和外線)、分機撤線、分機撥號處理等工作, 提供內線撥號音、回音鈴、忙音、證實音等信號音。0_CPU 和1_CPU各有壹個繼電器J 控制開關, 用於接通或切斷電話外線與繩路的連接。硬件線路保證每CPU 各施其職, 互不串擾。某分機壹旦掛線後, 該分機的信號音、撥號等只受該繩路的CPU 控制, 而且分機摘機、掛線後撥號才有效; 撤線後, 該分機不再受繩路的CPU 控制。2 多機通信協議在多機通信協議中定義上位機為主動, 下位機為被動。2.1 上——下位機聯絡握手上位機向下位機廣播地址信息; 下位機收到地址信息後判斷是否是本機地址, 若不是, 不應答; 若是, 向上位機發應答信號, 同時作好接收數據準備。上位機收到應答信號後, 判斷應答信號是否正確。若不正確, 重發地址信號; 若正確, 發送數據(命令代碼)。已握手的下位機接收數據(命令代碼)後, 執行相應功能或實施服務。地址信息與命令代碼設置不重碼, 以便下位機能判別出。

2.2 上位機向下位機發送命令類是否接外線(僅為0_CPU 和1_CPU)、有否請求服務、指定分機掛某壹根內/ 外線、指定分機撤線、釋放外線繼電器、編程密碼、長途等級(內部、市內、國內和國際)、長途解鎖、要求繩路發內線撥號音、內線回音鈴、內線忙音鈴或內線證實音等。2.3 下位機向上位機請求服務下位機只有在上位機“有否請求服務”時, 才可向上位機發送信息。發送信息有:本繩路有外電呼叫、撥打內部分機、三方通話、代接外線、設置轉移功能(無條件轉移、遇忙轉移、無應答轉移、撤消轉移)、設置外線來電振鈴方式(指定若幹分機振鈴、全部分機振鈴、三機四組輪流振動鈴、外線來電時指定分機振鈴)、設置長途密碼\ 長途等級\ 長途解碼、強插監聽等。3 多機程控交換機軟件設計方法程序設計思路是根據多機程控交換機工作過程而制定的, 采用上下位機包幹控制, 充分利用CPU 資源, 實現程控交換機功能。3.1 上位機軟件設計思路根據多機程控交換機功能, 上位機程序分成初始化、摘機處理、掛機處理、發送命令、下位機請求服務處理、振鈴處理和定時器處理(包括看門狗)七個模塊, 程序模塊結構如圖2 所示。初始化模塊主要是定義常數變量、變量單元、位標誌、緩沖區、中斷設置、定時器設置/ 啟動、電話分機工作初始狀態等。摘機處理模塊主要判別是外線來電摘機、內線來電摘機還是要撥打外線或內線電話。掛機處理模塊比較復雜, 既有內外線通話結束掛機, 又有內外線通話中止掛機, 還有三方通話主叫機掛機和從叫機掛機, 其它有中止撥打外線/ 內線掛機、分機功能設置完畢掛機等。發送命令模塊主要是根據電話分機發生摘/ 掛機時, 向下位機發送掛線/ 撤線命令、內線撥號音等命令, 發送詢問下位機有否請求服務等命令。下位機請求服務處理模塊主要根據下位機CPU 請求, 完成外線來電、撥打內線分機、分機功能設置等工作。

振鈴處理模塊主要處理外線來電時, 根據振鈴模式進行分機振鈴、輪流振鈴等; 內線呼叫分機時, 根據分機轉移功能, 作相應的振鈴處理; 被呼叫分機摘機後停止振鈴等功能。定時器處理模塊配合振鈴處理模塊產生各種振鈴計時以及看門狗定時常數刷新等。3.2 下位機軟件設計思路為便於編輯和管理, 4 個下位機程序使用同壹版本, 程序運行時根據地址作相應的處理。根據多機程控交換機功能, 下位機程序分成初始化、連接外線查詢、發送請求服務、外線來電中斷請求、分機撥號中斷請求和定時器中斷(包括看門狗)六個模塊, 程序模塊結構如圖3 所示。初始化模塊主要是定義變量單元、位標誌、緩沖區、中斷設置、定時器設置/ 啟動等。連接外線查詢模塊在開機復位後查詢本CPU 是否接外線(2_CPU 和3_CPU 跳過), 然後置標誌, 上位機通過問詢下位機知道程控交換機接幾根外線。命令處理模塊主要完成上位機下達的命令, 命令有指定分機掛外線/ 內線、對掛內線分機發送或停止內線信號音(內線撥號音、內線回音鈴、內線忙音鈴或內線證實音等)、指定分機撤外線/ 內線等等。發送請求服務模塊主要向上位機發送外線來電處理、分機撥打內線電話、分機設置功能等請求服務。外線來電中斷請求模塊在外線來電時(0_CPU 和1_CPU),向CPU 請求中斷。CPU 響應中斷後, 首先判斷是否幹擾信號, 確認為外線來後, 豎立外線來電標。當上位機查詢下位機有否請求服務時, 向上位機發送外線來電服務請求。為防外線來電中止,下位機CPU 發送請求後即清除外線來電標。上位機在送出分機振鈴後壹秒鐘內, 如分機未摘機, 而下位機又沒發來新的外線來電請求服務, 立馬中止振鈴。分機撥號中斷請求模塊在分機撥號後, 向CPU 請求中斷。CPU 響應中斷後, 根據所撥號碼, 產生對應請求服務代碼。上位機收到請求服務後, 對其進行譯碼, 作相應處理。如分機是掛外線, 除判別該分機長途等級外, 對撥號不作任何處理。分機在掛線情況下, 撥號才有中斷請求信號產生, 這由硬件保證。

定時器處理模塊主要產生450 方波信號, 產生各種內線鈴聲所需脈沖信號以及看門狗定時常數刷新等。上下位機源程序限於篇幅, 不作介紹。4 編程中特點由於多機程控交換機上位機CPU 要對四個下位機CPU, 而分機摘/ 掛機狀態采用查詢方式, 又要處理分機振鈴等, 查詢過程中要采用抗幹擾措施, 防止CPU 誤判、誤動作。所以編程中要考慮整體時間分配, 以免延誤用戶通話。上位機在查詢下位機有否服務請求時, 采用輪流查詢法。在發送信息前又要與下位機握手, 所以查詢時間較長。當下位機有服務請求時, 上位機馬上中止查詢下壹CPU, 為當前下位機服務。為縮短上下位機通信時間, 下發代碼采用單字節, 按位定義。如“D7”位表示掛線或撤線,“D6”位表示掛內線或外線,“D5、D4”位表示發內線撥號音、內線回音鈴、內線忙音或內線證實音,“D3”~“D0”表示分機號。上發代碼采用多字節, 長短不同, 這是由於多機程控交換機功能豐富多采, 下位機在上發代碼最後加壹個結束符。多機程控交換機功能較多, 分機撥號中斷請求模塊要分成外線撥號、內線撥號(包括代接、轉接和三方通話)和功能設置三個小模塊。為提高CPU 利用率, 分機撥號中斷請求模塊采用流水線作業方式, 按壹次鍵, 模塊執行壹次。所以要保護好現場,豎立相應的標誌, 保證分機撥號中斷請求模塊工作正常。當某功能撥完後, CPU 再將請求服務代碼送到發送緩沖區。5 結束語多機程控交換機可連接二根外線, 十二只內部分機, 四繩路通話容量, 具有豐富的實用功能, 可不間斷連續工作。分機之間可多對電話(最多四對八機)同時通話而彼此互不幹擾。分機可直撥外線、強插外線、長途加鎖設置等。外線來電響鈴方式有二種, 壹為選擇某些分機振鈴, 二為分機輪流振鈴, 由1 號分機進行設置。分機可代撥、代接、征詢轉接和三方通話等。本文作者的創新點:上、下位機CPU 串行通信發送采用查詢方式, 接收采用中斷循環隊列緩沖區方式。多機程控交換機不使用擴展外RAM, 上位機采用AT89C52, 其內RAM為256 字節, 足夠CPU 工作所需, 同時給硬件上分清上位機和下位機CPU 芯片帶來好處, 壹舉二得。

多機程控交換機樣機已小批量投入某些公司、企業使用, 用戶反映程控交換機基本功能工作正常, 使用方便, 由此說明多機程控交換機達到設計要求。

5.9

百度文庫VIP限時優惠現在開通,立享6億+VIP內容

立即獲取

單片機在程控交換機中的應用

單片機在程控交換機中的應用

摘 要:本文介紹單片機在程控交換機中的應用, 使用五個ATMEL 公司的AT89C52 和AT89C51 作為主控制器和從控制器, 多機通訊, 硬件結構清晰, 模塊化程序結構。

0 引言

國內單片機多機通信方向技術開發應用已有相當長時間,在智能化儀器、工業自動控制、家用電器機電壹體化等方面的應用成果尤為顯著。本文介紹AT 系列單片機多機通信在程控交換機中應用。

多機程控交換機將1 至2 條電話外線擴展成4 繩路、12 個分機容量, 可以多部分機同時通話而互不幹擾(可以內外線混用); 分機可以為電話機、傳真機、答錄機和電腦等任何電訊產品。

第 1 頁

1 硬件結構簡介

本程控交換機應用AT 系列單片機, CPU 使用壹個AT89C52 和四個AT89C51, 進行多機通信, 如圖1 所示。

其中壹個CPU(AT89C52)作為上位機, 實現分機摘機/ 掛機查詢、分機振鈴等功能。四個CPU(AT89C51)作為下位機, 各控制壹根繩路, P10、P11 口作為CPU 地址, CPU 進行查詢外線來電、分機掛線(內線和外線)、分機撤線、分機撥號處理等工作, 提供內線撥號音、回音鈴、忙音、證實音等信號音。0_CPU 和1_CPU各有壹個繼電器J 控制開關, 用於接通或切斷電話外線與繩路的連接。

硬件線路保證每CPU 各施其職, 互不串擾。某分機壹旦掛線後, 該分機的信號音、撥號等只受該繩路的CPU 控制, 而且分機摘機、掛線後撥號才有效; 撤線後, 該分機不再受繩路的CPU 控制。

  • 上一篇:歐姆龍電子體溫計
  • 下一篇:有哪些提供金融IT服務的軟件公司
  • copyright 2024編程學習大全網