黄工无刷电机学习
直播中

张勇

7年用户 1466经验值
私信 关注
[问答]

如何使用VISA进行串口通信?

如何使用VISA进行串口通信
如何进行串口发送和接收?

回帖(1)

周伟

2021-10-21 13:37:36
使用VISA进行串口通信:
  (1)相关配置:串口资源(波特率等设置)、VISA的打开、配置(接收和发送缓冲区)、调用属性结点(一有字节出现就马上接收,或者发送)
  
  

  

  (2)读取部分:首先依据协议进行包头的识别,再从后续的字节里读取字节进行相应的判断和显示存储,显示存储部分需要将接收的字符串进行转换
  
  

  

  操作读取的单个字节
  
  

  

  使用一个for循环结构进行字节的读取,其中读取部分使用循环移位结构依次向后累加的读取字节
  
  

  

  (3)写入部分:依据待写入的数据(十进制、或十六进制)转换为字符串形式,进行发送
  定义十六进制常量转化为字符串:
  
  

  

  或者是使用数值到字符串转换:
  
  

  

  最后进行待发送字符串的拼接:
  
  

  

  并依据需要可在拼接的后面添加换行字符串常量
  注意:在单片机端设置接收的字节数要和上位机写入的字节个数一致,否则容易出现问题。写入和换行没关,主要是写入和读取的VISA配置部分:需要设置VISA打开且设置接收和传输的缓冲区
  如何进行串口发送和接收?
  1)在发送(写)和接收(读)部分的操作进行一个判断,构建一个条件结构。正常状态下为连续接收,当启动写入时,进行写入操作的转换,写完并退出(将相应的判断标志置零),继续读取
  2)还可以像这位博主一样选择循环移位结构去实现切换,参考6
  
  

  

  
  

  

  参考:
  【1】、LABVIEW学习之(2)读写串口(VISA)
  https://blog.csdn.net/sinat_37710872/article/details/82495533#%EF%BC%883%EF%BC%89%E5%86%99%E4%B8%B2%E5%8F%A3%E5%91%BD%E4%BB%A4VI
  【2】、labview串口发送与接收数据格式问题
  https://blog.csdn.net/u011123091/article/details/52724616
  
  

  

  【3】、串口示波器
    https://www.cnblogs.com/imapla/archive/2013/01/09/2852171.html
  【4】、官方教程
  
  

  

  【5】、Labview 上位机串口通信
  https://blog.csdn.net/xiahouzuoxin/article/details/38086165
  【6】、LabVIEW学习笔记(十一)——利用VISA进行串口通信写的很好
  https://blog.csdn.net/weixin_41695564/article/details/82353630
   
举报

更多回帖

发帖
×
20
完善资料,
赚取积分