LabVIEWCompactRIO 开发指南第六章40 模块分类

news2024/11/25 17:24:33

模块分类

本节介绍不同类型的C系列I/O模块。需要了解这些模块是如何设计以正确实现计时和同步的。模块分类的基本类型如图6.6所示。

图6.6.C系列模块分类组织树

直接FPGA通信

在CompactRIO机箱中与FPGA直接通信的模块,将来自模块前部I/O连接器的信号通过模块背面的15针D-SUB路由到FPGA。这种架构使得使用直接FPGA通信模块进行编程变得更加容易,因为可以将每条线路视为一个唯一的编程实体。唯一使用直接FPGA通信的模块是具有8条或更少线路的数字I/O(DIO)模块。

并行数字

由于直接FPGA通信模块上的每条数字线都编程为一个单独的实体,因此具有八个或更少通道的数字模块也称为并行数字模块。这些模块的并行设计使得其最容易在LabVIEW中编程。并行数字模块的I/O节点可以从SCTL调用,这使得编程更加高效,并且可以从单独的环路同时调用单个通道线,如图6.7所示,无需担心仲裁。

图6.7.可以从单独的环路调用同一并行数字模块上的线路

请注意,在8通道并行模块的DIO线路上的任何时间要求改变方向都会导致中断,必须在LabVIEW框图上适当地处理该中断,以防止在方向改变时使用的其他线路出现毛刺或抖动。NI9402没有这个问题。四条线用于DIO,其他四条线用于控制方向。方向更改可以独立于数据传输发生。NI9401是最广流行的DIO模块之一,使用所有八条DIO线,并且必须切换模式来通信线路状态。此模式更改会影响所有DIO线路,无论哪些线路正在更改状态。

SPI总线通信

串行外设接口总线(SPI)是一种标准的4线通信协议,用于主/从、全双工(双向同时)通信。总线时钟速率通常为1MHz至70MHz。CompactRIO硬件用于与C系列模块通信的SPI时钟速率各不相同,但通常工作在10MHz左右。

SPI总线模块的通用架构包含一个复杂的可编程逻辑器件(CPLD),该器件在模块侧控制ADC/DAC芯片的时序和数据收集。在机箱侧,CPLD通过SPI总线与FPGA通信。根据使用的特定模块和插槽位置,LabVIEWAPI知道如何以及在何处与模块上各个CPLD进行通信。这就是新版LabVIEW中增加新模块支持的原因。

SPI总线挑战

无论前端电路如何,每个SPI模块都通过一条专用SPI总线与CompactRIO机箱中的FPGA通信。这意味着,即使可以并行执行到模块的命令(来自LabVIEW框图上的多个环路)或数据检索(来自具有多个ADC的模块),但这些命令必须通过单个SPI总线进行隔行处理。LabVIEW和NI-RIO驱动程序可以正确地优先处理同时传入的多个呼叫,但如果一个呼叫在前一个呼叫仍在处理时传入,则可能会在控制或数据采集循环中引入不需要的抖动。传达这一概念的另一种方式是,从LabVIEW FPGA程序的不同部分对单个模块的I/O节点调用会产生“硬件竞争条件”。这绝不会限制模块或CompactRIO系统的能力,但需要在程序内仲裁I/O节点调用。执行此操作的最简单方法是将所有I/O节点调用保留在同一循环中,但也可以使用序列结构或信号量。可以在NI开发人员专区文档LabVIEW FPGA的信号量参考设计中找到LabVIEW FPGA信号实现的参考设计。

在继续阅读有关模块的不同分类的信息时,请注意,所有使用SPI通信的模块都必须遵守相同的硬件仲裁警告。

需要说明的是,上述的例程和文档,都是可以下载的,双击即可打开,其中压缩文件是可以采用粘贴复制的方式,拷贝到硬盘上。这不是图片,各位小伙伴看到后尝试一下,这个问题就不用加微信咨询了。有关LabVIEW编程、LabVIEW开发等相关项目,可联系们。附件中的资料这里无法上传,可去公司网站搜索下载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/584708.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

机器学习常识 7: 决策树

摘要: 决策树是一种与人类思维一致, 可解释的模型. 1. 决策树的结构 人类的很多知识以决策规则的形式存储: 如果今天是阴天 (outlook overcast), 就去打球.如果今天出太阳 (outlook sunny) 而且湿度不高于 70% (humidity ≤ \le ≤ 70), 就去打球.如果今天出太阳 (outloo…

TDengine 基于Linux系统RPM安装

一、前文 TDengine 入门教程——导读 二、下载安装 再rpm安装&#xff0c;sudo rpm -ivh TDengine-server-<version>-Linux-x64.rpm安装的时候&#xff0c;会跳出两个提示 Enter FQDN:port&#xff0c;第一次安装&#xff0c;这个地方一定要直接回车跳过&#xff01;Ente…

基于javaweb jsp+SSM 校园点餐系统的视频演示

目录 一.项目介绍 二.环境需要 三.技术栈 四.使用说明 五. 运行截图 一.项目介绍 总菜单管理 用户前台 个人中心、美食大厅、购物车、福利中心 配送员面板 待配送订单、配送记录 商家管理 菜品管理&#xff08;类别、规格组、spu、sku&#xff09;、配送员管理、优惠券…

重学fetch

概述 Fetch是一种网络通信协议&#xff0c;用于在客户端和服务器之间传输数据。该协议使用HTTP请求和响应进行通信&#xff0c;与传统的AJAX方式相比&#xff0c;Fetch更加简单易用&#xff0c;并提供了许多现代化的功能。 使用Fetch可以方便地向服务器发送请求&#xff0c;并…

深入浅出Vite:如何开发一个Vite插件

说到自定义的能力&#xff0c;大家肯定很容易想到插件机制&#xff0c;利用一个插件来扩展构建工具自身的能力。在学习了 Vite 的插件机制后&#xff0c;我们接下来利用已掌握的Vite插件开发的基本知识来实战Vite插件的开发工作。 一、插件示例 Vite 插件与 Rollup 插件结构类…

利用pycocotools库计算MAP:生成coco格式 json文件数据集和计算map值

文章目录 1.划分val数据集2. xml to json3. coco格式json文件4. 生成coco格式json文件5.使用pycocotools计算map6. 讨论 在目标检测任务中&#xff0c;需要通过Map指标判断模型的精度。为了测试engine文件推理结果的精度&#xff0c;本文介绍了如何使用pycocotools库计算Map&am…

4年测试,裸辞后已失业3个月.....

我做测试4年&#xff0c;一线城市薪水拿到15K&#xff0c;中间还修了一个专升本&#xff0c;这个年限不说资深肯定也是配得上经验丰富的。今年行情不好人尽皆知&#xff0c;但我还是对我的薪水不是很满意&#xff0c;于是打算出去面试&#xff0c;希望可以搏一个高薪。 但真到面…

vscode使用git

文章目录 前言一、配置ssh-key二、GitHub上创建一个空的仓库三、链接GitHub&#xff0c;并提交本地文件 前言 从今天开始学习前端知识&#xff0c;学会先使用工具很重要&#xff0c;今天尝试了下用vscode链接GitHub&#xff0c;实现代码管理。 前提&#xff1a; 1、需要先下载…

科技云报道:2023年安全运营之风将吹向何方?

科技云报道原创。 在实战演练成为常态化的背景下&#xff0c;建立实战化安全运营能力是一个绕不开的话题。作为网络安全发展的时代产物&#xff0c;安全运营被认为是解决现有挑战的有利方法。 但随着有安全形势、政策导向、发展需求的变化&#xff0c;安全运营的理念也在不断演…

深度解析如何通过财务共享建设助推企业数智化转型

国务院国资委印发了《关于中央企业加快建设世界一流财务管理体系的指导意见》&#xff08;以下简称《意见》&#xff09;&#xff0c;文中明确指出了数智化转型的路径&#xff0c;即“积极探索依托财务共享实现财务数智化转型的有效路径&#xff0c;推进共享模式、流程和技术创…

Arnold图像置乱的MATLAB实现

这件事情的起因是这样的&#xff0c;我需要研究一下各种图像置乱的算法。然后在知乎上找到了一篇关于Arnold变化的文章&#xff0c;但是呢&#xff0c;这个人实际上是卖资料&#xff0c;代做大作业的。详细的代码根部不给你&#xff0c;则给我气坏了&#xff0c;必须要手动实现…

Java泛型 <T> T、 T、<T>的用法

我们聊聊Java泛型中的 T 是什么&#xff1f; T 在Java泛型中&#xff0c;被称作类型变量。那么什么又是类型变量&#xff1f; 类型变量在整个类的定义中用于指定方法的返回类型&#xff0c;同时也可以指定字段和局部变量的类型&#xff0c;我们可以用具体的类型来替换类型变量…

数据库【数据操作】

这篇文章呢是小编对正在学习的数据库的实验内容进行一个简单的记录&#xff0c;以便后期复习&#xff0c;希望小编的这些例子也可以帮助到正在和我一样学习数据库的友友们哦&#xff5e; 实验目的&#xff1a; &#xff08;1&#xff09;掌握使用T-SQL插入数据&#xff0c;修…

Arthas

Arthas 概述 Arthas 是Alibaba开源的Java诊断工具&#xff0c;深受开发者喜爱。 当你遇到以下类似问题而束手无策时&#xff0c;Arthas可以帮助你解决&#xff1a; 这个类从哪个 jar 包加载的&#xff1f;为什么会报各种类相关的 Exception&#xff1f;我改的代码为什么没有…

无纸化、自动化、智能化|WMS系统升级你的仓储管理模式

随着物流行业的不断发展&#xff0c;现代仓储管理已经从传统的手工操作逐渐转向无纸化、自动化、智能化管理。WMS系统作为一种全新的仓储管理模式&#xff0c;正在逐步被企业所接受和运用。 什么是WMS系统&#xff1f; WMS系统全称为Warehouse Management System&#xff0c;即…

汇编寄存器之内存访问

1.内存中字的存储: 在CPU中用一个16位寄存器来存储一个字, 高8位存高字节,低8位存低字节 如AX寄存器存在一个字,那么AH存高字节,AL存低字节 在内存中存储字时是用两个连续的字节来存储字的, 这个字的低字节存在低单元,高字节存在高单元. 如下表示: 内存单元编号 单元中…

开发工程师-常用算法基本思想 -分类-时间复杂度与空间复杂度概述

文章目录 插入排序选择排序交换排序归并排序各种排序算法时间复杂度、空间复杂度以及稳定性分类 插入排序 1.基本思想&#xff1a;将一个数据插入到一个有序的数据列表&#xff0c;得到一个新的有序列表 2.分类&#xff1a;直接插入排序、希尔排序 选择排序 1.工作原理&…

机器学习基础知识之多模型性能对比评价方法

文章目录 1、交叉验证t检验2、Friedman检验与Nemenyi后续检验 在进行预测或分类对比实验时&#xff0c;通常需要比较两个或两个以上的模型性能&#xff0c;因此&#xff0c;下面将介绍两个常用的多模型性能对比评价方法&#xff0c;一种是交叉验证t检验&#xff0c;该方法主要用…

英语单词365-9

英语单词365-9 9.1 manipulate_哔哩哔哩_bilibili

网络安全就业会不会容易被淘汰?

先说结论&#xff1a;不会 作为一名资深的网络安全工程师&#xff0c;我的观点是网络安全是一个长期持续的领域&#xff0c;而不是一个很容易被淘汰的职业。可能会随着技术的进步和新的威胁的出现而有所改变&#xff0c;但作为一个专门从事网络安全领域的人员&#xff0c;我们…