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

  • 大小: 42KB
    文件類型: .rar
    金幣: 2
    下載: 0 次
    發布日期: 2021-05-16
  • 語言: 其他
  • 標簽: LCD1602??

資源簡介

基于LCD1602讀取DS18B20序列號proteus仿真有圖有代碼,代碼可能有點亂,但是測試通過,可自行修改。

資源截圖

代碼片段和文件信息

/*******************************************************************************
*??描述:???????????????????????????????????????????????????????????????????????*
*?????????1602字符型LCD顯示演示程序????????????????????????????????????????????*
*?????????在第一行顯示??welcome????????????????????????????????????????????????*
*?????????在第二行顯示??www.PRECHIN.com?????????????????????????????????????????*
*??????????????????????????????????????????????????????????????????????????????*
********************************************************************************/

#include?
#include?

typedef?unsigned?char?BYTE;
typedef?unsigned?int?WORD;
#define?uchar?unsigned?char
#define?uint?unsigned?int
typedef?bit?BOOL?;?
uint?tempflag1;
int??LedOut[4];
int?temper;

sbit?DQ=P3^7;
sbit?rs =?P2^4; //
sbit?rw?=?P2^5;
sbit?ep?=?P2^6;
uchar?sn[8];?
BYTE?code?dis1[]?=?{“XQL“};
BYTE?code?dis2[]?=?{“CC“};
uchar?code?table[]={0x3f0x060x5b0x4f
0x660x6d0x7d0x07
0x7f0x6f0x770x7c
0x390x5e0x790x71};


sbit????LS138A=P2^0;???????//管腳定義
sbit????LS138B=P2^1;
sbit????LS138C=P2^2;?

/*--------- DS18B20-----------*/
void?delay1(unsigned?char?i)?
{
while(i--);?
}

void?initionds18b20()
{

DQ=0;
delay1(128);??//900us

DQ=1;
delay1(1);?


while(DQ);??//檢測到應答脈沖
????//i=103;while(i>0)?i--;//等待870us
delay1(100);
}

uchar?readds18b20()
{??uchar?i???=?0;
uchar?dat?=?0;
for(i=8;i>0;i--)
{
???DQ?=?0;??????????????????//將總線拉低,要在1us之后釋放總線
???????????????????????????//單片機要在此下降沿后的15us內讀數據才會有效。
???_nop_();?????????????????//至少維持了1us表示讀時序開始
???dat?>>=?1;???????????????//讓從總線上讀到的位數據,依次從高位移動到低位。
???DQ?=?1;??????????????????//釋放總線,此后DS18B20會控制總線把數據傳輸到總線上
???delay1(1);?????????????????//延時7us此處參照推薦的讀時序圖,盡量把控制器采樣時間放到讀時序后的15us內的最后部分
???if(DQ)???????????????????//控制器進行采樣
???{
????dat?|=?0x80;????????????//若總線為1即DQ為1那就把dat的最高位置1;若為0則不進行處理保持為0
???}????????
???delay1(10);???????????????//此延時不能少,確保讀時序的長度60us。
}
return?(dat);
}



void?writeds18b20(uchar?dat)
{
uchar?i?=?0;
for(i=8;i>0;i--)
{
???DQ?=?0;????????????????????????//拉低總線
???_nop_();???????????????????????//至少維持了1us表示寫時序(包括寫0時序或寫1時序)開始
???DQ?=?dat&0x01;?????????????????//從字節的最低位開始傳輸
?????????????????????????????????//指令dat的最低位賦予給總線必須在拉低總線后的15us內
?????????????????????????????????//因為15us后DS18B20會對總線采樣。
???delay1(10);?????????????????????//必須讓寫時序持續至少60us
???DQ?=?1;????????????????????????//寫完后必須釋放總線
???dat?>>=?1;
???delay1(1);
}
}

void?tmpchange()
{
// uint?i;
initionds18b20();
//dsWait();
//delay(1);
writeds18b20(0xcc);//跳過序列號命令
writeds18b20(0x44);//發轉換命令
//DQ=1;i++;i++;

}
?uint?tmp()
{

uchar?ab;
float?tt;
initionds18b20();
writeds18b20(0xcc);
writeds18b20(0xbe);//發送讀取命令
a=readds18b20();//讀溫度低位
b=readds18b20();//讀溫度高位
temp=b;
temp<<=8;
temp|=a;
tt=temp*0.0625;
temp=tt;

return?(temp);

}

void?rom()?//讀取序列號
{?
uchar?i;
int?j;
initionds18b20();?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????1340??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\防真圖\LCD1602-DS18B20.PWI

?????文件??????38000??2012-03-08?23:48??基于LCD1602與LED的proteus仿真溫度測量\防真圖\Last?Loaded?LCD1602-DS18B20.DBK

?????文件??????36915??2012-03-09?17:19??基于LCD1602與LED的proteus仿真溫度測量\防真圖\LCD1602-DS18B20.DSN

?????文件???????5828??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602.c

?????文件???????3078??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602.hex

?????文件?????????46??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602.lnp

?????文件??????17668??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602.M51

?????文件???????1664??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602.plg

?????文件???????1996??2012-03-08?22:19??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602.Uv2

?????文件??????????0??2012-03-08?14:57??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602_Uv2.Bak

?????文件??????13453??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602.LST

?????文件??????14546??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602.OBJ

?????文件??????13296??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602

????.......??????1012??2012-03-09?17:19??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602_Opt.Bak

?????文件???????1016??2012-03-09?17:22??基于LCD1602與LED的proteus仿真溫度測量\代碼\lcd1602.Opt

?????目錄??????????0??2012-03-08?22:36??基于LCD1602與LED的proteus仿真溫度測量\防真圖

?????目錄??????????0??2012-03-08?22:36??基于LCD1602與LED的proteus仿真溫度測量\代碼

?????目錄??????????0??2012-03-08?22:36??基于LCD1602與LED的proteus仿真溫度測量

-----------?---------??----------?-----??----

???????????????149858????????????????????18


評論

共有 條評論