• 大小: 757KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-04
  • 语言: 其他
  • 标签: DS18B20  LCD1602  DS1302  

资源简介

(1)用LCD1602显示时间和温度。 (2)温度设定范围为:室温~90℃,最小区分度为 1℃,标定温度≤1℃。 (3)环境温度降低时温度控制的静态误差≤1℃。 (4)用1602液晶显示水的实际温度。 (5)采用适当的控制方法,当设定温度突变(由40℃提高到60℃)时,减小系统的调节时间和超调量。

资源截图

代码片段和文件信息

#include 
#include 
//#include “LCD1602.h“
//#include “DS1302.h“
#define uint unsigned int
#define uchar unsigned char
sbit  DS1302_CLK = P1^7;              //实时时钟时钟线引脚 
sbit  DS1302_IO  = P1^6;              //实时时钟数据线引脚 
sbit  DS1302_RST = P1^5;              //实时时钟复位线引脚
sbit  wireless_1 = P3^0;
sbit  wireless_2 = P3^1;
sbit  wireless_3 = P3^2;
sbit  wireless_4 = P3^3;
sbit  ACC0 = ACC^0;
sbit  ACC7 = ACC^7;
char hide_sechide_minhide_hourhide_dayhide_weekhide_monthhide_year;  //秒分时到日月年位闪的计数
sbit Set = P2^0;       //模式切换键
sbit Up = P2^1;        //加法按钮
sbit Down = P2^2;      //减法按钮
sbit out = P2^3;       //立刻跳出调整模式按钮
sbit DQ = P1^0;        //温度传送数据IO口
char donecounttempflagup_flagdown_flag;
uchar temp_value;      //温度值
uchar TempBuffer[5]week_value[2];


void show_time();   //液晶显示程序
/***********1602液晶显示部分子程序****************/


//Port Definitions**********************************************************
sbit LcdRs = P2^5;
sbit LcdRw = P2^6;
sbit LcdEn   = P2^7;
sfr  DBPort  = 0x80; //P0=0x80P1=0x90P2=0xA0P3=0xB0.数据端口

//内部等待函数**************************************************************************
unsigned char LCD_Wait(void)
{
LcdRs=0;
LcdRw=1; _nop_();
LcdEn=1; _nop_();
 
LcdEn=0;
return DBPort;
}
//向LCD写入命令或数据************************************************************
#define LCD_COMMAND 0      // Command
#define LCD_DATA 1      // Data
#define LCD_CLEAR_SCREEN 0x01      // 清屏
#define LCD_HOMING   0x02      // 光标返回原点
void LCD_Write(bit style unsigned char input)
{
LcdEn=0;
LcdRs=style;
LcdRw=0; _nop_();
DBPort=input; _nop_();//注意顺序
LcdEn=1; _nop_();//注意顺序
LcdEn=0; _nop_();
LCD_Wait();
}

//设置显示模式************************************************************
#define LCD_SHOW 0x04    //显示开
#define LCD_HIDE 0x00    //显示关   

#define LCD_CURSOR 0x02  //显示光标
#define LCD_NO_CURSOR 0x00    //无光标      

#define LCD_FLASH 0x01    //光标闪动
#define LCD_NO_FLASH 0x00    //光标不闪动

void LCD_SetDisplay(unsigned char DisplayMode)
{
LCD_Write(LCD_COMMAND 0x08|DisplayMode);
}

//设置输入模式************************************************************
#define LCD_AC_UP 0x02
#define LCD_AC_DOWN 0x00      // default

#define LCD_MOVE 0x01      // 画面可平移
#define LCD_NO_MOVE 0x00      //default

void LCD_SetInput(unsigned char InputMode)
{
LCD_Write(LCD_COMMAND 0x04|InputMode);
}

//初始化LCD************************************************************
void LCD_Initial()
{
LcdEn=0;
LCD_Write(LCD_COMMAND0x38);           //8位数据端口2行显示5*7点阵
LCD_Write(LCD_COMMAND0x38);
LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR);    //开启显示 无光标
LCD_Write(LCD_COMMANDLCD_CLEAR_SCREEN);   //清屏
LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE);       //AC递增 画面不动
}

//液晶字符输入的位置************************
void GotoXY(unsigned char x unsigned char y)
{
if(y==0)
LCD_Write(LCD_COMMAND0x80|x);
if(y==1)
LCD_Write(LCD_C

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1521  2007-09-12 14:29  DS1302时钟+DS18B20+无线遥控应用程序\DS1302.PWI

     文件      21718  2007-09-12 14:28  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.c

     文件       5830  2007-07-21 21:23  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.h

     文件       7615  2007-09-12 14:29  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.hex

     文件         44  2007-09-12 14:29  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.lnp

     文件      41834  2007-09-12 14:29  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.M51

     文件        721  2007-09-12 14:30  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.plg

     文件       3771  2005-09-18 23:23  DS1302时钟+DS18B20+无线遥控应用程序\Keil\LCD1602.h

    ....SH.        10  2006-12-17 08:33  DS1302时钟+DS18B20+无线遥控应用程序\Keil\_desktop.ini

     文件      45383  2007-09-12 14:29  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.LST

     文件      38693  2007-09-12 14:29  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.OBJ

     文件      32573  2007-09-12 14:29  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302

    .......      1959  2004-07-25 09:20  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302_Uv2.Bak

     文件       2078  2007-09-12 14:30  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.Uv2

    .......      1836  2007-07-29 21:35  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302_Opt.Bak

     文件       1494  2007-09-12 14:30  DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.Opt

     目录          0  2006-11-30 20:13  DS1302时钟+DS18B20+无线遥控应用程序\Keil

    ....SH.        10  2006-12-17 08:33  DS1302时钟+DS18B20+无线遥控应用程序\_desktop.ini

     文件    1524550  2004-07-24 21:40  DS1302时钟+DS18B20+无线遥控应用程序\效果显示图.bmp.bmp

     文件      19633  2007-09-12 14:28  DS1302时钟+DS18B20+无线遥控应用程序\LISA1.SDF

     文件     155328  2004-07-24 21:28  DS1302时钟+DS18B20+无线遥控应用程序\Last Loaded DS1302.DBK

     文件     155352  2007-09-12 14:29  DS1302时钟+DS18B20+无线遥控应用程序\DS1302.DSN

    ..A.SH.      5632  2007-09-21 15:57  DS1302时钟+DS18B20+无线遥控应用程序\Thumbs.db

     目录          0  2006-11-30 20:13  DS1302时钟+DS18B20+无线遥控应用程序

     文件       1521  2007-09-12 14:29  1602液晶+DS1302时钟芯片+DS18B20温度传感器\DS1302时钟+DS18B20+无线遥控应用程序\DS1302.PWI

     文件      21718  2007-09-12 14:28  1602液晶+DS1302时钟芯片+DS18B20温度传感器\DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.c

     文件       5830  2007-07-21 21:23  1602液晶+DS1302时钟芯片+DS18B20温度传感器\DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.h

     文件       7615  2007-09-12 14:29  1602液晶+DS1302时钟芯片+DS18B20温度传感器\DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.hex

     文件         44  2010-11-18 20:35  1602液晶+DS1302时钟芯片+DS18B20温度传感器\DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.lnp

     文件      42202  2010-11-18 20:35  1602液晶+DS1302时钟芯片+DS18B20温度传感器\DS1302时钟+DS18B20+无线遥控应用程序\Keil\DS1302.M51

............此处省略21个文件信息

评论

共有 条评论