ST官方代码——YModem协议部分c代码分析

    技术2022-07-11  116

    ST官方代码——YModem协议部分c代码分析

     

    1-实验结论:

    对比标准Ymodem协议,ST官方IAP代码中YModem协议少了以下部分:

    发送端(secureCRT)                      接收端(开发板)

    EOT---->

                                                       NAK----<

    2-YModem

    YModem协议是由XModem协议演变而来的,每包数据可以达到1024字节,是一个非常高效的文件传输协议。参考资料如下

    https://baike.baidu.com/item/Ymodem?fr=aladdin

    https://blog.csdn.net/qingzhuyuxian/article/details/80769163

    3-ST官方IAP工程代码

    https://pan.baidu.com/s/1_3R5iDKTMsbhj2Fv60mAvQ

    4-修改后STM32f103ZET6工程(ymodem.c添加注释和调试代码)

    串口1用于与secureCRT 8.5通信,串口2用于打印调试代码

    https://pan.baidu.com/s/1NVYjwqt-Mq9CB7NovLWASA

    5-ymodem.c文件代码分析,请见工程中

    6-不错的STM IAP文章

    https://blog.csdn.net/yazhouren/article/details/73385580

    7-实验结果:

    8-YModem协议部分代码分析

    第一帧数据

    数据帧

    结束帧

    ST官方IAP代码中YModem协议怎么少了一部分呢?

    在阿莫论坛修复了问题,详细请见 https://www.amobbs.com/thread-5705496-1-1.html

    修改代码,符合标准YModem协议,具体如下

    1-接收端在第一次收到EOT时,发送NAK。那么发送端会再一次发送EOT,此时接收端发送ACK应答

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

    Processed: 0.016, SQL: 9