久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
單片機溫度采集DS18B20,在數碼管顯示
[打印本頁]
作者:
cf900320
時間:
2022-4-8 18:50
標題:
單片機溫度采集DS18B20,在數碼管顯示
/********************************************************************
* 文件名 : 溫度采集DS18B20.c
* 描述 : 該文件實現了用溫度傳感器件DS18B20對溫度的采集,并在數碼管上顯示出來。
* 創建人 :
* 版本號 : 2.0
***********************************************************************/
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
#define jump_ROM 0xCC
#define start 0x44
#define read_EEROM 0xBE
sbit DQ = P2^3; //DS18B20數據口
unsigned char TMPH,TMPL;
uchar code table[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
/********************************************************************
* 名稱 : delay()
* 功能 : 延時函數
* 輸入 : 無
* 輸出 : 無
***********************************************************************/
void delay(uint N)
{
int i;
for(i=0; i<N; i++)
;
}
/********************************************************************
* 名稱 : Delay_1ms()
* 功能 : 延時子程序,延時時間為 1ms * x
* 輸入 : x (延時一毫秒的個數)
* 輸出 : 無
***********************************************************************/
void Delay_1ms(uint i)//1ms延時
{
uchar x,j;
for(j=0;j<i;j++)
for(x=0;x<=148;x++);
}
/********************************************************************
* 名稱 : Reset()
* 功能 : 復位DS18B20
* 輸入 : 無
* 輸出 : 無
***********************************************************************/
uchar Reset(void)
{
uchar deceive_ready;
DQ = 0;
delay(29);
DQ = 1;
delay(3);
deceive_ready = DQ;
delay(25);
return(deceive_ready);
}
/********************************************************************
* 名稱 : read_bit()
* 功能 : 從DS18B20讀一個位值
* 輸入 : 無
* 輸出 : 從DS18B20讀出的一個位值
***********************************************************************/
uchar read_bit(void)
{
uchar i;
DQ = 0;
DQ = 1;
for(i=0; i<3; i++);
return(DQ);
}
/********************************************************************
* 名稱 : write_bit()
* 功能 : 向DS18B20寫一位
* 輸入 : bitval(要對DS18B20寫入的位值)
* 輸出 : 無
***********************************************************************/
void write_bit(uchar bitval)
{
DQ=0;if(bitval==1)
DQ=1;
delay(5);
DQ=1;
}
/********************************************************************
* 名稱 : read_byte()
* 功能 : 從DS18B20讀一個字節
* 輸入 : 無
* 輸出 : 從DS18B20讀到的值
***********************************************************************/
uchar read_byte(void)
{
uchar i,m,receive_data;
m = 1;
receive_data = 0;
for(i=0; i<8; i++)
{
if(read_bit())
{
receive_data = receive_data + (m << i);
}
delay(6);
}
return(receive_data);
}
/********************************************************************
* 名稱 : write_byte()
* 功能 : 向DS18B20寫一個字節
* 輸入 : val(要對DS18B20寫入的命令值)
* 輸出 : 無
***********************************************************************/
void write_byte(uchar val)
{
uchar i,temp;
for(i=0; i<8; i++)
{
temp = val >> i;
temp = temp & 0x01;
write_bit(temp);
delay(5);
}
}
/********************************************************************
* 名稱 : Main()
* 功能 : 主函數
* 輸入 : 無
* 輸出 : 無
***********************************************************************/
void main()
{
uint temp;
P2 = 0x00;
while(1)
{
Reset();
write_byte(jump_ROM);
write_byte(start);
Reset();
write_byte(jump_ROM);
write_byte(read_EEROM);
TMPL = read_byte();
TMPH = read_byte();
temp = TMPL / 16 + TMPH * 16;
P0 = table[temp/10%10];
P2 = 6;
Delay_1ms(5);
P0 = table[temp%10];
P2 = 7;
Delay_1ms(5);
}
}
復制代碼
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
久久久久久久久91
|
av天空
|
夜夜骚
|
日韩中文字幕在线观看
|
中文字幕免费在线
|
久久久亚洲精品视频
|
黑人巨大精品欧美一区二区免费
|
av一区在线观看
|
欧美成人一区二区三区
|
国产精品综合色区在线观看
|
一区二区视频在线
|
亚洲一区二区中文字幕
|
成人免费观看男女羞羞视频
|
国产麻豆一区二区三区
|
羞羞的视频在线观看
|
日一区二区三区
|
精久久久
|
日本中文在线视频
|
毛片av免费看
|
日本特黄特色aaa大片免费
|
免费观看一区二区三区毛片
|
99久久婷婷国产综合精品电影
|
久久国产一区二区三区
|
国产欧美视频一区二区
|
色综合久
|
国产日韩欧美一区二区
|
中文字幕11页
|
国产激情免费视频
|
少妇av片
|
www4虎
|
国产一区二区三区免费
|
一区二区三区国产精品
|
欧美在线视频一区
|
男女av
|
久久99精品久久久久久国产越南
|
日韩av一区在线观看
|
精品国产乱码久久久久久1区2区
|
日韩一区二区三区在线观看
|
亚洲一区二区三区在线免费
|
欧美成人一区二区三区
|
国产一区二区精品在线观看
|