自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 收藏
  • 关注

原创 EtherCAT(四) 从站XML文件描述

XML Device描述里没有包含关于TxPDO(发送过程数据对象)和RxPDO(接收过程数据对象)的固定配置信息,因为从站采用了动态分配的策略。这一做法的目的是为了适应从站设备可能工作在不同模式下的灵活性。对于同一个从站设备,例如本从站,它支持多电机控制,但并非所有情况下都需要传输所有电机的过程数据。Id = 0xE00004D8,Name=XXXXX,ImageData16x14是一张图片信息,TwinCAT读取XML文件后,会用该图片当做标志。Fmmu:Fmmu的使用情况。

2025-02-19 16:32:07 547

原创 Qt unicode编码转中文

【代码】Qt unicode编码转中文。

2025-01-10 16:08:20 109

原创 linuxCNC(六)配置LinuxCNC完成伺服控制

博主使用禾川 SV-X3EB020A-A2,在伺服官网下载。

2025-01-06 13:50:57 1125

原创 EtherCAT(三)安装、主站配置

EtherCAT(三)安装、主站配置

2024-12-25 09:55:55 879

原创 EtherCAT(一)

EtherCAT(Ethernet for Control Automation Technology)是一种高性能、实时的工业以太网通信协议。它被广泛应用于自动化、控制和工业设备之间的数据传输,尤其是在需要快速响应和高精度的场合。

2024-12-20 16:37:43 1486

原创 Linux udev介绍使用

有些发行版本,比如Fedora,采用了外部脚本来修改某些特定设备的属组,组关系和权限。假设修改floppy设备的所在组,还准备创建一个信的符号连接/dev/floppy,下面可能有好几个udev规则文件,这些文件一部分是udev包安装的,另外一部分则是可能是别的硬件或者软件包生成的。下创建一个信的规则文件。确定你给出的文件的后缀是rules文件名给出的数字序列应该比 标准配置文件高。RUN:设备插入后去执行哪个程序%k是传入这个程序的参数,这里%k=KERNEL的值也就是sda1等。

2024-12-19 19:56:02 1010

原创 libdrm(二)显示PNG图片

【代码】libdrm(二)显示PNG图片。

2024-12-13 19:34:03 203

原创 libdrm(一)交叉编译移植

库放到我们根文件系统对应的库文件存放目录即可,注意软链接,最好压缩成包的形式拷贝到系统中,再解压后复制,使用。将include和lib文件夹移植到自己的项目中,并且在Makefile中添加路径即可使用DRM库。编译完成之后,会在install目录下生成三个文件夹。将build目录下的。

2024-12-12 18:25:33 923

原创 linuxCNC(五)HAL驱动的指令介绍

从终端进入到HAL命令行,执行halrun,即可进入halcmd命令行。LinuxCNC关于HAL的指导链接。

2024-12-07 19:58:34 471

原创 VSCode(四)CMake调试

例: “program”: “${workspaceFolder}/bin/test_cmake”,项目文件内会自动创建“CMakeLists.txt” 和 “main.cpp”修改“launch.json”的“program”的参数为要调试的程序。在“CMakeLists.txt”中添加增加bin文件的指定输出目录。按钮,选择“(gdb) Launch”,点击左侧的。,开始debug程序。

2024-12-07 15:55:50 1004

原创 VSCode(三)C++编译、调试

tasks.json的作用是告诉VSCode如何编译程序在本文中是调用g++编译器从cpp源代码创建一个可执行文件从tasks.json的"command其中,${file}:当前活动文件(就是vscode当前查看的文件),这里是hello.cpp${fileDirname}/${fileBasenameNoExtension}:在这里就是当前目录下的hello在 tasks.json 中调用 g++ 生成一个可执行二进制文件。

2024-12-07 12:04:12 1108

原创 vscode(二)常用的文件变量

有关VSCode中的变量名,可以参考:VSCode Variables Reference

2024-12-07 10:31:26 336

原创 vscode(一)安装(ubuntu20.04)

缺少中文语言包,尝试在VSCode的插件市场中搜索并安装中文语言包。

2024-12-06 10:48:13 1009

原创 ubuntu18.04升级到20.04

【代码】ubuntu18.04升级到20.04。

2024-12-06 10:24:50 1751 1

原创 pycharm(一)安装

执行以下命令安装PyCharm,

2024-11-28 18:28:10 796 1

原创 linuxCNC(四)G代码

代码描述G0坐标运动,以快速速度进行。G1坐标运动,以进给速度进行。G2、G3以进给速度进行协调螺旋运动。G4停顿。G5三次样条插值。G5.1二次B样条。G5.2NURBS,添加控制点。G7直径模式(车床)。G8半径模式(车床)。G10 L0重新加载刀具表数据。G10 L1设置刀具表条目。G10 L10设置刀具表,计算的,工件。G10 L11设置刀具表,计算的,夹具。G10 L2

2024-11-27 16:06:06 453

原创 python(四)os模块、sys模块

os 模块提供了很多程序与操作系统直接交互的功能。

2024-11-25 18:06:27 1226

原创 python(三)GUI Tkinter

另外,这个文本中的一个字母可以有下划线,例如标明一个快捷键。Text是tkinter类中提供的的一个多行文本区域,显示多行文本,可用来收集(或显示)用户输入的文字(类似 HTML 中的 textarea),格式化文本显示,允许你用不同的样式和属性来显示和编辑文本,同时支持内嵌图象和窗口。编写一个用户登录界面,用户可以登录账户信息,如果账户已经存在,可以直接登录,登录名或者登录密码输入错误会提示,如果账户不存在,提示用户注册,点击注册进去注册页面,输入注册信息,确定后便可以返回登录界面进行登录。

2024-11-25 15:24:48 681

原创 python(二)关键字

关键字描述and逻辑与运算符。or逻辑或运算符。not逻辑非运算符。True表示真值。False表示假值。None表示空值或无。if用于条件语句。elif用在条件语句中,表示“否定的else”(如果条件不满足,则执行此分支)。else用在条件语句中,表示当条件不满足时执行的块。as用于别名和导入模块。assert用于调试目的,测试一个条件是否为真。class用于定义类。def用于定义函数。

2024-11-25 14:38:25 166

原创 linuxCNC(三)ini配置文件说明

【代码】linuxCNC(三)ini配置文件说明。

2024-11-23 16:10:39 635

原创 linuxCNC(一)目录结构

主要位于 scripts 目录下。linuxcnc: 该脚本用于启动 LinuxCNC 系统,可以通过命令行参数指定配置文件和其他选项。realtime: 该脚本用于配置和启用实时内核,以确保 LinuxCNC 系统的实时性能。sim: 该脚本用于启动模拟模式,允许用户在没有实际硬件的情况下测试和开发。配置文件主要位于 etc 和 ini 目录下。rs274ngc: 该文件包含 G-code 解释器的配置参数,如坐标系、速度和加速度等。

2024-11-15 11:39:22 365

原创 linux安装boost.python

boost.python库被用于C++与Python代码间的交互,提供了两者间大部分数据类型的转换。

2024-11-13 17:01:24 793

原创 Ubuntu20.04 安装build-essential问题

安装 aptitude,参考给出的solution选一个合适的。给出的第一个方案如果没有安装build-essential,继续输入no直到出现安装build-essential的方案。

2024-11-08 16:05:58 457

原创 GNU构建系统和Autotool

经常使用Linux的开发人员或者运维人员,可能对configure->make->make install相当熟悉。事实上,这叫GNU构建系统,利用脚本和make程序在特定平台上构建软件。这种方式成为一种习惯,被广泛使用。本文从用户视角和开发者视角详细说明,这种构建方式的细节,以及开发者如何利用autoconf和automake等工具(autotools)创建兼容GNU构建系统的项目。为了简化可移植构建的难度,在早期有一套autotools工具帮助程序员构建软件。

2024-11-08 10:49:05 1307

原创 Ubuntu系统启动直接进入tty1界面

【代码】Ubuntu系统启动直接进入tty1界面。

2024-11-05 13:54:14 871

原创 ubuntu gcc、g++升级

【代码】ubuntu gcc、g++升级。

2024-10-26 11:10:48 708

原创 Linux内核配置机制

内核配置系统由以下三个部分组成:(1)Makefile:分布在内核源代码根目录及各层目录中,定义了内核编译的规则;(2)配置文件:一般在/kernel/arch/$ARCH/configs中,/kernel/arch目录下的每个架构都有对应的默认配置文件;(3)配置工具:包括配置命令解释器(对配置脚本中使用的配置命令进行解析)、配置用户界面(字符界面、Ncurses图形界面、Xwindows图形界面,各自对应make config、make menuconfig、make xconfig)

2024-10-24 11:12:38 869

原创 CMake的使用(二)

如果只给出了一个 loop_var,那么它将一系列的 loop_var_N变量来存储对应列表中的当前项,也就是说 loop_var_0 对应第一个列表,loop_var_1 对应第二个列表,以此类推…在这个例子中关于列表数据的添加是通过list来实现的。在上面的例子中,遍历过程中将关键字LISTS改成了ITEMS,后边跟的还是一个或者多个列表,只不过此时需要通过${}将列表中的值取出。loop_var:存储每次循环取出的值,可以根据要遍历的列表的数量指定多个变量,用于存储对应的列表当前取出的那个值。

2024-10-22 16:13:02 1058

原创 CMake的使用(一)

指定使用的 cmake 的最低版本;可选,非必须,如果不加可能会有警告定义工程名称,并可指定工程的版本、工程描述、web主页地址、支持的语言(默认情况支持所有语言),如果不需要这些都是可以忽略的,只需要指定出工程名字即可。# PROJECT 指令的语法是:定义工程会生成一个可执行程序add_executable(可执行程序名 源文件名称)这里的可执行程序名和project中的项目名没有任何关系源文件名可以是一个也可以是多个,如有多个可用空格或;间隔# 样式1# 样式2div.c;

2024-10-22 15:14:38 1088

原创 ubuntu卸载软件

2.第二步,清理一些不需要的文件。3.第三步,删除不需要的配置文件。4.第四步,更新本地缓存。1.第一步,常规卸载。

2024-07-22 18:55:27 548

原创 Linux摄像头(v4l2应用)采集JPEG

【代码】Linux摄像头(v4l2应用)采集JPEG。

2024-06-24 17:22:49 520 2

原创 文件系统备份

当我们配置好自己的根文件系统,或者在一块开发板上完善好根文件系统时,可以将根文件系统拷贝下来然后重新打包成镜像,以供后续使用。

2024-06-24 14:18:54 350

原创 Linux下USB设备图像采集

操作系统 : Linux采集方式 : v4l2(video4linux2)设备目录 :/dev/video0Linux采集的核心组件名称叫:v4l2即video4linux2的简称。是Linux中关于视频设备的内核驱动,在Linux中,视频设备是设备文件,可以像访问普通文件一样对其进行读写,摄像头设备文件位置是/dev/video0。方法一,直接通过ls查看/dev/目录下设备列表方法二,通过ffmpeg的ffprobe命令来查看连接到系统中的摄像头设备:FFmpeg命令行安装。

2024-06-22 14:29:23 1117

原创 Linux摄像头 -- v4l2应用编程

vl42是video for Linux 2的缩写,是一套Linux内核视频设备的驱动框架,该驱动框架为应用层提供一套统一的操作接口(一系列的ioctl)V4L2在设计时,是要支持很多广泛的设备的,它们之中只有一部分在本质上是真正的视频设备,可以支持多种设备,它可以有以下几种接口video capture interface:视频采集接口,这种接口应用于摄像头,v4l2在最初设计的时候就是应用于这种功能。

2024-06-14 17:48:04 923

原创 linux 4G模块 :EC200N—AT指令收发短信

AT+HTTPPARA=“URL”,“url”:设置HTTP请求的URL。AT+CGDCONT=1,“IP”,“接入点名称”:设置数据连接接入点。AT+CDNSCFG=“dns1”,“dns2”:配置DNS服务器。AT+CNMI=2,1,0,0,0:配置接收新短信的通知方式。AT+CSCA=“短信服务中心号码”:设置短信服务中心号码。AT+COPS=1,0,“运营商名称”:选择指定的运营商。AT+CGACT=1,1:激活PDN(数据网络)连接。AT+CMGS=“手机号”:发送短信给指定的手机号码。

2024-06-12 18:54:29 1460

原创 QT QString字符串去除空白方法

空白包括 \t’, ‘\n’, ‘\v’, ‘\f’, ‘\r’, ’ ’1.去除字符串前面的空格。2.去除字符串后面的空格。3.去除字符串首尾的空格。4.去除字符串中所有空格。4.去除字符串中所有空白。

2024-06-11 15:04:32 1463

原创 git命令

在git中,包是单个压缩对象的集合。git repack命令允许用户创建新的包,这些包由不位于现有包内的对象组成。这些是您对项目的工作版本或本地索引中的内容所做的更改。您可以使用此命令来还原工作副本中的更改或索引中的更改,或者同时执行这两个操作。git reset命令将把HEAD引用调整为特定的提交,并相应地更新索引以匹配该特定的提交。git push和git commit之间的区别在于,当您提交某些更改时,它们将被添加到本地存储库而不是远程存储库中。上面的命令失败,因为这是在我的系统中配置git的方式。

2024-06-02 00:17:46 909

原创 交叉编译libudev、eudev

下载网址:https://mirrors.edge.kernel.org/pub/linux/utils/kernel/hotplug/这里使用find指令查找:sudo find / -name “pci.ids”解决该问题需要找到系统中的 pci.ids 然后指定。下载udev-182.tar.xz。交叉编译 eudev。

2024-05-25 19:55:46 1715

原创 Qt 在Linux下实现U盘插拔

2.在.pro文件增加对libudev库的链接。

2024-05-25 17:08:55 546

原创 linux应用程序检测usb热插拔事件

接收到的内核的报文内容。

2024-05-25 14:58:21 1082

linuxCNC(三)ini配置文件说明

linuxCNC(三)ini配置文件说明

2024-11-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除