一、系统方案
1、本设计采用51单片机作为主控器。
2、液晶1602显示。
3、采集温度值,水质大小、水位值、DS1302显示年月日时分秒。
4、自动加热、定时喂食,自动换水、水泵加热。
5、按键设置。
二、硬件设计
原理图如下:
三、单片机软件设计
1、首先是系统初始化
delay_1ms(150);
P0 = P1 = P2 = P3 = 0xff; //单片机IO口初始化为1
// init_time0(); //初始化定时器
//init_ds1302(); //ds1302初始化
init_1602(); //lcd1602初始化
init_1602_dis_csf(); //lcd1602初始化显示
//init_eeprom(); //开始初始化保存的数据
temperature = read_temp(); //先读出温度的值
delay_1ms(650);
2、液晶显示程序
/lcd1602写命令函数*/
void write_com(uchar com)
{
e=0;
rs=0;
rw=0;
P0=com;
delay_uint(3);
e=1;
delay_uint(25);
e=0;
}
/lcd1602写数据函数*/
void write_data(uchar dat)
{
e=0;
rs=1;
rw=0;
P0=dat;
delay_uint(3);
e=1;
delay_uint(25);
e=0;
}
/lcd1602初始化设置