基于WinCE与LPC935单片机CAN通信设计

最新更新时间:2013-09-14来源: 21IC关键字:WinCE  LPC935  CAN通信设计 手机看文章 扫描二维码
随时随地手机看文章

随着信息技术的不断发展,嵌入式WinCE在工业控制领域中的应用越来越广泛。主要作为上位机的操作系统。LPC935单片机作为一款工业级的单片机芯片,广泛应用于各种工控设备。在许多复杂的应用场合,一个LPC935单片机是不可能满足需要的,需要多片LPC935单片机协同工作。此时,怎样实现多片LPC935单片机的通信就成为了设计的关键。以基于嵌入式WinCE设备为核心,代替传统的PC机,搭建CAN通信系统。结合嵌入式、单片机、网络通信技术的优点,将各个独立系统复杂的通信协议、数据格式进行统一的转化,实现系统之间的相互通信。将嵌入式WinCE与单片机结合起来将具有重要的实用价值和广阔的应用前景。

1.硬件平台

1)嵌入式WinCE采用周立功的TIPC-700作为硬件平台,主要的硬件资源有S3C2440A处理器,1路带隔离的CAN-bus接口;1路10/100M以太网接口;2个RS-232C串口等。根据核心硬件的要求,定制了所需的WinCE系统内核。在Visual Studio2005集成开发环境中编写应用程序。

2)LPC935单片机是一款单片封装的微控制器,使用低成本的封装形式。它采用了高性能的处理器的处理结构,指令执行时间只需要2到4个时钟周期。6倍于标准80C51器件。它具有集成度高、外围设备丰富,2个4路输入的8位A/D转换器/DAC输出、2个模拟比较器、2个16位定时/.计数器和一个23位系统定时器、增强型UART和SPI通信端口。LPC935集成了许多系统级的功能,大大减少了元件的数目与电路板面积并降低系统的成本。所以在很多领域得到了广泛的应用。

3)通过USB建立TIPC-700与PC机的ActiveSync连接,嵌入式WinCE与LPC935通过带隔离的CAN-bus接口进行通信。

4)每块分板控制4个比色池,每个比色池上有3个检测通道,每块分板可以进行12通道检测,但是每个比色池一次只用使用一个通道进行检测,因此每块分板每次可以同时进行4通道检测,4块分板可以同时进行16通道检测,从而达到了多通道检测的目的,后面的通信协议正是基于此而设计的。

2.嵌入式WinCE平台定制

WinCE是一个32位、多线程、多任务的操作系统,采用了独立于通常的程序设计语言并且和Windows兼容的API的方式。WinCE有良好的通信能力、相当出色的图形用户界面。WinCE操作系统分为硬件层、OEM适配层、操作系统层、应用支持库、应用开发层、应用集成层。各层之间只能单向依赖或单向调用。从而使功能模块之间的调用关系更加清晰。为了使系统具有更好的可扩展性和更清晰的结构,WinCE系统往往需要定制。

WinCE提供了一个工具PB(PlatformBuilder),是WinCE的主要集成开发环境,通过这个工具可以方便地根据不同的硬件,定制、裁剪出符合不同设计要求的WinCE操作系统。完整的WinCE操作系统包括以下内容:Bootloader、CPU初始化代码、驱动程序(键盘、鼠标、声卡、显卡、IDE、COM、USB)、用户界面接口、完成特定功能的应用程序。

3.底板CAN设计

底板采用的是主控芯片是LPC935,是一类自身并不能带有在片CAN的微控制器。但是它带有SPI接口,设计中就是用SPI接口加独立的CAN控制器(MCP2515)来实现CAN的功能。MCP2515作为CAN控制器,是一种独立的控制器,主要用于一般工业环境中的局域网络控制,完全支持CAN总线V2.0A/B技术规范。CAN收发器采用了TJA1050T,可以同时操作多个CAN网络,提供高达1Mb/s的传输速率。同时采用光电隔离提高系统的稳定性。用以实现底板与嵌入式WinCE设备的通信。

4.CAN通信协议设计

为了让嵌入式WinCE和多块LPC935单片机进行通信,关键是要有一个好的通信协议。包括对数据的形式、通信方式、传送速度、传送步骤、检错方式以及控制字符定义等问题做出统一规定[5].由硬件平台的设计可以知道,每块分板控制着4个比色池,每个比色池可以设定3个检测通道,因此每块分板可以控制12个检测通道,并把它编号为1-12.但是每块分板每次只能从每个比色池的3个通道中选着1个通道进行检测,每次只能同时进行4通道的检测。整个系统可以同时进行16通道的检测。CAN通信报文传输的帧格式有含有11位标识符的标准帧和含有29位标识符的扩展帧。本设计采用了标准帧的格式进行CAN通信协议的设计。

1)主板下传命令给分板时通信协议的设定

标识符的设置:把11位标识符的高四位固定为1010,随后的2位为分板的编号(0-3),第7位设为0表示读取AD,设为1表示设置比色池LED发光强度,低四位设成检测通道(1-12),至此,11位标识符被设定好。

数据域的设置:当第7位设为0时,数据部分为一个字节(小于16),表示检测项目,与标识符的低四位相同。分板在接收到时调整相应到相应的检测状态。当第7位设为1时,设置/校准发光管。标识符的低四位为检测通道,数据部分为3个字节。

2)分板上传数据/命令给主板时通信协议的设定

标识符的设置:11位中的高4为固定为1010,随后的2位为分板的编号(0-3),第7为为0,低四位设成检测通道(1-12)。

数据域的设置:共8个字节

分板上传命令时标识符与上传数据相同,数据部分为一个字节,当为“0x0b”表示按下了检测按键,当为“0x0A”表示对上次命令已经处理完成。

波特率设定:设为50K.

滤波设置:主板只对标识符高4位滤波,值为1010.

分板只对标识符高6位滤波,值为1010XX,XX为分板编号0-3.

例如要对一号分板的第一比色池的1号通道的检测项目进行检测:如已经校准,将标识符设置为10100000001,其后跟上相应设置的数据域,即可以对一号分板的第一比色池的1号通道的检测项目进行检测。如未校准,将标识符设置为10100010001,加上相应设置的数据域进行校准,校准候按照前面的步骤进行检测。同样1号通道上传数据/命令可以根据上面写好的通信协议进行操作。

5.结论

CAN通信最早应用于汽车领域,随着科技的发展,目前CAN通信在计算机控制系统中已经得到了广泛的应用,本文通过嵌入式WinCE与多块LPC935单片机底板CAN通信研究开发,综合了嵌入式、单片机及网络通信技术实现了多路CAN通信,达到了最初的设计目的。本文设计的通信协议经实践证明稳定可靠,保证了底板与WinCE控制板之间信息传输的实时性与准确性。提高了数据的准确率,减少了丢包率。本文所采用的技术在近距离控制,远程控制与工业控制领域具有重要的实用价值和广泛的应用前景。

关键字:WinCE  LPC935  CAN通信设计 编辑:探路者 引用地址:基于WinCE与LPC935单片机CAN通信设计

上一篇:试析电子技术中的单片机应用
下一篇:双侧向测井仪中信号调制放大器设计

推荐阅读最新更新时间:2023-10-12 22:25

基于Intel PXA270的WinCE操作系统移植
随着科学技术进步和3G时代的到来,高性能PDA产品作为一种电子消费品越来越受青睐。作为这些高性能的PDA产品核心的嵌入式实时操作系统是开发嵌入式应用的关键环节。向来以界面友好,易操作性,易开发性为卖点的Windows CE.net嵌入式操作系统得到了广泛的使用。然而,WindowsCE在不同CPU,不同硬件环境下的移植成为了限制其进一步发展的障碍。本文利用PlatformBuilder工具并以EEliod Evluation开发板为对象,介绍了基于Intel PXA270WindowsCE的移植方法和内容。并给出了在此操作系统成功开发的应用程序的运行结果。 1.系统硬件平台 论文使用的开发平台为深圳亿道公司提供的EEl
[单片机]
RS-232转CAN通信适配卡设计
  CAN总线-控制器局部网(CAN)国际标准(ISO11898)。CAN总线与一般的通信总线相比,它的数据通信具有突出的可靠性、实时性和灵活性。   其特点可概括如下:CAN为多主方式工作。在报文标识符上,各节点分成不同的优先级。采用非破坏总线仲裁技术。只需通过对报文的标识符滤波即可实现点对点、一点对多点方式传送接收数据。直接通信距离最远可达零10km(速率5kbps以下);通信速率最高可达到1Mbps(此时通讯距离最长为40m)。CAN上的节点数主要取决于总线驱动电路,目前可达110个。报文采用短帧结构,传输时间短,受到干扰的概率低。每帧信息都有CRC校验及其他检错措施,具有极好的检错效果。通信介质可为双绞线、同轴电缆或光
[嵌入式]
WinCE设计开发常见问题(WinCE开发特性及忠告)
最近一段时间,移动设备开发越来越多的成为了程序员社区的话题。移动设备主要包括智能手机和PDA,是嵌入式开发中很重要的一个方向。在智能手机领域被大多数手机厂商支持的J2ME无疑是领头羊,微软CE平台的SmartPhone也逐渐成为关注焦点。一直不温不火的PDA市场,也在行业应用领域有所收获,Pocket PC由于其开发与Windows平台的一致性而得到了开发人员的青睐。 在长期关注程序员论坛的过程中,我发现由于Windows CE开发的独特性,加之多个版本并存、缺乏中文参考资料,所以论坛上充斥着大量相同的入门问题。我希望在这里能够为刚转入Windows CE开发的程序员明晰一些概念,将现有的Windows CE版本与开发工具之间
[嵌入式]
WinCE节能降耗新技巧:高效休眠唤醒
伴随着嵌入式产品的普及,电源管理开发和设计成为了嵌入式系统开发的重点和重要部分。因为嵌入式设备对能耗越来越敏感,而电源管理技术正是这些产品设计的关键所在。目前嵌入式系统的电源管理技术正由传统的基于电源管理器件和外设控制为主的静态控制方式,转到以操作系统为核心的动静态结合的综合控制模式。   为了应对电源管理面临的挑战,在嵌入式系统开发时需要设计多种电源模式,以便在不同工作状态时有多种能耗模式可供选择。休眠和唤醒功能正是目前WINCW系统开发的研究热点之一。那么,休眠唤醒功能是什么原理呢?它能达到什么样的效果。这首先要从硬件说起,当系统进入休眠模式后,整个系统会进入低功耗休眠模式,只有当外部中断中任意一个中断被触发或者
[电源管理]
WinCE下的串口驱动分析
串口驱动分析 Auth : nasiry date : 2005年4月12日 abort : windowsCE.net 420串口驱动分析 相关资料 虽然串口通讯已经是普遍的标准而且广为大家熟知,但驱动中涉及的部分内容也可能在平时的应用中并不是很常用到,在这里做一个简单的介绍待后面说明到具体代码的时候可以连贯一些。 串行通讯接口是目前十分流行的通讯接口之一。由于其电气界面的简单性使其在计算机领域的应用相当的广泛。在这里提到的串行通讯接口主要是指UART(通用串行)和IRDA两种。通常的串行连接电气连接上有3wire和9wire两种。3wire的接线方式下定义了发送、接收和地三根连接。
[嵌入式]
C/S模型技术在WinCE串口编程中的应用
        前 言     与传统的Windows串口编程技术相比较,WinCE串口编程中不具备串口复用的功能,这给在WinCE系统中实现对串口的复杂操作增加了技术难度。本文介绍一种使用在信息平台软件中常用的C/S模型技术,模拟串口复用的动作来实现WinCE操作系统串口复用的问题。   本方法实现所使用的函数大部分都是嵌入式开发中最常使用的C/C++函数,所有的函数都具有一定的通用性,稍加改动即可应用到其他嵌入式操作系统中;并且该方法实现的思路对于解决其他嵌入式编程中资源复用的难题具有一定参考价值。   1 软件结构及工作原理   1.1 软件结构及特点   为了使WincE操作系统的串口操作支持复用,
[单片机]
C/S模型技术在<font color='red'>WinCE</font>串口编程中的应用
基于嵌入式WinCE 6.0 的脉冲/数据发生器软件设计
  脉冲/数据发生器作为通用测试信号源,能够产生脉冲、群脉冲和数据三种类型的信号输出。参数连续可调的脉冲信号和大容量、多样化的数字信号,满足了高速数字设备中噪声容限的测试要求以及大型集成电路和射频系统的设计初期对激励信号源的需求。随着嵌入式技术的飞速发展以及广泛应用,利用嵌入式操作系统支持进行智能仪器设备开发正成为主流。Win CE系统是美国微软公司推出的一种32位嵌入式操作系统,可以实现实时、多任务、多线程操作,同时具备出色的图形用户界面。本文实现了一种以嵌入式WinCE 系统为支撑的脉冲/数据发生器应用软件设计。   1 系统设计方案   脉冲/数据发生器系统结构如图1所示,包括嵌入式系统、控制主板模块、触发模块、时钟模块以及
[电源管理]
基于嵌入式<font color='red'>WinCE</font> 6.0 的脉冲/数据发生器软件<font color='red'>设计</font>
AT90CAN的CAN通信模块驱动设计及C编程
  CAN总线通信较之一般的通信总线而言,其数据通信具有突出的可靠性、实时性和灵活性,应用范围也早已不再局限于汽车行业,而是扩展到了机器人、数控机床、家用电器等领域。CAN控制器用来实现统一的CAN通信协议。CAN控制器分为两种: 一种是独立的控制芯片,如SJA1100;另一种是将其集成在微控制器内部,例如Atmel公司最新推出的AT90CAN系列单片机。与使用独立的CAN控制器相比,自身集成了CAN接口的微控制器在简化硬件电路设计的同时,提高了软件开发的效率。   1  AT90CAN单片机CAN控制器特性   AT90CAN单片机的CAN控制器能够兼容CAN2.0A和CAN2.0B通信协议,内部设有120字节的邮箱空间,
[嵌入式]
小广播
最新电源管理文章
换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved