首页 上一页 1 2 下一页 尾页

现场总线专题贴二:CAN总线简介及学习心得 点击:4661 | 回复:21



墨之殇

    
  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:13:02
楼主

不老的神话---CAN现场总线

一、CAN 总线规范:

CAN总线属于现场总线的范畴,它是一种有效支持分布式控制或实时控制的串行通信网络,位速率可高达1MBPS。可以应用在汽车控制系统,自动化电子领域中的各种部件(传感器,灯光,执行机构等)与主机连接组成CAN 网络。本章介绍通过CAN总线与液晶显示器的连接。

二、CAN 具有下列主要特性:

1 多主站依据优先权进行总线访问。

 总线开放时,任何单元均可开始发送报文,具有最高优先权的报文的单元赢得总线访问权。

 利用这个特点可以用液晶显示器作为多主机的公用监视器,不用每台主机配一个监视器,从而节约系统成本。

2 无破坏性的基于优先权的仲裁。

  网络上的每个主机可以同时发送,哪个主机的数据可以发送出去取决于主机所发送报文的标识符决定的优先权的大小,没有发送出去的帧可自动重发。以后将介绍数据怎样仲裁。

3 借助接收滤波的多地址帧传送

  收到报文的标识符与本机的接收码寄存器与屏蔽寄存器相比较,符合的报文本机才予以接收。

4.远程数据请求。

  网络上的每个接点可以发送一个远程帧给另一个接点,请求该接点的数据帧,该数据帧与对应的远程帧以相同的标识符ID命名。

5.配置灵活性

   通过八个寄存器进行接点配置,每个接点可以接收,也可以发送。

6.全系统数据相容性

7.错误检测和出错信令

   有五种错误类型,每个接点都设置有一个发送出错计数器和一个接收出错计数器。发送接点和接收接点在检测到错误时,出错计数器根据一定规则进行加减,并根据错误计数器数值发送错误标志(活动错误标志和认可错误标志),当错误计数器数值大于255时,该接点变为“脱离总线”状态,输出输入引脚浮空,既不发送,也不接收。

三、与其他现场总线比较,CAN总线的主要优势表现在:

1)传输速率最高 1Mbps/40m,单根双绞线距离最远可达 10km/5kbps

2)节点数达 110 个(受限于总线驱动能力),传输介质为双绞线或光纤。

3CAN 采用点对点、一点对多点及全局广播几种数据收发方式。

4CAN 可实现全分布式多机系统,并且无主、从机之分,每个节点均主

        动发送报文,可方便地构成多机备份系统。

5CAN 采用非破坏性总线仲裁技术,两个节点同时上传送数据时,优先  

     级低的节点主动停止数据发送,优先级高的节点可不受影响地继续传输

     数据,有效避免了总线冲突。

6)具有可靠的错误检测和处理机制(CRC 循环冗余校验)。

7)短帧结构,每一帧的有效字节数为8个,受干扰的概率低; 

8)节点具有自动关闭功能(在错误严重时)。

9CAN 器件丰富,有带 CAN 的单片机(82C200)、CAN 控制器

        (SJA1000)、收发器(TJA1050)CAN I/O器件(82C150)等。

实例:现场总线CAN-bus 在煤矿通讯应用中的优势

CAN-busController Area Network)总线最早由德国Bosch 公司提出,主要用于汽车内部单元与控制中心之间的数据通信。由于其良好的性能,被广泛应用于其他领域中,如工业自动化、汽车电子、楼宇建筑、电梯网络、电力通讯和安防消防等诸多领域,并取逐渐成为这些行业的主要通讯手段。

现场总线CAN-bus 的特点:

    1、国际标准的工业级现场总线,传输可靠,实时性高;
    2
、传输距离远(无中继时最远10Km),传输速率快(最高1Mbps);
    3
、单条总线最多可接110 个节点,并可方便的扩充节点数;
    4
、总线上各节点的地位平等,不分主从,突发数据可实时传输;
    5
、非破坏的总线仲裁技术,可多节点同时向总线发数据,总线利用率高;
    6
、出错的CAN 节点会自动关闭并切断和总线的联系,不影响总线的通讯;
    7
、报文为短帧结构并有硬件CRC 校验,受干扰概率小,数据出错率极低;
    8
、对未成功发送的报文,硬件有自动发功能,传输可靠性很高;
    9
、具有硬件地址滤波功能,可简化软件的协议编制;
    10
、通讯介质可用普通的双绞线、同轴电缆或光纤等;
    11
CAN-bus 总线系统结构简单,性价比极高。

    现场总线CAN-bus 在网络开放性、通讯可靠性、网络通讯距离、网络节点数目、数据传输实时性、系统设计成本等方面都具有强大的优势。因此,当CAN-bus 应用于煤矿通讯系统时,立即获得了广大设备用户的认可,成为煤矿行业中首选的设备通讯网络。通过由CAN-bus 构建的煤矿现场设备网络,管理者和主控设备能即时地了解、处理当前的矿井情况,发觉事故隐患,避免危机的发生。

    同时,基于开放的现场总线CAN-bus 技术,构建煤矿行业的通讯网络,或开发特定功能的通讯设备,都已经不会存在技术上的门槛。而且,现场总线CAN-bus 本身是符合本质安全要求的。

    采用光纤通讯的CAN-bus 网络也是煤矿行业通讯网络的一个发展趋势。与传统的双绞线传输方式相比,光纤的低传输损耗使传输距离大为增加,更适应煤矿行业中一些远距离传输的需求。另外,光缆还具有不辐射能量、不导电、没有电感,且光缆中不存在串扰以及光信号相互干扰的影响,有着优良的抗EMI 以及EMC 特性,也不会存在因线路感应耦合导致的安全问题。光纤通讯方式、双绞线通讯方式的两种CAN-bus 网络将并存于煤矿行业中。

在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求

,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类

型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随

之增加。为适应减少线束的数量通过多个LAN,进行大量数据的高速通信的需要,1986 年德国电气商博世公司开发出面向汽车的CAN 通信协议。此后,CAN 通过ISO11898 ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议。

 




墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:20:09
1楼

CAN总线学习心得

SJA1000的常用标准波特率设置,为什么基本上都 是单次采样?即使是低速的时候也是这样的,既然TSEG1的设置周期都很大,比如都大于10了,为什么不让他采样三次呢?
答: 是不好理解,但那是CiA推荐的值。

51系列芯片和两个SJA1000接口还要外扩一个RAM,请问51ALE能否同时与三个芯片 ALE管脚相连(地址不同)? 有哪位高手做过双SJA1000冗余的请指教!!!! 
答: 能同时连接。 

请问CAN总线在想传输1000m的情况下,最快的速度能到多少呢? 
答: 50kbps = 1300m

如果一个 网络中只有2个节点,其中一个处于监听模式,另一个节点发送报文会使处于监听模式的节点进入中断吗? 
答: 能进入接收中断,你自己的试验也可以证明。

想组建 一个简单的CAN网络,已经有两个节点,我想问CAN总线如何组建,终端电阻安装在哪里?小弟还没有入门,大虾们指点一下。
1:直接将节点CANHCANL连到总线上,终端电 阻接在总线两端,大约120欧。
2 推荐北航出版《现场总线CAN原理与应用技术》,研读一下。

请问各位老师:我是一名can 线的新手,我正在做can总线的开发,控制器用sja1000t(我自己两个控制板互通),但我在发送数据后将出现总线关闭,我看到发送错误计数器在不断 增加,直到0xff,最后恢复到0x7f,谢谢各位老师帮我解答这个问题。或者对我给与启发
1;首先调通单个节点。
2:这是单节点发送没有成功(或者由于网络中其他节点没有收到帧并在响应场响应);建议参考网站CAN应用方案。

我想请教各位can远程贞有何作用?如何应用?在什么情况下才需要用到远程贞?谢谢了!
答:远程幀的用与不用完全取决你自己的协议,can有远 程幀的功能,是可用可不用的!

用网站提供的计算波特率的工具算出的数,12k以上的都 正确,无论是自接收还是两个节点通讯都没有任何问题。但是12k以下的数据一个都不能用,两个节点通讯没有成功的,自接收有10k的几个数据成功。我们的 项目要求必须在10k以下,最好是5k,但是不成功,自己计算的数据也没有成功的。(我们至少试验了30多个,所有情况都考虑了。)
我现在怀疑sja1000的波特率根本达不到5k和相对 应的传输10km
或者可以谁能提供个经过实践 检验的正确的总线定时器01的设置呢?要求低于10k
答:PCA82C250/251可以保证5KBPS的速率;比如ZLGCAN系列接口卡。
答:tja1050在低速时好像有问题。我用1050进行5k的时候不行,用82c250很好, 你可以试一试。

我本想双机调试,一边收,一边发,但跑程序后,发送方会 不断进入复位模式,所以现在进行自测试模式,我先进入复位模式,设置进入PELICAN模式,对寄存器初始化后,设置接收,发送中断使能,最后设置进入自 接收,单滤波模式,这样初始化就结束了,我的ACR0~ACR3 0x55,0x55,0x55,0x50,AMR0~AMR30xff,之后,我就往BUFFER里填 数,0x88,0x55,0x55,0x55,0x50,0x30,0x31,.....0x37,之后,启动自接收请求命令,但是程序只进入了中断一 次,是发送空中断,接收中断没有产生,我读发送错误寄存器,发现有错误产生,我读接收计数寄存器,为0,说明我没有收到数,但我读接收BUFFER时,值 0x55,0x55,0x55,0xff,0xff,0xff,0xff,0xff,0,0,0,0,0,
以上测试时,我在CANHCANL之间加入了两个 120欧的匹配电阻并联在一起的,请各位高手指点呀,谢谢了
答:在总线上加个CAN接口卡会方便许多,或者加个捕获功能的示波器也可以检测波形。

仿真环境:keil uv2
编译 器:keil c51 7.0
仿真器:tks- 591s
cpu:p87c591
程序大小:8K左右
兄弟在一片CPU中烧写了一个,运行一个CAN 线,IIC总线测试程序能够正常运行。这个基础上加上应用程序后在仿真机中运行正常,但是烧写到cpu后插入cpu程序不能运行,请问是什么原因?
另外一个问题:
在另外一个项目中条件相同,程序只有4K,程序正常跑 着,CAN接口可以检测到输出波形但是却不能正确传输数据,在一块旧板子上就可以,比较两者之后发现电路完全相同测量也正常,只是布局不同,请教原因。
答:程序已运行了吧?可能是HEX文件有错;编制程序 时注意P87C591ERAM设置、6CLK设置。

位流数据采样自发送节点的 82c250Tx管脚。
测试条 件:pelican ,扩展,双滤波模式,对方ID0x88,0x11,0x55,0x10,发送的对方ID为:0x88,0x11,0x00,0x00,发送2字节数据 为:0x05,0x06
采集的位流数据如下:
01000100000101110001000001000001000001000100000110000010001101100001001110111111111111
请教位流数据的含义?
答:自行计算时要区分位,还需要进行位填充的逆运 行;简单的方法是将此信号连接至1CAN接口卡的RXD引脚。

ZLGCANTEST软件调 试和板卡通讯,但是板卡能够正常通讯几次后就不再上传数据,查看SJA1K的状态寄存器,发现是SJA1K正在发送,但是怎么老是出现这种问题啊,请有相 同经历的高手教小弟一把啊!谢谢了!!!!
答: 其中的一个原因是收不到接受应答,比如对方id错误

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:20:56
2楼
通讯实验:长度1km,同样的线 ,得用ZLG公司的CAN设备(9820,5121)通讯是正常的,但是我们自已的系统,1000米时(50K波特率)的通讯是完全正常的,但是再上 加一段线路(70,1公里电缆是不同线质,螺旋状),数据丢失严重.我们的硬件是完全提供的参考电路的,所以说硬件上应当没有问题.软件上有没有什 么特殊处理吗?比如说发送失败,总线错误如何处理???
系统已经调试了相当长一段时间了,但还是没有头绪.就这个问题解决不了,我们在线路中加了CanRepACAN_REPB均不能很好的解 !!!同样的线路和硬件,ZLG公司的系统可以通信很好,而我们的系统却不呢,是不是软件处理有些要求??请大家指点!
答:检查各节点CANHCANL之间的阻值是否在合理 范围之内;CAN网络通讯故障一般是通讯电缆选择不合适。

请专家帮估计ARM CPU CAN口处理能力! 
在不处理复杂协议的情况下,一个CAN口吞吐达最高负荷 5000/秒时,CPU的负荷是多少?多个CAN口呢(如LPC2294
答:即使用于严格的速度测试,LPC2000的速度完全能够胜任2-4CAN通道。

sja1000出现错误而中断的几率由多大呢? 特别是发送错误,总线关闭等。
答:注意CAN-bus是一个网络,调试网络时需要在另 一端连接一个正常工作的CAN节点。
CAN是可 靠的网络;测试过2-5CAN节点连续近距离持续发送/接收超过100小时而不出现通讯错误。 

为什么 MiniCAN总提示发送失败? 
我在使用MiniCAN在自发自收模式下进行循环发送数 据时,会经常提示发送失败,但是却已经接收到了数据。这是什么原因?怎样能避免呢?
答:是不是总线上连接有其他CAN节点?检查一下对方的速率。 

硬同步在 CAN控制器中是如何实现的?
答:可以看一下 CAN2.0规范;如是IC设计,则去BOSCH看看复杂的CAN IP

请教 zlg的大虾们,我应用89c51+sja1000+82c250的结构,运行过程中发现一个问题,即正常运行一段时间后,sja1000死机(个人认为 是死机),我的89c51仍然在正常运行,也对sja1000能启动发送数据进程(我用led指示),但是接收端没有收到,用示波器测量82c250 CANH CANL 脚(67管脚),看不到有波形,断电重新启动程序后,sja1000的收发过程中能在上述两个管脚中测量到波形,即上电运行能正常一段时间的收发(能测 量到波形),之后就不行了(启动发送过程但是波形测量不到了),除非断电重启,望指教!
头两天查找sja1000的问题,以为是死机,后来逐步检测跟踪察看,发现程序运行一段时间后,sja1000 设置被无端改变,比如波特率,输出控制方式,测试寄存器值,我的原始设置为:BTR0 = 0x00;BTR1 = 0x4F;OCR = 0x1A;REG_TEST = 0xAA;但在运行一段时间后,这四个值会莫名其妙的被改变了,导致无法接受总线得数据,而改变的值是随机的,请问这是怎么回事?硬件电路是按照推荐的典 型应用接的,我在程序中除初始化设置这几个参数外没有其他地方对他们进行操作,天理何在啊
答:复位端是否可能引入尖峰脉冲? 

刚开始接 can——bus,买了一块5121,用随机带的zlgtest的软件测试,验证码设为0x00000001,屏蔽码设为0xffffff00,这样的 话是不是只能接受id0x01的帧了,用随机带的zlgtest的自发自收的发现id0x000x10等等也能接收到了,请问是我的验证码屏蔽码设 置错了么?
答:CAN节点的验收过滤设置与 CAN帧的ID不是一一对应关系,具体请参考MANUAL目录下的《函数编程手册》或《CAN控制器SJA1000验收滤波器原理与应用》。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:21:28
3楼
谁能告诉我canbus的优势?CAN vs 485
答:CANRS485不是一个层次的, CAN的速率和传输距离不是RS485可比的。
CAN- bus是技术开放的且最具成本优势的现场总线。现场总线的优势.....大家都清楚吧? 
RS-485标准,提供了多点(32点,在增加驱动电阻的情况下可以连接128节点)、双向通信的能力,RS485 只对接口的电气特性做出规定,而不涉及接插件、电缆或协议,因此用户可以建立自己的高层通信协议。
RS-485最大传输距离约为1219米,最大传输速率为10Mb/s
CAN 总线当使用Philips P82C250作为CAN收发器时,同一网络中允许挂接110个节点。CAN 可提供高达1Mbit/s的数据传输速率,但数据传输速率与通讯距离成反比,高达1Mbit时通信距离只有40m
CAN总线使用CANopenDeviceNet有严 格的协议,传输数据中ID号、功能号都占据传输数据的一定比例,因此CAN总线的数据有效传输率不高。
网站文档《CAN-bus 现场总线应用方案--RS-485升级...》中有一些性能比较。

单片机用的是51系列,c语言,如果SJA1000模式寄存器的地址为 OXC000,请问用什么样的命令来读写,然后判断该寄存器可以被正常读写。
答:可以通过写入并验证SJA1000测试寄存器(地址:0x09,名称:REG_CAN_TEST)的数值来判断 CPUSJA1000的硬件连接是否正确。
如,第1次向SJA1000测试寄存器REG_CAN_TEST写入0x55并读出验证;如果通过,则再次向寄存器REG_CAN_TEST写入0xAA 并读出验证;如果2次验证均通过,说明CPUSJA1000连接正确,否则需要检查相关的硬件连接。
在《基于CAN控制器SJA1000控制器的BasicCAN控制模块》、《基于SJA1000 CAN控制器的PeliCAN模块》源代码中均有测试SJA1000硬件接口函数,函数名称为:SJATestInterface,用户可直接调用。
以下程序为《基于CAN控制器SJA1000控制器的 PeliCAN模块》中关于SJATestInterface函数的源代码。
char     SJATestInterface(unsigned char   testvalue)
{
char    status=0;
bit    ErrorFlag =1;
unsigned    char    ErrorCount = 0x20;
unsigned    char    temp = testvalue; 
while(--ErrorCount)
{
WriteSJAReg(REG_CAN_TEST,temp);
if(ReadSJAReg(REG_CAN_TEST) ==   temp)
{
temp =~temp ;
WriteSJAReg(REG_CAN_TEST,temp);
If(ReadSJAReg(REG_CAN_TEST) ==   temp)
{
temp =0;
WriteSJAReg(REG_CAN_TEST,temp);
ErrorFlag =0;
break;
}
else   continue;
}
}
if(ErrorFlag)
{
status   =   SJA_INTERFACE_ERR ;
}
return (status);
}


墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:22:52
4楼
我最近在学习CAN控制器 SJA1000,遇到了一个问题,希望那一为大虾能给予帮助,在此先谢了.问题是这样的:如果一个SJA1000的节点(节点1)接收到了一个远程帧,节 点1怎样知道,这一远程帧是那一个节点发来的?如果节点1要给该节点以应答,识别码应该怎样写?
答:需要有应用层协议才能区分网络的源节点、目的节点。

求教大侠,用ADuC812开发CAN的时候,直接把89C51测试是正确的CAN发送程序(在程 序开头加$MOD812)移植到ADuC812中去,把程序下载进去之后,运行正常(能不停的向ZLGCAN卡发送数据);但是重新上电后,不工作了(没 有数据上来);可是另外编了一个串口发送程序下载进去之后运行正常,重新上电也正常。我是想把ADuC81289C51用(主要是想用它的AD)是不是 除在程序开头加$MOD812外,还需要其它的设置?如果是,怎样设置?谢谢!
答:硬同步。CAN控制器中如何执行硬同步?

我板子上 sja1000+82c250,初始化,把发送的数据帧发到发送缓冲器都还可以,但是一设置命令寄存器的自接收命令和中止发送命令后,就在状态寄存器里 的是:出错状态,发送缓冲器状态,然后TX错误计算超出127,ECC里的是03,位错,帧起始错..检查了好久也不行..请帮帮菜鸟的我吧.55
答:搜索论坛上过去的帖子,自收发需要满足几个条件。

如何用串口发送连续的13位低电平和一位高电平
就大部分的UART来看,都是8位,8位发的。要发送连续的13011,请问如何实现。接收 时又如何接收?
答:前面有回复:变化波特率以适 应硬件。DP-51H实验仪的一个功能:扩展LIN-bus接口,提供完整的“LIN-bus规范、应用范例及其软件包,实现LIN-bus的通讯实 验;


墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:23:15
5楼
两个通信完好的两个节点,如果节点CAN1发送了一帧数 ,而这帧数据里的标志符不是另一节点CAN2的标志符,当发送以后,在应答间隙内,CAN2是否会发送一个显性位作为回应呢?
书上说当接收器正确地接收到有效的报文,就会在应答间 隙发出一显性位,这里的正确接收是何概念呢?是完全满足验收滤波条件存入接收FIFO吗?
答:在数据链路层检查正确,不需要经过验收过滤,就硬件回应。

初次作CAN的项目,目前我有两个CAN节点,分别在回环模式下测试通过,波特率为125K,两节 点直接将控制器的CANTX(CAN1)--CANTX(CAN2),CANRX(CAN1)--CANRX(CAN2)相连,现在CAN1能够向总线发 送满足CAN2接收条件的报文,但不见CAN2回复期望的报文(CAN如果收到报文肯定会回复的)!不知为什么,请高手赐教!谢谢了 
答:建议在总线上加一个标准ZLGCAN监控节点,监控总线的帧数据;只有2个原因:
1CAN2没收到;
     2CAN2已发送,CAN1没有收到。
自答:原因是:由于我的两个can控制器不同CAN1 使用SJA1000,CAN2使用的是MCP2510,这两个控制器的标识码寄存器位定义不同,我先前没有注意到,所以报文无法正确的被接收!还是很感谢 黄老师:)

请问,它的两个输出端分别接个5欧电阻,并且挂30P 容接地应该可以起到滤波的作用吧,如果节点太多会使电平保持的时间太小吗?(就是变成三角波了)
答:节点数目在大于30~50时可以考虑不用PCA82C250滤波电容和电阻。

我在实验室调试两个CAN节点的通信,终端匹配电阻均为124(电位器,用万表测 试),SJA100082C250,加斜率电阻。速率800K,在斜率电阻一个为9.6K,另一个为6.8K(也是电位器)的情况下可以通信,通信距离 35米(普通网线),斜率电阻再大就不能保证了。
外在连接时必须是一个节点的CANH接另一个节点的CANL。按书上的接线示意图将CANH共同接在同一根总线上,CANL共同接另一根总线上就 不通,为什么?
答:这个方法是错误的,供参考的 正确电路连接图可以从CAN-bus页面的应用方案中下载获取。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:23:57
6楼
自己开发了一个CAN节点,要 PLC通过CAN通讯,由于一个网上所有CAN节点BTR0BTR1的参数应一致,PLC各波特率的BTR0BTR1参数不知,那么我自己开发的 CAN节点这两个参数如何定? 
答:编写个自动检测波特率程序;PLC一般也可设定。 

问:SJA1000 的双相输出方式具体该如何应用,如果不接PCA250,怎么接到总线上?
答: 还是要接PCA82C250芯片。

问:关于 CAN总线供电的请教: 如果用电源耦合能否实现CAN的总线供电?
答:建议用标准双绞线方式;走的人多了,不需要自己研究。

问:光靠标准双绞线怎么能实现总线供电呢?
答:总线供电另外采用独立的电缆,如 DeviceNet 规范;这是国际推荐的标准方式。

问:请问CAN总线两节点间要通信的话,他们的波特率是不是要完全一致?
答:节点有重同步的功能,允许偏差在一定范围内,比如晶 振偏差,见SJA1000的位定时文档。

问:请问验收滤波器可不可以屏蔽某些位,就是说不管某 些位是什么,只关心其中几位。
答:当然可以啊。


问:我现在调试通过CAN通讯的数据采集板,上位机买的是的PCI_CAN9810卡,用CANalyst分析仪调试自己开发的CAN采集 板,我现在调试CAN,还没有调试通,CANCSCPUP89V51RD)P2.728脚),CAN地址是7fff,应该没错吗?程序如下(用 伟福仿真器仿真):
# include<AT89X51.H>
# include<SJA_BCANCONF.H>
# include<SJA_BCANFUNC.C>

# define     uchar     unsigned char

void     InitCpu(void);
void     InitT0(void);
void     Sja1000Init(void);

bit     SecFlag;
//uchar     data     a【5】;
uchar     data     SendData【10】,RcvData【10】;
uchar     DataBuf,SecData,Second;
uchar     data     TmodData;
uchar     bdata     FlagInit;
sbit     RcvFlag=FlagInit^0;
sbit     ErrFlag=FlagInit^2;

void     main(void)
{
     //int     i;
     //for(i=0;i<100;i++)
     //P1_4=1;
     Sja1000Init();
     InitT0();
     InitCpu();
//     flaginit();
     while(1)
     {
         if(RcvFlag)
         {
             RcvFlag=0;
             BCAN_DATA_RECEIVE(RcvData);
             BCAN_CMD_PRG(0x04);     //release buffer
         }
         if(SecFlag)
         {
             SecFlag=0;
             SendData【0】=0xaa;    //send canid
             SendData【1】=0x08;    //send longth
             SendData【2】=Second;   //send data
             BCAN_DATA_WRITE(SendData);
             BCAN_CMD_PRG(0x01);
         }
         if(ErrFlag)
         {
             ErrFlag=0;
             Sja1000Init();
         }
     }
}

void     Ex0Int(void) interrupt 0 using 1
{
     SJA_BCANAdr=REG_INTERRUPT;
     FlagInit=*SJA_BCANAdr;
}

void     T0Init(void)     interrupt 1 using 2
{
     TR0=0;
     SecData--;
     if(SecData==0)
     {
         SecData=0x10;
         TH0=0x80;
         TL0=0x60;
         SecFlag=1;
         Second++;
     }
     TR0=1;
}

void     InitCpu(void)
{
     PX0=1;
     IT0=1;
     EX0=1;
     ET0=1;
     EA=1;
     SecData=0x10;
}

void     InitT0(void)
{
     TmodData =TMOD;
     TmodData &=0xf0;
     TmodData │=0x01;
     TMOD =TmodData;
     TH0 =0x80;
     TL0 =0x60;
     TR0 =1;
     SecData=0x20;
     Second=0x00;
}

void     Sja1000Init(void)
{
     BCAN_ENTER_RETMODEL();
     BCAN_SET_BANDRATE(0x04); //100k
     BCAN_SET_OBJECT(0xaa,0xff);
     BCAN_SET_OUTCLK(0xaa,0x48);
     BCAN_QUIT_RETMODEL();
     SJA_BCANAdr =REG_CONTROL;
     *SJA_BCANAdr │= 0x0a;     //
}
现在用示波器测CAN_HCAN_L,没有信号,请问是什么问题?

注:这个参考一下吧,呵呵

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:24:20
7楼
问: 请教各位大虾:有没有CAN局部测试程或意见?急需!!谢谢!!!
有没有人能给他的自测程序给我看看?帮帮我呀!
答:网上有basicCAN例程,CANstarter-I 工具中有PeliCAN例程。


问:我贴一下关于CAN验收滤波器的程序:哪里不对,请指教。多谢多谢了。
BPS_307K    EQU    0x00F88001   ;波特率307K
AF_RAM      EQU    0xE0038000   ;验收滤波器RAM起始地址

            LDR   R0, =CANAFMR
            MOV   R1, #0x02
            STR   R1, 【R0】
           
            LDR   R0, =AF_RAM
            LDR   R1, =0x25522553
            STR   R1, 【R0】
//我在上面设 置了一个25522553CAN控制1口,只接收标识符为552553的帧,我不知道这样设置对吗?这算设置了一个表格吗?

            LDR   R0, =CANAFMR
            MOV   R1, #0x00
            STR   R1, 【R0】

//这样算是启动了吧?我没有设置CANSFF_sa 波器,可以不设置吗?如果需要设置,照我现在的情况,这个滤波器中应该填什么值呢?
//在以上设置好以后,所有的总线数据都不响应了,急死我了,我看了网上的pdf文档,不过还是没什么启发。希望高 手能解答我的疑惑。谢谢了

答:参考或直接使用CANstarter-II开发套件 中提供的资源。

问:请问各位高手,作为一个初学者应该如何学习CAN总线技术?应该先学习哪一些基本知识,请推荐 妨相关书籍一二。谢谢!
答:现场总线CAN原理 与应用技术
作者:饶运涛 邹继军 郑勇芸
出版社:北京航空航天大学出版社

问:又没有带CAN控制器的可在线编程的8位单片机呢,麻烦推荐一款吧 
答:ATMEL AT89C51CC0X 系列不错!
答:intel89C591,89C592都是片内带can8位单片机。

问:本来应用了CAN232,但是想提高系统的速度,想用PCI-CAN,做USB-CAN,但是 想借此学习PCI,或USB,ZLG这里能想CAN232一样,如果买了板子,提供代码,原理图吗?如果没有哪种开发板有呢,能推荐一下吗?
答:系统而理论地学习CAN,建议选择 CANstarter-I/II开发套件;应用的话,USBCANPCICAN都是非常可靠的产品。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:25:41
8楼

问:请问,SJA1000软件设计中,把发送信息送入发送缓冲区,启动发送后,为何总是会自动进入复位模式?请哪位大侠帮忙指教一番.
问:再问一下,之后我重新换了线路板和芯片,复位问题 没有了,但启动发送后检测状态位,发现发送状态一直为(始终发送未完成)。需要说明一点,目前我只用了一块线路板加一个仿真器进行发送调试,并没有接上接 收的线路板,请问单发行否?请大侠帮忙指点以上问题!谢谢!
答: 一个节点可以工作在自测试模式,在这个模式下的工作机制跟两点是一样的,然后启动自接收命令即可。
答: 单发送不可, 正常发送时需要网络上同一速率的工作节点响应. 

问:第一,接 收信息的工作节点需要什么响应来确认?第二,接收的子程序未调好是否意味收发两方均无法调试?如何确认发送成功?
答:网络上同一速率的正常工作节点响应:1、已设定速 率;2、在工作状态。完全是由硬件(比如:SJA1000芯片)完成ACK确认。

问:请问 单个can 节点可以进行调试吗?是一块一路的can适配卡,使用端口地值300h,我使用winio进行读写的,可为什么,所有的单元读出来得数据都是ff?是因为 只使用了单个节点can控制器不能正常工作吗?
答:sja 可实现单节点调试;ff应该是地址空间错误;
问: 我还是不太明白,你说的地址空间错误,是说sja1000的地址没有选通,地址没有指向sja1000的寄存器吗?
答:首先把读写片选信号产生了再去管sja1000吧。

问:我用验收滤波器来选择接收CAN2.0B的一帧数据,29位中只对其中几位进行判别,其他位又 不是定值,请问这该怎么办?可不可以掩住不关心的位?用范围应该也可以实现,不过那样感觉不好,请教大家,谢谢!
答:相关/不相关位最终都可以转化为范围描述。

问:请教关于2119 can验收过滤器的问题
请问:1、在canstarterii应用指南第42页中提到的“fullcan标准地址标准单个地址有何区别?
      2、第45页表2.34”“”“”“id索引是什么概念?
答:fullcan标准地址放置的是需要自动执行接收存储的id索引表格(fullCAN功能,查看相关的介绍) 标准单个地址仅仅是AF接收/屏蔽标准id的索引表格,即和一般的接收过滤理解一致。
答:fullcan模式下自动把符合的帧放在后面的ram
    标准单个把符合的数据放在接收寄存器中

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:26:48
9楼
问:将“LPC 系列ARM 微控制器的CAN 接收过滤设置一文中的LTU.hpp加入原来的工程中(原来是用c做的),编译时有好多错误,用的确实是C++编译器,可感觉它对c++中的关键词不认识,请大家指 教,谢谢!
答: 里头好像仅仅作用域符号“::”不是C的之外没什么特别之处。

问:以前我用的是485通讯,通 讯协议里面都定义了包起始和包结束(CRC可以帮助验证是否包结束)。而对于CAN这个东东,比如我要发送一个信息包有100个字节,发送倒没有问题,对 于接收端,我怎样去判断包起始和包结束呢?困惑ing
请斑竹和各位大虾们指教!!
答:CAN- bus由硬件完成帧的错误控制、数据处理,因此,协议比RS-485会方便许多。
比如扩展帧格式:
帧头(源地址、目的地址、命令字、辅参数)     数据场(分段码、0~7个数据)
     超过8个字节/帧时,需要分帧处理。
     具体方式,可以参考网页的《CAN应用方案》中通讯协议篇、RS-485升级篇。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:27:13
10楼
问:对sja1000进行硬件复位时,要求 sja1000的片选同时有效吗?比如用138译码器的y1选通sja1000的复位线,来达到使sja1000复位的目的,那么此时要求片选线有效吗?
答:见SJA1000数据,异步操作,不要求片选有 效。

问:请问怎样把sja1000分时复用AD总线与 pc104的数据线和地址线连接
答:周立功公司已经有现成的“PC104-CAN”接口 卡提供。

问:DP51+BasicCAN测试程序的问题 
DP51+上用BasicCAN测试程序按键操作向其它节点发送数据时,总出现E-F8的错误,检查连线和波特率 的设置也没有问题,真不知道是什么原因?也没法收到其它节点发送过来的数据。有可能这是收发器TJA1050T出现问题了吗?
答:可能是组建的CAN网络中有其他节点未设置正确, 如波特率.ZLG公布的代码都经过测试,附有文档说明。

问:在开发过程中遇到如下问题: (公司没有上ARM,出于对其狂热的追求,自己出银子买的DEMO)
1:想完成自发自收,CANMOD_STMBIT=1,CANCMR_SRRBIT=1,观察寄存器窗口,接收 REG
   内容没有发生变化,(自测模式是否需要搭建一个CAN总线平台??我只有一个DEMO
   一个自己做的CAN总线收发器),接收中断也未发生,用的是周工最新的驱动.
2. 如果只想接收ID0x1234的信息,不用FULLCAN模式,该怎样设置才对呢?是不是这样:eFullCan禁能,则只需设置标准帧单个起始地址 REG,把相应的ID填入就行了呢
3. 每次调用 CanSendData(CAN1,cSlfSendCmd,TempBufPt),都将导致
CANMOD_RM=1,发送错误计数器累加,好象是总线离线状态.郁闷啊
还请斑竹和大虾们指点迷津
答:CAN总线至少需要2个节点才好调试,要不怎样才能 组成总线呢? 
答:网站可以下载代码,请参照配套的文档进行测试。
至少要加CAN收发器、终端电阻,建立再在PC上安装 1CAN接口卡,比如CAN232接口卡。
复:原来采用的总线收发器的前端光耦出了问题!
谢大家了!特别感谢周立功的技术支持工程师!

问:如果要在CANBUS上供电12V27V,该怎 么做?
因为CAN是平衡传输,要用差分信号来同 步,现在要提高电平,该怎么做,以前请教过,但都只是说设计接口电路就可以实现,但是太模糊了,能否有过经验者提供一点有实际操作的思路。感激不 尽。。。。
感谢你的关注!!!
答:1,加一组电源线;2,收发器就是差分驱动器。

问:如果加电源线那还是总线供电吗?
我的意思是两条线上既传信号又传电,请教可以做到吗?
答:在CAN应用中的总线供电常指的是通过4芯或5芯通 信线缆供电;收发器出来的仍然是基带信号没有调制的所以不容易实现线缆复用。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:27:29
11楼
问:请各 位高手解决:SJA1000收发扩展帧正常,但是不接收标准帧
答:我认为SJA1000不会出现这种现象,除非发送方有错误.

问:对 FullCAN模式不是很理解,哪位老师给详细介绍一下,谢谢! 
答:简而言之,就是验收滤波方式的增 强,BasicCAN只有一种滤波,PeliCAN2种滤波,可以加上广播信息,而FullCAN就是有更多种滤波。


问:急,请各位老师近来看看2119 CAN验收滤波器问题 
设置如下:我用的是汇编:
AF_MEM    EQU    0xE0038000

LDR    R0,=AF_MEM        ;读取验收滤波器RAM的起始地址
LDR    R1,#0x25522553    ;我需要标识为552553的接收,CAN1控制器
STR    R1,【R0】

LDR    R0,=AFMR          ;读取验收滤波器模式寄存器地址
MOV    R1,#0x00          ;这样启动滤波器对吗?
STR    R1,【R0】

这样的情况下,CAN1接收中断不响应任何数据,这是为什么?中断机制完好,旁路滤波器时候全部响 应的.关于CANSFF_sa寄存器该如何设置才能完成滤波接收?请指教。

答:修改 RAM表格前应该先置位AccBP
LDR    R0,=AFMR          ;读取验收滤波器模式寄存器地址
MOV    R1,#0x02          ;置位AccBP,以便设置过滤表格         
STR    R1,【R0】
答:参考<LPC系列ARM微控制器的CAN接收 过滤设置

问:在使用周的底层驱动时出了点问题,不知是什么原因 
LPC2119中断方式做了一个转发器件,中断很正常,中断程序调用写环形环形缓冲区;主程序是读环形缓冲区,但 是读时发生了数据中止,不解,就是下面第二句出了问题
stcRxBUF *RxBuf;
*RxBuf = CANRcvBufApp.RcvBuf【CAN1】【CANRcvBufApp.ReadPoint1】;
答:网站资料已更新;查询方式会比较方便。

问:过载帧与错误帧是怎么使用的啊
对数据帧,和远程帧很好理解,也很好使用,但是对过载和错误就不知道在什么地方用了,也不知道该怎 么用了啊?请各位指点
答:CAN控制器自己管理

问:错误消极中断和错误警报中断该怎么处理呢?只是简单的复位么?这两种错误有什么区别呢?不太明
答:按流程可以不处理,参考网站示例。

问:仲裁丢失该怎么理解呢?仲裁丢失算不算是一种错误呢?仲裁丢失一般的处理是怎么样的呢?只是读 取仲裁丢失捕捉寄存器么?
答:不算,仅仅提供一 个网络参考信息,例如网络负载/id分配是否合理等。

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:27:53
12楼
问:为什么在分析仪发出第三侦 后,2119才产生接收中断,而且收到的是第一侦的数据,WritePoint2 = 1
如果分析仪只发出一侦数据,不能产生中断,怎么回事?
答:第三帧才产生中断可能是溢出中断,因为接收中断和溢 出中断的额中断号是不同的,菲利普的早期资料中CAN的中断号有错,请下载最新资料!
答:我试过中断模式,没问题,可以产生中断,可是周的低层驱动关于环形缓冲区那部分可能有些问题。
中断后调用写数据缓冲区,然后在主程序里循环读环形缓冲 区。忘了是在哪里会出现数据中止,按说是不应该出现的。

问:请教RTR位在滤波中的作 用?
请教各位老师:滤波器中的rtr位参不参与 滤波,我在实验中有两个节点,采用双滤波标准帧通信,我设置接收方的acr0acr1acr2,acr3寄存器为 00,20,00,00amr0,amr1,amr2,amr3分别是000f00,ff.发送方ID1,ID20020;但是发送方的 ID2,只要是2030,该帧数据都能接收,其它的如40,50,都不行,我不知道为什么?是不是rtr位不参与滤波,发送方在发送的时间不必要考虑此 位。
郁闷的不行,恳请帮助!
答:就把它看作像id那样的一个bit看待吧。

问:SJ1000T中基本模式下只能检测8位的ID,但发送时确有11ID,请问ID2-0有什 么用?
答:你指的是BasicCAN模式下的" 验收过滤";其实,两种模式的所有11位或29位都有效。

问:BasicCAN模式下的" 验收过滤"只能过滤ID103,请问ID20对接受有影响吗?资料显示并没有对ID20进行核对。
答:BasicCAN模式没有对ID20进行核对。

问:请问在双绞线上传输的CAN信号波形应该是怎么样的?信号的幅值和频率?另外,能否推荐使用在 车辆上的电缆型号以及节点与总线相接的接插件型号!谢谢!!
答:汽车类型不同,应用有所不同,建议参考SAE J1939协议内容中的规定,制定自己的规范。

问:有没有CAN控制器+单片机(不包括CAN驱动器),成本不超过15元的方案?可付报酬!
答:目前我们没有能力实现。
答:io模拟低速can

问:请问CAN总线是不是不能提供总线供电?如果希望总线供电该如何做?谁能提供一点关于CAN 总线供电的资料啊?
答:CAN DeviceNet 都可以总线供电,根据需要选择适合的应用。
CAN 没有规定物理层.是一种相当灵活的现场总线。DeviceNetCANopen均是基于CAN-bus协议,自定协议也不难。

问:请问远程帧的作用是什么?在什么情况下需要使用它?
答:那是一种可用可不用的帧资源.

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:28:19
13楼

问:基地址选了0xda00,偏移量选择0000后,sja1000得寄存器的地址是从 0xda000开始吗?
答:对的。

问:在每次只收到一帧的情况下,我置位清除接受缓存都没问题,但是一旦在短时间内接收到2帧或以上 时(短时间指,第一帧还未完全被微控制器接收而第二帧已经到来)我收完一帧,置位清缓就会出错。然后我复位继续接收下一帧微控制器就不能从sja1000 接收了,为什么会这样那?置位清缓不是只清掉第一帧数据么?如果只清第一帧数据的话,应该第二帧可以收到的啊?这是怎么回事那?要怎么解决那?谢谢了。
答:不会这样的,查查其他原因。 

问:请教 版主CAN总线用于爆炸性气体环境可以吗? 
在网上搜索了一下,看到的 是几年前发表的 文章说CAN总线没有解决防爆问题,不知现在有没解决在爆炸性气体环境使用CAN总线通信。如果没有那只好用以前的 485 改成hart还是更麻烦
答:在《现场总线控制系统的调试与开发》--国防工业 出版社的技术书籍第8页,列出了CAN-bus是本安的总线之一。

问:请问 Can232can232B转换器的通讯协议是否必须和计算机相连才能更改我想用转换器直接与PLC相连不知如何设置通讯协议。
答:看应用场合而定,可以不用设置协议。这一份文档中有 很好的说明!

问:关于节点发送的问题向你请教。
     发现经常我的硬件复位有时不是成功的,导致发送不成功。读状态寄存器SR0x04,或0x44;请问这种情况是怎么回事??
答:硬件复位有时不是成功的不容易理解;建议看一下 前面的贴,或网站的参考程序。

问:那请问:硬件复位后,我发送前读状态寄存器 SR0x04,也就是当前请求的发送未处理完,这种情况下发送时不能成功的。
有时候硬件复位后发送前读状态寄存器SR0x0c,这种情况下发送时可以的。
请教:为什么硬件复位后还会出现像前面的那种状态寄存器 SR0x04,也就是当前请求的发送未处理完的情况,
应该如何处理???
答:硬件复位 成功后 SR= 0X0C ;否则就是硬件方面存在问题。建议用网站公开的电路与程序,或者直接在DP系列实验仪上测试。

问题1:在通讯时出现错误,用软件复位能否将错误清除?
问题2:软件复位是否将以前设置的参数改为默认值?是否 需要重新初始化?
答:1.可以;2否,是 

墨之殇

  • 精华:16帖
  • 求助:7帖
  • 帖子:395帖 | 4077回
  • 年度积分:102
  • 历史总积分:26826
  • 注册:2011年8月26日
发表于:2012-10-13 22:28:39
14楼
问:为什 么我在复位模式下CDR寄存器写不进那?其他寄存器都可以写进去,就是CDR写不进去。。
不明白为什么,和其他寄存器一样的写法,语句,但是无论写什么进去,读出来都是00H。可以帮忙解 答以下么?谢了
注:无论读写都是在复位模式下
答:芯片SJA1000的硬件复位会使 CDR=0x00

求助,为何我写不了CAN地址大于8的寄存器?
SJA1000的基地址是BF00H,我对 SJA1000的寄存器在复位模式下进行写,写完读出(当然是对于可读写的)发现对于CAN地址大于8的写入一定的数之后再读出,读出的数大部分是FF 而不是我写如的数,哪位大侠可以提供帮助?谢谢。在PELICAN模式下。
答:你在basic模式下试一下。
答:也可能是硬件接线问题。

问:SAE J1939的中文资料在哪里找?
答:一般不会 有中文资料,看网站《应用方案-通讯篇》。 

请问版主及各位大虾:汽车CAN节点与工控CAN节点的?区别在什么地方
答:通讯距离、应用层协议不同,电路稍有不同,参考网站 资料。 

问:我现在正在做与CAN总线相关的课题,买了CANstarter-I 开发套件,现在差不多快看完了。不过现在有一个问题,就是各位在自己做实验时硬件是怎么做的,是自己搭手工焊接的电路板,还是用Protel制作PCB 后印刷出电路板来?Protel我以前从未学过,要按电路图去自己做PCB的话周期太长,可自己焊又不能保证电路板的稳定性?
答:配套光盘中有PROTEL格式的CAN节点原理 图,PCB可以参考实验仪。

问:我用中断接受can总线发来的数据,可是单片机怎么 也进入不了外部中断程序?为什么?
8051中关 于外部中断0的设置我都设置了,可就是进入不了isr,如果我采用查询接受,int/端的电平就显示正常(低到高),一采用中断,int/端的电平就被拉 低不会变高,我在isr中设置了点灯测试,当有数据时因为灯没亮,所以我判断是进入不了isr,各位老师看看这是为什么呢?
答:设置电平触发,确保mcu相应中断的其他设置正确。

问:再用USBCANI时,ZLGCANTest为什么不能设置波特率?那时钟频率是多少啊?说 明书上也没有说明啊
答:打开设备时定时器 0、定时器1就是用于设置波特率的。详细请看相关的用户手册。16MHz,在编程接口文档中应该也有说明。

纵横军团—鲁豫有约

  • 精华:0帖
  • 求助:1帖
  • 帖子:16帖 | 932回
  • 年度积分:0
  • 历史总积分:4777
  • 注册:2017年4月11日
发表于:2012-10-13 22:32:38
15楼

哇  老大亲自出马  好好学习



现场总线专题贴一:现场总线简介  

http://bbs.gongkong.com/d/201210/461144_1.shtml    

现场总线专题贴二:CAN总线简介及学习心得

http://bbs.gongkong.com/d/201210/461147_1.shtml

现场总线专题贴二(续):CAN总线应用实例

http://bbs.gongkong.com/d/201210/461160_1.shtml

现场总线专题贴三:PROFIBUS工程应用指南

http://bbs.gongkong.com/d/201210/464654_1.shtml

现场总线专题贴三:LonWorks总线概述

http://bbs.gongkong.com/d/201210/461147_1.shtml

现场总线专题贴四:《工业以太网基础》讲义

http://bbs.gongkong.com/D/201211/467348_1.shtml


余 辉

  • [版主]
  • 精华:53帖
  • 求助:44帖
  • 帖子:3350帖 | 28451回
  • 年度积分:603
  • 历史总积分:131640
  • 注册:2006年4月25日
发表于:2012-10-13 22:34:45
16楼

一定要学习老大的大作       

伍琪生

  • 精华:2帖
  • 求助:0帖
  • 帖子:1200帖 | 11283回
  • 年度积分:2326
  • 历史总积分:62523
  • 注册:2006年8月05日
发表于:2012-10-13 22:39:47
17楼
总线协议的源代码你有吗,

板砖拍你脸

  • 精华:1帖
  • 求助:3帖
  • 帖子:18帖 | 290回
  • 年度积分:0
  • 历史总积分:554
  • 注册:2012年9月26日
发表于:2012-10-14 00:04:37
18楼

标准协议的代码,可以找到。

 

cqu_rockwell--王者之师

  • 精华:16帖
  • 求助:0帖
  • 帖子:681帖 | 8694回
  • 年度积分:0
  • 历史总积分:57901
  • 注册:2010年6月30日
发表于:2012-10-14 13:21:43
19楼
引用 纵横军团—鲁豫有约 的回复内容:哇  老大亲自出马  好好学习



xiaoliu000

  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 97回
  • 年度积分:0
  • 历史总积分:134
  • 注册:2013年10月09日
发表于:2013-10-26 09:55:22
20楼

教学相长,而后自强。工业通讯技术交流群:240462493 ,欢迎资深自动化工程师加入,尤其是现场总线、工业以太网、IO模块,协议转换器方面开发和应用的人员。


热门招聘
相关主题

官方公众号

智造工程师
    首页 上一页 1 2 下一页 尾页