CAN总线轻松入门与实践

当前位置:首页 > 计算机网络 > 网络与数据通信 > CAN总线轻松入门与实践

出版社:北京航空航天大学
出版日期:2011-1
ISBN:9787512402683
作者:李真花//崔健
页数:242页

章节摘录

  实电子技术的提高一定要从两大方面同时着手,一是设计技术,二是测试技术。前者不多解释了,这本书就讲这个;后者不仅仅包括测试,还包括安装、焊接、调试等。我们在进行系统设计的时候,都是正向设计,即系统要求-模块划分-电路设计-PCB设计-…-电路PCB都设计完成后,接下来就要进行检验,也就是说会按照设计的结果去测试系统,看它是不是满足我们期望的结果,这其实是对设计思路的一个“回放”,让我们更加理解电路的运行过程。  如果满足了,就证明一定可靠吗?当然不一定,有很多潜在的问题是不容易发现的,如果你的调试经验丰富,就可以用各种各样的方法来测试系统,从而找出潜在的小bug,并且解决它。当然如果系统不能正常工作,就更要通过一系列合理的调试测试方法来找出问题所在,可能的结果是设计失误了,从这个层面上来说测试又起到了重新指导设计的作用。因此说,会设计电路的不一定会调试电路,而会调试电路的人往往知道怎么设计能更好,在学习过程中,这两者相辅相成,共同决定着我们对设计的理解和掌握。因此,在一项设计中可能前期的设计工作只占30%,后续的测试调试工作会占70%。在各大公司中,不光是设计工程师起主要作用,测试工程师、质量监控工程师都对项目起着至关重要的作用。  大家拿到了设计的PCB和器件后,首先第一步就是焊接,焊接本身就是一门技艺,是每个学电子的人必须过关的。焊接让我们对元件和PCB有更深刻的感觉,感觉培养起来后,绘制PCB的能力就会提高。电路调试不仅仅要求你会焊接,还要对所有的电子仪器和设备能够熟练使用。所以大家务必要在实践中多多地锻炼自己。如果你的身旁有高手,让他带你走一遍,比你看100本书学得都多;如果你没有这样的条件,那作者希望你读完本节会有所启发。  作者准备首先详细说一些电路调试的普遍问题,然后以CAN学习板为例给出CAN总线系统的一般调试步骤供读者借鉴。  经常看见大学中有的同学兴高采烈地拿着做好的PCB来实验室,风风火火地将所有器件焊接到板子上,花花绿绿,甚是好看。结果一通电,是这也不行,那也不对。问题在哪?答案可以用五花八门来形容,下面就说说常见的问题及注意事项,看看你遇到过这样的情况吗?  1.焊接中的常见问题  ①急于求成,把所有元件全部焊接上。所谓欲速则不达,将所有的器件全部焊接后,有很多弊端。比如你买的器件中可能会有坏的芯片,假的芯片,这都是有可能的。全部焊上后,根本分不清楚孰好孰坏。再者,电路不能正常工作,首先要找的就是出现问题的环节,全部焊上后,不利于排查问题出处。最好是焊一点调试一点,这样每一部分都能正常工作了,才能保证最后合起来正常工作。

前言

  CAN总线是近些年来非常流行的几种现场总线之一。CAN总线是一种多主方式的串行总线,可以组建多主对等的总线通信系统;具有非破坏性总线仲裁技术,让优先级高的信息得到更加快速的处理;具有强大的错误检测机制,可以检测到总线上的任何错误;采用短帧结构、位填充和CRC校验等措施,使传输具有高可靠性。这些优点使CAN总线在众多工业领域,尤其是汽车、航天等产业中得到了广泛的推广和应用。  一、如何开始你的CAN总线学习  回想在做本科设计的时候,第一次接触到CAN总线,那个时候市面上讲解CAN总线技术的书籍很少,尤其缺少一种针对在校学生或是初学者的入门书籍。很多书籍的协议和理论讲解占其内容的大部分,而且这些协议和理论比较难理解,读起来是一头雾水;另外这些书籍的实例也比较难,不太适合初学者。  当时书中没有简单的实例可以参考,身边也没有这方面的高手指点,因此就只能一遍遍地阅读琢磨CAN总线的协议和理论,一次次地修改程序并进行验证性试验。当两个CAN总线节点第一次通信成功时,感觉无比兴奋;然后再进行不断的细化完善,使设计的通信系统更加稳定可靠。回头再阅读CAN总线协议,感觉它已经不像当初那么隐晦枯燥了,也真实地体会到CAN总线比RS4.85更加简单好用。  由于当初学习环境的限制,使得学习CAN总线的过程漫长且曲折,相信很多初学者都有与PIAE类似的学习经历和感受。后来,经过与许多CAN总线学习者的交流和沟通,PIAE认为学习CAN总线是一个循序渐进的过程,不可急于求成。在此与大家分享一下CAN总线的学习方法:  ①准备合适的学习资源。这些资源包括:完整的CAN总线协议;稳定可靠的cAN总线硬件,可以用它进行通信试验;简单的通信实例;一些设计中需要注意的事项等。  ②必须要通读一遍CAN总线协议,了解CAN总线的一些特点和主要功能。对于初学者当然不可能完全理解,也不需要完全理解。  ③在稳定的CAN总线硬件上进行简单通信试验,感受CAN总线通信成功带来的快乐,并且结合实例逐渐掌握之前不理解的地方。

内容概要

李真花[网名PIAE]

电子技术爱好者,北京交通大学检测与自动化专业硕士,有多项CAN总线系统及其他工业总线设计调试经验。EDN网站CAN总线学习小组的创建者之一,参与了六版“PIAE—CAN总线学习板”的设计。
崔健 电子技术爱好者,现北京大学在读博士,利用业余时间设计了很多相关作品,有多项测控系统项目经验。EDN网站CAN总线学习小组的创建者之一,参与了六版“PIAE-CAN总线学习板”的设计。

书籍目录

第1章 CAN总线概述与协议规范  1.1 计算机网络体系结构与拓扑结构    1.1.1 计算机网络体系结构    1.1.2 网络互联设备    1.1.3 网络拓扑结构  1.2 CAN总线简介    1.2.1 CAN总线是什么    1.2.2 CAN总线的特点    1.2.3 CAN总线传输介质    1.2.4 CAN总线拓扑结构与设备  1.3 报文传输    1.3.1 帧类型    1.3.2 帧格式    1.3.3 帧优先级仲裁  1.4 报文滤波与校验  1.5 编码——位填充  1.6 错误处理与故障界定    1.6.1 错误类型    1.6.2 节点错误处理    1.6.3 故障界定方法  1.7 位定时要求  本章小结第2章 CAN总线应用层协议  2.1 为什么构建CAN应用层协议  2.2 常用的CAN总线应用层协议  2.3 iCAN总线协议概要  2.4 iCAN协议的报文格式    2.4.1 iCAN报文标识符分配    2.4.2 iCAN报文数据部分定义    2.4.3 iCAN报文格式详细说明  2.5 iCAN协议的报文传输协议    2.5.1 iCAN协议通信模式    2.5.2 iCAN协议报文处理流程  2.6 iCAN协议的设备定义    2.6.1 I/O资源说明    2.6.2 配置资源说明  2.7 iCAN网络管理    2.7.1 节点控制    2.7.2 通信控制  本章小结第3章 CAN控制器和驱动器  3.1 CAN控制器和驱动器作用  3.2 CAN总线控制器和驱动器选型  3.3 CAN控制器SJA1000芯片详述    3.3.1 芯片SJA1000性能    3.3.2 SJA1000的引脚定义    3.3.3 SJA1000的内部结构及各个模块功能    3.3.4 BasicCAN和PeliCAN模式的区别    3.3.5 BasicCAN的寄存器及其功能详述    3.3.6 PeliCAN的寄存器及其功能详述    3.3.7 公共寄存器  3.4 CAN总线驱动器82C250详述    3.4.1 82C250特性    3.4.2 82C250功能框图    3.4.3 82C250功能详述  本章小结第4章 硬件系统设计与实践  4.1 总线通信系统的硬件构成  4.2 CAN总线学习板介绍  4.3 单片机及其最小系统    4.3.1 回顾一下老朋友——五彩缤纷的单片机    4.3.2 单片机最小系统设计    4.3.3 复位电路    4.3.4 时钟电路    4.3.5 EA引脚的设置  4.4 系统人机界面设计    4.4.1 数码管显示设计    4.4.2 LED灯显示设计    4.4.3 按键接口设计  4.5 电源部分  4.6 RS232串口通信接口设计    4.6.1 RS232总线简介    4.6.2 RS232通信电路设计  4.7 RS485通信接口设计    4.7.1 RS4.85总线简介    4.7.2 RS485通信电路设计  4.8 单总线温度传感器——DS18B20  4.9 继电器及无线扩展口部分  4.10 SJA1000与单片机的连接设计  4.11 电路的安装、焊接与调试  4.12 CAN总线系统的抗干扰设计    4.12.1 电源和地隔离技术    4.12.2 输入/输出通道隔离技术    4.12.3 PCB设计的一些注意事项    4.12.4 软件抗干扰技术  本章小结第5章 基础实验实践  5.1 开发需要哪些软件    5.1.1 Keil开发环境简介    5.1.2 如何建立一个工程    5.1.3 STC单片机下载软件使用    5.1.4 串口通信软件使用  5.2 第1个实例:点亮一盏“灯”    5.2.1 实例讲解    5.2.2 程序设计    5.2.3 操作调试及结果  5.3 第2个实例:数码管显示    5.3.1 实例讲解    5.3.2 程序设计    5.3.3 操作调试及结果  5.4 第3个实例:用按键实现中断    5.4.1 实例讲解    5.4.2 程序设计    5.4.3 操作调试及结果  5.5 第4个实例:与PC机通信——串口驱动编写    5.5.1 实例讲解    5.5.2 程序设计    5.5.3 操作调试及结果  5.6 第5个实例:RS485通信    5.6.1 实例讲解    5.6.2 程序设计    5.6.3 操作调试及结果  5.7 第6个实例:电子温度计    5.7.1 实例讲解    5.7.2 程序设计    5.7.3 操作调试及结果  本章小结第6章 CAN总线节点的自收发实例设计  6.1 系统设计目的及要求  6.2 程序设计    6.2.1 实例功能分析    6.2.2 程序流程规划    6.2.3 CAN节点初始化    6.2.4 CAN节点发送程序设计    6.2.5 CAN节点接收程序设计  6.3 系统调试与结果  6.4 扩展实例:自接收模式参数验证    6.4.1 试验目的和要求    6.4.2 配置参数及验证结果  本章小结第7章 CAN总线两节点通信实例设计  7.1 系统设计目的和要求  7.2 通信协议设计    7.2.1 协议报文格式    7.2.2 通信模式    7.2.3 基于本节实例的参数设计  7.3 通信程序设计    7.3.1 程序流程规划    7.3.2 CAN节点初始化    7.3.3 CAN节点发送程序设计    7.3.4 CAN节点接收程序设计  7.4 系统调试与结果  7.5 扩展实例:多节点通信    7.5.1 试验目的和要求    7.5.2 配置参数    7.5.3 验证  本章小结第8章 CAN-RS232网桥设计  8.1 系统设计目的和要求  8.2 CAN-RS232网桥硬件结构  8.3 CAN-RS232网桥通信协议设计  8.4 程序流程设计  8.5 扩展实例:CAN总线简单分析仪设计  本章小结第9章 基于iCAN协议的温控系统设计  9.1 系统设计目的和要求  9.2 系统网络结构  9.3 通信协议和系统网络参数配置  9.4 检测节点设计    9.4.1 硬件设计方案    9.4.2 节点程序流程设计  9.5 上层软件设计  本章小结第10章 感悟设计  10.1 培养我们的项目工程意识    10.1.1 电子类项目的指标及其分类    10.1.2 如何进行资料搜索    10.1.3 硬件及软件设计的一些建议    10.1.4 开始你的文档整理  10.2 关于电子类学生如何在大学中学习    10.2.1 关于专业    10.2.2 关于电子类专业学生的学习    10.2.3 关于单片机学习  10.3 答网友问    10.3.1 问题1——单片机型号兼容    10.3.2 问题2——远程帧功能    10.3.3 问题3——SJA1000的读/写控制    10.3.4 问题4——SJA1000初始化程序    10.3.5 问题5——CAN总线的关闭    10.3.6 问题6——广播通信功能    10.3.7 问题7——PCA82C250发热附录 邮政系统与CAN总线通信系统对比后记参考文献

编辑推荐

  《CAN总线轻松入门与实践》是作者在从事CAN总线开发与应用过程中,将切身的学习心得和经验加以总结,针对初、中级学习者而编写的入门级图书。全书以总线控制芯片为基础,结合具体电路和相关程序,通过一些实用的应用实例来讲解CAN总线的设计。  作者力图摆脱传统理论式的说教口吻,以初学者的角度来安排内容的讲解,让广大读者在轻松的阅读中掌握CAN总线的开发过程。  相关资源  作者将与《CAN总线轻松入门与实践》相关的学习资料、电路原理图以及实验例程与广大读者朋友们分享,可以到CAN总线学习小组和书友会下载,也可以到北京航空航天大学出版社网站“下载中心”下载。  《CAN总线轻松入门与实践》适合CAN总线设计的初学者、提高者,以及对CAN总线感兴趣的所有电子爱好者阅读。

作者简介

《CAN总线轻松入门与实践》以基于51单片机的CAN总线系统设计为讲解对象,在内容安排上兼顾理论与实践,循序渐进地将其呈现给读者。第1—3章主要讲述CAN总线底层协议规范、应用层协议以及CAN总线控制器和驱动器,为CAN总线系统设计奠定基础。第4—9章重点讲解CAN总线系统硬件设计和程序设计,以帮助读者熟悉该系统的硬件资源,也是单片机学习者很好的学习范例;同时给出CAN总线自发收、两点通信、多点通信、CAN—RS232网桥、温控系统等综合实例,让读者在学习和实践中理解CAN总线的精髓。最后一章与读者分享作者的一些设计感悟,并对网友常见问题进行解答。
《CAN总线轻松入门与实践》适合CAN总线设计的初学者、提高者,以及对CAN部线感兴趣的所有电子爱好者阅读。

图书封面


 CAN总线轻松入门与实践下载



发布书评

 
 


精彩短评 (总计45条)

  •     在京一日到
  •     这本书讲解的挺详细的,按阶入门,循序渐进,是搞设计开发的好读物。
  •     图书的内容,快递的速度都很满意
  •     书买了一段时间了,也看的差不多了,感觉很有用
  •     正学习中,印刷还可以
  •     买完回来做个评价
  •     书也不错,便宜
  •     专业性较强,适合本人使用
  •     能买的都买了
  •     这本书总的来说就是不好,骗钱的书。最简单的例子都是
    而且最令我反感的就是,can自检测节点的初始化和双节点的
    初始化程序竟然是一样的!老大 坑人啊
  •     实际经验书写,例子很好,不错
  •     我是做工程机械——汽车起重机编程类的,建议作者可以编写该类的专业专著,这样效果会更好!
  •     好书,适合初学者。最后还有作者的心得体会。
  •     书的内容还行吧!就是质量差了点
  •     还行,入门嘛,不过现在好像都是周立功的控制器和收发器多些,广告好多的样子
  •     有一定编程经验,阅读最合适。
  •     比较适合于刚入门。
  •     看了,挺一般的,觉得例子没说到什么重点上。
  •     学习CAN总线的入门书籍
  •     真是只适合入门的人
  •     东东层次分明,适合初学者,理论实践相结合,好!赞一个!
    下次还在当当买。
  •     不够厚实,蜻蜓点水,很一般
  •     关于现场CAN的书籍
  •     还没来得及看,等过段时间开始学习CAN总线的时候,应该可以派上用场的
  •     很好,值得推荐,不知什么时候出一本STM32的
  •     内容还未细看,应给还行!
  •     都是基础知识非常浅
  •     书中讲的很详细,还例举很多电路,比较实用,日后应用在自己的系统中也很方便,总的来说是一本入门级的书,当然也可作设计参考。
  •     因为工作关系需要用到CAN来开发产品,从零开始,很好
  •     感觉写的很实用,是一本入门的好书
  •     对比其他CAN入门的书,算是还可以的了。
  •     不仅仅是CAN总线入门好书,也是电子设计入门好书。
  •     讲得不深也不浅
  •     CAN总线入门好书
  •     感觉很亲切,满满的都是经验!不但讲了Can总线的相关知识,最可贵的是发表了很多主观经验、理念以及思路!
  •     买来作为参考书的
  •     书中的例子得尝试一次才能更深入了解
  •     学习一下can总线,比较关注CAN组网,此书好像没
  •     不适合初学都来学习!
  •     对于初学者值得一读,但是含金量一般
  •     中国人写的很好的书。。。。
  •     can入门的好书,讲的比较详细,加入了作者的实际经验,如果可以系统加入些实例的话,循序渐进的深入些,会更好的……
  •     很有用的,还在继续读中
  •     very useful , I will buy more about this type.
  •     还可以,入门
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024