1、快速完成毕设的方法
2、项目资料
2.1 系统框架
本系统由STC89C52单片机电路+水流量传感器+DS18B20温度电路+继电器电路+LCD1602液晶显示电路+按键电路+蜂鸣器电路+电源电路组成。
2.2 系统功能
- 1、水流量传感器采用椭圆齿轮传感器。
- 2、通过液晶LCD1602液晶实时显示瞬时流量和累计流量、实时温度、设置的累计流量。
- 3、通过按键设置累计流量阈值,如果累计流量超过设置阈值,蜂鸣器报警、继电器断开,否则不报警继电器闭合。
- 4、继电器模拟水阀开关,如果当前累计流量低于设置流量,打开继电器的意思。
3、部分电路设计
3.1 STC89C52单片机最小系统电路设计
STC89C52RC单片机是宏晶科技推出的新一代高速、低功耗、超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。
STC89C52单片机最小系统电路由复位电路、时钟电路和电源电路。拥有这三部分电路后,单片机即可正常工作。
单片机最小系统原理图如下图所示:
实物图:
3.2 继电器控制电路设计
继电器是一种电控制器件,是当输入量(激励量)的变化达到规定要求时,在电气输出电路中使被控量发生预定的阶跃变化的一种电器。它具有控制系统(又称输入回路)和被控制系统(又称输出回路)之间的互动关系。通常应用于自动化的控制电路中,它实际上是用小电流去控制大电流运作的一种“自动开关”。继电器是具有隔离功能的自动开关元件,广泛应用于遥控、遥测、
其具体电路原理图如下图所示:
- 实物图
3.3 DS18B20温度检测电路设计
DS18B20是常用的数字温度传感器,其输出的是数字信号,具有体积小,硬件开销低,抗干扰能力强,精度高的特点。DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。
其具体电路原理图如下图所示:
实物图如下:
3.4 LCD1602液晶显示电路设计
LCD显示器分为字段显示和字符显示两种。其中字段显示与LED显示相似,只要送对应的信号到相应的管脚就能显示。字符显示是根据需要显示基本字符。本设计采用的是字符型显示。系统中采用LCD1602作为显示器件输出信息。与传统的LED数码管显示器件相比,液晶显示模块具有体积小、功耗低、显示内容丰富等优点,而且不需要外加驱动电路,现在液晶显示模块已经是单片机应用设计中最常用的显示器件了。LCD1602可以显示2行16个汉字。
其具体电路原理图如下图所示:
实物图如下:
4、部分代码展示
4.1 LCD1602液晶显示屏引脚初始化程序设计
void LcdInit(void) { // DataDir = 0xFF; //数据端口设为输出状态 LcdWriteCommand(0x38, 0); //规定的复位操作 DelayMs(5); LcdWriteCommand(0x38, 0); DelayMs(5); LcdWriteCommand(0x38, 0); DelayMs(5); LcdWriteCommand(0x38, 1); //显示模式设置 LcdWriteCommand(0x08, 1); //显示关闭 LcdWriteCommand(0x01, 1); //显示清屏 LcdWriteCommand(0x06, 1); //写字符时整体不移动 LcdWriteCommand(0x0c, 1); //显示开,不开游标,不闪烁 }
4.2 LCD1602显示字符串程序设计
void Lcd_Puts(unsigned char x,unsigned char y, unsigned char *string) //向1602写一个字符串 { Lcd_SetXY(x,y); while(*string) { Lcd_Write_Data(*string); string++; } }
4.3 定时器初始化程序设计
void Init_Timer0(void) { TMOD |= 0x01; //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响 TH0=(65536-20000)/256; //重新赋值 20ms TL0=(65536-20000)%256; EA=1; //总中断打开 ET0=1; //定时器中断打开 TR0=1; //定时器开关打开 }
5. 项目编号
014