山东大学 网络控制技术
1 同时向传输线发送。一旦发现,便终止当前发送,这就是“冲突检测”。 6、BasicCAN与PeliCAN有什么不同? 答:在PeliCAN模式下,SJA1000有一个含很多新功能的重组寄存器。SJA1000包含了设一、基本概念 计在PCA82C200中的所有位及一些新功能位,PeliCAN模式支持CAN2.0B协议规定 的所有功能。 1、什么是现场总线? 2、数据编码分几种?什么是曼彻斯特编码? 3、计算机局域网拓扑结构最常见的有哪几种? 答:计算机局域网拓扑结构主要有:星型拓扑结构、环形拓扑结构、总线型拓扑结构和树形拓扑结构。 4、 什么是网络传输介质? 答:传输介质是网络中连接收发双方的物理通路,也是通信中实际传送信息的载体。网络中常用的传输介质有电话线、同轴电缆、双绞线、光导纤维、无线与通信卫星通信。 5、 什么是载波侦听多路访问/冲突检测(CSMA/CD)? 答:这种控制方式对任何工作站都没有预约发送时间。工作站的发送是随机的,必须在网络上争用传输介质,故称之争用技术。若同一时刻有多个工作站向传输线路发送信息,则这些信息会在传输线上互相混淆遭破坏,称为“冲突”,为尽量避免由于竞争引起的冲突,每个工作站在发送信息之前,都要监听传输线上是否有信息发送,这就是“载波监听”。载波监听CSMA的控制方式是先听再讲。一个站要发送,首先需监听总线,以决定介质上是否存在其他站的发送信号。如果介质是空闲的,则发送。如果介质是忙的,则等待一定间隔后重试。当监听总线状态后,可采用以下三种CSMA坚持退避算法: 第一种为不坚持CSMA。 第二种为1-坚持CSMA。 第三种为P-坚持CSMA。 由于传输线上不可避免的有传输延迟,有可能多个站同时监听到线上空闲并开始发送从而导致冲突。故每个工作站发送信息之后,还要继续监听线路,判断是否有其他站正与本站 1
二、简述CRC检错码的工作原理。根据下列条件计算余数多项式R(X)。 发送数据BIT序列为10100101101(f(x)) 生成多项式BIT序列为10011(G(X)) 参考答案: 发送数据BIT序列为10100101101(f(x)) 生成多项式BIT序列为10011(G(X)) 答:CRC检错码的工作原理:CRC校验方法是将要发送的数据比特序列当 三、CANBUS 硬件节点设计 采用你熟悉的一种单片机或单片微控制器设计一CANBUS硬件节点电路,使用SJA1000独立CAN控制器,假设节点号为20,通讯波特率为100Kbps。 1、 画出硬件电路图。 2、 画出CAN初始化程序流程图 3、 编写CAN初始化程序 参考答案:1、硬件电路图 作一个多项式f(x)的系数,在发送方用收发双方预先约定的生成多项式G(x)去除,求得一个余数多项式。将余数多项式加到数据多项式之后发送到接收端。接收端用同样的生成多项式G(x)去除接收数据多项式f(x),得到计算余数多项式。如果计算余数多项式与接收余数多项式相同,则表示传输无差错;如果计算余数多项式不等于接收余数多项式,则表示传输有差错,由发送方重发数据,直到正确为止。 f(x)*24=101001011010000; G(X)=10011; f(x)*24/ G(X)=Q(X)+ R(X)/G(X); 按模2运算,R(X)=1000; AT89S52 RST P10 P27 P11 P26 P12 P25 P13 P24 P14 P23 P15 P22 P16 P21 P17 P20 RXD TXD P00 INT1 P01 P34 P02 P35 P03 P04 VCC P05 P06 GND P07 RD 18pF×2 WR XTAL1 ALE XTAL2 INT0 fosc1 12MHz EA SJA1000 IMP708 +5V RESET MR CS MODE +5V S RESET VCC VSS1 RST +5V 0.1μF VSS2 NC GND V VSS3 DD3PFO PFI V DD2 + V DD1 0.1μF 10μF NC CLKOUT 22pF AD0 XTAL1 AD1 fosc2 AD2 16MHz AD3 22pF AD4 XTAL2 AD5 +5V NC AD6 TX1 10kΩ AD7 PCA82C250 RD CANH WR TX0 TXD RS +5V 0.1μF ALE GND CANH +5V 10kΩ 120Ω 10kΩ +5V VCC CANL INT RX0 RXD Vref NC CANL 10kΩ 4.7kΩ +5V +5V RX1 4.7kΩ 2
2、CAN初始化子程序流程图 NODE NBTR0 开始 3、程序清单。CAN初始化子程序清单如下: EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU EQU 20H 31H 32H 40H 50H 0BF00H 0BF01H 0BF02H 0BF03H 0BF04H 0BF05H 0BF06H 0BF07H 0BF08H 0BF1FH 0BF14H 0BF0AH ;节点号缓冲区 ;总线定时寄存器0缓冲区 ;总线定时寄存器1缓冲区 ;RAM内发送缓冲区 ;RAM内接收缓冲区 ;控制寄存器 ;命令寄存器 ;状态寄存器 ;中断寄存器 ;接收码寄存器 ;接收码屏蔽寄存器 ;总线定时寄存器0 ;总线定时寄存器1 ;输出控制寄存器 ;时钟分频寄存器 ;接收缓冲器 ;发送缓冲器 NBTR1 TXBF RXBF 置复位请求为高(置CR.0为1) CR CMR SR 置验收码寄存器ACR 置验收屏蔽寄存器AMR (决定节点号) IR ACR AMR BTR0 总线定时设置 设置总线定时寄存器0(BTR0) 设置总线定时寄存器1(BTR1) 决定位周期 BTR1 OCR CDR RXB TXB 设置输出控制寄存器OCR(FAH) (定义总线驱动特性) 入口条件:将本节点号存入NODE单元。 波特率控制字存入NBTR0和NBTR1单元。 出口:无 BTR0 =43H,BTR1=2FH CANINI: MOV CANI1: 设置时钟分频寄存器CDR 设置CAN工作模式和时钟分频 DPTR,#CR A,#01H @DPTR,A A,@DPTR ACC.0,CANI1 DPTR,#ACR A,NODE @DPTR,A DPTR,#AMR A,#00H @DPTR,A DPTR,#BTR0 A,NBTR0 @DPTR,A DPTR,#BTR1 A,NBTR1 @DPTR,A DPTR,#OCR ;写控制寄存器 ;置复位请求为高 ;判复位请求有效 ;写接收码寄存器 ;设置节点号 ;写接收码屏蔽寄存器 ;写总线定时寄存器0 ;设置波特率 ;写总线定时寄存器1 ;写输出控制寄存器 MOV MOVX MOVX JNB MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX MOV 开放中断源定时再同步置CR.0为0 返回
3
MOV MOV MOVX MOV MOV MOVX MOV MOV MOVX RET DPTR,#OCR A,#0FAH @DPTR,A DPTR,#CDR A,#00H @DPTR,A DPTR,#CR A,#0EH @DPTR,A ;写输出控制寄存器 ;写时钟分频寄存器 ;将CAN工作模式设为 ;BasicCAN模式时钟2分频 ;写控制寄存器 ;开放中断源 ;写控制寄存器 四、谈谈你对现场总线技术的认识。
4
相关推荐: