久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機數字溫度計(高于10度,低于-3.5度時報警)代碼與仿真
[打印本頁]
作者:
m0ck
時間:
2017-11-20 14:28
標題:
單片機數字溫度計(高于10度,低于-3.5度時報警)代碼與仿真
(收集加修改)當溫度高于10度,低于-3.5度時,報警指示燈(紅燈)亮。
0.png
(15.51 KB, 下載次數: 76)
下載附件
2017-11-20 21:05 上傳
0.png
(10.02 KB, 下載次數: 46)
下載附件
2017-11-20 21:05 上傳
單片機源程序如下:
#include<reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar code lednum[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};//數碼管字0~9
uint temp;
uchar g,s,b,q; //個十百千位
//uchar data disdata[5];
uint Tvalue; //溫度值
uchar Tflag; //溫度正負標志
char t=0;//溫度 ,初始設定0
sbit p0=P0^0;//控制紅色報警燈
sbit P34=P3^4;
sbit P35=P3^5;
sbit P36=P3^6;
sbit DQ=P3^7;//ds18b20與單片機連接口
sbit P17=P1^7;
sbit P24=P2^4;
/*****************延時函數********************/
void delay(uint x)
{ uchar k;
while(x--)
for(k=0;k<250;k++) ;
}
/*****************數碼管掃描********************/
void ledscan(void)
{ uchar k;
for(k=0;k<150;k++)
{ //顯示DS18B20 小數點一位,含負溫度顯示
P1=lednum[g];P2=0x0e;delay(1);P1=0x00;
P1=lednum[s];P17=1;P2=0x0d;delay(1);P1=0x00;
P1=lednum[b];P2=0x0b;delay(1);P1=0x00;
P1=lednum[q];P2=0x07;delay(1);P1=0x00;
}
}
/******************************DS18B20程序(定義開始)***************************************/
void delay_18B20(unsigned int i)//延時2微秒
{
while(i--);
}
/*****************ds1820復位****************/
void DS18B20_RST()
{ unsigned char x=0;
DQ = 1; //DQ復位
delay_18B20(8); //延時
DQ = 0; //DQ拉低
delay_18B20(80); //精確延時大于480us
DQ = 1; //拉高
delay_18B20(14);
x=DQ;
delay_18B20(20);
}
/*****************讀數據*******************/
uchar DS18B20_RD()
{ unsigned char i=0;
unsigned char R_data= 0;
for (i=8;i>0;i--)
{ DQ = 0; //給脈沖信號
R_data>>=1; //
DQ = 1; //給脈沖信號
if(DQ)
R_data|=0x80;
delay_18B20(4);
}
return(R_data);
}
/*******************寫數據*******************/
void DS18B20_WR(uchar W_data)
{
unsigned char i=0;
for (i=8; i>0; i--)
{ DQ = 0;
DQ = W_data&0x01;
delay_18B20(5);
DQ = 1;
W_data>>=1; //
}
delay_18B20(4);
}
/****************讀取溫度值并轉換***************/
read_temp()
{ uchar a,b;
DS18B20_RST();
DS18B20_WR(0xcc); //*跳過讀序列號*/
DS18B20_WR(0x44); //*啟動溫度轉換*/
DS18B20_RST();
DS18B20_WR(0xcc); //*跳過讀序列號*/
DS18B20_WR(0xbe); //*讀取溫度*/
a=DS18B20_RD();
b=DS18B20_RD();
Tvalue=b;
Tvalue<<=8; //
Tvalue=Tvalue|a;
if(Tvalue<0x0fff)
Tflag=0;
else
{
Tvalue=~Tvalue+1;
Tflag=1;
}
Tvalue=Tvalue*(0.625);//溫度值擴大10倍,精確到1位小數
return(Tvalue);
}
/****************溫度值顯示***************/
void DS1820disp()
{
b=Tvalue/100%10;//十位數
s=Tvalue/10%10; //個位數
g=Tvalue%10; //小數位
t=b|s;//t中是溫度的整數部分
if(Tflag==0)
q=Tvalue/1000; //正溫度不顯示符號,顯示百位數
else
q=10;//負溫度顯示負號:-
}
/******************************DS18B20程序(定義結束)***************************************/
/*****************主函數********************/
void main()
{
P0=0xff;
……………………
…………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
數字溫度計.rar
(67.52 KB, 下載次數: 36)
2017-11-20 14:27 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
zzt123
時間:
2018-4-22 17:48
有電路圖嘛?
作者:
linfangjun
時間:
2018-4-25 21:08
不錯不錯,學習的好資料
作者:
daydayup68
時間:
2018-5-8 15:06
非常不錯,贊
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
日日干夜夜操天天操
|
青青草在线播放
|
欧美乱人伦视频
|
久久国产精品视频观看
|
gav成人免费播放视频
|
美女国产
|
亚洲精品免费观看
|
有码在线
|
亚洲v日韩v综合v精品v
|
91在线中文字幕
|
久久久久久久久久影视
|
婷婷开心激情综合五月天
|
五月天天丁香婷婷在线中
|
国产美女一区二区
|
久久九九99
|
国产一级一片免费播放
|
日韩中字幕
|
精品福利在线
|
久久不卡
|
国产精品成人久久久久
|
久久综合一区
|
91大片
|
99久9
|
欧美日韩国产精品激情在线播放
|
在线观看黄视频
|
奇米影视在线
|
噜噜噜色网
|
国产精品久久久久无码av
|
欧美在线视频一区
|
欧美久久免费观看
|
国产精品久久久久久久久久久久冷
|
秋霞a级毛片在线看
|
成人三级在线播放
|
国产亚洲精品久久午夜玫瑰园
|
91免费视频
|
羞羞视频在线观免费观看
|
99久久精品国产一区二区三区
|
久久在线视频
|
精品福利av导航
|
成人国产免费视频
|
欧美亚洲视频
|