关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 基于CAN总线的家庭控制器的设计与实现

基于CAN总线的家庭控制器的设计与实现

作者:时间:2009-12-10来源:网络收藏

  中继器采用特定的控制逻辑控制一对收发器82C250.收发器背-背相接,连接两个物理上独立的网,双向传输数据。从物理层上看,中继器CAN信号的透时中继。

  软件

  上位机软件

  采用Visual Basic 6.0开发软件。分两大功能模块:高层系统管理模块和低层通信模块。程序流程图如图4所示。

程序流程图

  (节点)软件

  与上位机及其它节点的信息交换。

  在软件中, 遵循模块化思想,采用结构化程序设计方案,使之具有良好的模块性、可修改性和可移值性。

  CAN系统的初始化设计是软件设计的关键,这一部分设计不好,系统将不可能正常工作。因此初始化设计是一个难点,又是一个重点。

  在初始化之前,应设置输出控制寄存器(OCR)的复位请求位为高,再设置其它寄存器。控制寄存器(CR)设定中断;命令寄存器(CMR)控制缓存器的接收状态;中断寄存器(IR)、状态寄存器(SR)查询SJA1000的工作状态;接收码寄存器(ACR)设定工作地址;接收屏蔽寄存器(AMR)设定工作形式,定时寄存器(BTR0、BTR1)设定工作频率、采样频率;输出控制寄存器(OCR)一般为正常输出方式,最后应使复位请求位从高变低,使CAN 进入正常工作状态。因此,对CAN进行初始化,实际上就是对ACR,AMR,BTR0,BTR1和OCR这些寄存器进行访问。

  成功地初始化SJA1000后,系统就可以应用它来传输报文。

  结语

  CAN总线以其高性能、高可靠性及其独特的设计越来越受到人们的重视,并被公认为最有前途的总线之一。我们在控制器系统中应用了这种总线技术,设计了硬件电路和软件,并得到实际应用。


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭