资源简介
STC89C51 TDS检测 里面的内容还添加了 温度检测 用于温度补偿 使得检测到的数据更加准确
代码片段和文件信息
#include
#include“LCD1602.h“
#include“DS18b20.h“
#include“eeprom52.h“
unsigned int frequency = 0;
sbit key1=P1^0;
bit key1_flag=0;
sbit beep=P1^5;
unsigned int ks;
unsigned int kt;
unsigned int out;
unsigned char j = 0h = 0num;
bit star=0;
uint temp=0;
void timeInitialize()
{
TMOD = 0x51;
TH0 = 0xdc;
TL0 = 0x00;
TH1 = 0x00;
TL1 = 0x00;
ET0=1;
ET1=1;
EA=1;
}
unsigned int conductivity() // 温度补偿
{
unsigned int kt = 0;
kt = (0.07 *frequency) * 0.825 - 35;
if(out<=10) kt = kt + (0.0169*out+0.5583);
else if(out <= 20 && out > 10) kt = kt + (0.018*out+0.5473);
else if(out <= 30 && out > 20) kt=kt+(0.0189*out+0.5281);
else
kt=kt + (0.022*out + 0.55);
return kt;
}
void key_dispose()
{
if(!key1)
{
if(key1_flag)
{
key1_flag=0;
star=~star;
if(star== 1) //开始测量
{
ks=0;
TH1 =0;
TL1 = 0;
TR1 = 1;
TR0 = 1;
beep=0;
LCD1602_delay(4000);
beep=1;
}
else if(star == 0) //锁定显示
{
TR1 = 0;
TR0 = 0;
beep=0;
LCD1602_delay(4000);
beep=1;
}
}
}
else key1_flag=1;
}
void display()
{
LCD1602_write(00x80);
LCD1602_writebyte(“Temp:“);
LCD1602_write(10x30+temp/100%10);
LCD1602_write(10x30+temp/10%10);
LCD1602_writebyte(“.“);
LCD1602_write(10x30+temp%10);
LCD1602_write(10xdf);
LCD1602_writebyte(“C “);
LCD1602_write(00xC0);
LCD1602_writebyte(“TDS :“);
LCD1602_write(10x30+ks/1000%10);
LCD1602_write(10x30+ks/100%10);
LCD1602_write(10x30+ks/10%10);
LCD1602_write(10x30+ks%10);
LCD1602_writebyte(“PPM “);
}
void main()
{
do
{
temp=Temper();
}while(temp==850);
timeInitialize();
LCD1602_cls();
while(1)
{
temp=Temper();
out= temp/10;
display();
key_dispose();
}
}
void Timer0Interrupt(void) interrupt 1 //定时中断
{
TH0 = 0xdc;
TL0 = 0x00;
num += 1;
if(num >= 100)
{
num = 0;
TR1 = 0;
TR0 = 0;
frequency = (256*TH1 +TL1) ; //测得脉冲
ks = conductivity(); //测试值处理
TH1 = 0;
TL1 = 0;
TR1 = 1;
TR0 = 1;
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 107664 2018-05-07 11:52 2-原理图和PCB图\99se 格式的原理图和PCB图\Backup of PCB图.pcb
文件 35087 2018-05-06 12:55 2-原理图和PCB图\99se 格式的原理图和PCB图\Backup of 原理图.sch
文件 411648 2018-05-07 14:11 2-原理图和PCB图\99se 格式的原理图和PCB图\PCB图.Bkp
文件 305152 2018-05-07 14:11 2-原理图和PCB图\99se 格式的原理图和PCB图\PCB图.DDB
文件 115484 2017-09-22 17:02 2-原理图和PCB图\99se 格式的原理图和PCB图\PCB图.pcb
文件 233472 2018-05-07 14:10 2-原理图和PCB图\99se 格式的原理图和PCB图\原理图.Bkp
文件 233472 2018-05-07 14:10 2-原理图和PCB图\99se 格式的原理图和PCB图\原理图.DDB
文件 35087 2017-09-22 17:01 2-原理图和PCB图\99se 格式的原理图和PCB图\原理图.sch
文件 60595 2017-09-22 17:06 2-原理图和PCB图\word 格式的原理图和PCB图.docx
..A..H. 162 2018-05-06 12:54 2-原理图和PCB图\~$rd 格式的原理图和PCB图.docx
文件 413503 2017-09-22 17:16 2-原理图和PCB图\原理图和PCB图.pdf
文件 16664 2017-11-15 16:30 1-程序\C51
文件 2377 2017-11-15 16:30 1-程序\C51.c
文件 6114 2017-11-15 16:30 1-程序\C51.hex
文件 38 2017-11-15 16:30 1-程序\C51.lnp
文件 6838 2017-11-15 16:30 1-程序\C51.LST
文件 22174 2017-11-15 16:30 1-程序\C51.M51
文件 18604 2017-11-15 16:30 1-程序\C51.OBJ
文件 13377 2017-11-15 16:30 1-程序\C51.plg
文件 57495 2017-11-15 16:30 1-程序\C51.uvopt
文件 13222 2017-11-15 16:30 1-程序\C51.uvproj
文件 1317 2017-11-15 16:18 1-程序\DS18B20.h
文件 3059 2016-07-01 18:59 1-程序\eeprom52.h
文件 1865 2016-09-07 08:43 1-程序\LCD1602.H
目录 0 2018-05-07 14:11 2-原理图和PCB图\99se 格式的原理图和PCB图
目录 0 2018-05-06 12:54 2-原理图和PCB图
目录 0 2018-03-26 09:08 1-程序
----------- --------- ---------- ----- ----
2114470 27
............此处省略0个文件信息
- 上一篇:dockae第一
- 下一篇:三机九节点的暂态稳定性仿真程序
评论
共有 条评论