首页 » 技术文章 » 基于单片机和CAN控制器的嵌入式系统

基于单片机和CAN控制器的嵌入式系统

作者:  时间:2011-04-19 14:32  来源:EDN

  该系统通信协议采用“ID+命令+数据+校验的形式,其中,ID为网络设备标识符,采用ID.18~ID.20。标识符ID.21~ID.28作为固定命令,不参与验收滤波。数据表示通信的具体内容,校验采用校验和的形式,为1个字节。由于CAN总线本身有15CRC校验,并且本系统节点数较少,竞争不会十分激烈,所以通信可靠性较高。

  软件设计思路如下:系统上电后,S1C33209先对自身和SJA1000初始化,以确定工作主频、波特率及输出特性等,然后接收来自上位机的控制命令,同时将获取的采用数据通过SJA1000传送到CAN总线上或备份到Flash存储器中。其中对SJA1000初始化是设计的重点,必须对写入每个寄存器的内容进行仔细和全面考虑,否则系统将无法正常工作。设上位机SJA1000适配卡的ACRxx20AMRFF00,下位机测控中心SJA1000ACRxx40AMRFF00。下面是初始化程序:

  由于测控系统对通信实时性要求较高,一旦接收到来自上位机的控制命令必须及时响应,为此CAN总线上接收信息采用中断方式,即SJA1000无错地接收到信息后使INT变为低电平,下降沿触发S1C33209外部中断0,使其进入中断服务程序,其流程如图2所示。

2 接收流程图

  如果要向CAN控制器发送数据,则必须将符合PeiCAN帧格式的一组数据写入SJA1000的发送缓冲区,然后调用发送子程序,我们采用查询方式实现发送,如图3流程所示。

3 发送流程图

  4. 结束语

  为了进行资源开发,对海洋油田进行探测及对污染进行监测和预防,本文采用EPSON公司的32单片机S1C33209SJA1000型控制器设计了一个探测系统,该系统具有高速、功耗低、体积小、易于扩展的特点,实验表明,系统与上位机通信可靠,基本可以满足实际需要。

  本文作者创新点:本文结合EPSON公司的32位单片机S1C33209功耗低、丰富的周边电路、开发方便等特点,以S1C33209SJA1000型控制器为核心,实际开发了一种探测系统。

相关推荐

AMD与英特尔“芯”仇旧恨:没完没了

AMD  CPU  2014-01-17

晶心科技日本初试金石 成功获得上市公司大厂青睐

晶心  CPU  2013-11-08

解读:为什么中国IC业市场由国外企业主导?

CPU  桥接芯片  2013-09-05

全球最大IC市场徒有其表?国产难以替代进口

CPU  桥接芯片  2013-08-28

龙芯中科胡伟武:寻找突破CPU瓶颈的举国体制

龙芯  CPU  2013-08-23

中国IC业“芯”结求解:进口替代难见起色?

IC  CPU  2013-08-23
在线研讨会
焦点