📄 21ic nrz-hdb3码转换器的高速长距离通信.htm
字号:
style="TEXT-INDENT: 30px">④进行通用控制存器(CCR)的配置,使能DS2153Q、HDB3码的接收和发送、配置错误计数器更新时间、禁止动态存储发送数据等。</P>
<P
style="TEXT-INDENT: 30px">⑤初始化中断屏蔽寄存器,使能接收载波丢失、接收失步中断、接收数据全0和全1中断,使能发送时钟丢失中断,通过这些中断使单片机可以及时得知DS2153Q的工作状态,实现单片机对其的实施监测。<BR><IMG
height=330 hspace=70 src="21IC NRZ-HDB3码转换器的高速长距离通信.files/9d.gif"
width=398 vspace=10 border=0><BR></SPAN><FONT
size=3> </FONT><SPAN
class=main1>⑥初始化传输线接口单元,向LIRST数据位写0,然后写1,使传输线接口进入正常工作模式。</P>
<P
style="TEXT-INDENT: 30px">⑦初始化传输线接口控制寄存器,包括传输波形选择、接收均衡器增益选择、抗抖动抑器选择等。</P>
<P style="TEXT-INDENT: 30px">单片机控制流程如图5所示。</P>
<P style="TEXT-INDENT: 30px">下面是DS2153Q的功能配置程序(部分)。</P>
<P
style="TEXT-INDENT: 30px">;*****************************************************;</P>
<P style="TEXT-INDENT: 30px">MOV A,02H</P>
<P style="TEXT-INDENT: 30px">MOV DPTR,#RCR1</P>
<P style="TEXT-INDENT: 30px">MOVX @DPTR,A ;写寄存器RCR1,使能自动重新同步</P>
<P style="TEXT-INDENT: 30px">NOP</P>
<P style="TEXT-INDENT: 30px">MOV A,#04H</P>
<P style="TEXT-INDENT: 30px">MOV DPTR,#RCR2</P>
<P style="TEXT-INDENT: 30px">MOVX @DPTR,A ;写寄存器RCR2,禁止弹性存储功能</P>
<P style="TEXT-INDENT: 30px">NOP</P>
<P style="TEXT-INDENT: 30px">MOV A,#41H</P>
<P style="TEXT-INDENT: 30px">MOV DPTR,#TCR1</P>
<P style="TEXT-INDENT: 30px">MOVX @DPTR,A ;写寄存器TCR1,TSYNC为输出方式</P>
<P style="TEXT-INDENT: 30px">NOP</P>
<P style="TEXT-INDENT: 30px">MOV A,#0F9H</P>
<P style="TEXT-INDENT: 30px">MOV DPTR,#TCR2</P>
<P style="TEXT-INDENT: 30px">MOVX @DPTR,A ;写寄存器TCR2,E数据位禁止自动置位</P>
<P style="TEXT-INDENT: 30px">NOP</P>
<P style="TEXT-INDENT: 30px">MOV A,#44H</P>
<P style="TEXT-INDENT: 30px">MOV DPTR,#CCR1</P>
<P style="TEXT-INDENT: 30px">MOVX @DPTR,A ;写寄存器CCR1,允许接收和发</P>
<P style="TEXT-INDENT: 30px">NOP ;HDB3码</P>
<P style="TEXT-INDENT: 30px">NOV A,#00H</P>
<P style="TEXT-INDENT: 30px">MOV DPTR,#CCR2</P>
<P style="TEXT-INDENT: 30px">MOVX @DPTR,A ;写寄存器CCR2,配置错误计数寄存器</P>
<P style="TEXT-INDENT: 30px">NOP</P>
<P
style="TEXT-INDENT: 30px">;********************************************************</P>
<P style="TEXT-INDENT: 30px">3.2 DS2153Q状态监控设计</P>
<P
style="TEXT-INDENT: 30px">在完成DS2153Q的寄存器配置后,单片机即进入传输状态监测程序,实时监控DS2153Q的工作正常与否,包括状态寄存器的读取和DS2153Q中断的响应,并从中判断故障、及时通报。</P>
<P style="TEXT-INDENT: 30px">(1)发送状态监控<IMG height=412 hspace=1
src="21IC NRZ-HDB3码转换器的高速长距离通信.files/9e.gif" width=261 align=right
vspace=1 border=0></P>
<P
style="TEXT-INDENT: 30px">DS2153Q的发送状态监控是通过单片机的INT1来实现的。当状态寄存器的发送状态位置1,则DS2153Q产生中断,片机响应该中断来读取当前状态寄存器的故障位。当读取完毕后,需要向该状态寄存器特定状态位写1,保证以后的故障可以正确置位。</P>
<P style="TEXT-INDENT: 30px">下面给出了NRZ发送时钟丢失故障的状态监控程序(中断1处理程序)。</P>
<P style="TEXT-INDENT: 30px">MOV DPTR,#SR2 ;读DS2153Q状态寄存器2</P>
<P style="TEXT-INDENT: 30px">NOP</P>
<P style="TEXT-INDENT: 30px">MOVX A,@DPTR</P>
<P style="TEXT-INDENT: 30px">ANL A,#04H</P>
<P style="TEXT-INDENT: 30px">JNZ ERROR</P>
<P style="TEXT-INDENT: 30px">SJMP FAVER</P>
<P style="TEXT-INDENT: 30px">ERROR:SETB ERR_SR</P>
<P style="TEXT-INDENT: 30px">SJMP LOCKE</P>
<P style="TEXT-INDENT: 30px">FAVER:CLR ERR_SR</P>
<P style="TEXT-INDENT: 30px">LOCKE:JNB ERR_SR,WORK ;判断发送数据时钟丢失与否</P>
<P style="TEXT-INDENT: 30px">SETB P1.0 ;故障,工作指示二极管灭</P>
<P style="TEXT-INDENT: 30px">SJMP EVER</P>
<P style="TEXT-INDENT: 30px">WORK:CLR P1.0 ;正常,工作指示二极管亮</P>
<P style="TEXT-INDENT: 30px">EVER:MOV DPTR,#SR2</P>
<P style="TEXT-INDENT: 30px">MOV A,#04H</P>
<P style="TEXT-INDENT: 30px">MOVX @DPTR,A</P>
<P style="TEXT-INDENT: 30px">RETI</P>
<P style="TEXT-INDENT: 30px">(2)接收状态监控</P>
<P
style="TEXT-INDENT: 30px">DS2153Q的接收状态监控是通过单片机的INT0来实现的。当状态寄存器的发送状态位置1,则DS2153Q产生中断,单片机响应该中断来读取当前状态寄存器的故障位。当读取完毕后,需要向该状态寄存器的特定状态位写1,保证以后的故障可以正确置位。</P>
<P style="TEXT-INDENT: 30px">下面给出了HDB3码接收载波丢失故障的状态监控程序(中断0处理程序)。</P>
<P style="TEXT-INDENT: 30px">MOV DPTR,#SR1 ;读DS2153Q状态寄存器21</P>
<P style="TEXT-INDENT: 30px">NOP</P>
<P style="TEXT-INDENT: 30px">MOVX A,@DPTR</P>
<P style="TEXT-INDENT: 30px">ANL A,#02H</P>
<P style="TEXT-INDENT: 30px">JNZ ERROR</P>
<P style="TEXT-INDENT: 30px">SJMP FAVER</P>
<P style="TEXT-INDENT: 30px">EPPOR:SETB ERR_SR</P>
<P style="TEXT-INDENT: 30px">SJMP LOCKE</P>
<P style="TEXT-INDENT: 30px">FAVER:CLR ERR_SR</P>
<P style="TEXT-INDENT: 30px">LOCKE:JNB ERR_SR,WORK ;判断接收载波丢失与否</P>
<P style="TEXT-INDENT: 30px">SETB P1.0 ;故障,工作指示二极管灭</P>
<P style="TEXT-INDENT: 30px">SJMP EVER</P>
<P style="TEXT-INDENT: 30px">WORK:CLR P1.0 ;正常,工作指示二极管亮</P>
<P style="TEXT-INDENT: 30px">EVER:MOV DPTR,#SR1</P>
<P style="TEXT-INDENT: 30px">MOV A,#02H</P>
<P style="TEXT-INDENT: 30px">MOVX @DPTR,A</P>
<P style="TEXT-INDENT: 30px">RETI</P>
<P style="TEXT-INDENT: 0px"><B>4 总结</B></P>
<P
style="TEXT-INDENT: 30px">NRZ-DB3码制转换器采用E1收发芯片DS2153Q,完成NRZ码到HDB3码和HDB3码到NRZ码的转换,实现高速长距离的数据传输,使2.048Mb/s数据流在RJ45接口的双绞线上实现1.5km的传输距离,满足大多数的高速数据传输情况。
</SPAN></P>
<P></P></DIV></TD></TR>
<TR>
<TD align=middle height=15>
<TABLE cellSpacing=0 cellPadding=0 align=center border=0>
<TBODY>
<TR>
<TD>
<DIV></DIV></TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD align=right height=2>
<TABLE cellSpacing=0 cellPadding=0 width="80%" border=0>
<TBODY>
<TR>
<TD width=75>【<A href="javascript:doPrint();">打印本稿</A>】</TD>
<TD width=8></TD>
<TD width=75>
<P>【<A
href="http://www.21ic.com/new_info/news/review.asp?title=NRZ-HDB3码转换器的高速长距离通信target="
_blank?>发表评论</A>】</P></TD>
<TD width=10></TD>
<TD width=79>【<A
href="http://www.21ic.com/new_info/news/sendmail.asp?num=NRZ-HDB3码转换器的高速长距离通信">推荐</A>】</TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD align=right height=2></TD></TR>
<TR>
<TD align=right height=2><A href="javascript:window.close();"><IMG
height=20 src="21IC NRZ-HDB3码转换器的高速长距离通信.files/close_c.gif" width=77
border=0 name=Image161></A><FONT
color=#ffffff>----</FONT></TD></TR></TBODY></TABLE><BR><BR>
<TABLE cellSpacing=0 cellPadding=0 width=520 align=center border=0>
<TBODY>
<TR>
<TD vAlign=bottom align=middle width=114 bgColor=#999a76
height=1><IMG height=1
src="21IC NRZ-HDB3码转换器的高速长距离通信.files/blank.gif" width=1></TD>
<TD width=466 height=1></TD></TR>
<TR>
<TD align=middle width=114 bgColor=#ece8db height=19>相关新闻</TD>
<TD width=466 height=19></TD></TR>
<TR bgColor=#999a76>
<TD colSpan=2 height=1><IMG height=1
src="21IC NRZ-HDB3码转换器的高速长距离通信.files/blank.gif" width=1></TD></TR>
<TR>
<TD colSpan=2 height=1></TD></TR></TBODY></TABLE>
<TABLE borderColor=#000000 cellSpacing=0 cellPadding=0 width=520
align=center border=0>
<TBODY>
<TR>
<TD vAlign=top>
<TABLE class=RelatedTable width="100%" border=0>
<TBODY>
<TR class=RelatedTr>
<TD class=RelatedTd>
<SCRIPT language=javascript
src="21IC NRZ-HDB3码转换器的高速长距离通信.files/about.htm"></SCRIPT>
</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR></TD>
<TD vAlign=top align=middle width=150 bgColor=#ece8db height=2>
<TABLE cellSpacing=0 cellPadding=1 width="100%" border=0>
<TBODY>
<TR>
<TD bgColor=#000000>
<TABLE cellSpacing=0 cellPadding=2 width=150 bgColor=#ece8db
border=0>
<TBODY>
<TR>
<TD><!--#include file="../../adinc/a_ad_7.asp"--></TD></TR>
<TR>
<TD
height=5></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=766 align=center border=0>
<TBODY>
<TR>
<TD vAlign=top colSpan=6></TD></TR>
<TR>
<TD vAlign=top colSpan=6 height=10></TD></TR>
<TR>
<TD vAlign=top bgColor=#999999 colSpan=6 height=2></TD></TR>
<TR>
<TD class=stxt vAlign=center align=middle colSpan=6
height=6></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=766 align=center border=0>
<TBODY>
<TR>
<TD class=s width=973 height=12></TD></TR>
<TR>
<TD class=s width=973 height=20>
<DIV align=center><FONT face="Arial, Helvetica, sans-serif"><!--#include file="../../../../inc/copy.inc"--></FONT></DIV></TD></TR></TBODY></TABLE><BR></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -