ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

基于单片机的自动浇花器设计毕设论文

2021-07-22 20:02:09  阅读:310  来源: 互联网

标签:毕设 浇花 uchar character write 单片机 lcd1602 sbit include


在这里插入图片描述
在这里插入图片描述

#include<reg52.h>
#include<LCD1602.h>
#include<ADC0832.h>
#include<INTERRUPT.h>
#include<math.h>
#include<stdio.h>
#include<EEPROM.h>
#include<DS1302.h>
sbit jidainqi  = P1^4;//自动浇花开关
sbit jidainqi_led  = P1^3;//自动浇花开关指示灯
sbit key_mode  = P3^2;//模式切换按键
sbit key_set  = P3^3;//设置
sbit key_jia  = P3^4;//加
sbit key_jian  = P2^0;//减
sbit guang  = P2^2;//光
uchar temp_ad[6];  
double temp;
uchar f=0;
uchar wei;
uchar mode;
uchar set_time=0;
uchar jiaohua_num;//浇花湿度值
uchar set_shidu=0;//按键设置标志位
uchar T0_num;
uchar ad;
char naozhong1[]={0x00,0x00,0x00};
/********************************************************
函数名称:void delayms(uint ms)
函数作用:毫秒延时函数
参数说明:
********************************************************/ 
void Delay_ms(uint ms)
{
	unsigned char i=100,j;
	for(;ms;ms--)
	{
		while(--i)
		{
			j=10;
			while(--j);
		}
	}
}
void display(void)//选择页面
{
	lcd1602_write_character(0,1,"Watering System ");	   //初始化显示的文字
	lcd1602_write_character(0,2,"  Choice mode");	   //初始化显示的文字		
}
void display1(void)//白天自动检测浇花
{   
		ad=ADC0832_read(0);
		Delay_ms(25);
		temp=(1-(double)ad/255)*100;
		if(temp<=jiaohua_num)
		{	
			if(f==0)//清屏标志位
			{
				LCD_write_command(0x01);
				delay_n40us(100);
				f=1;
			}	
			lcd1602_write_character(0,1,"Flower is Dying!");
			lcd1602_write_character(0,2," Auto Watering!");
			jidainqi=0;jidainqi_led=0;//自动浇花
		}
		else
		{	
//			if(temp<1.5)
//				wei=sprintf(temp_ad,"%0.2f",0);
//			else
			wei=sprintf(temp_ad,"%0.2f",temp);
			if(f==1)
			{
				LCD_write_command(0x01);
				delay_n40us(100);
				f=0;
			}		
			lcd1602_write_character(0,1,"  The mode one:");	   //初始化显示的文字	
			lcd1602_write_character(3,2,"         ");
			lcd1602_write_character(9-wei,2,temp_ad);
			lcd1602_write_character(9,2,"%RH");
			jidainqi=1;jidainqi_led=1;//停止浇花
		}	
}

链接:https://pan.baidu.com/s/1l9PtAy880_xQ0q_-tbq3nQ
提取码:f2on

标签:毕设,浇花,uchar,character,write,单片机,lcd1602,sbit,include
来源: https://blog.csdn.net/m0_60139146/article/details/119007731

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有