基于单片机温湿度光照控制系统仿真设计-设计资料

本文介绍了如何利用STC89C52RC单片机配合DS18B20温度传感器实现温度监测,并通过1602液晶显示和LED灯进行报警。代码中包含ADC读取、DS18B20数据解析、以及用户输入控制模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

资料下载地址-1095(百度网盘):点击下载

/***********************************************************************
* 使用芯片: STC89C52RC
* 使用晶振: 12MHz
* 编程方式: 框架式编程
***********************************************************************/

#include <all.h>
uint wendu, shidu;

#include "1602.H"
#include "DS18B20.h"
extern uchar ReadAdc0832( unsigned char channel );


extern void DelayMs( unsigned char t );


uint		Temp[5];                                                                /* 温度值温度放大10倍 */
int		DS18B20DATA[3];                                                         /* DS18B20读到的16位数据 */
code uchar	DecimalNum[16] = { 0, 1, 1, 2, 3, 3, 4, 4, 5, 6, 6, 7, 8, 8, 9, 9 };    /* DS18B20小数部分对应的数 */
uchar code	DuanMa[] = { 0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f };
sbit		LED1	= P3 ^ 1;                                                       /* LED报警 */
sbit		LED2	= P3 ^ 7;                                                       /* LED报警 */
sbit		LED3	= P1 ^ 3;                                                       /* LED报警 */
sbit		LED4	= P1 ^ 6;                                                       /* LED报警 */


sbit	BEEP	= P3 ^ 5;                                                               /* 蜂蜜其报警 */
sbit	LE	= P3 ^ 0;
sbit	Key	= P1 ^ 2;

sbit	SET	= P1 ^ 7;                                                               /* 设置键 */
sbit	ADD	= P3 ^ 3;                                                               /* 加++1 */
sbit	DEC	= P3 ^ 4;                                                               /* 减--1 */
sbit	ADD1	= P1 ^ 0;                                                               /* 加++1 */
sbit	DEC1	= P1 ^ 1;                                                               /* 减--1 */

sbit    HOT  = P3^2;
sbit    COOL = P1^3;


uchar	flag = 0;
uchar	CurID;                                                                          /* 路数ID */


uint A1_D = 400; 
uint A1_U = 500;
uint	A2_D	= 100;

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值