|
- /*****************************************************************************
- * 文件名:main.c
- * 说 明:用AT89C51、DS18B20、DS1302、24C02、AMPIRE128X64、电机、灯泡、按键、
- * led指示灯等实现一个简易温度控制自动管理系统。
- * 主要功能是可以显示时间(年、月、日、时、分、秒) 、当前温度、温度上下限、
- * 温度是否在正常范围,可以通过按键控制风机和加热灯,用蜂鸣器报警温度超出
- * 上下限、同时用LED指示灯指示,可以通过串口修改时间、温度上限限,控制风机
- * 加热灯等。
- * 作 者:老杨
- * 时 间: 2011.6.9完成
- *****************************************************************************/
- #include "main.h"
- #include "delay.h"
- #include "ds1302.h"
- #include "KS0108.h"
- #include "IIC.h"
- #include "ds18B20.h"
- #include "serial.h"
-
- //端口定义
- sbit SPEAK = P2^2; //报警器控制管脚
- sbit LED_NOR = P2^3; //正常指示灯控制管脚
- sbit LED_OVER = P2^4; //温度上限指示灯控制管脚
- sbit LED_LOW = P2^5; //温度下限指示灯控制管脚
- sbit MOTO = P2^6; //风机控制管脚
- sbit HEAT = P2^7; //加热设备控制管脚
- //sbit RXD = P3^0; //reg51.h中已经定义
- //sbit TXD = P3^1; //reg51.h中已经定义
- sbit K_MOTO = P3^2; //控制风机按键
- sbit K_HEAT = P3^3; //控制加热设备的按键
-
- #define DAT_ADDR 0x03 //IIC EEPROM中保存的温度上、下限的地址
-
- uchar g_pc_cont; //pc控制,0没控制,1风扇开,2风扇关,4加热开,8加热关;
-
- /******************************************************
- * 函 数:外部0中断,设定键中断响应
- * 参 数:空
- ******************************************************/
- void int0_inter() interrupt 0
复制代码
|
评分
-
查看全部评分
|