资源描述:
《单片机温度显示程序.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、#include
#include
#defineucharunsignedchar
#defineuintunsignedint
#definedelayNOP(){_nop_();_nop_();_nop_();_nop_();}
sbitDQ=P2^2;
sbitdula=P2^6;//定义锁存器锁存端
sbitwela=P2^7;
sbitrs=P3^5;//定义1602液晶RS端
sbitlcden=P3^4;//定义1602液晶LCDEN端
sbits
2、1=P3^0;//定义按键--功能键
sbits2=P3^1;//定义按键--增加键
sbits3=P3^2;//定义按键--减小键
sbits4=P3^6;//闹钟查看键
sbitrd=P3^7;
sbitbeep=P2^3;//定义蜂鸣器端
ucharcodeTemp_Disp_Title[]={"CurrentTemp:"};
ucharCurrent_Temp_Display_Buffer[]={"TEMP:"};
ucharcodeAlarm_Temp[]={"ALARMTEMPHiLo"}
3、;
ucharAlarm_HI_LO_STR[]={"Hi:Lo:"};
uchartemp_data[2]={0x00,0x00};
uchartemp_alarm[2]={0x00,0x00};
uchardisplay[5]={0x00,0x00,0x00,0x00,0x00};
uchardisplay1[3]={0x00,0x00,0x00};
ucharcodedf_Table[]={0,1,1,2,3,3,4,4,5,6,6,7,8,8,9,9};
ucharCurrentT=0;//当前
4、读取的温度整数部分
ucharTemp_Value[]={0x00,0x00};//从DS18B20读取的温度值
ucharDisplay_Digit[]={0,0,0,0};//待显示的各温度数位
bitDS18B20_IS_OK=1;//传感器正常标志//-------------------------------------
//延时1
//-------------------------------------
voiddelay1(uintx)
{
uchari;
while(x--)fo
5、r(i=0;i<200;i++);
}
//-------------------------------------
//延时2
//-------------------------------------
voidDelay(uintx)
{
while(x--);
}
//------------------------------------
//忙检查
//------------------------------------
voidwrite_com(ucharcom)//液晶写命令函
6、数
{
rs=0;
lcden=0;
P0=com;
delay1(5);
lcden=1;
delay1(5);
lcden=0;
}voidWrite_LCD_Data(uchardate)//液晶写数据函数
{
rs=1;
lcden=0;
P0=date;
delay1(5);
lcden=1;
delay1(5);
lcden=0;
}
//-----------------------------
//设置LCD显示位置
//---------------------------------
7、
voidSet_Disp_Pos(ucharPos)
{
write_com(Pos
8、0x80);
}
//-----------------------------
//LCD初始化
//---------------------------------
voidInitialize_LCD()
{
ucharnum;
rd=0;//软件将矩阵按键第4列一端置低用以分解出独立按键
dula=0;//关闭两锁存器锁存端,防止操作液晶时数码管会出乱码
wela=0;
lcden=0;
write_c
9、om(0x38);//初始化1602液晶
write_com(0x0c);
write_com(0x06);
write_com(0x01);
write_com(0x80);//设置显示初始坐标for(num=0;num<14;num++)//显示年月日星期
{
Write_LCD_Data(Temp_Disp_Title[num]);
delay1(5);
}
}
//--------------------------------