Skip to content

Latest commit

 

History

History
41 lines (25 loc) · 2.65 KB

README_CN.md

File metadata and controls

41 lines (25 loc) · 2.65 KB

数传协议

Version  Build  License        English / 中文

    这个项目是作者在高三参加Robomaster高中生夏令营时提出并制定的一个轻量的数传协议的衍生版本,主要目的是实现传输层的功能。这个协议可以被运用在各种物理层上,比如UART、SPI、IIC等,为顺序传输数据提供了保证。根据传输数据量大小的需求,作者将协议分为了以下三个不同的版本:

    注:请在满足传输容量的情况下尽量选择小的数据传输协议,因为越大容量的数据传输协议占用的堆栈越大、协议处理越复杂、出错概率越大,体现在单片机上就是中断占用时间更长(呈几何增长)、堆栈更容易溢出。


源码移植:

  1. 将"src"文件夹中的encrypt.c,encrypt.h,decrypt.c,decrypt.h,ioctrl.c,ioctrl.h文件均移植到项目中。
  2. 在ioctrl.c文件中实现最基本的发送单个字节功能,即实现common_sendbyte函数,将data发送出去。
  3. 在接收完成一个字节的数据后,调用decrypt.c文件的common_receivebyte函数,将接收的字节传到data中。
  4. 完成上述步骤后,调用encrypt中的函数xdtp_data_transmit即可发送包;接收完成一个包后会触发ioctrl.c中的回调函数xdtp_callback_handler。

BUG报告 & 功能需求

请使用Issue Tracker报告错误和需求功能,并遵循以下要求:

  1. 在不同选项卡上突出显示选项卡。
  2. 如果窗口未聚焦,不要让更新消失。

许可证

源代码根据AGPL-3.0许可证发布。

组织:AcmeTech
作者:朱彦臻
维护人:朱彦臻, [email protected]

该产品已经在Windows 10、Ubuntu 22.04 LTS下进行了测试。这是一个研究代码,希望它经常更改,并且不承认任何特定用途的适用性。