资源简介

【作者验证过】科技创新-基于CAN总线的温度控制系统的完整程序(ZLG的试验箱程序、DS18B20程序)、实验报告、详细电路开发资料。本设计分为三个节点:转换节点(上位机节点)、温度测量节点、电机速度控制节点。 【极力推荐下载】CAN总线应用相当广泛,尤其在汽车控制方面。CAN总线的应用开发,优秀电子工程师必备。

资源截图

代码片段和文件信息

/***************头文件*************/
#include  “reg51.h“
#include “intrins.h“
#include “absacc.h“
#include  “sja1000reg.h“
#include  “sja1000.h“
#include  “ds18b20.h“
/***********数据类型*************/
#define uchar unsigned char
#define uint  unsigned int
/************管脚定义*************/
#define SEG_WORDPORT P1 //段码
#define SEG_DIGPORT  P2 //位码
sbit LED1=P1^3;
sbit SJA_RST=P1^4; //SJA1000 RST控制脚
sbit p33=P3^3;
sbit p10=P1^0;
uchar code Seg_Code[10]={0xc00xf90xa40xb00x990x920x820xf80x800x90};
/************函数声明*************/
void Cpu_Init(void);
void Display_Seg(uchar wd_huchar wd_l);
/************数据定义*************/

/**************主程序*************/
main()
{ uchar *Tempcode;
// Delay(00); //0.524s
// Delay(00); //0.524s
// Delay(00); //0.524s
Delay(00); //0.524s//复位后延时等待系统外围复位完成
Cpu_Init(); //CPU初始化
Sja1000_Init(); //SJA1000初始化
DQ=0;     //DS18B20开始工作
while(1)
{ Tempcode=DS18B20_RdTemp();  //读温度值
Display_Seg(*(Tempcode+1)*Tempcode); //显示
if(p10==0)
{ KEY++;
}
}
}
/***********CPU初始化************/
void Cpu_Init()
{ LED1=~LED1;
SJA_RST=0; //设置SJA1000为复位状态
EA=0;
IT0=1; EX0=1; //开外部中断0
IT1=1; EX1=1; //开外部中断0
// TMOD=0X01; ET0=1;     //开定时中断0
// TH0=0X3C;  TL0=0XB0; //方式1,50ms定时
// TR0=1;
EA=1; //开总中断
Delay(00); //0.524s
Delay(00); //0.524s
SJA_RST=1; //启动SJA1000
LED=0;     //led亮
SW_JDQ=0; //继电器开加热
LED_TX=1; //发送标志
LED_RX=1; //接收标志
}

/***********数码管显示***********/
void Display_Seg(uchar wd_huchar wd_l)
{ uchar buf[4]; //显示单元
uchar i;
uchar dig=0x01;
wd=(wd_h&0x07)*16+((wd_l&0xf0)>>4); //温度值
if(wd!=85) //屏蔽85度,因开机为85???
{ buf[3]=Seg_Code[kw&0xf0]; //控制温度的十位
buf[2]=Seg_Code[kw&0x0f]; //控制温度的个位
buf[1]=Seg_Code[wd/10%10]; //测量温度的十位
buf[0]=Seg_Code[wd%10]; //测量温度的个位

for(i=0;i<4;i++) //4个数码管
{ SEG_WORDPORT=0xff; //清屏
SEG_DIGPORT=dig< SEG_WORDPORT=buf[i];//段码
Delay(50125); //延时
 }
}
}
/**********外部0中断**********/
void int0() interrupt 0 //接收中断
{ Sja1000_RX(); //SJA1000接收
}
/**********外部1中断**********/
void int1() interrupt 2 //中断1
{ Sja1000_TX(); //SJA1000发送
}
/**********定时0中断**********/
/*void time0() interrupt 1    //定时发送
{ uchar n;
TR0=0;
TH0=0X3C;  TL0=0XB0;
TR0=1;
n++;
if(n==20) //1s
{ n=0;
Sja1000_TX(); //SJA1000发送
}
}*/

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     318530  2007-05-22 10:08  科技创新-基于CAN总线的温度控制系统\CAN资料\参考资料\CAN_jiedian.pdf

     文件    2147368  2007-05-21 12:10  科技创新-基于CAN总线的温度控制系统\CAN资料\参考资料\ds18b20cn.pdf

     文件    1176110  2006-12-22 16:56  科技创新-基于CAN总线的温度控制系统\CAN资料\参考资料\基于SJA1000的CAN节点设计v1.0.pdf

     文件     231899  2007-10-04 10:34  科技创新-基于CAN总线的温度控制系统\CAN资料\焊板资料\89C51.pdf

     文件     497015  2007-10-04 09:19  科技创新-基于CAN总线的温度控制系统\CAN资料\焊板资料\CTM1050.pdf

     文件     240413  2007-10-04 09:44  科技创新-基于CAN总线的温度控制系统\CAN资料\焊板资料\SJA1000.pdf

     文件     316706  2008-11-28 22:44  科技创新-基于CAN总线的温度控制系统\科技创新实验报告\基于CAN的分布式监控系统(上位机节点).doc

     文件     614600  2008-11-28 22:46  科技创新-基于CAN总线的温度控制系统\科技创新实验报告\基于CAN的分布式监控系统(温度节点).doc

     文件     675866  2008-11-28 22:45  科技创新-基于CAN总线的温度控制系统\科技创新实验报告\基于CAN的分布式监控系统(速度节点).doc

     文件       1865  2007-10-02 20:01  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序1\ds18b20.h

     文件       2605  2007-10-15 11:53  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序1\main.c

     文件       2890  2007-10-15 19:58  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序1\sja1000.h

     文件       1841  2007-10-15 19:27  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序1\sja1000reg.h

     文件       6053  2004-02-02 16:51  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序1\SJA1000_PELI.LIB

     文件       2100  2007-10-15 12:08  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序1\SJA1000_Test2.Uv2

     文件       8570  2003-06-12 15:27  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序1\VIIC_C51.C

     文件       2415  2001-06-26 14:47  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序1\VIIC_C51.H

     文件       1865  2007-10-02 20:01  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序2\ds18b20.h

     文件       2403  2001-10-20 12:00  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序2\main.c

     文件       2787  2001-10-20 12:02  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序2\sja1000.h

     文件       1841  2001-10-20 12:54  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序2\sja1000reg.h

     文件       6053  2004-02-02 16:51  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序2\SJA1000_PELI.LIB

     文件       2100  2007-10-15 12:08  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序2\SJA1000_Test2.Uv2

     文件       8570  2003-06-12 15:27  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序2\VIIC_C51.C

     文件       2415  2001-06-26 14:47  科技创新-基于CAN总线的温度控制系统\程序\实验箱程序2\VIIC_C51.H

     文件       1865  2007-10-16 14:43  科技创新-基于CAN总线的温度控制系统\程序\温度节点-最终版\ds18b20.h

     文件       2998  2000-01-18 12:02  科技创新-基于CAN总线的温度控制系统\程序\温度节点-最终版\main.c

     文件       2828  2000-01-18 13:05  科技创新-基于CAN总线的温度控制系统\程序\温度节点-最终版\sja1000.h

     文件       1774  2007-10-15 22:02  科技创新-基于CAN总线的温度控制系统\程序\温度节点-最终版\sja1000reg.h

     文件     102433  2007-10-16 14:53  科技创新-基于CAN总线的温度控制系统\程序\温度节点-最终版\wudu.DSN

............此处省略16个文件信息

评论

共有 条评论

相关资源