功能介绍:
我们以TI公司MSP430单片机为控制核心,利用庆科的WiFi开发闪电套件为通信媒介,基于传感器技术、单片机技术、无线通信技术、NFC技术、智能云技术等研究设计了一套嵌入式WiFi智能输液云监控系统。采用光电检测模块检测输液速度,通过步进电机对点滴速度进行控制,利用液晶和按键设定并实时显示点滴速度,当h1降到警戒值(1~2cm)时,发出报警信号,实现人机交互。软件部分采用软件滤波、PID算法等,实现系统精确控制,利用庆科WiFi开发套件发出来的信号,配合带有WiFi功能的摄像头,建立起专用的视频监控网络,实现远程监控、网络会诊等功能。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
void main()
{
unsigned char str[10];
LCD_Init();
EXTI_config();
Timer_config();
EA=1;
LCD_P14x16Ch(28,2,26);
LCD_P14x16Ch(42,2,27);
LCD_P14x16Ch(56,2,28);
delay(8000);
LCD_CLS();
LCD_P14x16Ch(0,0,18);
LCD_P14x16Ch(18,0,19);
LCD_P14x16Ch(46,0,20);
LCD_P14x16Ch(60,0,21);
LCD_P14x16Ch(74,0,22);
LCD_P14x16Ch(88,0,23);
delay(2000);
LCD_P14x16Ch(0,2,14);
LCD_P14x16Ch(18,2,15);
LCD_P14x16Ch(46,2,16);
LCD_P14x16Ch(60,2,17);
LCD_P14x16Ch(0,4,29);
LCD_P14x16Ch(18,4,30);
LCD_P6x8Str(46,5,"10993285");
LCD_P14x16Ch(0,6,31);
LCD_P14x16Ch(14,6,32);
LCD_P14x16Ch(33,6,33);
//zheye gongren
LCD_P14x16Ch(56,6,34);
LCD_P14x16Ch(69,6,35);
LCD_P14x16Ch(86,6,36);
LCD_P14x16Ch(100,6,37);
delay(8000);
LCD_CLS();
//shifoujinruyemian
LCD_P14x16Ch(14,2,38);
LCD_P14x16Ch(28,2,39);
LCD_P14x16Ch(42,2,40);
LCD_P14x16Ch(56,2,41);
LCD_P14x16Ch(70,2,42);
LCD_P14x16Ch(84,2,43);
LCD_P14x16Ch(100,2,44);
LCD_P14x16Ch(114,2,45);
LCD_P14x16Ch(0,6,38);
LCD_P14x16Ch(114,6,39);
while(K3);
delay(8000);
LCD_CLS();
//////////////////////////////
LCD_P14x16Ch(18,0,0);
LCD_P14x16Ch(32,0,1);
LCD_P14x16Ch(46,0,2);
LCD_P14x16Ch(60,0,3);
LCD_P14x16Ch(74,0,4);
LCD_P14x16Ch(88,0,5);
LCD_P14x16Ch(0,2,6);
LCD_P14x16Ch(14,2,7);
LCD_P14x16Ch(28,2,8);
LCD_P14x16Ch(42,2,9);
LCD_P14x16Ch(0,4,10);
LCD_P14x16Ch(14,4,11);
LCD_P14x16Ch(28,4,12);
LCD_P14x16Ch(42,4,13);
LCD_P14x16Ch(0,6,24);
LCD_P14x16Ch(14,6,25);
LCD_P6x8Str(80,7,"14.9.25");
while(1)
{
if(flog==1)
{
sprintf(str,"%5.0f",(float)yd_zs);
LCD_P6x8Str(58,3,str);
sprintf(str,"%5.0f",(float)yd_sd);
LCD_P6x8Str(58,5,str);
flog=0;
}
sprintf(str,"%3.0f",(float)S_D);
LCD_P6x8Str(28,7,str);
if(K0==0)
{
delay(20);
if(K0==0)
{
while(!K0);
S_D_g++;
S_D=S_D_b*100+S_D_s*10+S_D_g;
}
}
if(K1==0)
{
delay(20);
if(K1==0)
{
while(!K1);
S_D_s++;
S_D=S_D_b*100+S_D_s*10+S_D_g;
}
}
if(K2==0)
{
delay(20);
if(K2==0)
{
while(!K2);
S_D_b++;
S_D=S_D_b*100+S_D_s*10+S_D_g;
}
}
if(K3==0)
{
delay(20);
if(K3==0)
{
while(!K3);
flag=1;
Q_D=1;
S_D=S_D_b*100+S_D_s*10+S_D_g;
}
}
if(K4==0)
{
delay(20);
if(K4==0)
{
while(!K4);
flag=0;
S_D_g=0;
S_D_s=0;
S_D_b=0;
S_D=0;
Q_D=0;
}
}
if((flag==1)&&(flagg==1))
{
direction_control();
DirectinControlOutput();
flagg=0;
K_S=0;
}
if((yd_sd<(S_D+10))&&(yd_sd>(S_D-10)))
{ duty1=0;duty2=0;}
if(flag==0)
{
duty1=0;duty2=0;
}
}
}
void direction_control(void)
{
int fvalue,fDvalue,ERROR1,fvalue_old;
md=S_D-yd_sd;
fvalue=md;
D_P=1; D_D=0;
g_fDirectionControolOld=g_fDirectionControolNew;
ERROR1=fvalue -fvalue_old;
fDvalue=fvalue*D_P+ERROR1*D_D;
fvalue_old=fvalue;
g_fDirectionControolNew=fDvalue;
}
void DirectinControlOutput(void)
{
// int fValue ;
// fValue=g_fDirectionControolNew-g_fDirectionControolOld;
// g_fDirectionControlOut= fValue*(g_nDirectionControlPeriod+1)/DIRECTION_PERIOD+g_fDirectionControolOld;
g_fDirectionControlOut=g_fDirectionControolNew;
if(g_fDirectionControlOut>15)
{g_fDirectionControlOut=15;}
if(g_fDirectionControlOut<-15)
{g_fDirectionControlOut=-15;}
if(g_fDirectionControlOut>=0)
{
g_fDirectionControlOut=g_fDirectionControlOut;
duty1=0;duty2=g_fDirectionControlOut;
}
else if(g_fDirectionControlOut<0)
{
g_fDirectionControlOut=-g_fDirectionControlOut;
duty2=0;duty1=g_fDirectionControlOut;
}
}
void delay(unsigned int ms)
{
unsigned int ii,jj;
if (ms<1) ms=1;
for(ii=0;ii<ms;ii++)
for(jj=0;jj<500;jj++);
}
一周热门 更多>