91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 310KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2021-06-07
  • 語言: 其他
  • 標簽: DS18B20??

資源簡介

含datasheet schematic code

資源截圖

代碼片段和文件信息

/*
?*?DS18B20測試程序
?*?
?*?用途:數碼管模塊測試程序
?*?
?*?作者 日期 備注
?*?Huafeng?Lin 2012/04/21 新增
?*?Huafeng?Lin 2012/04/21 修改
?*?
?*/

#include?

#define?uchar?unsigned?char

code?unsigned?char?seg7code[]={0xc00xf90xa40xb00x990x920x820xf80x800x900xff};? //不帶小數點的共陽數碼管段碼
code?unsigned?char?seg7codeB[]={0x400x790x240x300x190x120x020x780x000x100xff};? //帶小數點的共陽數碼管段碼

sbit?DQ=P3^6;? //數據傳輸線接單片機的相應的引腳?
unsigned?char?tempL=0;? //設全局變量
unsigned?char?tempH=0;?
unsigned?int?sdata; //測量到的溫度的整數部分
unsigned?char?xiaoshu1; //小數第一位
unsigned?char?xiaoshu2; //小數第二位
unsigned?char?xiaoshu; //兩位小數
bit?fg=1;???????? //溫度正負標志

void?delay(unsigned?char?i)
{
for(i;i>0;i--);
}

void?delay1(uchar?i)
{
uchar?jk;?
for(j=i;j>0;j--)
for(k=125;k>0;k--);
}

void?Init_DS18B20(void)?
{
unsigned?char?x=0;
DQ=1;? //DQ先置高?
delay(8);? //稍延時
DQ=0;? //發送復位脈沖?
delay(80);? //延時(>480us)?
DQ=1;? //拉高數據線?
delay(5);? //等待(15~60us)?
x=DQ;? //用X的值來判斷初始化有沒有成功,18B20存在的話X=0,否則X=1?
delay(20);?
}

//讀一個字節
ReadOneChar(void)?? //主機數據線先從高拉至低電平1us以上,再使數據線升為高電平,從而產生讀信號
{
unsigned?char?i=0;? //每個讀周期最短的持續時間為60us,各個讀周期之間必須有1us以上的高電平恢復期
unsigned?char?dat=0;?
for?(i=8;i>0;i--)? //一個字節有8位?
{
DQ=1;?
delay(1);?
DQ=0;
dat>>=1;?
DQ=1;?
if(DQ)?
dat|=0x80;?
delay(4);
}?
return(dat);
}

//寫一個字節
void?WriteOneChar(unsigned?char?dat)?
{?
unsigned?char?i=0;? //數據線從高電平拉至低電平,產生寫起始信號。15us之內將所需寫的位送到數據線上,
for(i=8;i>0;i--)? //在15~60us之間對數據線進行采樣,如果是高電平就寫1,低寫0發生。?
{
DQ=0;? //在開始另一個寫周期前必須有1us以上的高電平恢復期。?
DQ=dat&0x01;?
delay(5);?
DQ=1;?
dat>>=1;
}?
delay(4);
}

//讀溫度值(低位放tempL;高位放tempH;)
void?ReadTemperature(void)?
{?
Init_DS18B20();? //初始化
WriteOneChar(0xcc);? //跳過讀序列號的操作
WriteOneChar(0x44);? //啟動溫度轉換
delay(125);? //轉換需要一點時間,延時?
Init_DS18B20();? //初始化
WriteOneChar(0xcc);? //跳過讀序列號的操作?
WriteOneChar(0xbe);? //讀溫度寄存器(頭兩個值分別為溫度的低位和高位)?
tempL=ReadOneChar();? //讀出溫度的低位LSB
tempH=ReadOneChar();? //讀出溫度的高位MSB
if(tempH>0x7f)?????? //最高位為1時溫度是負
{
tempL=~tempL; //補碼轉換,取反加一
tempH=~tempH+1;???????
fg=0;?????? //讀取溫度為負時fg=0
}
sdata?=?tempL/16+tempH*16;?????? //整數部分
xiaoshu1?=?(tempL&0x0f)*10/16;? //小數第一位
xiaoshu2?=?(tempL&0x0f)*100/16%10; //小數第二位
xiaoshu=xiaoshu1*10+xiaoshu2;? //小數兩位
}

//顯示函數
void?Led(unsigned?int?date)
{?
if(fg==1)
{
P2=0xfe;????? //P1.0=0,選通第一位
P0=seg7code[date/10];?? //十位數,查表,輸出
delay1(5);
P0=0xff;???????? //消隱

P2=0xfd;????? //P1.1=0選通第二位,個位數
P0=seg7codeB[date%10];
delay1(5);
P0=0xff;??????? //消隱

P2=0xfb;????? //P1.3=0選通第三位,小數點第一位
P0=seg7code[xiaoshu1];
delay1(5);
P0=0xff;????????? //消隱

P2=0xf7;????? //P1.3=0選通第四位,小數點第二位
P0=seg7code[xiaoshu2];
delay1(5);
P0=0xff;??????? //消隱
}

if(fg==0)?? //溫度為負時顯示的數據
{
P2=0xfe;????? //P1.0=0

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2015-06-11?15:32??模塊A150\
?????目錄???????????0??2015-06-11?15:32??模塊A150\原理圖\
?????文件???????64029??2015-06-11?15:31??模塊A150\原理圖\DS18B20.pdf
?????目錄???????????0??2015-06-11?15:32??模塊A150\測試程序\
?????目錄???????????0??2015-06-11?15:32??模塊A150\測試程序\DS18B20\
?????文件????????7066??2015-06-11?15:31??模塊A150\測試程序\DS18B20\DS18B20
?????文件???????10431??2015-06-11?15:31??模塊A150\測試程序\DS18B20\DS18B20.M51
?????文件????????2111??2015-06-11?15:31??模塊A150\測試程序\DS18B20\DS18B20.hex
?????文件??????????43??2015-06-11?15:31??模塊A150\測試程序\DS18B20\DS18B20.lnp
?????文件?????????347??2015-06-11?15:31??模塊A150\測試程序\DS18B20\DS18B20.plg
?????文件???????55210??2015-06-11?15:31??模塊A150\測試程序\DS18B20\DS18B20.uvopt
?????文件???????13239??2015-06-11?15:31??模塊A150\測試程序\DS18B20\DS18B20.uvproj
?????文件???????55215??2015-06-11?15:31??模塊A150\測試程序\DS18B20\DS18B20_uvopt.bak
?????文件???????13236??2015-06-11?15:31??模塊A150\測試程序\DS18B20\DS18B20_uvproj.bak
?????文件????????9826??2015-06-11?15:31??模塊A150\測試程序\DS18B20\Main.LST
?????文件????????8080??2015-06-11?15:31??模塊A150\測試程序\DS18B20\Main.OBJ
?????文件????????4048??2015-06-11?15:31??模塊A150\測試程序\DS18B20\Main.c
?????目錄???????????0??2015-06-11?15:32??模塊A150\相關資料\
?????文件??????261896??2015-06-11?15:31??模塊A150\相關資料\DS18B20.pdf

評論

共有 條評論