单片机监测压力设计,当前压力与阈值对比程序
时间:10-02
整理:3721RD
点击:
单片机监测压力设计,在当前压力跟压力上下限对比时,main函数里,当前压力小于下限时,单片机控制气泵充气,过一会再采集当前压力,跟下限去对比,如果当前压力比下限高了,气泵就停止工作,这个程序怎么写,不知道如何下手,各位大神留言帮帮忙,感谢。我的main函数如下;void main()
{
num=0;//定时器计数初始0
pump=0;//低电平,气泵不工作
delay(10);//延时
wela=0; //屏蔽数码管位选
dula=0; //屏蔽数码管段选
lcd_init(); //液晶初始化
begin(); //显示开始界面
EA=1;
ET1=1;
TMOD=0X10;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TR1=1;
num++;
while(1)
{
keyscan(); //按键扫描
if (break1==-1)
{
if (num==10)//0.5s采集一次
{
num=0;
display();//ad采集及显示子程序
if(plow<pnow<phigh)
{
lcd_pos(3,0);
i = 0;
while(dis9 != '\0')
{
lcd_wdat(dis9); //压力正常监测中
i++;
}
}
if (pnow>phigh)
{
lcd_pos(3,0);
i = 0;
while(dis7 != '\0')
{
lcd_wdat(dis7); //压力高,放气中提示
i++;
}
}
if (pnow<plow)
{
lcd_pos(3,0);
i = 0;
while(dis8 != '\0')
{
lcd_wdat(dis8); //压力低,充气中提示
i++;
}
pump=1;//高电平,启动气泵工作
//开启中断,压力达到下限时,气泵停止工作
}
}
}//if后括号
}
}
{
num=0;//定时器计数初始0
pump=0;//低电平,气泵不工作
delay(10);//延时
wela=0; //屏蔽数码管位选
dula=0; //屏蔽数码管段选
lcd_init(); //液晶初始化
begin(); //显示开始界面
EA=1;
ET1=1;
TMOD=0X10;
TH1=(65536-50000)/256;
TL1=(65536-50000)%256;
TR1=1;
num++;
while(1)
{
keyscan(); //按键扫描
if (break1==-1)
{
if (num==10)//0.5s采集一次
{
num=0;
display();//ad采集及显示子程序
if(plow<pnow<phigh)
{
lcd_pos(3,0);
i = 0;
while(dis9 != '\0')
{
lcd_wdat(dis9); //压力正常监测中
i++;
}
}
if (pnow>phigh)
{
lcd_pos(3,0);
i = 0;
while(dis7 != '\0')
{
lcd_wdat(dis7); //压力高,放气中提示
i++;
}
}
if (pnow<plow)
{
lcd_pos(3,0);
i = 0;
while(dis8 != '\0')
{
lcd_wdat(dis8); //压力低,充气中提示
i++;
}
pump=1;//高电平,启动气泵工作
//开启中断,压力达到下限时,气泵停止工作
}
}
}//if后括号
}
}
怎么没人回,求解啊,大神们
a=检测到的压力值
b=气泵开启阈值
c=气泵停止阈值
if(a<=b)
OUT=1; //气泵开启
if(a>=c)
OUT=0; //气泵停止
没学过