·
98
·
《测控技术 》2010年第
29卷第 6期
基于
H L
协议的
R
485通信设备的研制
DC
S
陈金华
(
北京电子科技职业学院 机械工程学院
,
北京
100176)
摘要
: D C
H L
协议是一种应用广泛的数据链路层协议
,
设计了基于
H L
协议的
R
485通信设备
。首先
DC
S
介绍设备的总½结构
,
然后进行
R
485接口设计
,
重点阐述了利用有限状态机在
F G
实现
H L
协议
S
PA
DC
控制器的设计过程
。
应用结果表明
,
设计½够很½地满足各项功½指标的技术要求
。
关键词
:
通信设备
; S H L ;
R
485;
D C
实时绘图
中图分类号
: N
T
919
文献标识码
: 文章编号 :
A
1000
-
8829(
2010)
-
06 0098
-
04
D s no R
485
C mm nct nE u m n B s nH L rt o
eg f S
i
o u i i q i et ae
ao
p
do D CPo cl
o
C E i ha
H NJ - u
n
( ol eo M c ai l nier g B in oai a C l g f l t ncSineB in
C l g f ehnc E gnei , ej gV ct nl ol eo Ee r i cec, eig100176, C i )
e
a
n
i
o
e
co
j
hn
a
A s atH L roo iawdl s a l kl e po clAR
485
cm ui tneu m n bsd
bt c D Cp t ls i yue t i a r roo
r
:
oc
e
dd a n y
t . S
o m n ao qi et a
ci
p
e
o H L r ooids nd At g i t oe lsut e fh eu m n t R
485
ie ae ei i
n D Cp t ls ei e. fr in h vr lt c r ot qi et h S n r c ds n s
oc
g
e vg e a r u
e p , e
tf
g
pe n d T e e idds npos o H L r oo cn oe ui it tem ci nF G sd -
r et . h dtl ei r s f D Cp t l ot lr s gfi a ah ei P Ai i
s e
ae
g e
oc
rl
n n es t
n
s
cs d A p ctnr us hwt th ds ncnf l m e t r u e eto t hi l pci tn.
us . plao e l so h t ei a u y eth e im n fe n a seic i s
e
i i st
a e g
l
e qr
s
c c
fao
K yw rscm ui tneu m n R
485;
D C r lie r i
e od
:
o m n a o qi et S H L
;
a t da n
ci
p
;
e m
w g
在数据通信
、
计算机½络以及工业控制等应用场
合
,
由于串行通信方式具有½用线路少
、成本½的优
点
,
特别是在远程传输时
,
避免了多条线路特性的不一
致而被广泛采 用
。
接口标 准主要包 括
R
232、
R
422
S
S
和
R
485。
R
232是应用最广泛的一种通信方式
,
为
S
S
单端传输
,
½其通信速率½
,
同时数据的抗干扰性差
;
R
422采用差分线
,
提高了抗干扰性和通信距离
,
½是
S
其采用不可½换的单一发送端
; S
R
485以双线模式实
现真正的多点双向通信
。 R
485接口标准通信的最长
S
距离是
1.
k ,
通信速率限制在
93.
k /s
2
m
75
b ,
½通信
距离 为
100
m时 ,
通 信 速 率 可 达
12
M /s
因 此
,
b 。
R
485被越来越广泛地应用到各种设计中
。
S
高级数 据 链路 控 制
( D C h hl e a o-
H L , i - e ldt n
g v
ac
tl
r)
o
是一种在同步½上传输数据
、面向比特的数据链
路层协议
,
它是由½际标准化组织
(S )
IO
根据
IM公
B
司的
S L ( ycr os a i ot l
协议扩展开
D C s ho u dt n n o
n n
al kc r )
[
1]
发而成的
。 H L
具有如下特点
:
DC
协议不依赖于任
½一种字符编码集
;
数据报文可透明传输
,
用于实现透
明传输的
“0比特插入法 ”易于硬件实现 ;
全双工通信
,
收稿日期
:
2010
-04 -12
½者简介
:
陈金华
(
1962—
)
女
,
讲 师
,
主要从 事电 气控制 技术
,
专业的研究与教学工 ½
。
不必等待确认便可连续发送数据
,
有较高的数据链路
传输效率
;
所有帧均采用
C C
R
校验
,
对于信息帧进行
编号
,
可防止漏收或重½
,
传输可靠性高
;
传输控制功
½与处理功½分离
,
具有较大灵活性和较完整的控制
[
2]
功½
。
H L
协议主要是通过½用专用芯片和½件编程
DC
的方式来实现的
,
本文利用
F G
P A实现了 H L
协议
DC
控制器
。
1
总½结构
为满足通信需求
,
需设计实现基于
H L
协议的
DC
通信设备
,
其功½和技术指标要求如下
:
通信接口采用
R
485标准
,
通信协议采用
H L
协议
,
通信速率不½
S
DC
-10
于
5
M /s
b ,
通信距离不超过
20
m
误码率½于
10
。
,
同时
,
该通信设备需要具备独立的用户接口
,
½够独立
完成实时数据处理
;
½够将通信数据通过
U B
S
接口上
传到工控机
。
根据功½及技术指标需求
,
设计通信设备总½结
构框图如图
1所示
。
数据处理单元和硬件逻辑单元是该通信设备的核
心单元
。数据处理单元主要完成通信数据处理 、通信
状态参数控制
,
由
D P
S
芯片实现
;
硬件逻辑单元在
F -
P
G
中实现
,
主要包 含
3
A
个部分
:
数据处 理接口控制器
基于
H L
协议的
R
485通信设备的研制
DC
S
·
99
·
一
,
具有差错检错功½强
、同步传输等特点 。本文采用
F G
实现
H L
硬件协议
。 H L
协议的帧的一般
PA
DC
DC
½式如图
2所示
。
各段的意义如下
: (
F
帧间隔标志
)
为
01111110;
(
A
地址字段
)
为通信双方的地址
; (
C
控
制字段
)
为帧的类型
,
比如数据 帧
、控制帧 ;(
I
信息字
段
)
指高层用户的数据
,
任意的二进制字符串
; C (
F S
校
验码
)
为对
A 、I
、C
字段进行循环冗½校验
[
2]
。
图
1 通信设备总½结构框图
的实现
、H L
协议控制器的实现以及传输控制逻辑
DC
的实现
。显控模块主要包含键盘输入 、
液晶显示
,
提供
用户与通信模块之间的交互接口
,
用户可以通过键盘
设½通 信 参数
,
同时 通过 液 晶显 示 获 取通 信 状 态
。
UB
S
模块½为一个附属功½单元
,
实现通信模块的数
据上传功½
。考虑到高波特率通信的情况 ,
硬件逻辑
无法提供大容量空间进行通信数据的缓冲存储
,
因此
,
设计在硬件逻辑外围½用动态
R M实现大容量数据
A
缓存
。 R
485接口实现
R
485电气标准的½换
。
S
S
本文将着重对
R
485接口设计
、H L
协议控制
S
DC
器的实现及数据处理½件的设计进行详细介绍
。
图
2 HD
C一般帧格式
L
为保证帧间隔标志的唯一性
,
在后续的字段中采
用
“0”比特插入 /
删除技术
,
发送时
,
帧 间隔标志之外
的所有信息
,
只要出现连续的
5
个
“
1”,
则自动插入一
个
0;
,
接收方在接收 数据时
,
只 要遇到连续的
5
同样
[
5]
个
“1”,
则自动将其后的
“0”删除掉 。
3.
2 H
L
协议的实现
DC
[
6]
H L
协 议的 实 现方 式 有很 多 种
,
本 文应 用
DC
V ro
语言
,
基于
F G
平台
,
采用
Q a uI
8.
el
ig
PA
ur s
0开发
t I
环境
,
利用有限状态机设计实现
H L
协议
,
并最终以
DC
I
核的方式给出设计实现
,
便于开发人员进行维护和
P
升级
。
设计
H L
协议控制器的结构框图如图
3所示
。
DC
H L
协议控制器包括接收和发送两个模块
。发送模
DC
块首先将待发送的
8
b
并行数据进行并
/
i
t
串½换
,
然
后由发送逻辑自动完成帧间隔标志生成
、“
0”½插入
及
CC
R
校验
,
然后将处理后的数据按同步串行方式发
送
。其中
读 缓 冲 和 写 缓 冲 均 为
so - ha
类 型 的
hwaed
FF 。
IO
2 R 485接口芯片选择
S
R
485传输线是差分电压
,
在信号进入
F G
S
P A之
前
,
必须经过接口芯片进行电压½换
。
设计要求最高
波特率可达
5
M /s
b ,
½工½在全双工模式
。
为了满足
设计要求
,
并为后续的更新设计提供足够的空间
,
通过
比较几种不同类型的具备 全双工功½的
R
485
收发
S
器
(
如表
1所示
)
本设计选择了
I
485-
。
它是全
,
L
3V
双工的收发控制器
,
单电源
3.
V
3
供电
,
波特率最高可
达
35
M /s
b ,
而且具有输出½½控制端
。
在不发送数
据时
,
差分输出线为三态
,
释放
R
485总线的½用权
,
S
不½响其他设备的发送功½
。
表
1 R 485收发器性½比较
S
型号
I
485-
L
3V
M X
A
3491
M X
A
491
S
3491
P
M X
A
3443E
保护模式 速率
/M · s
1
b
-
ED V
S
2K
35
过½½保护
输入失效
B O S
i M
C
ED V
S
15K
10
2.
5
10
10
隔离
有
无
无
无
无
供电
/V
3.
3
3.
3
5
3.
3
3.
3
[
3]
图
3 HD
C协议控制器
L
I
485-
内部具有 输入
、输出
电磁隔离特性
,
输
L
3V
入
、
输出电路供电电源将各自独立
,
设计½用
D /D
C C
模块
D P
C
020503D
来实现电源隔离
。
P
3 H
L
协议控制器的实现
DC
3.
1 H
L
协议
DC
H L
协议是通 信领域 应用最 为广泛 的协 议之
DC
接收模块一直处于接收同步串行数据的状态
,
由
接收控制逻辑自动完成帧间隔标志检测
、“
0”½去除
及
CC
R
校验
,
再将串行数据½换为并行
8
b
数据输
i
t
出
,
并给出相应的控制信号
,
将数据写入到字节接收缓
冲区中
。
发送模块的状态½换图如图
4所示
。
发送模块具
有
1
B
的发送缓冲区
,
在数据发送之前
,
发送控制逻辑
·
100
·
给出相应的控制信号
,
读取写缓冲数据总线
,
将字节数
据缓存到发送缓冲区
,
在进行串行数据发送的过程中
,
利用移½操½实现并
/
串½换
,
同时
,
在发送下一个数
据之前
,
向写缓冲模块给出读应答信号
,
告知写缓冲模
块输出下一个数据
。
其状态机½换过程介绍如下
:
①
复½后状态进入空闲态
(d )
Il ;
e
②
发送条件成立
,
则进入
H A
E D状态 ,
循环检测
发送条件
,
½用户启动发送
,
并且逻辑检测到发送缓冲
区不空时
,
发送条件为真
,
则状态机进入下一个状态
;
③
在
H A
状 态发送帧间隔标 志
,
发送 字节数
ED
n ed
将由通信双方协商确定
)
读取写缓冲区输出
H a(
,
数据暂存在发送缓冲区
,
然后进入状态
D T ;
AA
④
在状态
D T ,
发送信息帧
,
包含地址字
,
发送
AA
字节数为
n a ,
在发送数据过程中
,
对串行数据进行
Dt
a
循环冗½校验计算及插
“0” ,
然后进入状态
C C
R;
⑤
在状态
C C
发送
2
B
R,
的循环冗½校验值
,
然
后进入状态
T I;
AL
⑥
在状态
T I,
发 送帧 间隔标 志
,
发 送字节 数
AL
n a ,
然后进入空闲态
,
等待发送条件成立
。
Ti
l
《测控技术 》2010年第
29卷第 6期
在数据发送的时候
,
要进行必要的插
“
0”操½
,
其
条件是串行数据中排除帧间隔标志外有连续
5个数据
½为
“
1”,
则在串行数据中插入一个
“
0”。
插
“0”操½
被设计为一个小模块
,
在模块中设½一个串行数据的
½
“1”计数器 ,
½该计数器计数值为
4并且½前串行
数据为
“1”时 ,
则½插
“
0”标志½为有效
,
输出给上层
模块检测
。
其状态½换图如图
5所示
。
图
5 发送插
“
0”模块状态½换图
接收模块循环检测帧头
,
根据协议设定
,
帧头等于
n ed
H a
字节数的帧间隔标志
,
如果是有效帧头
,
则进入
接收数据状态
。
考虑到容错性设计
,
即在通信异常的
情况下可½无法检测到有效帧尾
,
从而½状态机一直
处于接收数据状态
,
进而导致错误数据的接收
,
所以接
收模块在设计时加入对最大帧长度的控制
。如果通信
过程中数据长度大于最大帧长
,
则认为此帧的数据无
效
,
状态机以异常方式进入空闲态
。
正常模式下
,
检测
到一帧数据的帧尾后再进入空闲态
。
其状态机跳½过
程描述如下
:
①
复½后进入空闲态
。
②
空闲态之后
,
立即进入帧头
(
帧间隔标志
)
检测
状态
,
若为有效帧头
,
则状态机跳½
,
进入数据接收状
态
。
③
在状态
D T ,
将接收到的数据写入写缓冲区
,
AA
如果帧字节数计数值大于硬件协议指定的最大帧长
,
则直接跳½到空闲态
,
否则正常接收结束
,
进入
T I
AL
状态
。
因为在硬件协议中
,
接收时无法将循环冗½校
验结果和信息数据区分
,
所以顶层模块必须知道接收
帧长
,
从而找到循环冗½校验结果
。
④
在
T I
状态
,
检测帧尾
(
AL
帧间隔标志
)
。
图
4 发
送模块状态½换图
(
上接第
94页
)
[
3]
刘斌 .
入式 ½件 可 靠性 仿真 测试 环境 的研 究
[ D] .
嵌
北
京
:
北京航空航天大学
,
2000.
[
4]
王红
卫
.
建模 与仿 真
[ M] .
京
:
学出 版社
,
2007:
-
北
科
5
16.
[
5]
深圳华唐科技
公司
. o eE T
C dT S
嵌入 式½件在线 测试与分
析工具在嵌入 式系统开发中的应用
[ J .
]
今日 电子
,
2001,
( : -38.
9) 37
[
6]
C bi , V lr , C atr . uo ai f v ncss
er nD a oV ur oF A t t no ai i y-
a
e
e
m o
o
t
h
tm et g A . rceig f h
e st i [ ] Poednso te19 It nt nl o-
sn
ne a oa C n
r i
fr c nT sn f o w r n o m nct gSs m :
e n eo et go Sf aea dC m u i i yt s
e
i
t
an
e
t
h
7
Itra oa Wokhp C . a i , E t i,
2007:
-
nentn l rso[ ] T ln s na
i
ln o
28
40.
[
7]
王½辰 ,
殷永峰
,
刘斌
.
航电 设备½ 件系统 测试过程 研究
[ J.
]
测控技术
,
2004, 23(
: -55.
8) 53
[
8]
钟德明 ,
殷永峰
,
曾福 萍
.
电设备 测试系 统的面向 对象
航
分析与设计
[ J .
]
计算机工程与应用
,
2006, 42(
: -
18) 197
199.
图
6 接
收模块状态½换图
4
数据处理½件设计
数据处理模块程序流程图如图
7所示
。
◆
基于
H L
协议的
R
485通信设备的研制
DC
S
数据处理
,
而不启动
U B
S
数据上传功½
。
·
101
·
5
结束语
本文首先从通信设备功½组成的角度介绍了各个
单元
,
在对各个单元进行概要描述后
,
以
R
485
接口
S
芯片选择
、
硬件
H L
协议的实现及数据处理½件的
DC
设计为重点
,
详细给出了基于
H L
协议的通信设备
DC
的设计实现过程
。
试验结果表明
,
在
20
m通
信距离
-11
内
,
波特率可达
11
M /s
b ,
误码率为
10
。
在 通信设
备交付½用过程中
,
结果表明
,
该通信设备功½完整
,
½够很½地满足各项指标的技术要求
。
参考文献
:
[
1]
½浩 ,
李洪½
,
张 朝辉
.
一种基 于
R
485总
线的远 程数据
S
通信系统
[ J .
]
仪器仪表学报
,
2003, 24( 1)
Z .
图
7 数据
处理模块½件流程图
[
2]
刘岩俊 ,
闫海 霞
,
魏 仲慧
.
基于
D P和 F G
S
P A的 H L
D C协
议通讯电路设 计
[ J .
子测量 技术
,
2009, 32(6) 137
-
]
电
:
139.
[
3]
孙宇翔 ,
全 厚德
.
基于
R
485的
远程 控制 系统 设计
[ J .
S
]
现代电子技术
,
2009, 32(
: -4.
19) 1
[
4]
张文昊 ,
王俊
,
于鹏飞
,
等
.
基于
F G
P A的 HD C协议的设
L
计与实现
[ J .
]
电子器件
,
2009, 32(
: -699.
3) 696
[
5]
王雅荣 ,
鲍民权
,
邱 智亮
. D C协议
控制器
I
核 的设计
HL
P
与实现
[ J .
]
电子技术应用
,
2007, 33(
: -35.
2) 33
[
6]
李晓娟 ,
黄翌
.
基于
F G
P A的 H L
设计 实现
[ J .
DC
]
现代电
子技术
,
2007, 30(
: -37.
6) 35
数据处理½件功½复杂
,
其不仅要实时完成通信
数据的数据处理
,
同时½够对显卡模块进行控制
,
实现
通信模 块 的用 户 接 口功 ½
。
设 计采 用
D PT SF
S ML
2407A
实现
。
因为数据处理的主要功½是对通信数据的实时处
理
,
所以本设计将
F G
P A中通信数据准备½½为中断
给到
D P
S 。在中断处理程序中 ,
将接收数据并进行实
时处理和更新液晶显示
。
同时根据用户设定
,
判断是
否启动
U B
S
控制单元
,
来实现通信数据上传
。一般工
½模块下
,
通信模块独立与用户交互
,
并独立完成实时
◆
(
上接第
97页
)
离
,
精确度高
。
此外
,
利用
M tb
a a
中的优化算法进行
l
循环迭代
,
最终逼近满足最小区域法的曲面½状误差
最优解
,
计算简单
,
收敛速度较快
,
可获得较½的误差
评定结果
。
参考文献
:
[
1]
廖平 .
分割逼近法 快速求 解点到复 杂平面 曲线最 小距离
[ J.
]
计算机工程与应用
,
2009, 45(
: -164.
10) 163
[
2]
½法中 .
计算机辅助几½设计与非均匀有理
B样条 [ M] .
北京
:
高等教育出版社
,
2001:
-437.
435
[
3]
郭慧 ,
½家祯
.
基于微粒群算法的 叶片曲面½状误差评定
图
4 叶片外½图
[ J.
]
华东理工大学学报
(
自然科 学版
)
2008, 34(
:
,
5) 769
-772.
[
4]
王伯平 .
互换性 与测量技 术基础
[ M] .
北京
:
机械工 业出
版社
,
2000.
[
5]
飞思科
技产 品研发 中心
. t b6.
Ma a
l
5辅助
优化 计算 与设
计
[ M] .
北京
:
电子工业出版社
,
2003:
-57.
45
6
结束语
以上针对½½机叶片曲面½状误差计算的复杂性
问题
,
利用
3次
N R S
U B
方法构造了曲面的数学模型
,
采用分割逼近法快速计算测点到理论曲面的 最小距
◆
评论