如何用單片機實現來電顯示解碼
發布時間:2007/4/23 0:00:00 訪問次數:3272
一、引言
隨著城市供水規模擴大,城市管網不斷增大,廈門自來水公司原有遙測系統難以適應生產調度需求。要求有一套可靠、快速的調度遙測系統,綜合國內RTU(Remote Terminal Unit 遠程測控終端)的發展狀況及公司的具體情況,廈門自來水公司獨立研制開發了一套新的基于AVR單片機及專用MODEM芯片的MTU(Master Terminal Unit中心調度機)、RTU無線電遙測系統。
分散地分布在全市的管網監測點上的遠端RTU(系統可帶256個RTU)采集數據,進行數據處理后通過無線電臺向中心調度端發送數據,中心調度端接收到數據后進行數據處理,數據存儲,并送給模擬屏顯示。
二、設計思想
原有系統的使用中,主要存在以下幾個問題:1. 無線通信波特率低(300bps),誤碼率高,巡測速度慢,最多帶32個RTU終端;2. 當某一遠程RTU端的無線電臺一直處于長時間誤發射狀態時(簡稱“長發” )一直占用系統頻點,由于系統共用一組無線電頻點,這將使系統其他所有電臺無法通信,整個系統癱瘓,處于故障的電臺亦無法發送有效數據,因而無法確定故障點,測壓點分布地域廣且分散,使得故障查找很困難,往往需要數天時間;3. RTU板集成度低,故障率較高,元器件難于采購。
考慮到系統的通用性和公司的實際情況,要求RTU系統能最大限度地利用原有的無線電臺、天線、電源、模擬屏、檢測儀表等,并能實現如下功能:8路10位模擬量輸入、8路開關量輸入及兩路脈沖量輸入,其中8路開關量輸入可擴展為64路開關量輸入,可在RTU站存儲24小時歷史數據(15分鐘/次),具有掉電保護功能。
我們通過軟硬件的有機配合,經濟有效地解決了原有系統存在的問題及系統功能要求,做到MTU板和RTU板在硬件上的完全一致,并把通常獨立于RTU板的無線調制解調MODEM集成在RTU板之上,簡化了系統的硬件結構。本系統RTU板具有無線通信波特率1200bps,誤碼率低,最多帶256個RTU終端,有效解決了因無線電臺“長發”引起系統癱瘓的問題,數據采集精度高,RTU板集成度高,通用性強,軟件升級容易等優點
三、RTU的設計
1、元器件的選擇
CPU選擇ATMEL公司的AVR系列單片機AT90S8535,該芯片是比較新型的單片機,其內部資源如下:8K字節Flash程序存儲器,512字節EEPROM數據存儲器,8通道10位精度A/D轉換器,一個標準串口,1個16位定時/計數器,一個8位定時/計數器,1個實時時鐘,2個外部中斷,內置看門狗電路等。RTU所需的功能和數據采集功能基本上可以在此單片機上實現;與無線電臺的連接選用OKI公司的MSM7512B MODEM芯片進行調制解調,與計算機的通信選用MAX232芯片進行,歷史數據存儲選用8K字節串行EEPROM存儲芯片AT24C64,電臺的供電由CPU控制,通過繼電器提供。
2、數據通信
(1)RS-232串口與PC機的通信
由于單片機的唯一的串口應用于無線電臺的通信,首先保證無線通信的精確。與PC機的通信通過MAX232芯片把單片機的TTL電平轉化為標準的RS-232電平,使用單片機的外部中斷INT0、INT1口和I/O口,應用軟件模擬,實現兩個波特率為9600Bps半雙工三線制串口通信,其接收數據采用中斷方式。
(2)無線電臺之間的無線通信
我們把通常獨立于RTU板的無線調制解調MODEM集成在RTU板之上,如此簡化了系統的硬件結構,降低了成本,并且提高了通信的可靠性,實現了RTU與MODEM的緊密結合。MODEM芯片選用OKI公司的MSM7512B調制解調芯片,MSM7512B是一塊比較成熟的芯片,通信波特率為1200Bps,工作方式為半雙工模式。在實踐中,我們發現當電臺從接收狀態轉為發射狀態或從發射狀態轉為接收狀態的瞬間有一段不穩定狀態,此時的數據容易產生誤碼,根據實驗,得出一個比較合適的延時時間,我們在控制無線電臺收發轉化后延遲適當的時間,使數據傳送的可靠性和準確性得到了很大的提高。在數據傳送過程中,加入系統碼、RTU站碼,求和值低字節等校驗,保證了系統通信的可靠,正確。
3、無線電臺處于長時間誤發射狀態時(“長發” )系統癱瘓的解決對策
(1)在RTU板上設置電臺電源控制端口(無線電臺的電源由單片機通過繼電器控制),RTU板可控制電臺電源的通斷;設置軟件陷阱,RTU在15分鐘內若無接收到來自電臺的任何信號,則可能是電臺“長發” 、電臺接收故障、其它電臺“長發” 、RTU數據端口故障、中轉臺故障,此時切斷電臺電源,但15分鐘后再開通電臺電源,繼續上述檢測過程,這時若是由于中轉臺、其它電臺“長發”等外部引起的故障而接收不到信號的情況,RTU板的工作得于恢復正常;設置看門狗復位系統,程序引起的工作故障可以得到
一、引言
隨著城市供水規模擴大,城市管網不斷增大,廈門自來水公司原有遙測系統難以適應生產調度需求。要求有一套可靠、快速的調度遙測系統,綜合國內RTU(Remote Terminal Unit 遠程測控終端)的發展狀況及公司的具體情況,廈門自來水公司獨立研制開發了一套新的基于AVR單片機及專用MODEM芯片的MTU(Master Terminal Unit中心調度機)、RTU無線電遙測系統。
分散地分布在全市的管網監測點上的遠端RTU(系統可帶256個RTU)采集數據,進行數據處理后通過無線電臺向中心調度端發送數據,中心調度端接收到數據后進行數據處理,數據存儲,并送給模擬屏顯示。
二、設計思想
原有系統的使用中,主要存在以下幾個問題:1. 無線通信波特率低(300bps),誤碼率高,巡測速度慢,最多帶32個RTU終端;2. 當某一遠程RTU端的無線電臺一直處于長時間誤發射狀態時(簡稱“長發” )一直占用系統頻點,由于系統共用一組無線電頻點,這將使系統其他所有電臺無法通信,整個系統癱瘓,處于故障的電臺亦無法發送有效數據,因而無法確定故障點,測壓點分布地域廣且分散,使得故障查找很困難,往往需要數天時間;3. RTU板集成度低,故障率較高,元器件難于采購。
考慮到系統的通用性和公司的實際情況,要求RTU系統能最大限度地利用原有的無線電臺、天線、電源、模擬屏、檢測儀表等,并能實現如下功能:8路10位模擬量輸入、8路開關量輸入及兩路脈沖量輸入,其中8路開關量輸入可擴展為64路開關量輸入,可在RTU站存儲24小時歷史數據(15分鐘/次),具有掉電保護功能。
我們通過軟硬件的有機配合,經濟有效地解決了原有系統存在的問題及系統功能要求,做到MTU板和RTU板在硬件上的完全一致,并把通常獨立于RTU板的無線調制解調MODEM集成在RTU板之上,簡化了系統的硬件結構。本系統RTU板具有無線通信波特率1200bps,誤碼率低,最多帶256個RTU終端,有效解決了因無線電臺“長發”引起系統癱瘓的問題,數據采集精度高,RTU板集成度高,通用性強,軟件升級容易等優點
三、RTU的設計
1、元器件的選擇
CPU選擇ATMEL公司的AVR系列單片機AT90S8535,該芯片是比較新型的單片機,其內部資源如下:8K字節Flash程序存儲器,512字節EEPROM數據存儲器,8通道10位精度A/D轉換器,一個標準串口,1個16位定時/計數器,一個8位定時/計數器,1個實時時鐘,2個外部中斷,內置看門狗電路等。RTU所需的功能和數據采集功能基本上可以在此單片機上實現;與無線電臺的連接選用OKI公司的MSM7512B MODEM芯片進行調制解調,與計算機的通信選用MAX232芯片進行,歷史數據存儲選用8K字節串行EEPROM存儲芯片AT24C64,電臺的供電由CPU控制,通過繼電器提供。
2、數據通信
(1)RS-232串口與PC機的通信
由于單片機的唯一的串口應用于無線電臺的通信,首先保證無線通信的精確。與PC機的通信通過MAX232芯片把單片機的TTL電平轉化為標準的RS-232電平,使用單片機的外部中斷INT0、INT1口和I/O口,應用軟件模擬,實現兩個波特率為9600Bps半雙工三線制串口通信,其接收數據采用中斷方式。
(2)無線電臺之間的無線通信
我們把通常獨立于RTU板的無線調制解調MODEM集成在RTU板之上,如此簡化了系統的硬件結構,降低了成本,并且提高了通信的可靠性,實現了RTU與MODEM的緊密結合。MODEM芯片選用OKI公司的MSM7512B調制解調芯片,MSM7512B是一塊比較成熟的芯片,通信波特率為1200Bps,工作方式為半雙工模式。在實踐中,我們發現當電臺從接收狀態轉為發射狀態或從發射狀態轉為接收狀態的瞬間有一段不穩定狀態,此時的數據容易產生誤碼,根據實驗,得出一個比較合適的延時時間,我們在控制無線電臺收發轉化后延遲適當的時間,使數據傳送的可靠性和準確性得到了很大的提高。在數據傳送過程中,加入系統碼、RTU站碼,求和值低字節等校驗,保證了系統通信的可靠,正確。
3、無線電臺處于長時間誤發射狀態時(“長發” )系統癱瘓的解決對策
(1)在RTU板上設置電臺電源控制端口(無線電臺的電源由單片機通過繼電器控制),RTU板可控制電臺電源的通斷;設置軟件陷阱,RTU在15分鐘內若無接收到來自電臺的任何信號,則可能是電臺“長發” 、電臺接收故障、其它電臺“長發” 、RTU數據端口故障、中轉臺故障,此時切斷電臺電源,但15分鐘后再開通電臺電源,繼續上述檢測過程,這時若是由于中轉臺、其它電臺“長發”等外部引起的故障而接收不到信號的情況,RTU板的工作得于恢復正常;設置看門狗復位系統,程序引起的工作故障可以得到
上一篇:單片機和PC機串口通訊試驗