当前位置: 首页 > news >正文

视觉学习(7) —— 接收数据和发送数据以及全局变量和浮点数

 1、前提

创建一个四个字节的地址

2、发送数据

(1)直接发送数据

再观察地址里的值

与我们想要值不一样

输入0,而实际值则为

结论:直接输入值到地址,值会发生变化

(2)走全局变量发送数据

添加全局变量(值为1,更好的区分)

走全局变量发送数据

查看地址的数据值

发现问题:

这里可以观察到,地址数值为 00 01 00 00 ,与预想不符

查看地址的绑定

虽然寄存器个数是2个,但是Int类型是16位

所以结果只在前两个字节显示,我们将其更改为32位,再发送一次

(8bit = 1字节)(16bit = 2字节)(32bit = 4字节)

地址的数据显示为16进制显示

此时的结果为 00 00 00 01 ,是我们的准确结果

3、接收数据

若Int类型选择16位,但接收数据是32位的数据会如何,用float类型测试一下

将输入值更改成32位浮点数(大小端可以自己选)—— 这里是大端

更改后如下图

输入浮点数3.14,视觉里查看地址数据

接收数据接收地址里的数据

将地址数据进行解析(地址位置0-3,是因为四个字节,0,1,2,3)

可以发现Int类型为16位并不影响接收32位数据

4、视觉发送浮点数数据

执行发送,观察数值

可以看到 Int类型为16bit依旧可以发浮点数的数据

如果将发送顺序更改呢

从站接收的数据明显发生变化

5、结论

(1)视觉接收别人发送的数据

只需要注意寄存器个数即可,一个寄存器存16bit即两个字节,想接收 Int类型和float类型 ,则需要两个寄存器

(2)视觉发送数据给别人

整数:

看地址中寄存器个数选择

一个寄存器为一个地址,即 Int类型选择16bit

两个寄存器为一个地址,即 Int类型选择32bit

浮点数:

双方先约定好浮点数的传输走的是大端还是小端

再去更改发送顺序

大端好像是ABCD

小端没有进行试验,可以自行尝试,非常简单

http://www.lryc.cn/news/268102.html

相关文章:

  • leetcode 1576. 替换所有的问号(easy)(优质解法)
  • Advanced IP Scanner - 网络扫描器
  • 搜索百度百科官方创建入口,怎么创建更新公司的百度百科词条呢?
  • 大数据与人工智能|全面数字化战略与企业数字化转型(第1节 )
  • 【四】【C语言\动态规划】地下城游戏、按摩师、打家劫舍 II,三道题目深度解析
  • 【大数据存储与处理】开卷考试总复习笔记
  • HTML 实操试题(一)
  • 创龙瑞芯微RK3568设备树1(修改设备树GPIO和串口)
  • R语言【dplyr】——filter保留符合筛选条件的行,以数据的行为单位,创建子集
  • 几种串口扩展电路
  • 实战10 角色管理
  • Lua的底层原理与C#交互原理浅析【更新中】
  • 鸿蒙项目二—— 注册和登录
  • Dijkstra(迪杰斯特拉)算法总结
  • 设计模式?!
  • Pytorch项目,肺癌检测项目之三
  • 深圳鼎信|输电线路防山火视频监控预警装置:森林火灾来袭,安全不留白!
  • 【Bash/Shell】知识总结
  • 单例模式(C++实现)
  • ElasticSearch 聚合统计
  • SpringIOC之MethodBasedEvaluationContext
  • 【网络安全 | 网络协议】结合Wireshark讲解TCP三次握手
  • 钦丰科技(安徽)股份有限公司携卫生级阀门管件盛装亮相2024发酵展
  • Python模拟动态星空
  • 最新技术整理3款开源免费直播推流工具,实现实时视频推流、视频拉流,目标端可以是服务器、云平台、移动设备等(附源码)
  • shell ——数组
  • GO语言基础笔记(五):包的介绍
  • 【Unity6.0+AI】Sentis加载模型识别手写数字案例实现
  • VScode跑通Remix.js官方的contact程序开发过程
  • 讲座思考 | 周志华教授:新型机器学习神经元模型的探索