• 大小: 81.18MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-06-21
  • 语言: 其他
  • 标签: 单片机  

资源简介

基于51单片机自动智能浇花系统设计

资源截图

代码片段和文件信息

#include 	         //调用单片机头文件
#define uchar unsigned char  //无符号字符型 宏定义 变量范围0~255
#define uint  unsigned int  //无符号整型 宏定义 变量范围0~65535

#include 

       //数码管段选定义 0     1    2    3    4    5 6  7   8    9
uchar code smg_du[]={0x140x770x4c0x450x270x850x840x570x040x05
//    A B  C   D    E   F 不显示
     0x060xa40x9c0x640x8c0x8e0xff};  //断码
//数码管位选定义
sbit smg_we1 = P2^0;     //数码管位选定义
sbit smg_we2 = P2^2;
sbit smg_we3 = P2^4;
sbit smg_we4 = P2^6;
uchar dis_smg[8] = {0x140x770x4c0x450x270x850x84};

sbit SCL=P1^2; //SCL定义为P1口的第3位脚,连接ADC0832SCL脚
sbit DO=P1^3; //DO定义为P1口的第4位脚,连接ADC0832DO脚
sbit CS=P1^0; //CS定义为P1口的第4位脚,连接ADC0832CS脚

uchar shidu;     //湿度等级
uchar s_high = 70s_low = 25; //湿度报警参数

sbit dianji = P3^5;     //电机IO定义

/***********************1ms延时函数*****************************/
void delay_1ms(uint q)
{
uint ij;
for(i=0;i for(j=0;j<120;j++);
}


/***********************数码位选函数*****************************/
void smg_we_switch(uchar i)
{
switch(i)
{
case 0: smg_we1 = 0;  smg_we2 = 1; smg_we3 = 1;  smg_we4 = 1; break;
case 1: smg_we1 = 1;  smg_we2 = 0; smg_we3 = 1;  smg_we4 = 1; break;
case 2: smg_we1 = 1;  smg_we2 = 1; smg_we3 = 0;  smg_we4 = 1; break;
case 3: smg_we1 = 1;  smg_we2 = 1; smg_we3 = 1;  smg_we4 = 0; break;
}
}

uchar flag_200ms ;
uchar key_can;  //按键值的变量
uchar menu_1;        //菜单设计的变量

/***********************数码显示函数*****************************/
void display()
{
static uchar i;   
i++;
if(i >= 4)
i = 0;
P0 = 0xff;  //消隐 
smg_we_switch(i);  //位选
P0 = dis_smg[i];  //段选         
// delay_1ms(1);
}

/***********读数模转换数据********************************************************/
//请先了解ADC0832模数转换的串行协议,再来读本函数,主要是对应时序图来理解,本函数是模拟0832的串行协议进行的
//  1  1  0 通道
//  1  1  1 通道 
unsigned char ad0832read(bit SGLbit ODD)
{
unsigned char i=0value=0value1=0;
SCL=0;
DO=1;
CS=0; //开始
SCL=1; //第一个上升沿
SCL=0;
DO=SGL;
SCL=1;   //第二个上升沿
SCL=0;
DO=ODD;
SCL=1;    //第三个上升沿
SCL=0;    //第三个下降沿
DO=1;
for(i=0;i<8;i++)
{
SCL=1;
SCL=0; //开始从第四个下降沿接收数据
value=value<<1;
if(DO)
value++;
}
for(i=0;i<8;i++)
{ //接收校验数据
value1>>=1;
if(DO)
value1+=0x80;
SCL=1;
SCL=0;
}
SCL=1;
DO=1;
CS=1;
if(value==value1) //与校验数据比较,正确就返回数据,否则返回0
return value;
return 0;
}



/********************独立按键程序*****************/
uchar key_can;  //按键值

void key()  //独立按键程序
{
static uchar key_new;
key_can = 20;                   //按键值还原
P1 |= 0xf0;
if((P1 & 0xf0) != 0xf0) //按键按下
{
delay_1ms(1);       //按键消抖动
if(((P1 & 0xf0) != 0xf0) && (key_new == 1))
{ //确认是按键按下
key_new = 0;
switch(P1 & 0xf0)
{
case 0x70: key_can = 1; break;    //得到k2键值
case 0xb0: key_can = 2; break;    //得到k3键值
case 0xd0: key_can = 3; break;    //得到k4键值
}
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2016-09-02 00:07  11、功能说明及实物演示视频\
     文件        1788  2016-09-02 00:17  11、功能说明及实物演示视频\产品功能说明及演示视频.txt
     目录           0  2016-09-02 00:43  12、制作过程详解\
     文件          48  2016-09-02 00:43  12、制作过程详解\制作过程详解.txt
     目录           0  2016-09-02 00:18  13、设计资料\
     文件          48  2016-09-02 00:18  13、设计资料\设计资料.txt
     目录           0  2016-09-02 00:07  14、送疑难问题解答\
     文件         150  2016-08-31 16:44  14、送疑难问题解答\疑难问题解答.txt
     目录           0  2016-09-02 00:07  15、送答辩技巧\
     文件          48  2016-08-31 16:43  15、送答辩技巧\答辩技巧.txt
     目录           0  2016-09-02 00:07  16、焊接注意事项及调试讲解\
     文件         152  2016-08-31 16:41  16、焊接注意事项及调试讲解\焊接注意事项及调试讲解.txt
     目录           0  2016-09-02 00:07  17、各种软件安装包及专业相关视频\
     文件        1369  2016-08-31 16:30  17、各种软件安装包及专业相关视频\各种软件安装包及专业相关视频.txt
     目录           0  2016-09-02 00:08  1、产品完整源程序(含详细备注)\
     目录           0  2016-08-31 14:02  1、产品完整源程序(含详细备注)\程序\
     文件        9084  2016-08-30 16:35  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花
     文件        5664  2016-08-25 18:14  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花.c
     文件        2664  2016-08-30 16:35  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花.hex
     文件          66  2016-08-30 16:35  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花.lnp
     文件       13980  2016-08-30 16:35  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花.LST
     文件       14411  2016-08-30 16:35  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花.M51
     文件       10571  2016-08-30 16:35  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花.OBJ
     文件         215  2016-08-30 23:52  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花.plg
     文件       55838  2016-08-31 00:07  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花.uvopt
     文件       13289  2015-02-01 14:11  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花.uvproj
     文件       55838  2016-08-25 18:26  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花_uvopt.bak
     文件       13285  2015-02-01 12:53  1、产品完整源程序(含详细备注)\程序\土壤湿度 自动浇花_uvproj.bak
     文件       32658  2016-08-30 14:55  1、产品完整源程序(含详细备注)\程序\程序.zip
     目录           0  2016-09-02 00:54  2、产品设计任务书\
     文件       14848  2016-09-02 00:54  2、产品设计任务书\任务书.doc
............此处省略29个文件信息

评论

共有 条评论