首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
基于CAN总线的嵌入式测温系统设计
来源:本站整理  作者:佚名  2009-11-03 09:37:08



4.CAN总线通信电路及程序设计
4.1 CAN硬件电路设计
采用AT89C51单片机微控制器、独立CAN通信控制器SJA1000、CAN总线驱动器PCA82C250及复位电路IMP708组成的CAN应用节点具体电路如下图4所示[4]。为了提高系统的抗干扰能力,本设计在SJA1000和CAN总线驱动器PCA82C250之间增加了光电隔离器6N137。

4.2 CAN通信程序设计
CAN应用节点的通信程序设计主要包括三部分:初始化子程序、发送子程序、接收子程序,各个部分的具体程序如下[5]:
(1)CAN总线初始化子程序
NODE    EQU    30H ;节点号缓冲区
NBTR0   EQU    31H ;总线定时寄存器0缓冲区
NBTR1   EQU    32H ;总线定时寄存器1缓冲区
…;定义RAM内发送TXBF、接收RXBF缓冲区,即40H与50H
…;再定义相应的控制CR、命令CMR、状态SR、中断IR寄存器,即0BF00H-0BF04H
AMR     EQU   0BF05H ;接收码屏蔽寄存器
BTR0    EQU    0BF06H ;总线定时寄存器0
BTR1    EQU    0BF07H ;总线定时寄存器1
OCR     EQU    0BF08H ;输出控制寄存器
CDR     EQU    0BF1FH ;时钟分频寄存器
   … ;定义接收RXB、发送TXB缓冲器,即0BF14H与0BF0AH
CANINI: MOV   DPTR,#CR   ;写控制寄存器
          MOV   A,#01H      ;置复位请求为高
MOVX  @DPTR, A    
  CANI1: MOVX  A, @DPTR     ;判断复位请求有效
JNB     ACC.0, CANI1
MOV    DPTR,  #ACR  ;写接收码寄存器
MOV    A, NODE       ;设置节点号
MOVX   @DPTR,  A
MOV     DPTR, #AMR  ;写接收码屏蔽寄存器
MOV    A, #00H

上一页  [1] [2] [3] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:170,019.50000 毫秒