資源簡介
【作者驗證過】科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)的完整程序(ZLG的試驗箱程序、DS18B20程序)、實驗報告、詳細電路開發(fā)資料。本設(shè)計分為三個節(jié)點:轉(zhuǎn)換節(jié)點(上位機節(jié)點)、溫度測量節(jié)點、電機速度控制節(jié)點。
【極力推薦下載】CAN總線應(yīng)用相當廣泛,尤其在汽車控制方面。CAN總線的應(yīng)用開發(fā),優(yōu)秀電子工程師必備。

代碼片段和文件信息
/***************頭文件*************/
#include? “reg51.h“
#include “intrins.h“
#include “absacc.h“
#include? “sja1000reg.h“
#include? “sja1000.h“
#include? “ds18b20.h“
/***********數(shù)據(jù)類型*************/
#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};
/************函數(shù)聲明*************/
void?Cpu_Init(void);
void?Display_Seg(uchar?wd_huchar?wd_l);
/************數(shù)據(jù)定義*************/
/**************主程序*************/
main()
{ uchar?*Tempcode;
// Delay(00); //0.524s
// Delay(00); //0.524s
// Delay(00); //0.524s
Delay(00); //0.524s//復(fù)位后延時等待系統(tǒng)外圍復(fù)位完成
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; //設(shè)置SJA1000為復(fù)位狀態(tài)
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; //發(fā)送標志
LED_RX=1; //接收標志
}
/***********數(shù)碼管顯示***********/
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個數(shù)碼管
{ 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發(fā)送
}
/**********定時0中斷**********/
/*void?time0()?interrupt?1 ?? //定時發(fā)送
{ uchar?n;
TR0=0;
TH0=0X3C;??TL0=0XB0;
TR0=1;
n++;
if(n==20) //1s
{ n=0;
Sja1000_TX(); //SJA1000發(fā)送
}
}*/
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????318530??2007-05-22?10:08??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\CAN資料\參考資料\CAN_jiedian.pdf
?????文件????2147368??2007-05-21?12:10??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\CAN資料\參考資料\ds18b20cn.pdf
?????文件????1176110??2006-12-22?16:56??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\CAN資料\參考資料\基于SJA1000的CAN節(jié)點設(shè)計v1.0.pdf
?????文件?????231899??2007-10-04?10:34??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\CAN資料\焊板資料\89C51.pdf
?????文件?????497015??2007-10-04?09:19??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\CAN資料\焊板資料\CTM1050.pdf
?????文件?????240413??2007-10-04?09:44??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\CAN資料\焊板資料\SJA1000.pdf
?????文件?????316706??2008-11-28?22:44??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\科技創(chuàng)新實驗報告\基于CAN的分布式監(jiān)控系統(tǒng)(上位機節(jié)點).doc
?????文件?????614600??2008-11-28?22:46??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\科技創(chuàng)新實驗報告\基于CAN的分布式監(jiān)控系統(tǒng)(溫度節(jié)點).doc
?????文件?????675866??2008-11-28?22:45??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\科技創(chuàng)新實驗報告\基于CAN的分布式監(jiān)控系統(tǒng)(速度節(jié)點).doc
?????文件???????1865??2007-10-02?20:01??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序1\ds18b20.h
?????文件???????2605??2007-10-15?11:53??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序1\main.c
?????文件???????2890??2007-10-15?19:58??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序1\sja1000.h
?????文件???????1841??2007-10-15?19:27??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序1\sja1000reg.h
?????文件???????6053??2004-02-02?16:51??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序1\SJA1000_PELI.LIB
?????文件???????2100??2007-10-15?12:08??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序1\SJA1000_Test2.Uv2
?????文件???????8570??2003-06-12?15:27??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序1\VIIC_C51.C
?????文件???????2415??2001-06-26?14:47??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序1\VIIC_C51.H
?????文件???????1865??2007-10-02?20:01??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序2\ds18b20.h
?????文件???????2403??2001-10-20?12:00??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序2\main.c
?????文件???????2787??2001-10-20?12:02??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序2\sja1000.h
?????文件???????1841??2001-10-20?12:54??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序2\sja1000reg.h
?????文件???????6053??2004-02-02?16:51??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序2\SJA1000_PELI.LIB
?????文件???????2100??2007-10-15?12:08??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序2\SJA1000_Test2.Uv2
?????文件???????8570??2003-06-12?15:27??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序2\VIIC_C51.C
?????文件???????2415??2001-06-26?14:47??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\實驗箱程序2\VIIC_C51.H
?????文件???????1865??2007-10-16?14:43??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\溫度節(jié)點-最終版\ds18b20.h
?????文件???????2998??2000-01-18?12:02??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\溫度節(jié)點-最終版\main.c
?????文件???????2828??2000-01-18?13:05??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\溫度節(jié)點-最終版\sja1000.h
?????文件???????1774??2007-10-15?22:02??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\溫度節(jié)點-最終版\sja1000reg.h
?????文件?????102433??2007-10-16?14:53??科技創(chuàng)新-基于CAN總線的溫度控制系統(tǒng)\程序\溫度節(jié)點-最終版\wudu.DSN
............此處省略16個文件信息
評論
共有 條評論