找回密码
 注册
LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 630|回复: 2

在lv应用c语言问题

[复制链接]
may2000 该用户已被删除
发表于 2008-11-28 21:00:27 | 显示全部楼层 |阅读模式
我想在labview中实现自己编的c语言功能,请问用什么方法比较合适,不太明白,希望各位大侠指导一下谢谢!!!!
我知道了Xy的值,然后用二分法求的Z的值。
#include<STDIO.H>
#include<STDLIB.H>
#include<MATH.H>
#include<ASSERT.H>
float  f(float x,float y, float z);
float t(float x, float y);
float f(float x, float y, float z)  //定义导通角、触发角、功率因素角
{
return sin(x+y-z)-sin(y-z)*exp(-x*cos(z)/sin(z));
}

main()
{
float x,y,z,a,b,L;
double p;
printf("input x y:");
scanf("%f,%f",&x,&y);
x=x*3.1415926/180.0;
y=y*3.1415926/180.0;
a=20*3.1415926/180;
b=80*3.1415926/180;
L=0.00001;
if(fabs(f(x,y,a))<=L)
{
p= a;
return;
}
else if (fabs(f(x,y,b))<=L)
{
       p=b;
       return ;
}
else if (f(x,y,a)*f(x,y,b)>0)
{
return ;
}
else
{
while(fabs(b-a)>L)
{
double c=(a+b)/2;
if(f(x,y,a)*f(x,y,c)<0)
b=c;
else
a=c;
}
p=(a+b)*180/6.2831852;
//turn (a+b)/2;
}
printf("power factor: %f\n",p);
return 0;
}
发表于 2008-11-29 00:05:19 | 显示全部楼层
可以将它做成DLL,再让LABVIEW调用即可!
回复 顶

使用道具 举报

发表于 2008-11-29 00:05:36 | 显示全部楼层
比如在VC中做成DLL给LABVIEW调用!

好运!
回复 顶

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2026-9-30 04:43 , Processed in 0.025072 second(s), 9 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表