IO模块数据包传输速率

通讯设置 

波特率:9600 bps(默认值,可设)

数据域:8 bits

停止位:1 bit

校验位:None

流控制:None

没有校验位时,数据位8bit+停止位1bit=9bit

波特率9600(bps) = 9600 (位/秒) /9bit= 1066.66Byte/秒=1066/1024=1.04 (KB/秒)

 

 

(1)CPU发送指令到MCU:

指令头

长度字

身份码

命令码

命令参数

数据域

校验码

结束符

 

指令头:1 字节 = 0x24  即字符‘$’

长度字:1 字节,指明从身份码到校验码的字节数

身份码:1字节,代表了目标终端的身份ID。默认为0X0A,可设置。

命令码:1 字节

命令参数:根据不同命令而变化

数据域:字节数根据不同命令而变化

校验码:除了指令头和结束符,其余位参与异或运算得出校验位

结束符:2 字节,0x0d 0x0a

 

(2)MCU返回:

指令头

长度字

身份码

命令码

命令参数

数据域

校验码

结束符

指令头:1 字节 =0x24  即字符‘$’

长度字:1 字节,指明从身份码到数据域的字节数

身份码:1字节,代表了本终端的身份ID。默认为0X0A,可设置。

命令码:1 字节 

命令参数:根据响应的命令而变化

数据域:字节数根据不同命令而变化 

校验码:除了指令头和结束符,其余位参与异或运算得出校验位

结束符:2 字节,0x0d 0x0a

 

(3)速度响应

n 使用9600bps通讯速率来说明速度响应:

假如一个数据包

查询:6个字节

MCU返回:8个字节

 

没有校验位时,数据位8bit+停止位1bit=9bit

波特率9600(bps) = 9600 (位/秒) /9bit= 1066.66Byte/秒=1066/1024=1.04 (KB/秒)

 

查询+MCU返回:6+8=14字节=14字节

速度响应:14Byte/(1066Byte/s)=0.013s=0.013*1000ms=13ms

 

n 使用115200bps通讯速率来说明速度响应:

假如一个数据包

查询:6个字节

MCU返回:8个字节

 

没有校验位时,数据位8bit+停止位1bit=9bit

波特率115200(bps) = 115200 (位/秒) /9bit= 12800Byte/秒=12800/1024=12.5 (KB/秒)

 

查询+MCU返回:6+8=14字节=14字节

速度响应:14Byte/(12800 Byte/s)=0.0011s=0.0011*1000ms=1.1ms

 

串口通道传输速率可参考%80利用率计算,根据实际需求*0.8

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在FPGA中调用RocketIO模块的过程如下: 首先,我们需要在FPGA设计中引入RocketIO模块。RocketIO模块是用于高速串行通信和数据传输的模块,常用于FPGA设计中的数据收发接口。 接下来,我们需要配置RocketIO模块的参数。这可以通过FPGA开发软件中的工具进行操作,具体的步骤如下: 1. 打开FPGA开发软件并加载FPGA设计项目。 2. 找到RocketIO模块的配置选项,通常可以在“IP Catalog”或类似的选项中找到。 3. 根据需求和设计要求,配置RocketIO模块的参数。这些参数包括数据速率、时钟频率、通信协议等等。根据不同的应用场景,可能需要对RocketIO模块进行多个参数的配置。 4. 完成配置后,生成RocketIO模块的实例。这会插入一个RocketIO实例到FPGA设计中。 配置完成后,我们可以在FPGA设计中使用RocketIO模块进行数据传输。这可以通过FPGA开发软件提供的编程接口来实现,具体步骤如下: 1. 在FPGA设计中引入RocketIO模块的实例。 2. 使用设计语言(如Verilog或VHDL)编写代码,以实现与RocketIO模块的交互和数据传输。这通常涉及到配置和控制RocketIO模块,以及接收和发送数据。 3. 编译FPGA设计,并使用相应的工具将其烧录到FPGA芯片中。 4. 在FPGA上运行时,RocketIO模块将按照配置和代码中的指令进行工作,实现串行通信和数据传输。 需要注意的是,RocketIO模块通常需要与其他外部设备(如传感器、计算机等)进行配合使用,以完成完整的数据传输和通信功能。对于与其他设备的连接和通信,可能需要采用适当的协议和接口,如串口、以太网等。 总而言之,通过在FPGA设计中引入RocketIO模块、配置其参数,以及在代码中实现与其的交互,就可以实现在FPGA中调用RocketIO模块,并完成相应的串行通信和数据传输功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值