首页
统计
壁纸
留言板
友情链接
更多
直播
实用工具
Search
1
浏览器 | 开启Chrome和Edge的多线程下载功能(Parallel downloading)
1,946 阅读
2
给孙小姐的一封情书
544 阅读
3
OpenWRT | 作为 旁路由/单臂路由/透明网关 设置 DDNS
323 阅读
4
LabVIEW | 各版本及开发工具模块下载
319 阅读
5
armUbuntu系统构建
297 阅读
取次花丛懒回顾
默认分类
C#
MySQL
LabVIEW
Java
Android
PHP
Python
handsome
相册
百度地图
嵌入式
嵌入式Ubuntu
I.MX6ULL
linux
Unity
Golang
Rust
OpenHD
教学计划
Search
标签搜索
C#
handsome
Git
动态壁纸
开源
Unity3d
Unity
csharp
Moao
累计撰写
185
篇文章
累计收到
28
条评论
首页
栏目
取次花丛懒回顾
默认分类
C#
MySQL
LabVIEW
Java
Android
PHP
Python
handsome
相册
百度地图
嵌入式
嵌入式Ubuntu
I.MX6ULL
linux
Unity
Golang
Rust
OpenHD
教学计划
页面
统计
壁纸
留言板
友情链接
直播
实用工具
搜索到
185
篇与
的结果
2024-06-06
LabVIEW | 安装教程
layout: posttitle: LABVIEW2017下载及详细安装教程(包含DAQmx、Mathscript、安捷伦33XXX等驱动)date: 章于 2024-05-13 08:42:21 发布author: 'moao.net'header-img: 'img/post-bg-2015.jpg'catalog: falsetags:-编程软件Labview-windows-编程语言-c语言-经验分享-自然语言处理支持正版,拒绝盗版!版主之前用Labview2014开发了一套信号处理软件,因要申请软件著作权,因此需要将Labview的G语言代码生成C代码。网上一查,发现需要用到Labview C generator,于是乎,便开始了漫长(长达一天半)的寻找软件安装包的历程。在进入正题之前,先诉说一下版主心里的苦水。版主发现,2014版本的Labview并没有对应开发C generator,而2013、2015和之后的版本均开发过了(黑人问号脸.jpg),于是乎,在原来的Labview2014开发的程序的基础上,便开始安装Labview2017,但是在这个过程中,安装完了,打开原来可用的程序,报了很多错误,说是找不到DAQmx、没有Mathscript。。。。然后我就将2017版本的先卸载了,卸载完再用2014版本的Labview打开,告诉我程序中的模块已经被高版本的替代了,2014版本的打不开了。。。。没办法,再次把2014版本的也清理卸载干净,重新在官网寻求新的安装包。一点经验教训和建议在上述过程中,版主的一个经验教训是,在用不同版本的Labview打开程序之前,切记要把程序复制备份一下,不然可能是无法挽回的BUG。另外,要对程序进行修改时,同样建议在副本中进行修改,如果程序中有自己编写的模块函数是几个主程序共用的,在打开第二个主程序之前,切记关闭所有Labview窗口,不然会出现程序调用错误、子程序无端被替换的境况!进入正题:准备安装包和安装环境版主在正确安装并使用Labview2017及C generator之前,踩了很多坑,因此,这里记录下最终能稳定运行的一个安装方法,读者可以从Labview官网搜索下载自己需要的安装包版本,如果找不到,或者百度上好多都是百度网盘的链接,考虑到百度网盘的流氓限速行为,建议安装包从版主给出的链接中下载,不然版主不保正您能顺利安装和应用。由于安装包较大,不得已分开压缩,解压时合并解压即可:Labview2017主安装包下载链接:Labview2017-C generator子安装包下载链接:Labview2017DAQmx驱动程序下载链接:Labview2017安捷伦33XXX驱动程序下载链接:Labview2017Mathscript驱动程序下载链接:Labview2017最后一步安装程序下载请自行百度。开始安装:安装步骤详情1. 安装主程序双击“2017LV-WinChn.exe”,如下图所示 点击“确定”,如下图所示, 选择自己的解压缩地址,建议不要放在系统盘(C盘),点击“Unzip”,如下图所示, 接下来会自动跳出安装程序(如果没有的话,就双击打开解压路径中的“autorun.exe”,点击“安装NI Labview2017”) 点击“下一步”, 选填一个“全名”和“单位”,点击“下一步”, 不需要序列号,直接“下一步”, 新建并选择安装文件夹,可以像楼主这样新建“NI软件”(用于存放驱动)和“NI Labview”(用于存放主程序Labview2017),点击“下一步”, 这里不知道怎么选的话,选择默认即可,点击“下一步” 去掉勾选“检查更新”,点击“下一步”, 接受许可,点击“下一步”, 点击“下一步”, 等待安装完成即可。 2. 安装DAQmx驱动程序合并解压后会有如下文件夹和文件 双击“setup.exe” 选择安装目录,这里版主选择的是上面安装Labview时创建的“NI软件”文件夹,点击“下一步”, 选择“典型”即可,点击“下一步”, 不要勾选检查更新,点击“下一步”, 点击“下一步”, 等待安装完成即可。 3. 安装Mathscript驱动程序该版本的Mathscript是对应于32位的,解压后的文件和文件夹如下, 双击“autorun.exe” 选择第一项开始安装, 点击“Next”, 填上“全名”和“组织”,选择“不用序列号安装”,点击“Next”, 不要勾选检查更新,点击“Next”, 继续点击“Next”,直到安装完成。4. 配置安捷伦信号发生器路径将解压得到的“33XXX”复制 粘贴到如下目录(就是你安装Labview2017的目录), D:\labview2017\LabVIEW 2017\exe\NI Labview\instr.lib5. 安装C generator双击“2017CGenerator.exe” 点击“运行”, 点击“确定”, 选择你的解压目录,点击“Unzip”, 解压完成后有如下文件和文件夹, 双击“autorun.exe”, 点击第一项,点击“Next”,开始安装, 选择“全名”和“组织”,点选“不需要序列号安装”,点击“Next”, 不要点选自动更新,点击“Next”, 一路“Next”,直到安装完成即可。6. 在使用之前,需要对安装的所有的安装驱动和部件进行正版注册,可在官网上自行购买,平民的话,可以自行百度,手动微笑。下载:https://d.1okk.com/onedrive/public/aliyunsoft/LabVIEW/NI%20License%20Activator%201.2.exe使用说明:https://d.1okk.com/aliyunsoft/LabVIEW/NI+License+Activator%E4%BD%BF%E7%94%A8%E8%AA%AA%E6%98%8E.pdf下面就可以快乐得开始你的编程和C代码生成了。
2024年06月06日
128 阅读
0 评论
0 点赞
2024-06-06
Unity 脚本 | Unity3d 跳过启动动画
用 Unity3d 写的小程序编译好后,总是有启动动画,有时候就很烦。研究了一下,把以下脚本放到项目中,不用挂载,再编译就没有启动动画了。新建一个脚本,起名为 SkipUnity3DStartMove.cs 打开把以下内容粘贴进去using UnityEngine; public class SkipUnity3DStartMove : MonoBehaviour { #region 跳过启动动画 [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSplashScreen)] private static void BeforeSplashScreen() { System.Threading.Tasks.Task.Run(Asyncskip); } private static void Asyncskip() { UnityEngine.Rendering.SplashScreen.Stop(UnityEngine.Rendering.SplashScreen.StopBehavior.StopImmediate); } #endregion // Start is called before the first frame update void Start() { } // Update is called once per frame void Update() { } }
2024年06月06日
143 阅读
0 评论
0 点赞
2024-06-06
Unity 脚本 | Unity相机控制脚本(鼠标键盘控制,简单实用)
unity相机控制脚本,思路是仿照Unity Scene 里面控制的逻辑鼠标滚轮 上滚 拉近视野(放大),下滚 推远视野(缩小)鼠标滚轮 按下并拖动,调整相机位置鼠标右键 按下并拖动,调整相机视角左键留空w a s d 类似于 fps 游戏一样前后左右移动ctrl 向下移动空格 向上移动该脚本直接挂载在相机上就可以用using System; using System.Collections; using System.Collections.Generic; using UnityEngine; public class MouseOperationCameraRotationFovMove : MonoBehaviour { public enum MouseState { None, MidMouseBtn, LeftMouseBtn } private MouseState mMouseState = MouseState.None; private Camera mCamera; private void Awake() { mCamera = GetComponent<Camera>(); if (mCamera==null) { UnityEngine.Debug.LogError(GetType()+"camera Get Error ……"); } GetDefaultFov(); } private void LateUpdate() { CameraRotate(); CameraFOV(); CameraMove(); } #region Camera Rotation //旋转最大角度 public int yRotationMinLimit = -90; public int yRotationMaxLimit = 0; //旋转速度 public float xRotationSpeed = 250.0f; public float yRotationSpeed = 120.0f; //旋转角度 private float xRotation = 0.0f; private float yRotation = 0.0f; /// <summary> /// 鼠标右间点下移动进行旋转 /// </summary> void CameraRotate() { if (Input.GetMouseButton(1)) // 0:鼠标左键;1:鼠标右键;2:鼠标中键 { if (mMouseState == MouseState.None) { // 保存当前的旋转角度,默认为0,0的时候代表第一次,获取一下 Vector3 currentRotation = transform.rotation.eulerAngles; if (xRotation == 0.0f && yRotation == 0.0f) { // 暂时不知道为啥X和Y要反过来 yRotation = -currentRotation.x; xRotation = 360 - currentRotation.y; } //Input.GetAxis("MouseX")获取鼠标移动的X轴的距离 xRotation -= Input.GetAxis("Mouse X") * xRotationSpeed * 0.02f; yRotation += Input.GetAxis("Mouse Y") * yRotationSpeed * 0.02f; yRotation = ClampValue(yRotation, yRotationMinLimit, yRotationMaxLimit);//这个函数在结尾 //欧拉角转化为四元数 Quaternion rotation = Quaternion.Euler(-yRotation, -xRotation, 0); transform.rotation = rotation; } } } #endregion #region Camera fov //fov 最大最小角度 public int fovMinLimit = 25; public int fovMaxLimit = 75; //fov 变化速度 public float fovSpeed = 50.0f; //fov 角度 private float fov = 0.0f; void GetDefaultFov() { fov = mCamera.fieldOfView; } /// <summary> /// 滚轮控制相机视角缩放 /// </summary> public void CameraFOV() { //获取鼠标滚轮的滑动量 fov -= Input.GetAxis("Mouse ScrollWheel") * Time.deltaTime * 100 * fovSpeed; // fov 限制修正 fov = ClampValue(fov,fovMinLimit, fovMaxLimit); //改变相机的 fov mCamera.fieldOfView = (fov); } #endregion #region Camera Move float _mouseX = 0; float _mouseY = 0; public float moveSpeed = 10; /// <summary> /// 中键控制拖动 /// </summary> public void CameraMove() { if (Input.GetMouseButton(2)) // 0:鼠标左键;1:鼠标右键;2:鼠标中键 { _mouseX = Input.GetAxis("Mouse X"); _mouseY = Input.GetAxis("Mouse Y"); //相机位置的偏移量(Vector3类型,实现原理是:向量的加法) Vector3 moveDir = (_mouseX * - transform.right + _mouseY * - transform.forward); //限制y轴的偏移量 moveDir.y = 0; transform.position += moveDir * 0.5f * moveSpeed; } else if (Input.GetMouseButtonDown(2)) { mMouseState = MouseState.MidMouseBtn; UnityEngine.Debug.Log(GetType() + "mMouseState = " + mMouseState.ToString()); } else if (Input.GetMouseButtonUp(2)) { mMouseState = MouseState.None; UnityEngine.Debug.Log(GetType() + "mMouseState = " + mMouseState.ToString()); } // WASD控制相机的前后左右移动 float horizontalInput = Input.GetAxis("Horizontal"); float verticalInput = Input.GetAxis("Vertical"); Vector3 direction = new Vector3(horizontalInput, 0, verticalInput).normalized; transform.Translate(direction * moveSpeed * Time.deltaTime); // Ctrl键控制相机向下移动 if (Input.GetKey(KeyCode.LeftControl) || Input.GetKey(KeyCode.RightControl)) { transform.Translate(Vector3.down * moveSpeed * Time.deltaTime); } // 空格键控制相机向上移动 if (Input.GetKey(KeyCode.Space)) { transform.Translate(Vector3.up * moveSpeed * Time.deltaTime); } } #endregion #region tools ClampValue //值范围值限定 float ClampValue(float value, float min, float max)//控制旋转的角度 { if (value < -360) value += 360; if (value > 360) value -= 360; return Mathf.Clamp(value, min, max);//限制value的值在min和max之间, 如果value小于min,返回min。 如果value大于max,返回max,否则返回value } #endregion }
2024年06月06日
139 阅读
0 评论
0 点赞
2024-06-05
本站维护的国内镜像站
GitHub:https://ghproxy.us.kg/(20240605 暂时出了点问题,能用,但是 edge 会报危险)Gravatar:https://gravatar.us.kg/
2024年06月05日
91 阅读
0 评论
0 点赞
2024-06-05
OpenWRT | 作为 旁路由/单臂路由/透明网关 设置 DDNS
环境主网 ikuai 拨号, OpenWRT 作为 旁路由 DDNS 解析域名域名 cloudflare 托管,小云朵点灭(不走CF代理)准备需要 cloudflare 的 账号,也就是邮箱号(登陆 cloudflare 的那个邮箱)需要 cloudflare 的 Global API Key,获取方式如下图需要 cloudflare 托管的域名,且预设一个值也就是你想将 公网地址 绑定到 域名 的二级域名,先随便添加一个值。例如 我想将 公网地址 解析到 v1.moao.net,就先添加 一个 v1 的解析记录,如下图确保如下即可:需要 一个 能获取 公网 ip 的网页这里推荐一个自己维护的网页,由于自己一直在用,所以脚本挺稳定的。https://utils.topm.top/getmyip/配置打开 openwrt 的 ddns 界面编辑 ddns 选项,选择刚才创建的服务点击编辑。修改设置获取公网ip的方式 url由于是 旁路由,所以肯定不能用 wan 口 ip,需要获取公网 ip 然后解析,用 url 的方式获取。配置如下:配置完成后记得点击确定然后 启用 勾选上, 点击重新加载即可。
2024年06月05日
323 阅读
0 评论
0 点赞
1
...
21
22
23
...
37