欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
數(shù)字溫度計(jì)單片機(jī)課程設(shè)計(jì)
[打印本頁(yè)]
作者:
zoulaingchen
時(shí)間:
2017-12-27 20:13
標(biāo)題:
數(shù)字溫度計(jì)單片機(jī)課程設(shè)計(jì)
0.png
(17.58 KB, 下載次數(shù): 24)
下載附件
2017-12-28 00:52 上傳
單片機(jī)源程序如下:
#include <AT89X52.h>
#include "DS18B20.h"
#define uint unsigned int
#define uchar unsigned char
#define SET P3_1
#define DEC P3_2
#define ADD P3_3
#define BEEP P3_7
bit shanshuo_st;
bit beep_st;
sbit DIAN=P2^7;
uchar x=0;
signed char m;
uchar n;
uchar set_st=0;
signed char shangxian=38;
signed char xiaxian=15;
uchar code
LEDDate[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void Delay (uint num)
{
while(--num);
}
void InitTimer(void)
{
TMOD=0x1;
TH0=0x4c;
TL0=0x00;
}
void timer0(void) interrupt 1
{
TH0=0x4c;
TL0=0x00;
x++;
}
void int0(void) interrupt 0
{
EX0=0;
if (DEC ==0&&set_st==1)
{
shangxian--;
if(shangxian<xiaxian)shangxian=xiaxian;
}
else if(DEC==0&&set_st==2)
{
xiaxian--;
if (xiaxian<0)xiaxian==0;
}
}
void int1(void) interrupt 2
{
EX1=0;
if(ADD==0&&set_st==1)
{
shangxian++;
if(shangxian>99)shangxian=99;
}
else if(ADD==0&&set_st==2)
{
xiaxian++;
if (xiaxian>shangxian)xiaxian=shangxian;
}
}
void check_wendu(void)
{
uint a,b,c;
c=ReadTemperature()-5;
a=c/100;
b=c/10-a*10;
m=c/10;
if(m<0){m=0;n=0;}
if(m>99){m=99;n=9;}
}
Disp_init()
{
P2=0xbf;
P1=0xfe;
Delay(200);
P2=0xbf;
P1=0xfd;
Delay(200);
P2=0xbf;
P1=0xfb;
Delay(200);
P2=0xbf;
P1=0xf7;
Delay(200);
P1=0xff;
}
Disp_Temperature()
{
P2=0xc6;
P1=0xf7;
Delay(300);
P2=LEDDate[n];
P1=0xfb;
Delay(300);
P2=LEDDate[m/10];
DIAN=0;
P1=0xfd;
Delay(300);
P2=LEDDate[m/10];
P1=0xfe;
Delay(300);
P1=0xff;
}
Disp_alarm(uchar baojing)
{
P2=0xc6;
P1=0xf7;
Delay(200);
P2=LEDDate[baojing%10];
P1=0xfb;
Delay(200);
if(set_st==1)P2=0x89;
else if (set_st==2)P2=0xc7;
P1=0xfe;
Delay(200);
P1=0xff;
}
void Alarm()
{
if(x>=10){beep_st=~beep_st;x=0;}
if((m>=shangxian&&beep_st==1)||(m<xiaxian&&beep_st==1))BEEP=0;
else BEEP=1;
}
void main (void)
{
uint z;
InitTimer();
EA=1;
TR0=1;
ET0=1;
IT0=1;
IT1=1;
check_wendu();
check_wendu();
for(z=0;z<300;z++)
{
Disp_init();
}
while(1)
{
if(SET==0)
{
Delay(2000);
do{;}while(SET==0);
set_st++;x=0;shanshuo_st=1;
if (set_st>2)set_st=0;
}
if(set_st==0)
{
EX0=0;
EX1=0;
check_wendu();
Disp_Temperature();
Alarm();
……………………
…………限于本文篇幅 余下代碼請(qǐng)從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
單片機(jī)課程設(shè)計(jì)(1).zip
(71.91 KB, 下載次數(shù): 17)
2017-12-27 20:12 上傳
點(diǎn)擊文件名下載附件
課程
下載積分: 黑幣 -5
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1