999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

μC/OS-II基礎上實現的無紙傳真收發系統

2011-06-25 02:45:20張聰敏劉軍劉福良游向東
單片機與嵌入式系統應用 2011年8期
關鍵詞:信號功能

張聰敏,劉軍,劉福良,游向東

(北京郵電大學信息與通信工程學院,北京 100876)

引 言

隨著Internet的高速發展,通信工具日益更新,傳真憑借其具有憑證確認、快速、方便等特點,是企業不可或缺的通信工具。傳統硬件傳真機存在很多問題,影響了企業使用傳真機的成本和效率。很多企業已經放棄使用傳統傳真機,或是尋找替代產品。無紙傳真系統[1]正是針對企業的這種需求應運而生的。其實質是電子化收發傳真。無紙化傳真系統啟動后,在無人參與條件下可自動可靠地運行,減少多余的環節,縮短信息的傳遞時間,使傳真盡快得到處理。同時,增強了傳真的保密性。電子化過程可以節省大量資源,包括人力、紙張、打印、通信費用、維護費用等,從而減少成本。目前無紙化傳真系統對企業的重要作用已經逐步顯現,使用也越來越廣泛[2]。

1 傳真協議介紹

T.30協議為PSTN網上的傳真傳輸協議與規程,是標準傳真。它對3類傳真機在普通電話網上的通信流程、所采用的信號格式、控制信令以及糾錯方式都作了詳細的描述和規定。該協議規定了8種可能的操作方式,每種操作方式均可用5個獨立而又連貫的階段來描述:呼叫建立階段、報文傳輸前標識和選擇所需性能的過程、報文傳輸階段、報文后處理階段和呼叫釋放階段。其中傳真報文[3]的傳輸將按照T4協議中所描述的調制方式進行。

T4是ITU-T制定的傳真協議。該協議用于3類傳真終端文件傳輸的標準化協議。它定義了黑白文件和彩色文件在普通電話交換網,國際租用電路以及ISDN進行三類傳真的各種特性,包括編碼、線掃描等定義[4]。

2 μC/OS-II操作系統介紹

μC/OS-II是一種公開源代碼、結構小巧、具有可剝奪實時內核的實時操作系統。μC/OS-II大部分代碼是用C語言編寫的。CPU硬件相關部分是用匯編語言編寫的??偭考s200行的匯編語言部分被壓縮到最低限度,為的是便于移植到其他的CPU上。用戶只要有標準的ANSI的C交叉編譯器、匯編器、連接器等軟件工具,就可以將μC/OS-II嵌入到開發的產品中。μC/OS-II具有執行效率高、占用空間小、實時性能優良和可擴展性強等特點。最小內核可編譯至2 KB。μC/OS-II操作系統已經移植到了大部分知名的CPU上。

3 傳真數據處理的算法設計

收到傳真數據后,往往需要對數據進行解析,比如生成tiff文件、格式轉換、錯誤統計等。由前文所述,T.4協議中規定了傳真數據采用前綴編碼,所以本文采用霍夫曼樹進行數據解析[5]。

霍夫曼算法一般用于數據壓縮,基本思想是根據數據的統計頻度,生成一種帶權路徑長度最短的二叉樹。從根節點到葉子節點所經歷的路徑即代表該葉子節點的編碼。本文采用了這種思想對傳真數據進行解析,比如N的編碼為0001,該編碼為前綴編碼,每個碼字之間不會出現混淆[6]?;舴蚵鏄淙鐖D1所示。

基于霍夫曼樹的思想,將T.4協議中對傳真掃描點的編碼構建成一顆帶權二叉樹,如圖2所示。

圖1 霍夫曼二叉樹

圖2 傳真數據構建的部分二叉樹

其中每一個葉子節點對應于某一個編碼,首先設置一個游標,用于標識當前位置,其初始位置為根節點,收到傳真數據后,根據數據中的bit位移動游標,可能有以下3種情況:

①游標到達某一個葉子節點,但此葉子節點不是EOL,表明收到一個完整的編碼,但1行還沒結束,游標返回到根節點;

②游標到達EOL葉子節點,表明1行結束,游標返回根節點;

③游標下一步沒有路徑可走,表明數據出錯,此時需要搜尋下一個EOL用于重新同步。

4 無紙傳真收發系統設計

4.1 基本模式

按照T.30協議規定,文件傳真在公用電話交換網上的傳輸操作方法可能有8種組合,如表1所列。本文設計的系統采用的操作方法為4-T,即主叫站與被叫站均為自動操作,主叫站作為傳真的發送方,被叫站作為傳真的接收方。

表1 文件傳輸操作方法分類

4.2 硬件框架

整個傳真系統的硬件框圖如圖3所示。左側虛線框內模塊和右側的FAX模塊是從交換機的兩根電話線中分離出來的2個獨立傳真模塊。右側的FAX模塊是普通紙傳真機,為測試左側虛框內模塊的功能而配置的。左側虛線框內4大模塊為無紙傳真模塊。

圖3 傳真系統硬件框圖

無紙傳真模塊中,左側的PC機為輔助設備,利用PC機上的集成開發調試環境IAR和代碼編輯軟件source insight進行源碼編輯與調試,將調試無誤的代碼通過JLINK下載到STM32芯片中。STM32芯片和Fax Modem都是通過USB線與PC機相連來供電。

Fax Modem內部包含CX68033芯片,其通過串口與STM32芯片相連,支持標準的AT命令集,使得二者可以交互信令和數據,STM32芯片主要負責任務管理和文件管理,并且通過串口控制 Fax Modem。同樣為了便于測試,焊了一根線接出“USB轉串口模塊”來與電腦通信,進而可以利用串口調試助手軟件來輔助測試。

4.3 總流程設計

兩臺傳真機相互通信的規約稱為協議或傳真呼叫時間序列,分為A、B、C 、D、E五個階段,如圖 4所示 。

圖4 傳真流程圖

(1)階段A:呼叫建立階段

這一階段與電話呼叫建立的過程相似,不同之處在于要發送包含標識發送/接收終端的傳真單音。

(2)階段B:報文前處理階段

這個處理階段主要進行傳真能力的協商與訓練。完成傳真機功能的鑒別、選送合適的傳輸模式、核對相位、發送線路校驗信號以及可以接收的信號等。

過程描述:首先由被叫站發送DIS信號,DIS信號中包含了被叫站傳真機具有的各種兼容性功能信息、傳輸數碼率、掃描線密度和最小行掃描時間等。當主叫站收到DIS信號后,了解到被叫站傳真機的功能,再根據本站傳真機的功能和操作人員事先安排的指令,發出DCS信號,DCS信號是數字接收指令,由發送方進行發送,要求接收方是接收傳真。該指令還指定了接收傳真機的工作方式、傳輸數碼率、掃描線密度、稿件寬度以及最小行掃描時間等。被叫站接收到DCS信號后,按命令選擇合適的工作模式,這時,主叫站發出線路校驗信號TCF。TCF信號是一個持續時間為1.5 s的0序列,它用于校驗信道在這個數碼率下可接受的程度。當被叫站收到這個線路校驗信號之后認為合格,就發送CFR信號,CFR信號標志全部報文前處理過程已經結束。當主叫站收到CFR信號,就可以發送稿件。

(3)階段C:報文傳輸過程

按照T.4規程傳輸傳真報文,并進行報文傳輸控制,包括報文同步、誤碼檢測和糾錯、線路監測等。

(4)階段D:報文后處理階段

這個處理階段主要提供報文的證實、報文結束、多頁續發等控制操作。當發送方發完稿件后,將出現若干不同的情況,如是否還要繼續向接收方發送稿件,如果需要發送,是繼續發送還是重新進行報文前處理后再發送,是否暫時中斷進行通話后再發送等。為了滿足上述要求,發送方共設置6種主要的傳真控制字段分別對應6種指令。當接收方收到這6種指令中的一種后,就會發出響應信號,這些指令和響應只有傳真控制字段,而無傳真信息字段。

(5)階段E:呼叫釋放階段

呼叫釋放發生在某一特定的條件下,當最后一頁稿件發送完畢后,進行最后一個信息處理,發送EOP信號,在EOP信號之后,過程轉入階段E,呼叫釋放,切斷接續,電路由傳真狀態返回到電話狀態。

圖5是單頁傳真正常傳輸的一個實例,便于傳真流程的理解。

4.4 功能模塊設計

圖5 單頁傳真的一個實例

圖6 軟件層次結構圖

本設計自底向上包括如下3個功能模塊,如圖 6所示。底層串口模塊、中層數據緩沖區模塊和上層傳真模塊。各個模塊由 μC/OS-II負責管理,其中底層串口模塊包含了所有基于串口的基本操作,包括讀串口和寫串口等;中層數據緩沖區模塊做了大量的細節性數據處理工作;上層傳真模塊封裝了發送傳真和接收傳真的基本功能。

4.4.1 底層串口模塊

底層串口模塊的代表性函數包括如下3個。

①void RxInterrupt_Handler();

功能說明:fax modem每次接收到數據后都會發生中斷,跳入此函數。通過mdm_append_data函數將串口收到的新數據添加到接收緩沖區。

②void USART1_SendByte(INT16U byte);

功能說明:直接向串口中發送一個字節,并等待完成。

③void USART1_SendData(INT8U*data,INT16S len);

功能說明:直接向串口寫數據并等待完成,數據長度不限。它被fax_send_cmd函數和fax_send_frame函數多次調用。

4.4.2 中層數據緩沖區模塊

本模塊采用隊列來管理數據,如圖7所示。底層串口模塊收到數據后,將數據存入隊尾緩存,上層傳真模塊從隊頭取出數據進行處理,這種方式使得程序不必關心串口接收數據的方式,一定程度上減小了程序的耦合性。

圖7 緩沖區隊列

隊列的數據結構定義如下:

本模塊提供了以下接口函數,供上層傳真機模塊調用。

①void mdm_init_buffer();

功能說明:本函數用于初始化緩沖區,一般在程序啟動時調用。

②char*mdm_get_line(int timeout);

功能說明:在timeout規定的時間里面,等待并讀取一行數據(以/r/n結尾),如果超時則返回NULL。

③int mdm_get_byte(char*byte,int timeout);

功能說明:在timeout規定的時間里,等待并讀取一個字節的數據,如果有數據則返回1,如果超時則返回0。

④int mdm_get_byte_count();

功能說明:獲取當前緩沖區內的數據量,單位為字節。

⑤void mdm_clear_buffer();

功能說明:清空緩沖區的數據。

⑥void mdm_append_data(char data);

功能說明:向緩沖區隊尾添加一個數據,該函數在串口接收中斷中被調用。

4.4.3 上層傳真模塊

上層傳真模塊分為發送傳真接口和接收傳真接口兩大部分,其中發送部分為1個集成的函數,而接收部分為3個按時序相接的功能分支。

(1)發送傳真接口

原型說明:int fax_send(char*num,char*page[]);

功能說明:發送傳真,對端的傳真號為num,傳真文件通過page變量傳入,結尾以NULL指針或空字符串結尾。

(2)接收傳真接口

①int fax_ringing();

功能說明:循環檢測并接收響鈴,只有接通了,才會跳出循環。該函數可以在一個 task里面調用,進行傳真監聽,當收到”RING”時,退出函數,等待應答。

②int fax_answer_and_connect();

功能說明:傳真應答與連接。該函數一般在收到”RING”時調用。當連接成功后,即可接收傳真。

③int fax_receive(int*pagenum,char*dir);

功能說明:接收傳真,收到的傳真頁數為pagenum,保存地址為dir。只有當連接成功后才能調用該函數。

4.5 傳真接口調用示例

結 語

本文對無紙傳真進行了研究,在該研究的基礎上開發出一套實用的系統,其擴展性強,具有很好的移植性。一般的傳真機僅限于紙質文件的傳輸,而本系統則輔助實現了紙質文件與電子版文件的轉化傳輸。本系統存在的意義在于,用戶可以將此傳真模塊作為一個獨立功能單元集成到其他產品中,以較低的成本來增加產品的功能。

[1]李貞輝.無紙傳真系統的現狀與改進[J].電腦知識與技術,2006(8).

[2]呂剛.無紙化傳真系統的若干問題總結與探討[J].金華職業技術學院學報,2008(4).

[3]ITU Group.ITU-T Recommendation T.30—2003 Procedures for document facsimile transmission in the general switched telephone network[S].

[4]ITU Group.ITU-T Recommendation T.4—1996 Standardization of Group 3 facsimile terminals for document transmission[S].

[5]宋愷,嚴麗平.基于Internet的網絡傳真技術[J].科技廣場,2004(8):30-31.

[6]劉郁蓉,尤肖虎.傳真業務的設計與實現[J].電氣電子教學學報,2007(6).

猜你喜歡
信號功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
信號
鴨綠江(2021年35期)2021-04-19 12:24:18
完形填空二則
孩子停止長個的信號
關于非首都功能疏解的幾點思考
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
基于LabVIEW的力加載信號采集與PID控制
一種基于極大似然估計的信號盲抽取算法
中西醫結合治療甲狀腺功能亢進癥31例
主站蜘蛛池模板: 男女猛烈无遮挡午夜视频| 色婷婷视频在线| 成人午夜免费视频| 老司机精品久久| 在线国产资源| 亚洲高清在线天堂精品| 97青草最新免费精品视频| 好吊妞欧美视频免费| 99re这里只有国产中文精品国产精品| 福利在线不卡| 老色鬼欧美精品| 美女视频黄频a免费高清不卡| 国产成熟女人性满足视频| 无码精油按摩潮喷在线播放| 亚洲日韩精品伊甸| 一本一道波多野结衣av黑人在线| 国产超薄肉色丝袜网站| 四虎国产精品永久一区| 亚洲天堂网视频| 欧美日韩理论| 久久精品人人做人人| 欧美色亚洲| 国产Av无码精品色午夜| 亚洲欧美精品一中文字幕| 亚洲AⅤ综合在线欧美一区| 亚洲69视频| 婷婷亚洲最大| 四虎影视8848永久精品| 亚洲国产中文欧美在线人成大黄瓜| 久久福利网| 国产玖玖视频| 免费观看国产小粉嫩喷水| 亚洲综合中文字幕国产精品欧美| 激情综合婷婷丁香五月尤物| 一级毛片基地| 国产中文一区二区苍井空| 国产一区二区福利| 亚洲AⅤ波多系列中文字幕| 欧美日韩在线亚洲国产人| 99国产精品一区二区| 99无码中文字幕视频| 国产靠逼视频| 亚洲—日韩aV在线| 久青草国产高清在线视频| 婷婷亚洲视频| 亚洲精品在线影院| 国产微拍精品| 国产成人你懂的在线观看| 99偷拍视频精品一区二区| 丁香五月婷婷激情基地| 亚洲欧美一区在线| 国产欧美日韩视频怡春院| 亚洲人在线| 国产00高中生在线播放| 波多野结衣AV无码久久一区| 色综合久久88色综合天天提莫| 欧美特黄一级大黄录像| 国产91线观看| 波多野结衣爽到高潮漏水大喷| 国产精品视频久| 在线欧美日韩| 亚洲色图欧美激情| 日本www色视频| 成人精品在线观看| 精品无码视频在线观看| 亚洲综合婷婷激情| 丝袜美女被出水视频一区| 亚洲国产亚综合在线区| 欧美成人亚洲综合精品欧美激情| 91精品国产自产91精品资源| 丝袜高跟美脚国产1区| 国产微拍一区二区三区四区| 亚洲第一区欧美国产综合| 亚洲清纯自偷自拍另类专区| 欧美狠狠干| 久久精品人妻中文系列| 麻豆精品国产自产在线| 54pao国产成人免费视频| 又大又硬又爽免费视频| 青青草综合网| 四虎国产在线观看| 91年精品国产福利线观看久久|