资源简介
仿真,代码,PCB,参考论文等等.....................................................................
代码片段和文件信息
#include
#include
#include
#define uint unsigned int
#define uchar unsigned char
#define nops(); {_nop_();_nop_();_nop_();_nop_();}
uchar code str1[]={“TEMP: “};
uchar TempBuffer[4];
sbit DQ = P3^5; //温度传送数据IO口
sbit FMQ=P1^0;
uint wenduSet_wenduH=38Set_wenduL=10;
uchar flag=0; //显示状态位
sbit key1=P1^1; //按键
sbit key2=P1^2;
sbit key3=P1^3;
/*************DS18B20温度读取模块*************/
void delay_1ms(uint z)
{
uint xy;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void tmpDelay(int num)//延时函数
{
while(num--) ;
}
void Init_DS18B20()//初始化ds1820
{
unsigned char x=0;
DQ = 1; //DQ复位
tmpDelay(8); //稍做延时
DQ = 0; //单片机将DQ拉低
tmpDelay(80); //精确延时 大于 480us
DQ = 1; //拉高总线
tmpDelay(14);
x=DQ; //稍做延时后 如果x=0则初始化成功 x=1则初始化失败
tmpDelay(20);
}
unsigned char ReadOneChar()//读一个字节
{
unsigned char i=0;
unsigned char dat = 0;
for (i=8;i>0;i--)
{
DQ = 0; // 给脉冲信号
dat>>=1;
DQ = 1; // 给脉冲信号
if(DQ)
dat|=0x80;
tmpDelay(4);
}
return(dat);
}
void WriteOneChar(unsigned char dat)//写一个字节
{
unsigned char i=0;
for (i=8; i>0; i--)
{
DQ = 0;
DQ = dat&0x01;
tmpDelay(5);
DQ = 1;
dat>>=1;
}
}
uchar Readtemp()//读取温度
{
uchar temp = 0;
uchar tmp[2];
Init_DS18B20();
WriteOneChar(0xCC); // 跳过读序号列号的操作
WriteOneChar(0x44); // 启动温度转换
delay_1ms(10);
Init_DS18B20();
WriteOneChar(0xCC); //跳过读序号列号的操作
WriteOneChar(0xBE); //读取温度寄存器
tmp[0]=ReadOneChar(); //连续读两个字节数据 //读低8位
tmp[1]=ReadOneChar(); //读高8位
temp = ((tmp[1]<<4)&0xF0)|((tmp[0]>>4)&0x0F); //正负数返回数值
if(temp>127) //判断temp
{
temp = ~temp + 1;
}
return (temp);
}
//按键扫描程序 设置温度的上下限 0-99.9
void Key_Check()
{
if(!key1){
while(!key1);
flag++;
FMQ=1;
if(flag==3)
{
flag=0;
LCD_write_str(20“ “);
}
if(flag==1)
{
LCD_write_str(20“H“);
}
if(flag==2)
{
LCD_write_str(20“L“);
}
}
if(flag==1){
if(!key2){
//while(!key2);
delay(50); //软件消除按键抖动
if(!key2){
// while(!key2);
Set_wenduH++;
if(Set_wenduH>99){ //超过上限就赋值0
Set_wenduH=0;
}
}
}
if(!key3){
delay(50); //软件消除按键抖动
if(!key3){
// while(!key3);
Set_wenduH--;
if(Set_wenduH==0){ //低于下限就赋值900
Set_wenduH=99;
}
}
}
Lcd_Display_2Date(15Set_wenduH);
}
if(flag==2){
if(!key2){
//while(!key2);
delay(50); //软件消除按键抖动
if(!key2){
// while(!key2);
Set_wenduL++;
if(Set_wenduL>99){ //超过上限就赋值0
Set_wenduL=0;
}
}
}
if(!key3){
delay(50); //软件消除按键抖动
if(!key3){
// while(!key3);
Set_wenduL--;
if(Set_wenduL==0){ //低于下限就赋值200
Set_wenduL=99;
}
}
}
Lcd_Display_2Date(15Set_wenduL);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 36864 2013-05-15 10:19 基于STC89C52单片机温度系统控制资料\8550中文资料.doc
文件 53760 2014-11-19 17:10 基于STC89C52单片机温度系统控制资料\DS18B20中文资料.doc
文件 317953 2014-04-21 15:22 基于STC89C52单片机温度系统控制资料\lcd1602中文资料.doc
文件 53760 2014-10-04 16:48 基于STC89C52单片机温度系统控制资料\STC89C52中文资料.doc
..A.SH. 162 2016-04-19 10:06 基于STC89C52单片机温度系统控制资料\~$理图PCB图.doc
文件 28672 2015-05-18 09:24 基于STC89C52单片机温度系统控制资料\元件清单.doc
文件 291 2016-04-21 19:19 基于STC89C52单片机温度系统控制资料\功能介绍.txt
文件 51200 2016-04-21 19:36 基于STC89C52单片机温度系统控制资料\原理图PCB图.doc
文件 920576 2014-12-31 16:21 基于STC89C52单片机温度系统控制资料\基于51单片机的智能温度报警控制系统参考论文.doc
文件 14346 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20
文件 3816 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.c
文件 4064 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.hex
文件 62 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.lnp
文件 10865 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.LST
文件 21624 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.M51
文件 16105 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.OBJ
文件 1497 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.plg
....... 56561 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.uvopt
文件 13407 2013-07-14 22:41 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20.uvproj
....... 56503 2016-04-20 17:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20_uvopt.bak
文件 0 2013-07-14 20:30 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\DS18B20_uvproj.bak
文件 2333 2015-05-18 18:05 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\lcd1602.c
文件 6376 2009-05-07 14:37 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\STARTUP.A51
文件 14048 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\STARTUP.LST
文件 749 2016-04-21 19:24 基于STC89C52单片机温度系统控制资料\温度系统控制lcd1602程序4.19\STARTUP.OBJ
文件 151647 2016-04-21 19:27 基于STC89C52单片机温度系统控制资料\温度系统控制仿真\Last Loaded moot.DBK
文件 151647 2016-04-21 19:27 基于STC89C52单片机温度系统控制资料\温度系统控制仿真\moot.DSN
文件 1054 2016-04-21 19:28 基于STC89C52单片机温度系统控制资料\温度系统控制仿真\moot.PWI
文件 14803 2016-04-21 19:27 基于STC89C52单片机温度系统控制资料\温度系统控制仿真\温度系统控制lcd1602程序4.19\DS18B20
文件 3706 2016-04-21 19:27 基于STC89C52单片机温度系统控制资料\温度系统控制仿真\温度系统控制lcd1602程序4.19\DS18B20.c
............此处省略49个文件信息
- 上一篇:计算机网络课程设计校园网设计
- 下一篇:TSPLIB数据集、使用方法及最优解
相关资源
- 第三讲_温度场的有限元分析
- 基于AD590的温度检测系统
- 毕业设计外文翻译温度传感器
- 基于STM32C8t6实现的温度控制系统
- 单片机的控制DS1621温度传感器实验
- 基于单片机温度控制系统的设计附原
- 搅拌摩擦焊温度场模拟
- Arduino 负温度系数热敏电阻NTC测温
- STM8L 内部温度ADC检测
- 温度监测上位机+下位机调试程序
- DS18B20无线多点温度采集系统的设计
- 基于STM32C8T6的按键温度双模式控制风
- 基于单片机的智能LED台灯设计-附电路
- gy906 90614 STM32F1读取温度lcd显示 串口和
- 绝对完美的电子万年历年月日+时钟
- FPGA实现温度测量,自动避障,红外遥
- 基于战舰STM32的1602液晶驱动程序+ds1
- 基于单片机的电阻炉温度PID控制系统
- STM32F103mini-MLX90614工程文件
- 4.传热.pdf
- 基于12864显示温度及报警系统.rar
- 数码管与DS18B20设计的温度报警器
- SHT30 温度、湿度传感器 STM32F130ZET6
- Proteus温度控制课程设计
- stm8l使用AD测量内部温度 库函数版本工
- STM32F4读取ADS1262数据外部压力传感器
- 基于stm32温度报警设计
- STM32CUBEMX配置,dc18b20采集温度,LCD5
- 基于nrf2401的无线多点测温系统的设计
- 基于zigbee的无线温度测量系统
评论
共有 条评论