论坛里有懂Labview FPGA的大哥吗?小弟一个技术性的问题想了很久一直没找到很合适的方法。挺急的
时间:10-02
整理:3721RD
点击:
各位大哥们,你们好,我现在用的是NI公司9474 ,8通道 数字输出模块。我现在能做的单独控制每个IO口(DO0-D07),因为我写的的底层函数是实现PWM脉冲输出的功能。现在,我写的这个程序能够单独控制8个通道每一个通道输出PWM脉冲。RT上的主控VI如下图:
上面的程序,我简单的介绍一下,比如我在下拉菜单中选左轮,正反转选正转,则NI-9474的DO 0通道会输出PWM脉冲。选反转,则DO1输出PWM脉冲。这些功能我自己已在机器上试验过程序是可行的。也就是说这个主控VI能够单独控制每个通道输出PWM脉冲。下图是我写的控制PWM脉冲输出,端口选择的FPGA VI。
但是问题的症结不在这里。因为我们要两个通道同时输出。而且这两个通道组合是动态的 不是事先固定好的。就是说我想用主控VI实现任意两个通道输出PWM脉冲。我曾试验过把这个主控VI同时复制几份,只是改一下“选轮”或“正反转”值,然后并列放在一起,原以为会同时几个通道会输出脉冲。但是实验的结果是,那几个通道虽然会输出脉冲,但是都是一闪闪的,也就是说每个很小的时刻片内只有一个通道会输出PWM脉冲。
所以,我想控制让任意两个通道同时输出,使用了我所有的办法都不行。很烦,想了很久就是不知道该怎么实现这个功能。我也曾在FPGA上编制程序控制固定的两个口输出,但是这只是固定的,没法在主控VI上实现任意两个口同时输出。因为在FPGA上端口一改,运行起来又要重新编译。我真的不知道该怎么办了。虽然感觉挺简单的事,但是我就是实现不了。求大神指点。
上面的程序,我简单的介绍一下,比如我在下拉菜单中选左轮,正反转选正转,则NI-9474的DO 0通道会输出PWM脉冲。选反转,则DO1输出PWM脉冲。这些功能我自己已在机器上试验过程序是可行的。也就是说这个主控VI能够单独控制每个通道输出PWM脉冲。下图是我写的控制PWM脉冲输出,端口选择的FPGA VI。
但是问题的症结不在这里。因为我们要两个通道同时输出。而且这两个通道组合是动态的 不是事先固定好的。就是说我想用主控VI实现任意两个通道输出PWM脉冲。我曾试验过把这个主控VI同时复制几份,只是改一下“选轮”或“正反转”值,然后并列放在一起,原以为会同时几个通道会输出脉冲。但是实验的结果是,那几个通道虽然会输出脉冲,但是都是一闪闪的,也就是说每个很小的时刻片内只有一个通道会输出PWM脉冲。
所以,我想控制让任意两个通道同时输出,使用了我所有的办法都不行。很烦,想了很久就是不知道该怎么实现这个功能。我也曾在FPGA上编制程序控制固定的两个口输出,但是这只是固定的,没法在主控VI上实现任意两个口同时输出。因为在FPGA上端口一改,运行起来又要重新编译。我真的不知道该怎么办了。虽然感觉挺简单的事,但是我就是实现不了。求大神指点。