资源简介
【作者验证过】科技创新-基于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个文件信息
评论
共有 条评论