欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年Ymodem协议学习笔记3.docx

    • 资源ID:27204960       资源大小:43.55KB        全文页数:9页
    • 资源格式: DOCX        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年Ymodem协议学习笔记3.docx

    名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -学习必备 欢迎下载Ymedom协议一、 Ymodem协议学习的目的1、Ymodem协议的应用打开超级终端,在传送主菜单里,有接收文件和发送文件的子菜单;也就是超级终端可以与 连接的对象之间相互传送文件;打开发送文件选项,可知,只需要挑选“ 文件名” 和“ 协议” 两个选项,就可以进行文件的 传送了;协议的类型有 7 中,Xmodem及改进的 1k-Xmodem,Ymodem和 Ymodem-G,Zmodem及其改进协议,以及 Kermit ,我这次主要学习嵌入式系统中用得较多的 Ymodem协议;2、学习的目标(1)传送文件的实现添加一个命令, fsend ,这个命令接受一个参数,就是文件的最终存放目录;当开发板接收到 这个命令后,做好接收文件的预备;与超级终端进行协商后,将收到的文件写入指定位置;(2)接收文件的实现添加一个命令 frecv ,这个命令接受一个参数,就是超级终端所要索取的文件;当开发板接收 到这个命令后,就等待终端发送索取文件的协商要求;二、 Ymodem协议分析1、明确概念一步一步来,先把概念搞清晰;Ymodem协议是一种发送并等待的协议;即发送方发送一个数据包以后,都要等待接收方的确认;假如是 ACK信号,就可以发送新的包;假如是 、文件传输过程文件传输过程的开启:NAK信号,就重发或者错误退出;(1)开启是由接收方开启传输,它发一个大写字母C开启传输;然后进入等待(SOH)状态,假如没有回应,就会超时退出;细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 1 页,共 5 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -学习必备 欢迎下载(2)发送方开头时处于等待过程中,等待 C;收到 C以后,发送( SOH)数据包开头信号,发 送序号( 00),补码( FF),“ 文件名” ,“ 空格” “ 文件大小” “ 除去序号外,补满 128字节” , CRC校验两个字节;进入等待(ACK)状态;(3)接收方收到以后, CRC校验满意,就发送ACK;发送方接收到 ACK,又进入等待“ 文件传输开启” 信号,即重新进入等待“C” 的状态;(4)前面接收方只是收到了一个文件名,限制正式开启文件传输,Ymodem支持 128 字节和1024 字节一个数据包; 128 字节以()开头,字节以()开头;接收方又发出一个“ ” 信号,开头预备接收文件;进入等待“ ” 或者“ ” 状态;()发送接收到“ ” 以后,发送数据包,()(序号)(补码)(位数据)(校验),等待接收方“ ” ;()文件发送完以后,发送方发出一个“ ” 信号,接收方也以“ ” 回应;然后接收方会再次发出“ ” 开启另一次传输,如接着发送方会发出一个“ 全数据包” ,接收方“ ” 以后,本次通信正式终止;()当然相对于改进的地方就在于传输再次开启以后,又可以发送另外一个文件,即一次传输答应发送多个文件,但这个特性我就不预备实现了;、所用到的符号#define MODEM_SOH 0x01 /数据块起始字符#define MODEM_STX 0x02 字节开头#define MODEM_EOT 0x04 文件传输终止#define MODEM_ACK 0x06 确认应答#define MODEM_NAK 0x15 显现错误#define MODEM_CAN 0x18 取消传输#define MODEM_C 0x43 大写字母细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 2 页,共 5 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -学习必备 欢迎下载、运算方法u16 YmodemCrcu8 *bytes, u32 len int crc = 0; int i, j; fori = 0; i < len; i+ crc = crc bytesi << 8; forj = 0; j < 8; j+ ifcrc & int 0x8000 .= 0 crc = crc << 1 0x1021; else crc = crc << 1; return crc & 0xFFFF; 三、协议解析接收方:发出 0x43 表示恳求对方发送数据发送方:发出第 0 个数据包数据包构成:1:0x01 或者 0x02;0x01 表示 128 字节, 0x02 表示 1024 字节2:0x00 表示第 0 个数据包3:0xff 第几个数据包的补码4 4 + 文名的长度 文件名,以 0x00 终止4 + 文件名的长度 + 1 文件大小,以 0x00 终止正文不足 128 字节 补 0x00 Crc 校验接收方: 0x06 或者 0x15 0x06 应答, 0x15 非应签接收方: 0x43 1 个数据包恳求对方发送正文发送方:发出第数据包构成:1:0x01 或者 0x02;0x01 表示 128 字节, 0x02 表示 1024 字节2:0x01 表示第 1 个数据包 3:0xfe 第几个数据包的补码4:正文 Crc 校验 接收方: 0x06 或者 0x15 注:发送方收到应答后立刻发送其次个数据包直到数据包发送终止后发出0x04 第 3 页,共 5 页 发送方:发出第2 个数据包细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -学习必备 欢迎下载数据包构成:1:0x01 或者 0x02;0x01 表示 128 字节, 0x02 表示 1024 字节2:0x02 表示第 2 个数据包 3:0xfd 第几个数据包的补码 4:正文 正文不足 128 位补 0x1a Crc 校验 接收方: 0x06 或者 0x15 发送方: 0x04 传送终止 接收方: 0x06 应答接收方: 0x43 再次恳求 发送方:发送全零数据包数据包的构成:1:0x01 2:0x00 3:0xff 4:128 个 0x00 Crc 校验 接收方: 0x06 数据通信终止文件传输过程的开启:(1)开启是由接收方开启传输,它发一个大写字母C开启传输;然后进入等待(SOH)状态,假如没有回应,就会超时退出;(2)发送方开头时处于等待过程中,等待C;收到 C以后,发送( SOH)数据包开头信号,发送序号( 00),补码( FF),“ 文件名” ,“ 空格” “ 文件大小” “ 除去序号外,补满 128字节” , CRC校验两个字节;进入等待(ACK)状态;(3)接收方收到以后, CRC校验满意,就发送 输开启” 信号,即重新进入等待“C” 的状态;ACK;发送方接收到 ACK,又进入等待“ 文件传细心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 4 页,共 5 页 - - - - - - - - - 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -学习必备 欢迎下载(4)前面接收方只是收到了一个文件名,限制正式开启文件传输,Ymodem支持 128 字节和 1024 字节一个数据包; 128 字节以()开头,字节以()开头;接收方又发出一个“ ” 信号,开头预备接收文件;进入等待“ ” 或者“ ” 状 态;()发送接收到“ ” 以后,发送数据包,()(序号)(补码)( 位数据)(校验),等待接收方“ ” ;()文件发送完以后,发送方发出一个“ ” 信号,接收方也以“ ” 回应;然后接收方会再次发出“ ” 开启另一次传输,如接着发送方会发出一个“ 全数据包” ,接收方“ ” 以后,本次通信正式终止;()当然相对于改进的地方就在于传输再次开启以后,又可以 发送另外一个文件,即一次传输答应发送多个文件,但这个特性我就不预备实现了;所用到的符号 #define MODEM_SOH 0x01 /数据块起始字符 #define MODEM_STX 0x02 字节开头 #define MODEM_EOT 0x04 文件传输终止 #define MODEM_ACK 0x06 确认应答 #define MODEM_NAK 0x15 显现错误 #define MODEM_CAN 0x18 取消传输 #define MODEM_C 0x43 大写字母0x0d = 'r' 0x0a =n 'r'是回车 第 5 页,共 5 页 - - - - - - - - - 'n'是换行"rn"这样的组合是在windows 下的换行,假如以文本方式打开这个文件,就会自动依据操作系统平台,把全部换行自动转化为单个'n' 细心整理归纳 精选学习资料 - - - - - - - - - - - - - - -

    注意事项

    本文(2022年Ymodem协议学习笔记3.docx)为本站会员(Che****ry)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开