NO.2 Linux-Ubuntu
demo
虚拟机:https://www.vmware.com/cn.html
清华开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/
Ubuntu有一个update-motd包,它在/etc/update-motd.d/目录下有一些脚本,这些脚本在每次登录时运行,并输出到/etc/motd
Ubuntu 安装
**
**
Socket
相关文章:http://t.csdnimg.cn/kDgB8
套接字:
linux USART驱动
带界面的串口调试助手 CuteCom :sudo apt-get install cutecom
虚拟串口模拟器 socat:sudo apt-get install socat
1 | 虚拟串口生成 `socat -d -d pty,b115200 pty,b115200` |
linux I2C 驱动
1 | #include <linux/i2c.h> |
Linux CAN 驱动
底层:socket-can
涉猎:libsocketcan提供了更加方便的API
相关指令:
1 | ifconfig can0 down //关闭CAN |
.rules
以 .rules 结尾的文件是 Linux 系统中用于配置 udev 规则的文件。udev 是 Linux 系统的设备管理器,它负责动态地管理设备节点(如 /dev/sda1)的创建、删除和权限设置。这些规则文件定义了如何处理不同的设备,具体包括以下内容:
主要作用:
- 设备命名和权限设置:
- 规则文件可以指定设备的名称、创建符号链接(symlinks)以及设置设备文件的权限和属主。例如,你可以为特定类型的设备创建一个友好的名称和适当的权限。
- 设备事件处理:
- 规则可以定义在设备连接或断开时要执行的操作。例如,当特定的设备连接到系统时,可以自动运行一个脚本或程序。
- 设备属性管理:
- 规则可以基于设备的属性(如制造商、型号、序列号等)来决定如何处理设备。这可以确保系统根据设备的具体信息来正确配置它。
规则文件的基本结构:
规则文件由多个规则行组成,每一行定义了一条规则。规则通常包括条件(如设备的属性)、动作(如设置权限或运行命令),以及可选的注释。
示例规则:
示例规则
1 | SUBSYSTEM=="usb", ATTR{idVendor}=="1234", ATTR{idProduct}=="5678", MODE="0666", SYMLINK+="mydevice" |
这条规则的意思是:
- 当 usb 子系统中的设备的 idVendor 是 1234 且 idProduct 是 5678 时,
- 设置设备文件的权限为 0666,
- 同时创建一个名为 mydevice 的符号链接指向这个设备。
典型使用场景:
- 设备自动配置:确保连接特定设备时,系统会自动进行所需的配置操作。
- 设备识别:为不同类型的设备创建一致的符号链接,使得用户和程序可以通过统一的名称访问设备。
- 权限控制:设置设备文件的权限,以确保只有授权用户可以访问设备。
这些规则文件通常存放在 /etc/udev/rules.d/ 目录下,并且它们的配置会在系统启动时或设备连接时加载和应用。
远程开发
方案:使用vscode 通过 SSH 连接远程ubuntu开发机, 同时可以开发ROS
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 树码空间!