首页
发现
课程
培训
文章
案例
问答
需求
服务
行家
赛事
热门搜索
发布
消息
注册
|
登录
首页
/
文章
/
详情
计算机通信与网络v3 第七章 数据链路控制协议(2)
算法工匠
2年前
浏览2062
关注
本章内容较多,所以依旧分成两部分讲解!对于本科生而言,高级数据链路控制的内容算是比较难的。这种控制方式不仅用在计算机系统中,很多通信系统中也用,只不过用的是简化版本!
在链路方面是什么情况呢?
非平衡设置
一个主站和一个或多个从站
支持全双工或半双工传输
平衡设置
两个混合站组成;
支持全双工或半双工传输。
数据传送方面呢?
先看看正常响应模式!
正常响应方式(简称为NRM)。特点如下:
非平衡设置
主站初始化到从站的数据传送
从站通过传输数据来响应主站的命令
用于多点线路
多个终端连接到一个主计算机上
终端作为从站
帧结构是指将数据在传输过程中划分成一个个特定格式的基本单元的结构。它主要包括以下几个部分:
帧头
:包含同步信息、地址信息等,用于标识帧的开始和接收方的识别。
数据字段
:承载实际要传输的数据内容。
帧尾
:可能包含一些校验信息或其他控制信息,以确保帧的完整性和正确性。
帧结构的设计要考虑数据的有效传输、同步、错误检测与纠正等多方面因素,以保证数据通信的高效和可靠。
重点知识!
帧结构如何设定包含了太多的技巧,这些技巧需要通过实践来掌握,仅靠教学是无法理解的。
帧包含哪些字段是需要大家掌握的!有没有想过为什么要包含这些字段呢?
HDLC(High-Level Data Link Control)是一种数据链路层协议,常用于串行通信中。HDLC帧由起始标志、地址字段、控制字段、信息字段、帧校验序列和结束标志组成。下面是一个简单的MATLAB示例,用于生成HDLC帧。
% HDLC帧生成函数
function frame = generateHDLCFrame(address, control, info)
% 起始标志
startFlag = [0 1 1 1 1 1 1 0];
% 地址字段
addressField = dec2bin(address, 8);
% 控制字段
controlField = dec2bin(control, 8);
% 信息字段
infoField = info;
% 帧校验序列(CRC校验)
crc = crc16(infoField);
crcField = dec2bin(crc, 16);
% 结束标志
endFlag = [0 1 1 1 1 1 1 0];
% 组装帧
frame = [startFlag, addressField, controlField, infoField, crcField, endFlag];
end
% CRC16校验函数
function crc = crc16(data)
% 计算CRC16校验
crc = 0;
polynomial = hex2dec('8005');
for i = 1:length(data)
crc = bitxor(crc, bitshift(data(i), 8));
for j = 1:8
if bitget(crc, 16)
crc = bitxor(bitshift(crc, -1), polynomial);
else
crc = bitshift(crc, -1);
end
end
end
end
上面MATLAB程序中的函数generateHDLCFrame接受三个参数:地址字段、控制字段和信息字段,并返回一个完整的HDLC帧。在这个示例中,假设信息字段直接是二进制形式,而地址字段和控制字段是十进制形式,需要转换成二进制形式。帧校验序列采用了CRC16校验。
你可以调用这个函数来生成HDLC帧,然后将生成的帧发送到串行通信通道上。
请注意,这只是一个简单的示例,实际中还需要根据具体要求来修改和完善这个函数。
同学们要活学活用哦
,不然你肯定会被AI所代替!
什么是HDLC?以后要学协议栈的同学必然要对HDLC帧了如指掌,不如现在就记住它的组成吧!什么是协议栈?找资料看吧。
来源:通信工程师专辑
登录后免费查看全文
立即登录
MATLAB
通信
控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-05-19
最近编辑:2年前
算法工匠
博士后
|
高级工程师
诚信做事 认真讲课 传播知识
关注
获赞 428
粉丝 2850
文章 606
课程 40
点赞
收藏
作者推荐
可试听
前华为技术工程师主讲,Matlab基础理论与操作(适合零基础学员)
¥200
5.0
立即查看
0/200
清空
提交
还没有评论
课程
培训
服务
行家
ANSYS流-固耦合计算方法与实例解析公开课
非周期性任意网格RVE_分层失效
有问必答第2期-无主题自由问答专场【直播回放】
MATLAB通信工程师的必修课 第三章 传输技术 第二部分
相关推荐
通信仿真进阶专题(一) 相干解调Matlab仿真思维与核心技能 第一部分
商业航天卫星微振动建模仿真试验全流程实战:技术迁移可用于精密制造和光学工程等
MATLAB通信工程师的必修课 第四章 信号捕获和同步 第一、二、三部分缩减版
共封装光学信号系统光电混合仿真10讲:ADS与MATLAB各自构建端到端光电系统仿真
最新文章
09 Fluent教程 | Fluent meshing 图形界面自定义
漂浮式风电基础疲劳计算方法比较研究
管道应力校核合格设备仍损坏?管道柔性与喷嘴载荷是核心隐患|懿朵科技
小米YU7的“假屏幕”,把阿维塔07的“真屏幕”按在地上摩擦了?天际屏VS远端屏谁更强?
固态变压器SST概念、拓扑结构分类及全尺寸样机演示
热门文章
通用/泛亚/蔚来/弗迪/上海电驱动等百位新能源专家确认发言,易贸三电活动6月苏州见
中国移动与中国广电开展5G合作:1:1比例共建700M 5G无线网络
“宏站+小基站”灵活组网是实现5G网络室内覆盖广泛认可的方案
物联网时代,工程仿真对智能产品的成功至关重要!
【非标数模】光通信128G卡自动组装线3D数模图纸 Solidworks设计 附STEP X_T
其他人都在看
动力电池系统制图规范
MecAgent融资300万美元,推出CAD AI助手和3D转2D工程图平台
Abaqus 做汽车 NVH,需要哪些能力?——Abaqus NVH 学习笔记(十)
有限元每日一个知识点:什么是应力奇异?仿真报告最容易踩的坑
HIV-1脂质体全尺寸MD模拟
VIP会员
学习计划
福利任务
下载APP
联系我们
微信客服
联系客服
人工服务时间为周一至周五的9:30-19:30
非工作时间请在微信客服留言
客服热线:
4000-969-010
邮箱:
service@fangzhenxiu.com
地址:
北京市朝阳区莱锦创意园CN08座
帮助与反馈
返回顶部