3回答

0收藏

[原创] GD32 F150R8 与 PC端LabView 通信之VISA串口通信

GD32 GD32 4549 人阅读 | 3 人回复 | 2015-07-13

    大多情况下Labview 与单片机间的通信大多数都是通过串口通信,但是要注意Labview 的串口通信是属于VISA模块,可惜LabView 默认情况下是不安装VISA驱动的,所以要手动安装驱动在官网的 资源与服务->NI Drivers -> NI VISA。


    开始接触NI的时候,很多概念都比较低触,只能边学边用。
先做个控制灯的来练练先。

    串口首先就是要做一个串口通信的调试

当能够正常接发数据的时间才开始修改成自己想要的内容,例如图上LED灯时就是有布尔开关转换来数组

程序柜架图如下:



至于GD32F150R8的程序怎么设计呢? 首先来最简单的,关键代码如下:
  1. #include "example.h"

  2. #if (EVB_EXAMPLE == LED_EXAMPLE)

  3. /* ???§???????ò???????? */
  4. int main(void)
  5. {
  6.     //int i;
  7.                 char cGetChar;
  8.     /* ????????????°?????LED?è±? */
  9.     EVB_LEDConfig();
  10.     EVB_Uart2Config();

  11.     PRINTF("????????Colibri??·?°?\r\n");
  12.     PRINTF("www.trochili.com\r\n");
  13.     PRINTF("\r\n");
  14.     PRINTF("##### LED ???é #####\r\n");
  15.     PRINTF("\r\n");

  16.     while(1)
  17.     {               
  18.                 EVB_Uart2ReadByte(&cGetChar);
  19.                 EVB_Uart2WriteByte(cGetChar);
  20.                
  21.                 switch (cGetChar)
  22.                 {
  23.                         case '0':
  24.                                         EVB_LEDControl(LED1, LED_OFF);
  25.                                         EVB_LEDControl(LED2, LED_OFF);
  26.                                         break;
  27.                         case '1':
  28.                                         EVB_LEDControl(LED1, LED_ON);
  29.                                         EVB_LEDControl(LED2, LED_OFF);
  30.                                         break;
  31.                         case '2':
  32.                                         EVB_LEDControl(LED1, LED_OFF);
  33.                                         EVB_LEDControl(LED2, LED_ON);
  34.                                         break;
  35.                         case '3':
  36.                                         EVB_LEDControl(LED1, LED_ON);
  37.                                         EVB_LEDControl(LED2, LED_ON);
  38.                                         break;
  39.                         
  40.                         default:
  41.                                         break;
  42.                 }
  43.                
  44.     }
  45. }
  46. #endif
复制代码

基础的原理模型已经实现,后来的工作就一步步来完善。


Labview的代码:
Labview Serial NI.rar (22.82 KB, 下载次数: 12)



分享到:
回复

使用道具 举报

回答|共 3 个

倒序浏览

沙发

奋斗哥

发表于 2015-7-17 10:01:44 | 只看该作者

多谢楼主分享!
板凳

haothree

发表于 2015-7-20 09:15:49 | 只看该作者

多谢楼主分享!
地板

党国特派员

发表于 2015-7-22 13:18:52 | 只看该作者

多谢楼主分享!
喜欢在构思妙想,电子产品DIY是工作,也是一种爱好。
您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条