乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Xmodem說明書

       代碼牧場 2011-09-19

      1.1.    Xmodem簡介

      FTPFile Transfer Protocol的縮寫,串行通信的文件傳輸協(xié)議主要有:XmodemYmodem、ZmodemKERMIT等。

        

      Xmodem 協(xié)議一般支持128 字節(jié)的數(shù)據(jù)包,并且支持累加和校驗、CRC 兩種校驗方式,在出現(xiàn)數(shù)據(jù)包錯誤的情況下支持多次重傳(一般為10 次)。Xmodem 協(xié)議傳輸由接收程序和發(fā)送程序完成。先由接收端發(fā)送協(xié)商字符,協(xié)商校驗方式,協(xié)商通過之后發(fā)送端就開始發(fā)送數(shù)據(jù)包,接收程序接收到完整的一個數(shù)據(jù)包之后按照協(xié)商的方式對數(shù)據(jù)包進行校驗。校驗通過之后發(fā)送確認字符,然后發(fā)送程序繼續(xù)發(fā)送下一包;如果校驗失敗,則發(fā)送否認字符,發(fā)送程序重傳此數(shù)據(jù)包。

       

      1.2.    Xmodem協(xié)議

      1.2.1.相關(guān)說明

      1>   控制字符定義:

      SOH 0x01

               EOT       0x04

               ACK       0x06

               NAK       0x15

               CAN       0x18

      2>   UART格式: Asynchronous(異步)、8Bit data (8Bit數(shù)據(jù))、no

      parity(無校驗)、one stop bit(1個停止位)

      1.2.2.協(xié)議簡介

         Xmodem協(xié)議是由Ward Chritensen70年代提出并實現(xiàn)的,傳輸數(shù)據(jù)單位為信息包,包含一個標(biāo)題開始字符<SOH>,一個單字節(jié)包序號,一個包序號的補碼,128個字節(jié)數(shù)據(jù)和一個單字節(jié)的校驗和。它把數(shù)據(jù)劃分成128個字符的小包進行發(fā)送,每發(fā)送一個小包都要檢查是否正確,如果信息包正確接收方發(fā)送一個字節(jié)<ACK>的應(yīng)答;有錯重發(fā)則發(fā)送一個字節(jié)<NAK>應(yīng)答,要求重發(fā)。因此Xmodem是一種發(fā)送等待協(xié)議,具有流量控制功能。優(yōu)點:簡單通用,幾乎所有通信軟件都支持該協(xié)議。缺點:慢。檢驗和信息包格式如圖11所示。

       

      Byte1

      Byte2

      Byte3

      Byte4--131

      Byte132

      Start of Hearder

      Package Number

      ~(Package Number)

      Package Data

      Check Sum

      1-1校驗和信息包格式

                     

          Xmodem協(xié)議的數(shù)據(jù)包格式在90年代經(jīng)過一次修改,傳輸數(shù)據(jù)單位仍為信息包,包含一個標(biāo)題開始字符SOH,一個單字節(jié)包序號,一個包序號的補碼,128個字節(jié)數(shù)據(jù)和一個雙字節(jié)的CRC16校驗。所以新的協(xié)議格式信息包如圖1-2所示。

      Byte1

      Byte2

      Byte3

      Byte4--131

      Byte132--133

      Start of Hearder

      Package Number

      ~(Package Number)

      Package Data

      16-Bit CRC

      12 CRC校驗信息包格式

            1.2.3. 校驗和信息包

      1>   信息包校驗和

      <SOH><blk #><255-blk #><--128 data bytes--><cksum>

      其中:

      <SOH>         =01 hex

      <blk #>  =信息包序號,01開始以發(fā)送一包將加1,加到FF hex將循環(huán)。

      <255-blk #>  =信息包序號的補碼。

      <cksum>     =保留字節(jié),丟掉進位的和校驗。

      2>   校驗和方式數(shù)據(jù)傳輸流程

      接收方要求發(fā)送方以校驗和方式發(fā)送時以NAK來請求,發(fā)送方將對此做出應(yīng)答。如表11所示傳輸5包數(shù)據(jù)的示意過程。

      Sender

      Flow

      Receiver

       

      ß

      NAK

       

       

      Time out after 3 Second

       

      ß

      NAK

      SOH|0X01|0XFE|DATA[0--127]|CHKSUM

      à

      Packed Ok

       

      ß

      ACK

      SOH|0X02|0XFD|DATA[0--127]|CHKSUM

      à

      Line hit during transmission

       

      ß

      NAK

      SOH|0X02|0XFD|DATA[0--127]|CHKSUM

      à

      Packed Ok

       

      ß

      ACK

      SOH|0X03|0XFC|DATA[0--127]|CHKSUM

      à

      Packed Ok

      ACK get garbaged

      ß

      ACK

      SOH|0X03|0XFC|DATA[0--127]|CHKSUM

      à

      Duplicate Packed

       

      ß

      NAK

      SOH|0X04|0XFB|DATA[0--127]|CHKSUM

      à

      Uart Framing err on any byte

       

      ß

      NAK

      SOH|0X04|0XFB|DATA[0--127]|CHKSUM

      à

      Packed Ok

       

      ß

      ACK

      SOH|0X05|0XFA|DATA[0--127]|CHKSUM

      à

      UART Overrun err on any byte

       

      ß

      NAK

      SOH|0X05|0XFA|DATA[0--127]|CHKSUM

      à

      Packed Ok

       

      ß

      ACK

      EOT

      à

      Packed Ok

      ACK get garbaged

      ß

      ACK

      EOT

      à

      Packed Ok

      Finished

      ß

      ACK

      11 校驗和數(shù)據(jù)傳輸過程

      1.2.4.CRC校驗信息包

      1、CRC校驗信息包

      <SOH><blk #><255-blk #><--128 data bytes--><CRC hi><CRC lo>其中:

      <SOH>         = 01 hex

      <blk #>  = 信息包序號,01開始以發(fā)送一包將加1,加到FF hex將循環(huán)。

      <255-blk #>  = 信息包序號的補碼。

      <CRC hi>         = CRC16高字節(jié)。

      <CRC lo>     = CRC16低字節(jié)。

      2、CRC描述

      計算16Bit CRC校驗的除數(shù)多項式為X^16 + X^12 + X^5 + 1,信息包中的128數(shù)據(jù)字節(jié)將參加CRC校驗的計算。在發(fā)送端CRC16的高字節(jié)在先,低字節(jié)在后。

      如表12所示傳輸3包數(shù)據(jù)的示意過程。

      Sender

      Flow

      Receiver

       

      ß

      C’

       

       

      Time out after 3 Second

       

      ß

      C’

      SOH|0X01|0XFE|DATA[0--127]|CRC16

      à

      Packed Ok

       

      ß

      ACK

      SOH|0X02|0XFD|DATA[0--127]|CRC16

      à

      Line hit during transmission

       

      ß

      NAK

      SOH|0X02|0XFD|DATA[0--127]|CRC16

      à

      Packed Ok

       

      ß

      ACK

      SOH|0X03|0XFC|DATA[0--127]|CRC16

      à

      Packed Ok

       

      ß

      ACK

      EOT

      à

      Packed Ok

      ACK get garbaged

      ß

      ACK

      EOT

      à

      Packed Ok

      Finished

      ß

      ACK

      12 CRC校驗數(shù)據(jù)傳輸過程

      3、CRC校驗方式數(shù)據(jù)傳輸流程

      接收方要求發(fā)送方以CRC校驗方式發(fā)送時以C來請求,發(fā)送方將對此做出應(yīng)答。

      4、在發(fā)送方僅支持校驗和傳輸方式時,就應(yīng)對其請求NAK,要求以CheckSum的校驗方式來發(fā)送數(shù)據(jù),如表11所示過程。如果發(fā)送方僅僅支持CRC校驗的傳輸方式,應(yīng)以’C’來請求發(fā)送,如表12所示過程。如果兩者都支持的話,將優(yōu)先以’C’來請求發(fā)送。所以接收程序的實現(xiàn)過程將如表13所示。

      Sender

      Flow

      Receiver

       

      ß

      C’

       

       

      Time out after 3 Second

       

      ß

      NAK

       

       

      Time out after 3 Second

       

      ß

      C’

       

       

      Time out after 3 Second

       

      ß

      NAK

      SOH|0X01|0XFE|DATA[0--127]|CHKSUM

      à

         

       

      ß

      ACK

      SOH|0X02|0XFD|DATA[0--127]|CHKSUM

      à

      Line hit during transmission

       

      ß

      NAK

      SOH|0X02|0XFD|DATA[0--127]|CHKSUM

      à

      Packed Ok

       

      ß

      ACK

      SOH|0X03|0XFC|DATA[0--127]|CHKSUM

      à

      Packed Ok

       

      ß

      ACK

      EOT

      à

      Packed Ok

      ACK get garbaged

      ß

      ACK

      EOT

      à

      Packed Ok

      Finished

      ß

      ACK

      5、信息包中如果剩余的數(shù)據(jù)不足128Byte信息包的格式為:

      SOH 04 0xFB Data[100] CPMEOF[28] CRC CRC】,不足的CPMEOF[28]將以0x1A^Z)填充。

       

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多