基于嵌入式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控制板之间信息传输的实时性与准确性。提高了数据的准确率,减少了丢包率。本文所采用的技术在近距离控制,远程控制与工业控制领域具有重要的实用价值和广泛的应用前景。

“惯导及组件”自动化测试解决方案
2015~2018年VR装置出货量预估
从四个方面分析云游戏自动音视频测试
人工智能营销系统能带来什么便利
摆脱智能家电变偷窥狂的五大方法
基于嵌入式WinCE设备与LPC935单片机CAN通信设计
基于串行总线的热量表设计
为架构下一代高速无线网络做贡献,村田推出毫米波(60GHz)RF天线模块
保时捷MissionE将于2019年上市 800V充电口15分钟可充80%电量
RTOS实时操作系统怎么执行多任务的?
开关电源常用安规要求
Facebook在Android和iOS上推移动支付
“双十一”反诈攻略丨消费者、电商平台、金融机构如何反诈骗?
小米副总裁暗示小米11会使用5nm处理器
区块链在交易市场是什么地位
BGP路由错误已导致CenturyLink联网服务的大规模故障
新大陆固定式条码扫描器,可快速地识读一维或二维条码
电视面板价格近期将趋稳,旺季降临需求回暖
我国首套深海伽玛核辐射探测谱仪在南海成功完成海试
华为荣耀10明夏发布,配置没的说,外观却有点奇怪