0
点赞
收藏
分享

微信扫一扫

基于单片机的水质监测(串口)仿真设计(#0007)


水资源是人类宝贵的财富,水是生命之源,随着经济的飞速发展,环境问题逐渐出现,水资源受到污染和过度的开发,水的需求量更是大大的增加,为了保护珍贵水源,有必要对水质进行监测。

功能描述

1、采用51单片机作为主控芯片;

2、采用LCD1602同时显示温度/PH/浊度;

3、采用TLC2543作为ADC模数转换处理;

4、温度/浊度/PH值任一超标时蜂鸣器报警;

5、采用串口通信将数据发送至电脑端;

     上传信息:T26-Z60-P7.5

     信息表示:温度26°-浊度60%-PH值为7.5

基于单片机的水质监测(串口)仿真设计(#0007)_串口通信

整体方案

基于单片机的水质监测(串口)仿真设计(#0007)_系统设计_02

仿真设计

采用Proteus作为仿真设计工具。Proteus是一款著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。

基于单片机的水质监测(串口)仿真设计(#0007)_单片机_03

主程序设计

void main(void)
{
LcdInit();
ShtConnectReset();
UART_Init();

while(1)
{
ReadShtData();

DisplayListChar(4,0,"temp:");
DisplayOneChar(10,0,(char)(temp/10+'0'));
DisplayOneChar(11,0,(char)(temp%10+'0'));
DisplayOneChar(12,0,(char)(' '));
DisplayOneChar(13,0,(char)('C'));
Uart1Send( 'T' );
Uart1Send( (char)(temp/10+'0') );
Uart1Send( (char)(temp%10+'0') );
Uart1Send( '-' );

read2543(0);//调用2543驱动程序测量地址为
LUX_now=volt*2;
DisplayListChar(0,1,"ZD:");
DisplayOneChar(3,1,(char)(volt*2/1000000+'0'));
DisplayOneChar(4,1,(char)((volt*2/100000)%10+'0'));
DisplayOneChar(6,1,(char)('%'));
Uart1Send( 'Z' );
Uart1Send( (char)(volt*2/1000000+'0') );
Uart1Send( (char)((volt*2/100000)%10+'0') );
Uart1Send( '-' );

read2543(1);//调用2543驱动程序测量地址为
C2_now=volt*2;
DisplayListChar(10,1,"PH:");
DisplayOneChar(13,1,(char)(volt*2/1000000+'0'));
DisplayOneChar(14,1,(char)('.'));
DisplayOneChar(15,1,(char)((volt*2/100000)%10+'0'));
Uart1Send( 'P' );
Uart1Send( (char)(volt*2/1000000+'0') );
Uart1Send( '.' );
Uart1Send( (char)((volt*2/100000)%10+'0') );
Uart1Send( '-' );


if(LUX_now>LUX_max || C2_now>C2_max || temp>temp_max)
{

BEEP=0;
}else
{
BEEP=1;
}

}
}

源文件获取


举报

相关推荐

0 条评论