国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Ymodem協(xié)議要點

1.寫在前面

??在進行文件傳輸時,為使文件能被正確識別和傳送,需要在兩臺計算機之間建立統(tǒng)一的傳輸協(xié)議,協(xié)議需要包括了文件的識別、傳送的起止時間、錯誤的判斷與糾正等內(nèi)容。常用的文件傳輸協(xié)議有:

【1】ASCII:傳輸速度快最快,但只能傳送文本文件。

【2】Xmodem:協(xié)議古老悠久,傳輸速度較慢,采用了CRC校驗算法,傳輸?shù)臏蚀_率可高達99.6%;每次傳輸信息塊為128字節(jié)。

【3】Ymodem:Ymodem是Xmodem的改進版,每次傳輸信息塊最大1024字節(jié),速度比Xmodem快;同時還支持傳輸多個文件。

【4】Zmodem:Zmodem采用了串流式(streaming)傳輸方式,傳輸速度較快,而且還具有自動改變區(qū)段大小和斷點續(xù)傳、快速錯誤偵測等功能。Zmodem目前最流行的文件傳輸協(xié)議。

??Ymodem協(xié)議用于計算機間傳輸文件,同樣適用于嵌入式領域,如MCU升級固件時,可以使用Ymodem協(xié)議傳輸固件文件,傳輸總線不限于USB、UART、CAN等。

2.Ymodem 幀格式

??Ymodem 有兩種幀格式,主要區(qū)別是信息塊長度不一樣。

名稱 幀頭 包號 包號反碼 信息塊 校驗

簡寫        SOH/STX     PN XPN        DATA    CRC

字節(jié)數(shù)     1             1            1        1024/128       2

2.1 幀頭

??幀頭表示兩種數(shù)據(jù)幀長度,主要是信息塊長度不同。

幀頭                 SOH(0x01)     STX(0x02)

信息塊長度 128字節(jié)              1024字節(jié)

2.2 包序號

??數(shù)據(jù)包序號只有1字節(jié),因此計算范圍是0~255;對于數(shù)據(jù)包大于255的,序號歸零重復計算。

2.3 幀長度

【1】以SOH(0x01)開始的數(shù)據(jù)包,信息塊是128字節(jié),該類型幀總長度為133字節(jié)。

【2】以STX(0x02)開始的數(shù)據(jù)包,信息塊是1024字節(jié),該類型幀總長度為1029字節(jié)。

2.4 校驗

??Ymodem采用的是CRC16校驗算法,校驗值為2字節(jié),傳輸時CRC高八位在前,低八位在后;CRC計算數(shù)據(jù)為信息塊數(shù)據(jù),不包含幀頭、包號、包號反碼。

3.Ymodem握手信號

??握手信號由接收方發(fā)起,在發(fā)送方開始傳輸文件前,接收方需發(fā)送YMODEM_C (字符C,ASII碼為0x43)命令,發(fā)送方收到后,開始傳輸起始幀。

4.Ymodem起始幀

??Ymodem起始幀并不直接傳輸文件內(nèi)容,而是先將文件名和文件大小置于數(shù)據(jù)幀中傳輸;起始幀是以SOH 133字節(jié)長度幀傳輸,格式如下。

幀頭  包號   包號反碼    文件名稱           文件大小          填充區(qū)         校驗高位     校驗低位

SOH   0x00   0xff   File name+0x00   File size+0x00  NULL(0x00) CRC-H    CRC-L

??其中包號為固定為0;Filename為文件名稱,文件名稱后必須加0x00作為結束;Filesize為文件大小值,文件大小值后必須加0x00作為結束;余下未滿128字節(jié)數(shù)據(jù)區(qū)域,則以0x00填充。

5.Ymodem數(shù)據(jù)幀

??Ymodem數(shù)據(jù)幀傳輸,在信息塊填充有效數(shù)據(jù)。

幀頭          包號 包號反碼   有效數(shù)據(jù) 校驗高位    校驗低位

SOH/STX  PN          XPN    DATA          CRC-H      CRC-L

??傳輸有效數(shù)據(jù)時主要考慮的是最后一包數(shù)據(jù)的是處理,SOH幀和STR幀有不同的處理。

【1】對于SOH幀,若余下數(shù)據(jù)小于128字節(jié),則以0x1A填充,該幀長度仍為133字節(jié)。

【2】對于STX幀需考慮幾種情況:

??●余下數(shù)據(jù)等于1024字節(jié),以1029長度幀發(fā)送;

??●余下數(shù)據(jù)小于1024字節(jié),但大于128字節(jié),以1029字節(jié)幀長度發(fā)送,無效數(shù)據(jù)以0x1A填充。

??●余下數(shù)據(jù)等于128字節(jié),以133字節(jié)幀長度發(fā)送。

??●余下數(shù)據(jù)小于128字節(jié),以133字節(jié)幀長度發(fā)送,無效數(shù)據(jù)以0x1A填充。

6.Ymodem結束幀

??Ymodem的結束幀采用SOH 133字節(jié)長度幀傳輸,該幀不攜帶數(shù)據(jù)(空包),即數(shù)據(jù)區(qū)、校驗都以0x00填充。

幀頭          包號 包號反碼       數(shù)據(jù)區(qū) 校驗高位       校驗低位

SOH  0x00 0xff               0x00           0x00        0x00

7.Ymodem命令

命令 命令碼 備注

YMODEM_SOH 0x01 133字節(jié)長度幀

YMODEM_STX         0x02 1024字節(jié)長度幀

YMODEM_EOT 0x04 文件傳輸結束命令

YMODEM_ACK 0x06 接收正確應答命令

YMODEM_NAK 0x15 重傳當前數(shù)據(jù)包請求命令

YMODEM_CAN 0x18 取消傳輸命令,連續(xù)發(fā)送5個該命令

YMODEM_C         0x43 字符C

————————————————

版權聲明:本文為CSDN博主「Acuity.」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權協(xié)議,轉載請附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/qq_20553613/article/details/88881227

本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
stm32 Bootloader設計(YModem協(xié)議)
KERMIT,XMODEM,YMODEM,ZMODEM傳輸協(xié)議小結[轉]
研究Xmodem協(xié)議必看的11個問題
數(shù)據(jù)通信規(guī)程
點對點信道的數(shù)據(jù)鏈路層
MD5、SHA1、CRC32值是干什么的?
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服