通讯专题4.1——CAN通信之计算机网络与现场总线

        从通讯专题4开始,来学习CAN总线的内容。

        为了更好的学习CAN,先从计算机网络与现场总线开始了解。

1 计算机网络体系的结构

        在我们生活当中,有许多的网络,如交通网(铁路、公路等)、通信网(电信、邮政等)等。每种网都不一样,比如一间办公室也可以比拟成一个网络,一家公司也可以比拟成一个网络,但是不管是什么网络,为了正常、高效地运作,都要制定它的各种规范。 同样的,计算机也是如此。

        当我们遇到一个复杂的系统时,为了更快速的了解,就会将这个复杂的系统划分为若干部分,然后将每个部分的功能进行了解,然后再进行系统的整合,就可以了解全貌。再举一个例子,比如需要修一座三层的小高楼,首先将其分解成地基、第一层、第二层及第三层,地基与第一层、第一层与第二层应该怎么连接就需要有相应的连接规则等。而现代网络采用的就是分层的体系结构方法。

        现代网络就是将网络按照功能分成一系列的层次,每一层完成一个特定的功能,相邻层中的高层直接使用低层提供的服务来实现本层的功能,同时,它又向它的上层提供服务。 各层之间相互独立,每一层的信息交互都有相应的规则,如果需要修改某层的功能时,只需要保证接口满足其交互规则即可。

        网络系统可分为7层:从上到下依次为应用层、表示层、会话层、传输层、网络层、数据链层、物理层。如图1所示。

图1 网路系统层的介绍图 

        举例:人与人通电话,人属于应用层;信号的调制与解调相当于网络层;信号的接收与传送相当于数据链层和物理层 。应用层不需要知道其它层是怎么运行的,只需要知道规则(就是拨号)即可使用。

2 每一层的定义

2.1 物理层

       主要负责解决各种设备之间的数据传输问题,对各种设备接口的机械特征、电气特征、功能特征等。  

2.1.1 信道 

  1. 类型:由单向通信、半双工通信及双工通信;
  2. 波特率:指信号每秒变化的次数;
  3. 比特率:指每秒中传输的数据位数;
  4. 数据与信号:模拟信号和数字信号;

2.1.2  传输媒体

  1. 双绞线;
  2. 同轴电缆;
  3. 光纤
  4. 等等。

 2.2 数据链路层

        数据链路层主要是将MAC地址加入道需要传输的数据首部。 MAC地址就是物理网卡的唯一地址。

2.3 网络层

        顾名思义,这一层需要用到普通大众所用的“网络”,每个网络进行数据交换时,使用的是IP地址,而这个赋予的IP地址就是网络层。

2.4 传输层

        同一个软件端对端数据传输。指的是A与B两个同学,A与B要交流,使用的是交流软件必须一致。A使用微信,B也必须使用微信。 

2.5 会话层

         计算机知道了需要传输的内容,准备发送,第一步就是和指定通信对象建立会话关系。比如:A和B两个人,需要交流,二者之间需要建立一个“会话”的机制,才可以进行交流。

2.6 表示层

        主要起到翻译的作用。将语言(比如C语言)翻译成计算机能够识别的语言,然后数据进行加密,压缩等。 

2.7 应用层

        人机交互界面,系统程序的窗口。 

3 参考文献 

  1.  1、网络定义、分层_计算机网络层-CSDN博客
  2.  计算机网络入门(问题导向式)_计网标识是怎么产生的-CSDN博客
  3.  https://zhuanlan.zhihu.com/p/4554045035

         

         

         

                   

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/62674.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深度学习模型:LSTM (Long Short-Term Memory) - 长短时记忆网络详解

一、引言 在深度学习领域,循环神经网络(RNN)在处理序列数据方面具有独特的优势,例如语音识别、自然语言处理等任务。然而,传统的 RNN 在处理长序列数据时面临着严重的梯度消失问题,这使得网络难以学习到长…

算法笔记:力扣24. 两两交换链表中的节点

思路: 本题最简单的就是通过递归的形式去实现 class Solution {public ListNode swapPairs(ListNode head) {if(head null || head.next null){return head;}ListNode next head.next;head.next swapPairs(next.next);next.next head;return next;} } 对于链…

ehr系统建设方案,人力资源功能模块主要分为哪些,hrm平台实际案例源码,springboot人力资源系统,vue,JAVA语言hr系统(源码)

eHR人力资源管理系统:功能强大的人力资源管理工具 随着企业规模的不断扩大和业务需求的多样化,传统的人力资源管理模式已无法满足现代企业的需求。eHR人力资源管理系统作为一种先进的管理工具,能够为企业提供高效、准确、实时的人力资源管理。…

【Android】从事件分发开始:原理解析如何解决滑动冲突

【Android】从事件分发开始:原理解析如何解决滑动冲突 文章目录 【Android】从事件分发开始:原理解析如何解决滑动冲突Activity层级结构浅析Activity的setContentView源码浅析AppCompatActivity的setContentView源码 触控三分显纷争,滑动冲突…

OGRE 3D----2. QGRE + QQuickView

将 OGRE(面向对象图形渲染引擎)集成到使用 QQuickView 的 Qt Quick 应用程序中,可以在现代灵活的 UI 框架中提供强大的 3D 渲染功能。本文将指导您如何在 QQuickView 环境中设置 OGRE。 前提条件 在开始之前,请确保您已安装以下内容: Qt(版本 5.15 )OGRE(版本14.2.5)…

GAGAvatar: Generalizable and Animatable Gaussian Head Avatar 学习笔记

1 Overall GAGAvatar(Generalizable and Animatable Gaussian Avatar),一种面向单张图片驱动的可动画化头部头像重建的方法,解决了现有方法在渲染效率和泛化能力上的局限。 旋转参数 现有方法的局限性: 基于NeRF的方…

论文笔记-WWW2024-ClickPrompt

论文笔记-WWW2024-ClickPrompt: CTR Models are Strong Prompt Generators for Adapting Language Models to CTR Prediction ClickPrompt: CTR模型是大模型适配CTR预测任务的强大提示生成器摘要1.引言2.预备知识2.1传统CTR预测2.2基于PLM的CTR预测 3.方法3.1概述3.2模态转换3.…

基于若依框架和Vue2 + Element-UI 实现图片上传组件的重写与优化

背景 在使用 若依分离版Element-UI 的图片上传组件时,需要根据业务需求进行定制化处理,比如: 需要传递额外的业务参数到后端需要对上传路径进行修改需要对上传组件进行样式定制 实现步骤 1. 创建本地组件 首先在业务模块下创建本地的图片上传组件: src/views/xxx/compone…

预训练模型与ChatGPT:自然语言处理的革新与前景

目录 一、ChatGPT整体背景认知 (一)ChatGPT引起关注的原因 (二)与其他公司的竞争情况 二、NLP学习范式的发展 (一)规则和机器学习时期 (二)基于神经网络的监督学习时期 &…

同时在github和gitee配置密钥

同时在github和gitee配置密钥 1. 生成不同的 SSH 密钥 为每个平台生成单独的 SSH 密钥。 # 为 GitHub 生成密钥(默认文件路径为 ~/.ssh/github_id_rsa) ssh-keygen -t rsa -b 4096 -C "your_github_emailexample.com" -f ~/.ssh/github_id_…

GRAG: Graph Retrieval-Augmented Generation

GRAG: Graph Retrieval-Augmented Generation 摘要 简单检索增强生成 (Naive RAG) 聚焦于单一文档的检索,因此在处理网络化文档时表现不足,例如引用图、社交媒体和知识图谱等应用中非常常见的场景。为了解决这一限制,我们提出了图检索增强生…

使用Python OpenCV实现图像形状检测

目录 一、环境准备 二、读取和预处理图像 读取图像 灰度化 滤波去噪 三、边缘检测 四、查找轮廓 五、绘制轮廓 六、形状分类 七、显示结果 八、完整代码示例 九、总结 图像形状检测是计算机视觉领域中的一项关键技术,广泛应用于工业自动化、机器人视觉、医学图像处…

微知-git如何添加空目录的几种方式?(.gitkeep, githook, gitconfig)

背景 在Git中,空目录(空文件夹)默认是不会被跟踪的,因为Git主要跟踪文件的变化。但是如何让git添加空目录? #mermaid-svg-3Y4NksLyEeuMs4FC {font-family:"trebuchet ms",verdana,arial,sans-serif;font-si…

11.25.2024刷华为OD

文章目录 HJ76 尼科彻斯定理(观察题,不难)HJ77 火车进站(DFS)HJ91 走格子方法,(动态规划,递归,有代表性)HJ93 数组分组(递归)语法知识…

【RISC-V CPU Debug 专栏 1 -- RISC-V debug 规范】

文章目录 RISC-V Debug调试用例支持的功能限制和不包括的内容RISC-V 调试架构的主要组件用户与调试主机调试翻译器调试传输硬件调试传输模块(DTM)调试模块(DM)调试功能触发模块版本介绍RISC-V Debug RISC-V 调试规范为 RISC-V 处理器提供了一套标准化的调试接口和功能,旨…

#Python 同声传译工具 开发中

功能概述 允许用户选择通过麦克风(microphone)或者获取系统声音(system_sound)作为语音输入源。 对输入的语音进行识别,得到对应的文本内容。 将识别出的文本翻译成指定的目标语言。 把翻译后的文本转换为语音并播放出…

多线程篇-8--线程安全(死锁,常用保障安全的方法,安全容器,原子类,Fork/Join框架等)

1、线程安全和不安全定义 (1)、线程安全 线程安全是指一个类或方法在被多个线程访问的情况下可以正确得到结果,不会出现数据不一致或其他错误行为。 线程安全的条件 1、原子性(Atomicity) 多个操作要么全部完成&a…

API 与 SDK 之间的区别

API 与 SDK 之间的区别 很多人在软件开发中经常会分不清 SDK 与 API ,今天就来浅谈一下两者之间的区别。 直白地说,SDK 包含了 API ,是一套完整的,能完成更多功能的工具包,无论你想获取什么样的信息,SDK …

自动驾驶决策规划算法-路径决策算法:二次规划

本文为学习自动驾驶决策规划算法第二章第四节(中) 路径二次规划算法》的学习笔记。 1 二次型 二次型的形式为 1 2 x T H x f T x \begin{equation} \frac{1}{2}\boldsymbol{x}^TH\boldsymbol{x}f^T\boldsymbol{x} \end{equation} 21​xTHxfTx​​ 约束 A e q x b e q \be…

AI开发-数据可视化库-Seaborn

1 需求 概述 Seaborn 是一个基于 Python 的数据可视化库,它建立在 Matplotlib 之上。其主要目的是使数据可视化更加美观、方便和高效。它提供了高层次的接口和各种美观的默认主题,能够帮助用户快速创建出具有吸引力的统计图表,用于数据分析和…