資源簡介
基于51單片機的溫度報警器程序和原理圖;

代碼片段和文件信息
#define?_ds18b20_c
#include?“config.h“
#include?“ds18b20.h“
#include?“led.h“
int16?du=0;
extern?int?inttdect;
extern?bit?stasystem;
extern??uint8?a;
extern??uint8?b;
extern??uint8?c;
extern??uint8?d;
extern??uint8?e;
extern??uint8?f;
extern?bit?noise;
void?delayx10us(uint8?t)
{
do{
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
_nop_();
}while(--t);
}
//獲得存在脈沖
bit?get18b20ack()
{
bit?ack;
EA=0;
io_18b20=0;
delayx10us(50);
io_18b20=1;
delayx10us(6);
ack=io_18b20;
while(!io_18b20);
EA=1;
return?ack;
}
//寫字節
void?write18b20(uint8?dat)
{
uint8?mask;
EA=0;
for?(mask=0x01;mask!=0;mask<<=1)
{
io_18b20=0;
_nop_();
_nop_();
if((mask&dat)==0)
io_18b20=0;
else?
io_18b20=1;
delayx10us(6);
io_18b20=1;
}
EA=1;
}
//讀字節
uint8?read18b20()
{
uint8?dat;
uint8?mask;
EA=0;
for(mask=0x01;mask!=0;mask<<=1)
{
io_18b20=0;
_nop_();
_nop_();
io_18b20=1;
_nop_();
_nop_();
if(!io_18b20)
dat&=~mask;
else?
dat|=mask;
delayx10us(6);
}
EA=1;
return?dat;
}
//溫度轉化
bit?start18b20()
{
bit?ack;
ack=get18b20ack();
if(ack==0)
{
write18b20(0xcc);
write18b20(0x44);
}
return?~ack;
}
//讀取溫度
bit?get18b20temp(int16?*temp)??
{
bit?ack;
uint8?lsbmsb;
ack=get18b20ack();
if(ack==0)
{
write18b20(0xcc);
write18b20(0xbe);
lsb=read18b20();
msb=read18b20();
*temp=((int16)msb<<8)+lsb;
intt=*temp>>4;
dect=*temp*0xf;
}
return?~ack;
}
//鬧鐘
void?alarmmonitor()
{
if(stasystem==0)
{ if((intt>(a*10+b))||((intt==(a*10+b))&&(cdect)))
{
if((intt>(a*10+b))||((intt==(a*10+b))&&(c {
if(noise==1)
{
led0open();
led1closs();
}
if(noise==0)
{
?led0closs();
}
}
else?if((intt<(d*10+e))||((intt==(d*10+e))&&(f>dect)))
{
if(noise==1)
{
led1open();
led0closs();
}
if(noise==0)
{
?led1closs();
}
}
}
}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????19931??2018-08-31?08:52??基于51的溫度報警器\pcb?-?副本\History\PCB.~(1).PCBDOC.Zip
?????文件??????20006??2018-08-31?09:57??基于51的溫度報警器\pcb?-?副本\History\PCB.~(2).PCBDOC.Zip
?????文件??????19954??2018-08-31?12:45??基于51的溫度報警器\pcb?-?副本\History\PCB.~(3).PCBDOC.Zip
?????文件??????10490??2018-08-31?14:07??基于51的溫度報警器\pcb?-?副本\PCB\History\PCB1.~(1).PcbDoc.Zip
?????文件??????10686??2018-08-31?14:10??基于51的溫度報警器\pcb?-?副本\PCB\History\PCB1.~(2).PcbDoc.Zip
?????文件??????10687??2018-08-31?14:11??基于51的溫度報警器\pcb?-?副本\PCB\History\PCB1.~(3).PcbDoc.Zip
?????文件??????10782??2018-08-31?14:12??基于51的溫度報警器\pcb?-?副本\PCB\History\PCB1.~(4).PcbDoc.Zip
?????文件??????10686??2018-08-31?15:24??基于51的溫度報警器\pcb?-?副本\PCB\History\PCB1.~(5).PcbDoc.Zip
?????文件??????18938??2018-08-31?16:28??基于51的溫度報警器\pcb?-?副本\PCB\History\PCB1.~(6).PcbDoc.Zip
?????文件??????19697??2018-08-31?17:03??基于51的溫度報警器\pcb?-?副本\PCB\History\PCB1.~(7).PcbDoc.Zip
?????文件??????19951??2018-08-31?17:07??基于51的溫度報警器\pcb?-?副本\PCB\History\PCB1.~(8).PcbDoc.Zip
?????文件??????20002??2018-08-31?17:11??基于51的溫度報警器\pcb?-?副本\PCB\History\PCB1.~(9).PcbDoc.Zip
?????文件???????3656??2018-08-31?10:01??基于51的溫度報警器\pcb?-?副本\PCB\PCB1?PCB?ECO?2018-8-31?10-01-42.LOG
?????文件???????5672??2018-08-31?10:04??基于51的溫度報警器\pcb?-?副本\PCB\PCB1?PCB?ECO?2018-8-31?10-04-34.LOG
?????文件???????3631??2018-08-31?14:16??基于51的溫度報警器\pcb?-?副本\PCB\PCB1?PCB?ECO?2018-8-31?14-16-14.LOG
?????文件???????2455??2018-08-31?14:16??基于51的溫度報警器\pcb?-?副本\PCB\PCB1?PCB?ECO?2018-8-31?14-16-39.LOG
?????文件????????328??2018-08-31?14:46??基于51的溫度報警器\pcb?-?副本\PCB\PCB1?PCB?ECO?2018-8-31?14-46-03.LOG
?????文件?????227531??2018-08-31?17:13??基于51的溫度報警器\pcb?-?副本\PCB\PCB1.PCB3D
?????文件?????157184??2018-08-31?17:12??基于51的溫度報警器\pcb?-?副本\PCB\PCB1.PcbDoc
?????文件???????3181??2018-08-31?17:16??基于51的溫度報警器\pcb?-?副本\PCB\PCB1.pcbdoc_viewstate
?????文件???????5791??2018-08-31?09:55??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(1).PcbLib.Zip
?????文件???????6036??2018-08-31?14:47??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(10).PcbLib.Zip
?????文件???????6044??2018-08-31?14:52??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(11).PcbLib.Zip
?????文件???????6086??2018-08-31?14:52??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(12).PcbLib.Zip
?????文件???????6078??2018-08-31?17:13??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(13).PcbLib.Zip
?????文件???????5847??2018-08-31?09:57??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(2).PcbLib.Zip
?????文件???????5848??2018-08-31?13:09??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(3).PcbLib.Zip
?????文件???????5831??2018-08-31?13:14??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(4).PcbLib.Zip
?????文件???????5853??2018-08-31?14:38??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(5).PcbLib.Zip
?????文件???????6063??2018-08-31?14:41??基于51的溫度報警器\pcb?-?副本\pcb庫\History\pcb庫.~(6).PcbLib.Zip
............此處省略91個文件信息
評論
共有 條評論